Files
openzeppelin-contracts/contracts/utils/cryptography/signers/AbstractSigner.sol
Hadrien Croubois f45e9158b7 Reorder cryptography folder (#5711)
Co-authored-by: ernestognw <ernestognw@gmail.com>
2025-06-03 21:40:34 -06:00

23 lines
852 B
Solidity

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.20;
/**
* @dev Abstract contract for signature validation.
*
* Developers must implement {_rawSignatureValidation} and use it as the lowest-level signature validation mechanism.
*
* @custom:stateless
*/
abstract contract AbstractSigner {
/**
* @dev Signature validation algorithm.
*
* WARNING: Implementing a signature validation algorithm is a security-sensitive operation as it involves
* cryptographic verification. It is important to review and test thoroughly before deployment. Consider
* using one of the signature verification libraries (xref:api:utils#ECDSA[ECDSA], xref:api:utils#P256[P256]
* or xref:api:utils#RSA[RSA]).
*/
function _rawSignatureValidation(bytes32 hash, bytes calldata signature) internal view virtual returns (bool);
}