newchain-sig-util
v0.1.2
Published
A few useful functions for signing newchain data
Downloads
9
Readme
Eth-Sig-Util
A small collection of ethereum signing functions.
You can find usage examples here
Supported Signing Methods
Currently there is only one supported signing protocol. More will be added as standardized.
- Personal Sign (
personal_sign
) geth thread
Installation
npm install eth-sig-util --save
Methods
concatSig(v, r, s)
All three arguments should be provided as buffers.
Returns a continuous, hex-prefixed hex value for the signature, suitable for inclusion in a JSON transaction's data field.
normalize(address)
Takes an address of either upper or lower case, with or without a hex prefix, and returns an all-lowercase, hex-prefixed address, suitable for submitting to an ethereum provider.
personalSign (privateKeyBuffer, msgParams)
msgParams should have a data
key that is hex-encoded data to sign.
Returns the prefixed signature expected for calls to eth.personalSign
.
recoverPersonalSignature (msgParams)
msgParams should have a data
key that is hex-encoded data unsigned, and a sig
key that is hex-encoded and already signed.
Returns a hex-encoded sender address.
signTypedData (privateKeyBuffer, msgParams)
Signs typed data as per an early draft of EIP 712.
Data should be under data
key of msgParams
. The method returns prefixed signature.
signTypedData_v3 (privateKeyBuffer, msgParams)
Signs typed data as per the published version of EIP 712.
Data should be under data
key of msgParams
. The method returns prefixed signature.
signTypedData_v4 (privateKeyBuffer, msgParams)
Signs typed data as per an extension of the published version of EIP 712.
This extension adds support for arrays and recursive data types.
Data should be under data
key of msgParams
. The method returns prefixed signature.
recoverTypedSignature ({data, sig})
Return address of a signer that did signTypedData
.
Expects the same data that were used for signing. sig
is a prefixed signature.
typedSignatureHash (typedData)
Return hex-encoded hash of typed data params according to EIP712 schema.
extractPublicKey (msgParams)
msgParams should have a data
key that is hex-encoded data unsigned, and a sig
key that is hex-encoded and already signed.
Returns a hex-encoded public key.