1
原 理
以太坊数字签名和比特币的关系
以太坊数字签名,几乎完全沿用了比特币的数字签名算法ECDSA-secp256k1。只有哈希的生成方式不一样,这个之后会说。ECDSA-secp256k1是一种非对称加密算法。
什么是ECDSA
以太坊数字签名算法使用的是椭圆曲线数字签名算法,英文简称ECDSA。其中EC是“椭圆曲线”的简称,DSA是“数字签名算法”的简称。
什么是secp256k1
椭圆曲线算法简单的说就是用X和Y坐标画一个曲线。这个曲线怎么画,需要很多个参数来确定。以太坊使用了一套叫secp256k1的参数确定了椭圆的形状。所以,以太坊的签名算法全称就是是ECDSA-secp256k1。
什么是非对称加密
什么是对称加密,什么是非对称加密呢?简单的说,只有一个密钥的,就是对称加密,加密解密用它。有两个密钥的,就是非对称加密,加密用一个密钥,解密用另外一个。相对于对称加密算法而言,非对称加密优点是不需要在网络上暴露加密的密钥,从机制上来说更安全;缺点是加密效率比对称加密低很多。所以非对称加密一般只用于诸如数字签名这类数据量较小的加密运算。
常见的非对称加密算法除了椭圆加密算法之外,还有著名的RSA。椭圆加密相比RSA的区别是ÿ