美文网首页Nervos Fans我爱编程
初探区块链的密码学技术

初探区块链的密码学技术

作者: 526ba0512193 | 来源:发表于2018-05-28 11:00 被阅读17次

    各位, 今晚介绍 密码学相关技术。

    最近多个链出现问题,  区块链行业技术是根本,  技术出问题,  很多链上token可能直接归零。

    今晚讲讲 区块链所用的常见 密码学知识,  对技术的了解,能让大家更理性的看待区块链,  就像科学不是万能的, 而是不断进步, 区块链也不是万无一失, 而是需要逐步提升, 逐步改进。

    一旦涉及重要改进,就涉及大众共识,就可能分叉, 这是所有链对面的问题。

    说到这个问题, nervos就做了很多考虑 和 设计, 希望以后能对整个去中心化链 作出引导。

    今天从最核心的 哈希加密算法 开始。

    哈希 hash 是比特币使用的 链接各个区块的算法,每一个区块都会通过哈希算法 变化成固定长度的输出, 存在下一个区块上。 

    这样很多的区块就通过哈希算法, 形成了一个链。

    哈希算法有个特点, 就是每个区块有轻微的变化,通过哈希算法的输出,就会有巨大的变化,  这就让任何区块的细微变化,连锁反应, 传递导致以后的所有区块哈希值有巨大变化。

    再因为链是通过全球的分布式账本大家一起记账, 任何人篡改以前的区块数据, 都会导致他自己的账本 后面的区块上的所有哈希值 都会产生巨大的改变,  他的链就不会得到大家的认可,篡改过的链就会被大家发现抛弃,防止篡改。

    我们的公钥地址,就是我们的私钥通过哈希算法计算出的。通过哈希算法  计算出的长度 远小于计算前,所以哈希算法在计算中 会丢失大量的信息, 所以哈希算法无法 从输出 推导出输入。  这就保证了我们私钥的安全性。

    私钥有多安全?  现在一些比特币账户价值 几十亿美金, 都能看到他们的公钥,也从没人能推导出私钥。 哈希算法多安全。

    一个哈希算法, 就能打通比特币 一千多亿美金的资产,  就像是诱导数学家们的悬赏金。  之前很多人 炒作的量子计算机,  就是 号称计算速度极大提高,可以破解密码学,  现在又很少提了。

    对称加密技术

    对称加密技术, 就是设置密码,通过 混淆算法对输入进行混淆的到加密后的数据。 这个的好处就是掌握了密码, 就能通过反向运算,的到原始的输入值。

    这种算法 是军事加密常用的方法, 各种指令传输需要先加密, 到达接受者时, 再反向 计算出指令。

    常见的有 美国制定标准的 aes 高级加密标准,  优点是软硬件上都能快速的加解密, 需要存储器很少。

    PBKDF2就是将salted hash进行多次重复计算,这个技术是美国政府和军方的标准化技术, 可以防止暴力破解。

    非对称加密技术

    现在不少项目提及的 椭圆曲线技术, 是利用椭圆曲线上乘法和除法计算量不对称的特点 做的一种非对称加密算法。

    区块链的 签名就是通过 加密算法实现的

    常见的 环签名 数字签名技术。

    环签名的存在,确保了签名者 匿名,实现方法就是 环签名中 包含了多个公钥,公钥就是账户地址, 环签名可以来自其中任何一个公钥的对应私钥, 没有任何方法可以推导出每个签名 到底是哪个账户。

    环签名 使用了哈希算法、椭圆曲线等加密技术。

    通过环签名出来的签名,自己的签名是计算出来的,其他的签名都是随机的。外人看来 环签名中任何一个账户都有可能生成这个签名,无法判断到底是哪个账户生成的签名。

    由于环签名的彻底 无法追踪 容易导致环签名的滥用,

    改进出现了  可追踪的环签名。

    可追踪的环签名, 是要求每个环签名提供一个私钥映射。由于每个私钥的映射都是唯一的, 如果某个私钥多次发布环签名, 就会被发现都是同一个 私钥映射, 虽然还是没人知道是哪个私钥, 但可以有效防止滥用环签名。

    区块链里面 还有一个概念很常见,零知识证明。

    零知识证明,就是不用向别人直接展示知识, 而是只出示相关证据 来证明自己拥有知识。

    零知识证明证明有两种方式,一种是非交互式,就是拥有知识的人直接给出证明, 验证者直接可以验证。

    另一种是交互式, 就是先要验证者提出要求, 拥有知识者给出证明,验证者去验证。 交互式需要互动, 如果要求验证者众多,实现困难, 所以交互式使用较少。

    可靠的零知识证明 要基于已经被充分认可的密码学技术,  创新的风险很大。 这里是重点。

    ZK-SNARK zero-knowledge succinct non-interactive argument of knowledge。  简洁的 非交互式的零知识证明。

    ZK-SNARK是第一个通用可公开验证的非交互式零知识证明。 通过 一种 计算电路的数学方法实现。

    除了开发公链侧链子链等, 一般不用太关注学习 密码学等,  今天分享密码学相关知识, 是为了让大家多了解区块链底层技术,对行业未来更有信心。

    六月份,会有多个主链上线,届时,若有技术问题, 可能会对市场产生重大影响, 做好应对准备。

    用一句老话,  区块链行业道路是曲折的, 前景是无比光明的。防范风险,努力推进行业发展,共勉。

    (待续,明晚8点,我们在爱好者社群等你一同参与。。。)

    相关文章

      网友评论

        本文标题:初探区块链的密码学技术

        本文链接:https://www.haomeiwen.com/subject/eaiwjftx.html