区块链技术—加密算法

论坛 期权论坛 期权     
BCDM公有链   2019-12-22 04:12   2369   0


哈希算法      哈希算法(Secure Hash Algorithm,SHA)是区块链数据加密应用最多、最常规的算法之一,使用哈希算法输入任意长度字符串会输出固定长度字符串,也就是哈希值。以区块链中最常见的SHA-256哈希算法函数为例,需具备以下四种特性才能满足区块链加密需求:
1
      正向固定:输入任意长度字符串,只能输出固定统一长度的字符串。
2
      逆向困难:给定(若干)hash 值,在有限时间内很难(基本不可能)逆推出明文。
3
      输入敏感:只要对原始输入信息作出丝毫修改,则产生的hash 值就会完全不同。
4
      冲突避免:几乎不会找到两段内容不同的明文,它们的hash值是一致(发生冲突)。







非对称加密



     非对称加密,加密和解密所使用的密匙不同,需要使用公钥对信息进行加密,解密信息只能使用私钥,私钥可以生成公钥,而公钥是无法推导出私钥。若私钥一经丢失,密文信息则无法找回。非对称加密的安全系数更高,但是加密和解密所花费的时间较长、速度较慢。






非对称加密过程示意图
     在区块链的加密过程中,有的可以同时用到哈希加密和非对称加密两种,加密过程更为复杂,也更安全。发送方通过哈希函数对想要加密的信息进行哈希处理,然后输出一个全网唯一、固定长度的字符串信息,同时利用公钥对信息进行加密、签名,然后将其上传到区块链网络;接收方则利用接收到的公钥对信息进行解密,对比后明文一致,接收方就能确认传输的文件并未受到篡改,是安全可信的,即可进行下一步。




Base58编码    Base58是数字货币使用的编码方式,主要用于产生数字货币的钱包地址,这种编码格式不仅实现了数据压缩,保持了易读性,还具有错误诊断功能。










零知识证明     零知识证明是20世纪80年代初由计算机科学家Goldwasser和Micali等人共同提出的一项技术,它主要是指证明者能够在不向验证者提供任何有用信息的情况下,使验证者相信某个论断是正确的。
     零知识证明能够成立需要具备三个要素,即完整性、可靠性和零知识。举个例子来说就是,假设有一个环形走廊,出口和入口相邻但不互通(在目测距离之内),在这个环形走廊中间的某处有一道锁起来的门,只有拥有钥匙的人才可以通过;这时A要向B证明自己拥有打开这道门的钥匙,用零知识量证明来解决就是,B看着A走进入口并在出口等待,如果A从入口进入通过走廊并从出口走出,则可以证明其拥有打开中间那扇门的钥匙,而在这个过程中,他完全不用向B提供钥匙的具体信息。所以零知识证明实际上是一种概率证明而非确定性证明。






     在区块链信息保护中,需同时使用哈希算法和非对称加密才能完成信息加密工作,随着科技的进步,密码学的加密技术将不断被挖掘完善。








分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:8
帖子:2
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP