mirror of
https://github.com/ethereum/solidity
synced 2023-10-03 13:03:40 +00:00
Update units-and-global-variables.rst
This commit is contained in:
parent
4a6d6cb14f
commit
14872b598d
@ -189,8 +189,9 @@ Mathematical and Cryptographic Functions
|
||||
.. warning::
|
||||
|
||||
If you use ``ecrecover``, be aware that a valid signature can be turned into a different valid signature without
|
||||
requiring knowledge of the corresponding private key. Since `EIP-2 <http://eips.ethereum.org/EIPS/eip-2#specification>`_,
|
||||
all transaction signatures with an ``s`` value greater than ``secp256k1n/2`` are considered invalid.
|
||||
requiring knowledge of the corresponding private key. In the Homestead hard fork, this issue was fixed
|
||||
for _transaction_ signatures (see `EIP-2 <http://eips.ethereum.org/EIPS/eip-2#specification>`_), but
|
||||
the ecrecover function remained unchanged.
|
||||
|
||||
This is usually not a problem unless you require signatures to be unique or
|
||||
use them to identify items. OpenZeppelin have a `ECDSA helper library <https://docs.openzeppelin.org/docs/cryptography_ecdsa>`_ that you can use as a wrapper for ``ecrecover`` without this issue.
|
||||
|
Loading…
Reference in New Issue
Block a user