4.8 椭圆曲线数字签名算法
Last updated
Last updated
数字签名算法是众多区块链技术中的关键,可以在不暴露地址私钥的前提下证明该地址的所有权归属,一般用于签名交易、证明交易的发起方以及防止交易内容被篡改。椭圆曲线(Ellipse Curve Cryptography,ECC)和签名算法(Ellipse Curve Digital Signature Algorithm,ECDSA)在数字货币和区块链的应用中已被广泛采用。
DxChain采用了secp256k1的椭圆曲线和ECDSA签名算法进行链上交易签名。在密码学中,相比于对称加密算法,如AES,DES,椭圆曲线加密算法具有安全性能更高,处理速度更快,带宽要求更低,存储空间更小的优点。ECC与其他基于大质数因子分解困难性的加密方法不同,其依赖的数学原理是求解椭圆曲线上离散对数问题(DLP)的困难性,正是这种求解困难性为数据加密提供了保障。
DxChain通过椭圆曲线的椭圆曲线点乘算法(elliptic curve point manipulation),由私钥构建出一个值来作为公钥。椭圆曲线点乘算法是一种陷门函数,陷门函数在一个方向上易于计算,但是在缺少特殊信息(陷门)的情况下难以逆向计算,因此难以从公钥逆向计算出私钥。在DxChain链上交易时由私钥进行签署交易,公钥验证交易,创建出安全且不可篡改的签名。