Comunion是一个去中心化的(DAO)组织协作网络,提供面向数字时代的全新商业基础设施和价值转化机制,致力于让劳动价值像资本一样自由流通、交易和积累。
本系列内容包含:基本概念及原理、密码学、共识算法、钱包及节点原理、挖矿原理及实现。
发展史
哈希算法是为了检测数据在传输的过程当中是否被篡改而诞生的。
比如特工A和特工B在进行信息交换,为了防止数据在传输的过程中没有被丢失或者被篡改,这个时候可以使用哈希算法。
特工A将其所发的信息进行哈希,然后将信息和哈希码一起传给特工B,特工B收到之后,也可以对文本进行哈希,然后和这个哈希码进行匹配,如果匹配上的话,说明信息在传播的过程当中没有丢失或者被篡改。
最开始诞生的是MD4和MD5。1990年,工作于麻省理工学院的教授RonaldRivest设计了一种信息摘要算法,这就是MD4,次年MD5诞生。
蚂蚁集团:区块链有望通过智能合约使网络互助流程更加自动化:最近,蚂蚁集团发布全国首份《网络互助行业白皮书》。白皮书也指出,未来10年,关键核心的数字技术将在网络互助行业获得更深层次应用,如大数据、知识图谱等技术将使智能赔付流程更加精准化,未来区块链技术也有望通过智能合约使网络互助流程更加自动化。(科技日报)[2020/7/3]
说到MD4,大家可能听说过,我们国家的王小云院士曾经将其攻破过,这是一个很重要的研究成果。普通破解MD4法,需要计算2的55次方,而王院士把时间复杂度给降低了,他只需要2的10次方~20方,就把MD4破解了,这就把破解所需的量级降低了很多。
沿着时间顺序后面诞生了SHA-0、SHA-1、SHA-2、SHA-3。
动态 | 区块链体育企业Chiliz与游戏平台Enjin合作推出ERC-1155收藏品:区块链体育企业Chiliz与游戏平台Enjin合作为体育和电子竞技行业打造了ERC-1155收藏品。两家公司将为Dota 2、尤文图斯(Juventus)和Socios.com合作伙伴提供不可替代代币(NFT)。所有由Chiliz发行的NFT代币都可以在Enjin市场的帮助下由球迷购买或出售。(U.Today)[2020/2/6]
目前来说SHA是一个安全的哈希算法,按版本来说才到了SHA-3,其中每个版本相当于一个家族,里面会包含很多不同的哈希算法。
MD4出现之后,美国国家标准技术研究院,开始进行一个公开的算法募集。
1997年左右,SHA-0家族开始全球性征集算法,任何人有好的算法都可以提交。这其实是一个全球的算法竞争,其目的是收录全球公认能最好的算法,以此扩充家族。
声音 | 富国银行和万事达高管表示:区块链技术已经被过分夸大了:据CNBC消息,富国银行首席执行Tim Sloan表示:“区块链一直被过度消费。”万事达卡的首席执行官表示,其公司在区块链中拥有第三大专利,但这项技术的“商业模式还没有被证实”。这两位首席执行官表示,现实是该技术未赶上其炒作的脚步。[2019/3/28]
随着时间的推移,产生了SHA-2,我们之前所说比特币里面使用的算法SHA-256,就是隶属于SHA-2家族里面的算法。SHA-2家族里面包含众多算法,比如:SHA-168、SHA-512等,都有不同的尾缀。拿SHA-256来说,256是指算法输出的字符长度。
提到SHA-256,大家可能会想一下我们前文提到的问题:中本聪为什么选择用SHA-266,而不是其他的哈希算法呢?
刚才我们也说过SHA家族的成长是按照时间顺序来的,当中本聪使用这个算法是在2008年,那个时候SHA-2家族里面的算法在当时是比较盛行的,虽然当时SHA-3也出来了,但是还不太成熟。
UCloud创始人季昕华:区块链可以打破数据垄断:6月3日,2018链谷大讲堂开幕式在苏州举行。UCloud创始人、CEO季昕华结合活动举办地–苏州相城区做出解释:区是相城区,块是到相城区很“快”,链是枢纽。他表示,区块链的本质就是在不信任的环境下建立信任的机制,实现安全要求。UCloud正通过安全屋产品,把数据的所有权和使用权分离,打破数据垄断,希望实现数据安全可控的分享。[2018/6/3]
所以中本聪采用了SHA-2里面的SHA-256算法,应用到比特币系统里面去。
沿着时间顺序往下走,我们会看到以太坊里面使用的哈希算法,就不是SHA-2家族里面的了,而是SHA-3家族里面的。这是因为到2014年的时候,SHA-3里的算法已经稳定下来了,并且其性能远优于SHA-2里的算法。
开发者采用的算法也是根据哈希算法的成熟度,来不断的去采用更成熟、更好的算法。
汉鼎宇佑王麒诚或早有布局区块链 参与收购嘉楠耘智:近日,有媒体在一份鲁亿通收购嘉楠耘智的公告中,发现汉鼎宇佑(300300)创始人王麒诚的身影,这被很多投资人解读为布局区块链的铁证。公告显示,王麒诚以个人身份认购近692万股,资金额达1.7亿元。据了解本次收购的标的嘉楠耘智,主营业务为比特币及区块链ASIC芯片的研发设计,主要用于重复计算、算力服务。[2018/3/9]
所以如果读者想设计一个区块链系统,如果里面涉及到使用哈希算法的话,那么一定要选择更好哈希算法,而不是一味模仿之前的系统,这些SHA算法仅仅是一个加密算法而已,没有我们想的那么神秘。
哈希函数
哈希函数最开始被称之为摘要函数,意思是消息摘要,下图是对它的定义:哈希函数是为了对于任意长的字符串产生一个消息摘要。
这段话其实有一些含义没有表达出来,对任意长的一个字符串进行哈希,可以产生一个哈希摘要,也就是产生一个由0和1组成的字符串。这个字符串如果给到SHA-256的话,那其产生的消息摘要会是一个256比特由0和1组成的数据串。
摘要函数是由一对ppt算法组成的,这两个算法需要满足两个性质。
ppt算法的意思是概率多项式时间算法,那么什么是概率多项式时间算法呢?
什么叫概率算法?
概率算法也叫随机算法,也就是算法在执行过程中随机地选择下一个计算步骤。其意义是,很大程度上降低算法的复杂度。
比如抛硬币,需要猜硬币是正面还是反面,那么解决这个问题的成功概率是50%,算法只需要重复正或者反就可以了。
什么是多项式?
假设我有一个问题,这个问题是有规模的,规模用参数λ来表示,再引入常数a和c,将其做成一个多项式:a乘以λ的C次方。其中λ是一个安全参数,如问题的规模,密码系统的安全级别,私钥长度等。
概率多项式时间算法组合起来通俗地说就是:当这个算法应用于某一项方案或者攻击一个密码系统,算法最多能运行a乘以λ的C次方的时间,在这个时间内能以多大的概率去解决这个问题或者攻破这个密码系统。
这样的设计使哈希算法非常高效。
需要满足的两个条件
上图第一句话,1λ是一个安全参数,即将安全参数输入到Gen算法中产生一个s。
我们上文讲了有很多哈希家族,每个哈希家族中又包含很多哈希算法,那么到底用哪个算法呢?这里的s就是表示选择的算法,比如选用了SHA-256,那么s就可以确定。
第二句话,最前面是一个自然数,后面的??x中x,指任意的字符串,这句话的意思是任意字符串可以任意长,并且用0和1来表示。
继续往下看,H上标s和x,由于第一句话的时候s确定了,那么此时H也就可以确定。
再往下走,对于任意两个消息m1和m2,如果这两个消息经过哈希函数产生的结果是一样的,那么此时就产生了一个碰撞。
我们通过简单分析哈希的定义,其实能发现一个特点:哈希算法能将任意长的输入数据压缩成固定长且短的数据。
例如SHA-256算法能够将任意长的一个字符串,哈希成一个256比特长的由0和1组成的数据串。
利用这个特点我们也就能返回去解释为什么在区块链当中会使用哈希算法。
下期预告:哈希碰撞原理
2020年,以太坊网络交易数量增加了一倍多,现在几乎与2018年1月的历史最高记录持平。如下图所示,过去六个月的交易量翻了一番,达到每日123万笔.
1900/1/1 0:00:00最近大火的DeFi项目?yearn.finance的创始人安德鲁·克罗宁在接受采访的时候称自己已经疲惫不堪,濒临破产,想要退出这个「有」的DeFi社区.
1900/1/1 0:00:00“强烈怀疑这次DeFi行情是矿工的阴谋”,数字货币资深玩家刘明在朋友圈打趣。矿工无疑是这次DeFi的最终赢家.
1900/1/1 0:00:00我今天讲的内容,很多人没有听过,有些故事讲起来如同段子一般。现实有的时候就是这么魔幻,小说都不敢这么写.
1900/1/1 0:00:00疫情影响下,全球经济放缓,就业环境严峻,求职难、保薪难,已经成为不争的事实。然而,作为新基建的区块链行业却逆势迎来新风口,人社部近日发布的9个新职业中,区块链就占有2席,区块链头部企业求贤若渴,
1900/1/1 0:00:00要点:天秤座协会副主席DanteDisparte认为,基于区块链的支付可以帮助缓解穷人的困境。他表示,包括Facebook的天秤座在内的央行数字货币和稳定币可以减少对商业银行的依赖,并为人们提供.
1900/1/1 0:00:00