加密算法与区块链
A. 如何理解区块链与区块链技术
区块链技术用数学方法实现分布式记账,并解决信任问题,从而完成了去中心化,将在通信、金融、物联网、政府管理等众多领域带来深远的影响。
区块链(Blockchain)是指通过去中心化和去信任的方式集体维护一个可靠数据库的技术方案,是一种全民参与记账的技术方式。而此前的记账方式都是中心化的,需要中心化的中介,无论这个中介是传统的政府、金融机构、公证机构还是新兴的电商平台、网络支付平台。
经济学假设中,信息是充分的。实际上,正是因为信息不充分,才存在非常庞大的中介机构。而中介机构的存在,增加了交易成本,提高了交易门槛。区块链技术本质上来说是一个大规模协作工具,它首次使用纯技术方式让直接的价值转移成为可能,并延续了互联网去中心化和去中介化的趋势。去中介的区块链技术将极大地颠覆信息中介行业。
区块链技术是构建比特币数据结构与交易信息加密传输的基础技术,该技术实现了比特币的发行与交易。区块链技术的核心是所有当前参与的节点共同维护交易及数据库,使交易基于密码学原理而不基于信任,使得任何达成一致的双方,能够直接进行支付交易,不需第三方的参与。
从技术上来讲,区块是一种记录交易的数据结构,反映了一笔交易的资金流向。系统中已经达成交易的区块连接在一起形成了一条主链,所有参与计算的节点都记录了主链或主链的一部分。
一个区块包含以下三部分:交易信息、前一个区块形成的哈希散列和随机数。交易信息是区块所承载的任务数据,具体包括交易双方的私钥、交易的数量、电子货币的数字签名等;前一个区块形成的哈希散列用来将区块连接起来,实现过往交易的顺序排列;随机数是交易达成的核心,所有节点竞争计算随机数的答案,最快得到答案的节点生成一个新的区块,并广播到所有节点进行更新,如此完成一笔交易。
B. 区块链技术的机密性是如何实现的
因为区块链技术对实现智能合约存在天然的优势。
比特币、瑞泰币、莱特币、以太坊等数字加密货币都使用了区块链技术。
区块链(Blockchain)是比特币的一个重要概念,本质上是一个去中心化的数据库,同时作为比特币的底层技术。区块链是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一次比特币网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。
C. 加密数字资产和区块链技术有什么区别
区块链(Blockchain)是指通过去中心化和去信任的方式集体维护一个可靠数据库的技术方案。该技术方案主要让参与系统中的任意多个节点,通过一串使用密码学方法相关联产生的数据块(block),每个数据块中包含了一定时间内的系统全部信息交流数据,并且生成数据指纹用于验证其信息的有效性和链接(chain)下一个数据库块。
区块链技术源于比特币,它的本质是运用计算机算法和密码学等技术创造一种去中心化的数字货币系统,实现货币的发行和交易功能。
区块链技术的特征:
1、去中心化(Decentralized):整个网络没有中心化的硬件或者管理机构,任意节点之间的权利和义务都是均等的,且任一节点的损坏或者失去都会不影响整个系统的运作。因此也可以认为区块链系统具有极好的健壮性。
2、去信任(Trustless):参与整个系统中的每个节点之间进行数据交换是无需互相信任的,整个系统的运作规则是公开透明的,所有的数据内容也是公开的,因此在系统指定的规则范围和时间范围内,节点之间是不能也无法欺骗其它节点。
3、集体维护(Collectively maintain):系统中的数据块由整个系统中所有具有维护功能的节点来共同维护的,而这些具有维护功能的节点是任何人都可以参与的。
4、可靠数据库(Reliable Database):整个系统将通过分数据库的形式,让每个参与节点都能获得一份完整数据库的拷贝。除非能够同时控制整个系统中超过51%的节点,否则单个节点上对数据库的修改是无效的,也无法影响其他节点上的数据内容。因此参与系统中的节点越多和计算能力越强,该系统中的数据安全性越高。
由四个特征会引申出另外2个特征:
5、开源(Open Source):由于整个系统的运作规则必须是公开透明的,所以对于程序而言,整个系统必定会是开源的。
6、匿名性(Anonymity):由于节点和节点之间是无需互相信任的,因此节点和节点之间无需公开身份,在系统中的每个参与的节点都是匿名的。
加密数字资产EGD:E-Gold Coin, 简称EGD, 是基于点对点互联网开源协议形成的网络加密数字资产,它在去中心化的网络系统中流通。EGD作为全球商业消费者从商家获赠的一种消费资产,用来替代传统商业社会中由商家各自发行的积分,实现了全球商业积分网络化,一体化和资产化。
EGD即网络黄金,是基于去中心化的数字加密技术而生成的加密数字资产。EGD诞生于2014年1月,由以微软前工程师为首的来自全球7个国家的17名技术专家组成的团队研发。EGD将加密数字资产技术引用到了全球商业统一积分领域,能够让全球消费者通过EGD商业积分的流通和增值持续分享商业社会的利润,打造商家与消费者共赢的经济模式。
定制EGD的特点:
利用定制技术我们可以轻易的构建各种各样的基于EGD协议的智能资产,包括股票、债券、或者各种衍生积分等。
更重要的是,定制技术在扩展EGD应用范围的同时,仍然保留了EGD产权明晰,去中心化的特点。并且,因为定制积分数量有限,就造就了定制积分更强的稀缺性。
D. 什么是数据区块链(BlockChain)怎么解释让人更容易理解
想了解区块链应用,可以多参考很多书籍和观点,有《图说区块链》《区块链:重塑经济与世界》《新经济蓝图与导读》,还有币安社区的文章,包括对币安社区这个平台也详细了解,实力牛X。
一、区块链是什么
区块链(Blockchain),顾名思义,是由区块(Block)和链(chain)组成,它是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。是一种按照时间顺序将数据区块以顺序相连的方式组合成的一种链式数据结构,并以密码学方式保证的不可篡改和不可伪造、安全可信的分布式账本。
2008年,中本聪发表的论文《比特币:一种点对点的电子现金系统》中第一次提出区块链和加密数字货币的构想。从比特币开始,区块链成为各种各样数字货币的底层技术。
二、区块链的工作原理:
1、基本概念包括:(1)交易(Transaction):操作一次,会使账本状态改变一次,如添加一条记录;(2)区块(Block):记录规定时间内发生的交易和状态数据,是对当前账本状态的一次共识和保存;(3)链(Chain):由一个个区块按照时间顺序串联而成,是整个状态变化的日志记录。理解了区块链的工作概念也就不难理解其工作原理,假设存在一个分布式的数据记录本,这个记录本只允许添加、不允许删除和更改,其结构是由一个个“区块”串联而成的线性的链(这也是“区块链”名字的来源),新的数据要加入,必须放到一个新的区块中,维护节点可以提议一个新的区块,但是必须经过一定的共识机制来对最终选择的区块达成一致。
2、以比特币为例来看区块链的工作原理。
比特币的区块分为区块头和区块体两部分。
三.区块链的核心优势和特点
1、去中心化区块链数据的验证、记账、存储、维护和传输等过程均是基于分布式系统结构,不存在中心化的硬件或管理机构,任意节点的权利和义务都是均等的,系统中的数据块由整个系统中具有维护功能的节点来共同维护。2、开放透明系统是开放的,除了交易各方的私有信息被加密外,区块链的数据对所有人公开,任何人都可以通过公开的接口查询区块链数据和开发相关应用,因此整个系统信息高度透明。3、安全性区块链采用基于协商一致的规范和协议(比如一套公开透明的算法)使得整个系统中的所有节点能够在去信任的环境自由安全的交换数据,使得对“人”的信任改成了对机器的信任,任何人为的干预不起作用。4、信息不可篡改一旦信息经过验证并添加至区块链,就会永久的存储起来,除非能够同时控制住系统中超过51%(几乎不可能)的节点,否则单个节点上对数据库的修改是无效的,因此区块链的数据稳定性和可靠性极高。5、匿名性由于节点之间的交换遵循固定的算法,其数据交互是无需信任的(区块链中的程序规则会自行判断活动是否有效),因此交易对手无须通过公开身份的方式让对方自己产生信任,对信用的累积非常有帮助。
四、区块链的分类
目前来说,区块链最主流的分类是根据参与者的不同,把区块链分为公有链(Public Blockchain)、私有链(Private Blockchain)和联盟链(Consortium Blockchain)。
1、公有链:任何人都可以参与使用和维护,并且能够获得该区块链的有效确认,公有链是最早的区块链,也是目前应用最广泛的区块链,典型的如比特币区块链,信息是完全公开的。
如果引入许可机制,包括私有链和联盟链两种。2、私有链:一个公司或者个人,仅使用区块链的技术,独享该区块链的写入权限,信息不公开。目前保守的巨头(传统金融)都是想实验尝试私有区块链,私链的应用产品还在摸索当中。3、联盟链:是介于公有链和似有链之间,由多个组织共同控制的区块链,该链的使用是有权限的管理,可以受制于管理者,也根据管理者的意愿开放给他人。除此之外,根据区块链使用场景和目的的不同,分为以数字货币为目的的货币链,以记录产权为目的的产权链,以众筹为目的的众筹链等。
五、区块链的具体应用场景分析
1、信息防伪
5月28日,腾讯CEO马化腾在贵阳数博会上就茅台酒打假问题提出了:基于云端的综合区块链技术的防伪方法,其效率将远高于传统防伪方式。未来的防伪验证场景可能只需用户使用手机进行简单的扫描,就可以得到大量的基于不同的维度的完整信息。
以茅台酒为例:
酒厂地址,制作车间,操作员工,检验员,出厂时间,运输车辆信息及驾驶人员信息,
酒的年份原料来源,原料提供商,保存仓库编号,原料运输车辆及驾驶人员信息,
所有的信息都能够精准溯源,被永久记录且不可篡改。
综合以上信息即可轻易验证真伪。
2、食品安全问题
早在去年11月份沃尔玛就已经和IBM进行合作,通过使用区块链技术来追踪食品来源,以此来确保食品的安全性及增加食品的而流通性以降低成本,对于沃尔玛等大型超市来说,以往出现食品安全问题需要几天时间进行问题食品的来源调查,使用了此项技术之后,只需要产品的一项信息就能够做到精准溯源,食品产地、检验者、供应商、物流运输等重要信息,几分钟之内就能快速发现问题。目前来说使用区块链追踪的产品有包括美国的包装产品和中国的猪肉。
3、信息安全
区块链技术正在推动一场信息安全技术变革。中间人攻击、数据篡改、DDoS三大安全威胁
(1)身份保护
PKI是电子邮件、消息应用、网站等各种通讯应用中常见的公钥加密技术。但是由于大多数PKI的实现以来集中式的可信第三方认证机构(CA)来发放、激活和存储用户证书,黑客可攻击PKI假冒用户身份或破解加密信息。
CertCoin是首个区块链PKI实现,来自MIT,去除了中心化的认证中心,以区块链作为于域名和公钥的分布式账本。
Pomcor公司:区块链PKI实现路径:保留认证中心,用区块链存储已经发放和激活的证书的hash值。用户通过去中心化和透明的来源鉴别证书的真实性,同时还能通过本地基于区块链拷贝进行秘钥和签名的认证来提高网络访问性能。
(2)数据完整性保护
GuardTime开发了基于区块链技术的无秘钥签名架构(KSI),取代基于秘钥的数据认证技术。KSI在区块链上存储原始数据和文件的哈希表,运行哈希算法来验证其他拷贝,将结果与区块链存储的数据对比。任何数据的篡改都会被迅速发现,因为原始哈希表存储在数以百万计的节点。
(3)关键基础设施保护
互联网的“阿喀琉斯之踵”,DDoS进入TB时代,DDoS仍然是黑客低成本搞垮大目标的最简单的武器,DNS服务是黑客进行大规模破坏的首要目标,但区块链技术有望从根本上解决。
区块链的分布式存储,使黑客攻击失去焦点,Nebulis正在开发一种分布式DNS系统,使用以太坊区块链和星际互联文件系统(IPFS,HTTP的分布式替代品)来注册和解析域名。DNS最大弱点是缓存,缓存使DDoS攻击成为可能,也是集权政府审查社交网络,操纵DNS注册的祸根。一个高度透明的、分布式的DNS系统能够有效杜绝任何实体,包括政府恣意操纵记录。
四、金融行业
(1)数字货币:提高货币发行及使用的便利性
如国外的比特币、以太币,我国目前有果仁宝等等。
从使用实物交易,到物理货币和信用货币,再到比特币网络的崛起,让更多的人意识到其背后的分布式账本区块链技术,逐步在数字货币外的许多场景进行应用。
(2)跨境支付与结算:实现点到点交易,减少中间费用
转账与支付。目前,区块链技术最成熟的应用便是支付与转账,区块链技术能够避免繁杂的系统,省却银行间对账和审查的流程,加速结算速度;用虚拟货币无需清算所的介入,减少交易费用。各国家的清算程序不同,单笔汇款需2、3天才到帐,效率低,在途资金占比极大。不再通过第三方,通过区块链技术形成点对点的支付。省去第三方机构的环节,即可全天支付、实时到账、提现快捷及降低隐形成本,有助于规避资金风险。具有及时性便利性。
(3)票据与供应链金融业务:减少人为介入,降低成本及操作风险
点对点之间的价值传递,实物票据或中心系统进行控制验证;中介将被消除,减少人为介入。效率的提升,融资渠道更畅通,风险更低,多方受益。
(4)证券发行与交易:实现准实时资产转移,加速交易清算速度
区块链技术的应用可使证券交易的流程更简洁、透明、快速,减少重复功能的IT系统,提高市场运转的效率。对于股票,区块链可以消除纸笔或电子表格记录,减少交易的人为差错,提高交易平台的透明度和可追踪性。花旗与纳斯达克合作推进区块链应用。
(5)客户征信与反欺诈:降低法律合规成本,防止金融犯罪
记载于区块链中的客户信息与交易纪录有助于银行识别异常交易并有效防止欺诈。区块链的技术特性可以改变现有的征信体系,在银行进行“认识你的客户”(KYC)时,将不良纪录客户的数据储存在区块链中。
股权众筹:建立在区块链技术上的股权众筹可以实现去中心化信任,投资者的回报也得到保证。
5、供应链管理
分布式分类帐系统,参与者全程跟踪资产的所有权,可应用于国家和工厂之间移动时跟踪汽车零件。
丰田为其核心零部件供应链运营,研发区块链技术解决方案的前提。通过大量的数据帮助丰田更高效地确保记录数据准确性,也能帮助管理供应链。同时,区块链供应链能够通过智能合同来控制保修,维修货物相关成本和规格,整个产品生命周期内的交易不可撤销。
航运业的第一个公共解决方案解决方案由海运国际(MTI)部署,使用区块链供应链技术共享运输集装箱的验证总量(VGM)信息。有关集装箱VGM的信息对于确保船舶正确存放,防止在海上和港口事故发生是非常重要的。VGM数据存储在区块链供应链上,为港口官员,运输公司,托运人和货主提供永久记录。这取代了麻烦的日志,电子表格,数据中介和私人数据库。
物流诚信体系 货车帮货车帮推出基于区块链的物流企业金融解决方案,旨在为企业提供可靠的金融服务。不仅能帮助司机解决贷款难的问题,亦能改变行业诚信缺失的现状,助力打造物流诚信体系。帮助构建物流企业身份链,打造物流企业可信数据生态。以透明、可监督、可追溯的算法模型,筛选需要资金支持且可靠的企业,为其提供金融服务。另一方面,在技术层面将各执法部门链接起来,对失信企业进行联合处罚。
6、政务管理
(1)选举
基于区块链技术特征,联想到现在选举技术的弊端,我们将搭建一个开源的、针对选举、投票和彩票的区块链应用,我们称之为选举链(ElectionChain)。我们希望优化选举和投票技术,使得投票更加公开透明,减少人为操控,让选民可验证自己的选举结果。
包括身份认证、多链体系、闪投协议、共识算法EDPOS、隐私保护、选票机制设计、去中心化ELC租借市场、存贮方案、智能合约等。
(2)政务服务
旨在实现基于区块链技术的电子政务数字生态系统,向公民提供政务服务和政府各部门业务的自动化机制,必须将国家政务所有领域结合在一起,形成一个共有的信息空间,包含政府机构、经济数据、金融交易和社会领域。这个生态系统还应包括注册管理部门机构和对应软件,用于构建基于智能合约的政府机构、企业和公共用户的应用程序和平台。
E. 区块链密码算法是怎样的
区块链作为新兴技术受到越来越广泛的关注,是一种传统技术在互联网时代下的新的应用,这其中包括分布式数据存储技术、共识机制和密码学等。随着各种区块链研究联盟的创建,相关研究得到了越来越多的资金和人员支持。区块链使用的Hash算法、零知识证明、环签名等密码算法:
Hash算法
哈希算法作为区块链基础技术,Hash函数的本质是将任意长度(有限)的一组数据映射到一组已定义长度的数据流中。若此函数同时满足:
(1)对任意输入的一组数据Hash值的计算都特别简单;
(2)想要找到2个不同的拥有相同Hash值的数据是计算困难的。
满足上述两条性质的Hash函数也被称为加密Hash函数,不引起矛盾的情况下,Hash函数通常指的是加密Hash函数。对于Hash函数,找到使得被称为一次碰撞。当前流行的Hash函数有MD5,SHA1,SHA2,SHA3。
比特币使用的是SHA256,大多区块链系统使用的都是SHA256算法。所以这里先介绍一下SHA256。
1、 SHA256算法步骤
STEP1:附加填充比特。对报文进行填充使报文长度与448模512同余(长度=448mod512),填充的比特数范围是1到512,填充比特串的最高位为1,其余位为0。
STEP2:附加长度值。将用64-bit表示的初始报文(填充前)的位长度附加在步骤1的结果后(低位字节优先)。
STEP3:初始化缓存。使用一个256-bit的缓存来存放该散列函数的中间及最终结果。
STEP4:处理512-bit(16个字)报文分组序列。该算法使用了六种基本逻辑函数,由64 步迭代运算组成。每步都以256-bit缓存值为输入,然后更新缓存内容。每步使用一个32-bit 常数值Kt和一个32-bit Wt。其中Wt是分组之后的报文,t=1,2,...,16 。
STEP5:所有的512-bit分组处理完毕后,对于SHA256算法最后一个分组产生的输出便是256-bit的报文。
2、环签名
2001年,Rivest, shamir和Tauman三位密码学家首次提出了环签名。是一种简化的群签名,只有环成员没有管理者,不需要环成员间的合作。环签名方案中签名者首先选定一个临时的签名者集合,集合中包括签名者。然后签名者利用自己的私钥和签名集合中其他人的公钥就可以独立的产生签名,而无需他人的帮助。签名者集合中的成员可能并不知道自己被包含在其中。
环签名方案由以下几部分构成:
(1)密钥生成。为环中每个成员产生一个密钥对(公钥PKi,私钥SKi)。
(2)签名。签名者用自己的私钥和任意n个环成员(包括自己)的公钥为消息m生成签名a。
(3)签名验证。验证者根据环签名和消息m,验证签名是否为环中成员所签,如果有效就接收,否则丢弃。
环签名满足的性质:
(1)无条件匿名性:攻击者无法确定签名是由环中哪个成员生成,即使在获得环成员私钥的情况下,概率也不超过1/n。
(2)正确性:签名必需能被所有其他人验证。
(3)不可伪造性:环中其他成员不能伪造真实签名者签名,外部攻击者即使在获得某个有效环签名的基础上,也不能为消息m伪造一个签名。
3、环签名和群签名的比较
(1)匿名性。都是一种个体代表群体签名的体制,验证者能验证签名为群体中某个成员所签,但并不能知道为哪个成员,以达到签名者匿名的作用。
(2)可追踪性。群签名中,群管理员的存在保证了签名的可追踪性。群管理员可以撤销签名,揭露真正的签名者。环签名本身无法揭示签名者,除非签名者本身想暴露或者在签名中添加额外的信息。提出了一个可验证的环签名方案,方案中真实签名者希望验证者知道自己的身份,此时真实签名者可以通过透露自己掌握的秘密信息来证实自己的身份。
(3)管理系统。群签名由群管理员管理,环签名不需要管理,签名者只有选择一个可能的签名者集合,获得其公钥,然后公布这个集合即可,所有成员平等。
链乔教育在线旗下学硕创新区块链技术工作站是中国教育部学校规划建设发展中心开展的“智慧学习工场2020-学硕创新工作站 ”唯一获准的“区块链技术专业”试点工作站。专业站立足为学生提供多样化成长路径,推进专业学位研究生产学研结合培养模式改革,构建应用型、复合型人才培养体系。
F. 区块链中的哈希算法的作用是什么
区块链通过哈希算法对一个交易区块中的交易信息进行加密,并把信息压缩成由一串数字和字母组成的散列字符串。
金窝窝集团分析其哈希算法的作用如下:
区块链的哈希值能够唯一而精准地标识一个区块,区块链中任意节点通过简单的哈希计算都接获得这个区块的哈希值,计算出的哈希值没有变化也就意味着区块链中的信息没有被篡改。
G. 学习区块链加密算法的公司有哪些
去链派社区看看吧
H. 区块链使用安全如何来保证呢
区块链本身解决的就是陌生人之间大规模协作问题,即陌生人在不需要彼此信任的情况下就可以相互协作。那么如何保证陌生人之间的信任来实现彼此的共识机制呢?中心化的系统利用的是可信的第三方背书,比如银行,银行在老百姓看来是可靠的值得信任的机构,老百姓可以信赖银行,由银行解决现实中的纠纷问题。但是,去中心化的区块链是如何保证信任的呢?
实际上,区块链是利用现代密码学的基础原理来确保其安全机制的。密码学和安全领域所涉及的知识体系十分繁杂,我这里只介绍与区块链相关的密码学基础知识,包括Hash算法、加密算法、信息摘要和数字签名、零知识证明、量子密码学等。您可以通过这节课来了解运用密码学技术下的区块链如何保证其机密性、完整性、认证性和不可抵赖性。
基础课程第七课 区块链安全基础知识
一、哈希算法(Hash算法)
哈希函数(Hash),又称为散列函数。哈希函数:Hash(原始信息) = 摘要信息,哈希函数能将任意长度的二进制明文串映射为较短的(一般是固定长度的)二进制串(Hash值)。
一个好的哈希算法具备以下4个特点:
1、 一一对应:同样的明文输入和哈希算法,总能得到相同的摘要信息输出。
2、 输入敏感:明文输入哪怕发生任何最微小的变化,新产生的摘要信息都会发生较大变化,与原来的输出差异巨大。
3、 易于验证:明文输入和哈希算法都是公开的,任何人都可以自行计算,输出的哈希值是否正确。
4、 不可逆:如果只有输出的哈希值,由哈希算法是绝对无法反推出明文的。
5、 冲突避免:很难找到两段内容不同的明文,而它们的Hash值一致(发生碰撞)。
举例说明:
Hash(张三借给李四10万,借期6个月) = 123456789012
账本上记录了123456789012这样一条记录。
可以看出哈希函数有4个作用:
简化信息
很好理解,哈希后的信息变短了。
标识信息
可以使用123456789012来标识原始信息,摘要信息也称为原始信息的id。
隐匿信息
账本是123456789012这样一条记录,原始信息被隐匿。
验证信息
假如李四在还款时欺骗说,张三只借给李四5万,双方可以用哈希取值后与之前记录的哈希值123456789012来验证原始信息
Hash(张三借给李四5万,借期6个月)=987654321098
987654321098与123456789012完全不同,则证明李四说谎了,则成功的保证了信息的不可篡改性。
常见的Hash算法包括MD4、MD5、SHA系列算法,现在主流领域使用的基本都是SHA系列算法。SHA(Secure Hash Algorithm)并非一个算法,而是一组hash算法。最初是SHA-1系列,现在主流应用的是SHA-224、SHA-256、SHA-384、SHA-512算法(通称SHA-2),最近也提出了SHA-3相关算法,如以太坊所使用的KECCAK-256就是属于这种算法。
MD5是一个非常经典的Hash算法,不过可惜的是它和SHA-1算法都已经被破解,被业内认为其安全性不足以应用于商业场景,一般推荐至少是SHA2-256或者更安全的算法。
哈希算法在区块链中得到广泛使用,例如区块中,后一个区块均会包含前一个区块的哈希值,并且以后一个区块的内容+前一个区块的哈希值共同计算后一个区块的哈希值,保证了链的连续性和不可篡改性。
二、加解密算法
加解密算法是密码学的核心技术,从设计理念上可以分为两大基础类型:对称加密算法与非对称加密算法。根据加解密过程中所使用的密钥是否相同来加以区分,两种模式适用于不同的需求,恰好形成互补关系,有时也可以组合使用,形成混合加密机制。
对称加密算法(symmetric cryptography,又称公共密钥加密,common-key cryptography),加解密的密钥都是相同的,其优势是计算效率高,加密强度高;其缺点是需要提前共享密钥,容易泄露丢失密钥。常见的算法有DES、3DES、AES等。
非对称加密算法(asymmetric cryptography,又称公钥加密,public-key cryptography),与加解密的密钥是不同的,其优势是无需提前共享密钥;其缺点在于计算效率低,只能加密篇幅较短的内容。常见的算法有RSA、SM2、ElGamal和椭圆曲线系列算法等。 对称加密算法,适用于大量数据的加解密过程;不能用于签名场景:并且往往需要提前分发好密钥。非对称加密算法一般适用于签名场景或密钥协商,但是不适于大量数据的加解密。
三、信息摘要和数字签名
顾名思义,信息摘要是对信息内容进行Hash运算,获取唯一的摘要值来替代原始完整的信息内容。信息摘要是Hash算法最重要的一个用途。利用Hash函数的抗碰撞性特点,信息摘要可以解决内容未被篡改过的问题。
数字签名与在纸质合同上签名确认合同内容和证明身份类似,数字签名基于非对称加密,既可以用于证明某数字内容的完整性,同时又可以确认来源(或不可抵赖)。
我们对数字签名有两个特性要求,使其与我们对手写签名的预期一致。第一,只有你自己可以制作本人的签名,但是任何看到它的人都可以验证其有效性;第二,我们希望签名只与某一特定文件有关,而不支持其他文件。这些都可以通过我们上面的非对称加密算法来实现数字签名。
在实践中,我们一般都是对信息的哈希值进行签名,而不是对信息本身进行签名,这是由非对称加密算法的效率所决定的。相对应于区块链中,则是对哈希指针进行签名,如果用这种方式,前面的是整个结构,而非仅仅哈希指针本身。
四 、零知识证明(Zero Knowledge proof)
零知识证明是指证明者在不向验证者提供任何额外信息的前提下,使验证者相信某个论断是正确的。
零知识证明一般满足三个条件:
1、 完整性(Complteness):真实的证明可以让验证者成功验证;
2、 可靠性(Soundness):虚假的证明无法让验证者通过验证;
3、 零知识(Zero-Knowledge):如果得到证明,无法从证明过程中获知证明信息之外的任何信息。
五、量子密码学(Quantum cryptography)
随着量子计算和量子通信的研究受到越来越多的关注,未来量子密码学将对密码学信息安全产生巨大冲击。
量子计算的核心原理就是利用量子比特可以同时处于多个相干叠加态,理论上可以通过少量量子比特来表达大量信息,同时进行处理,大大提高计算速度。
这样的话,目前的大量加密算法,从理论上来说都是不可靠的,是可被破解的,那么使得加密算法不得不升级换代,否则就会被量子计算所攻破。
众所周知,量子计算现在还仅停留在理论阶段,距离大规模商用还有较远的距离。不过新一代的加密算法,都要考虑到这种情况存在的可能性。
I. 什么是区块链加密算法
这个是比特币的一个重要概念,比特币的底层技术区块链运用了很多优秀的加密算法来保证系统可靠性。具体的理解和操作可以去下载链派社区app,听一下里面讲师的课程,你就清楚了。