|
|
|
@ -90,7 +90,7 @@ library ECDSA { |
|
|
|
|
) internal pure returns (address) { |
|
|
|
|
// EIP-2 still allows signature malleability for ecrecover(). Remove this possibility and make the signature |
|
|
|
|
// unique. Appendix F in the Ethereum Yellow paper (https://ethereum.github.io/yellowpaper/paper.pdf), defines |
|
|
|
|
// the valid range for s in (281): 0 < s < secp256k1n ÷ 2 + 1, and for v in (282): v ∈ {27, 28}. Most |
|
|
|
|
// the valid range for s in (301): 0 < s < secp256k1n ÷ 2 + 1, and for v in (302): v ∈ {27, 28}. Most |
|
|
|
|
// signatures from current libraries generate a unique signature with an s-value in the lower half order. |
|
|
|
|
// |
|
|
|
|
// If your library generates malleable signatures, such as s-values in the upper range, calculate a new s-value |
|
|
|
|