数字货币的算法到底分几类?挖矿、共识、签名各管什么
数字货币里"算法"这个词被用得很宽泛,挖矿、出块、交易签名、节点同步,背后都藏着不同的数学工具。我做了几年底层协议开发,来聊聊几类算法到底各管什么。
共识层最核心的是工作量证明(PoW),比特币用SHA-256哈希反复碰撞找nonce数字货币的算法到底分几类?挖矿、共识、签名各管什么,算力竞赛决定谁出块。以太坊转PoS后变成权益证明(卡哈拉),持有质押ETH的验证者按时间戳和随机种子轮流打包。瑞波和卡尔达诺又走Ripple Protocol与Ouroboros,思路完全不同,但目标都是让全网节点对"下一笔交易"达成一致。
交易安全靠的是椭圆曲线数字签名(ECDSA),比特币在secp256k1曲线上生成一对公私钥,私钥签名、公钥验证,任何节点能验但不能伪造。Merkle树把几千笔交易哈希成一棵二叉树,轻节点只存根哈希就能抽查某笔交易是否在区块里。
隐私层另有一组工具。门罗币用环签名和RingCT把发送者、金额全藏起来,Zcash用zk-SNARKs把交易证明压缩到几KB,验签方无需知道任何交易细节。这让"不可篡改"之外多了一层"不可窥探"。
同一笔交易从签名、上链到被全网络接受,至少经过四组算法接力。币种不同侧重点不同几类数字货币的算法,但底层都是数论和密码学的老工具换了个用法。
标签: 几类数字货币的算法