以太坊?钱包的秘密密匙是用户使用特定的以太坊?证明你拥有对地址的访问权,也就是拥有控制权。秘密密匙是数字和字符串的组合,通常由64个十六进制字符(09和AF)表示。它是用户对交易进行加密、解密、签名和验证区块的关键。
私钥的生成依赖于椭圆曲线密码学。以太坊?网络中最常见的椭圆曲线是secp256r1,是基于椭圆曲线数学的公开密匙的结构。秘密密匙是如下生成的。
1选择一个随机数,称为随机数(oce)。
2.使用椭圆曲线上的点的加法,将随机数和私钥的前512位组合,得到一个结果。
3.将此结果与私钥的前512位进行异或运算,得到新的结果。
4.将新的结果乘以你的私钥的512位低位,得到另一个结果。
5.这个结果加上随机数的积,再次使用椭圆曲线上的点的加法,得到最终的公钥。
当用户发起交易时,你需要使用私钥签署交易消息。签名过程如下所示。
1.将交易信息分为两部分。前32个字节是咒语,后32个字节是消息摘要。
2.使用私钥对咒语和信息摘要进行异或运算,得到结果。
3.将此结果与预先定义的椭圆曲线上的点相乘,得到签名值。
接收方可以通过公开密匙验证签名值是否有效。如果有效,则交易是由持有对应私钥的用户发起的。由此,以太坊?网络可以确保交易的真实性和安全性。