2026/5/25 6:38:20
网站建设
项目流程
掏宝网网站建设评价表,外部链接对网站的影响,wordpress前台在线编辑器,wordpress网站app01-比特币中的密码学原理比特币#xff0c;又被称为加密货币#xff0c;但其实加密货币是不加密的#xff0c;区块链上所有信息是公开的比特币中主要用到了密码学中两个功能#xff1a;1.哈希#xff1b;2.签名哈希#xff08;Cryptographic hash function#xff09;两…01-比特币中的密码学原理比特币又被称为加密货币但其实加密货币是不加密的区块链上所有信息是公开的比特币中主要用到了密码学中两个功能1.哈希2.签名哈希Cryptographic hash function两个性质密码学1.哈希碰撞两个不同的输入算出来的哈希值是一样的哈希碰撞很常见也是不可避免的因为输入空间是远远大于输出空间的没有什么高效的方法人为制造哈希碰撞collision resistance可以用来检测篡改注没有哪个哈希函数在数学可以证明是collision resistance即理论无法证明)2.hiding哈希函数的计算过程是单向的不可逆的条件输入空间足够大让蛮力求解不可能实现同时输入的分布比较均匀各种取值的可能性都差不多若输入空间不足够大可以在后面拼接一个随机数然后再一起取哈希hiding和collision resistance的性质结合起来可以实现digital commitmentdigital equivalent of a sealed envelop一个性质比特币puzzle friendly哈希值事先不可计算要让哈希值落在某一个范围值之内只能一个一个去试挖矿的过程没有捷径只能不停地试nouce所以这个过程才能被作为工作量证明proof of work但是一旦这个nouce被找到其他人要验证这个nouce是否符合要求就很容易只要算一次哈希值即可difficult to solvebut easy to verify比特币中用的哈希函数叫SHA-256Secure Hash Algorithm签名对称加密体系的一个弱点是密钥的分发不是很方便比特币是去中心化的每个人可以自己决定开户无需任何人批准开户只需要创立一个公钥和私钥对public keyprivate key公私钥对来源于非对称的加密体系叫做asymmetric encryption algorithm加密用对方的公钥对方收到后解密用自己的私钥签名用的是私钥验证签名用的是这个人的公钥假设产生公私钥有一个好的随机源a good source of randomness比特币中一般是先对一个message取哈希再对这个哈希签名