美文网首页万卷好书读书让生活美好0岁的产品经理
区块链020 那些绝妙的密码算法应用,你知道多少?

区块链020 那些绝妙的密码算法应用,你知道多少?

作者: 北京杜豆豆 | 来源:发表于2019-05-26 08:17 被阅读27次

    区块链科普系列第20天:那些绝妙的密码算法应用,你知道多少?

    文/杜豆豆


    人要是没了骨骼撑着,那就意味着成了个瘫子。

    密码算法在区块链系统中的重要性,就跟骨骼对人的重要性一样,不可或缺。

    那么,这些重要性都体现在哪些应用上呢?我们一起来看看吧。

    1、账户地址生成

    通过密码算法,会首先生成一对公钥和私钥,公钥就是可以作为对外公开的账号,但是这个账号,需要用与之对应和匹配的私钥才能验证通过,因此这种方式生成的地址,先天就具备可验证性。

    举个例子,比如比特币。

    比特币系统一般通过调用操作系统底层的随机数生成器来生成256位随机数作为私钥。

    公钥是由私钥首先经过Secp256k1椭圆曲线算法生成65字节长度的随机数。

    将公钥进行SHA-256和RIPEMD160双哈希运算生成20字节长度的摘要结果,再经过2次SHA-256哈希算法和Base58转换形成33字符长度的钱包地址。

    公钥生成过程是不可逆的,即不能通过公钥反推出私钥。比特币的公钥和私钥通常保存在比特币钱包文件,其中私钥最为重要。丢失私钥就意味着丢失了对应地址的全部比特币资产。

    2、价值转移保卫

    这个应用,最适合于发送带有价值的数据。比如现金、股票、黄金等。

    因为,它能解决掉两个基本问题:一是能证明数据是由真正发出者发送的,二是能确保只有接收者才能解码这笔数据。

    怎么做呢?

    可以通过公开密钥算法完美解决,发出者用自己的私钥签名,再用接收者的公钥进行一段加密。

    接收者收到时,就可以用发出者的公钥先进行身份验证,最后再用自己的私钥才能解开这个公钥。

    这样,就可以防止被人截获,就算被别人截获了,因为没有对应的私钥,他也是解不开的。

    3、完整性证明

    在节点同步区块链数据时,通过构建的交易哈希树,就能验证数据是否一致。

    在这里,我们有必要复习一下前面讲过的梅克尔根树结构。

    除了整个区块会被计算哈希值之外,区块中包含的每个事务数据,也会被计算出一个哈希值,称为事务哈希。

    一个区块中所有的事务进行哈希计算后,就可以得出一组事务哈希,然后对这些事务哈希进行处理,就会得到一棵哈希数的数据结构。

    哈希数的顶部就是树根,称为梅克尔根。通过这个梅克尔根,就可以把整个区块中的事务约束起来,只要区块中的事务有变化,每个梅克尔根就会跟着变。

    这样,就确保了区块数据的完整性。

    4、零知识证明

    有些时候,你需要证明自己拥有某笔资产。

    打个比方,仓库里有个保险箱,你说是你的,可是仓库管理员不信,这该怎么做呢?

    通常的思路,用自己的密码去打开,看是否可以解锁。但这样的话,你的密码不就泄露了吗?而且,保险箱里装了什么全都公开了,一点隐私都藏不住。

    在区块链上也是这样,当你需要证明,某笔资产是你的时,你需要一种特殊的方法,就是零知识证明。

    这就好比,你让仓库管理员远远站着,看不到你拨的密码,只能看到结果是你把保险箱打开了。

    怎么用密码算法来实现呢?你只需要成功解码一段儿与交易内容相关、但是又不泄露真正交易内容的编码,就能证明自己的所有权了。

    好了,以上就是密码算法在区块链中的一些常见应用点,不过实际应用时,还是有很多可以创意无限的地方的。

    就像比特币使用公钥生成钱包地址的做法,无非是传统的技术,加上了创新的用法,可是却得到了绝妙的应用,实在令人叹服。

    (本文出自杜豆豆《白话区块链》读书笔记的部分摘录。)

    明天分享:《想让陌生人也相互信任,你需要这样的机制》

    (未完待续)

    原创不易,非授权不得转载,转载请注明出处。如果您觉的文章有用,别忘了在文末点赞哦。

    读更多好书,请访问我的文集:《一生必读的万卷好书》

    欢迎加入“万卷好书读书会”:在这个群里,大家可以分享电子书,交流读书心得,以文会友,自由点赞支持。目前该群已超过100人,需要群主发邀请才能进,有兴趣的简友请加微信dudoudou189联系我。读书会座右铭:在浮躁的时代,安心读书写作,养育心灵。

    我已晋升五十万钻高级合伙人,欢迎使用我的专属会员推广链接:https://www.jianshu.com/mobile/club?ref=3debb0de。订阅会员,享受最优惠福利。

    相关文章

      网友评论

        本文标题:区块链020 那些绝妙的密码算法应用,你知道多少?

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