签名密钥

new ethers.utils.SigningKey( privateKey )

私钥创建一个新的签名密钥。

signingKey.privateKey string< DataHexString< 32 > >

签名密钥的私钥。

signingKey.publicKey string< DataHexString< 65 > >

此签名密钥的未压缩公钥。它是65个字节(130个nibbles),并以0x04作为开头。

signingKey.compressedPublicKey string< DataHexString< 33 > >

此签名密钥的压缩公钥。它是33个字节(66个nibbles),并以0x020x03作为开头。

signingKey.signDigest( digest ) Signature

摘要上签名并返回签名。

signingKey.computeSharedSecret( otherKey ) string< DataHexString< 32 > >

使用otherKey计算ECDH共享密钥。otherKey可以是公钥或私钥,但通常是来自另一方的公钥。

非常推荐各方在将其用作对称密钥之前计算其哈希。

SigningKey.isSigningKey( anObject ) boolean

如果anObject是签名密钥则返回true。

Other Functions

ethers.utils.verifyMessage( message , signature ) string< 地址(Address) >

返回生成签名消息的地址。签名可能有一个不规范的v(即不需要是27或28), 在这种情况下,它将被标准化去计算`recoveryParam`,然后将用于计算地址; 这允许使用v编码额外数据(如EIP-155)的系统使用,因为v参数是完全明确的。

ethers.utils.verifyTypedData( domain , types , value , signature ) string< 地址(Address) >

返回为domain和生成签名的types签名EIP-712后的value的地址。

ethers.utils.recoverPublicKey( digest , signature ) string< DataHexString< 65 > >

返回对给出签名的摘要进行签名的私钥的未压缩公钥(即第一个字节将为0x04)。

ethers.utils.computePublicKey( key [ , compressed = false ] ) string< DataHexString >

计算key的公钥,压缩选项是可选的。key可以是任何形式的公钥(压缩或未压缩)或私钥。