在本文中,我们将(jiang)进一步讨论它如何处理信(xin)息交换。但为了实现这一点,我们将从(cong)底层技术入手。所以,我们先来讨(tao)论一下公钥加密(也叫非对(dui)称加密)。
在对称加密中,我们使用(yong)相同的密钥对密文进(jin)行加密和解密。
下图说(shuo)明了对称加密的过程。
这么对称的加密,有什么(me)问题?问题是,你(ni)得把密钥写在纸(zhi)上,然后发给另一个人。但是,这显然(ran)不是一个有尚力财经小编2022效的方法。因此,您可以(yi)在网络上共享密钥,但这里有一个陷阱(jing)。任何身份的人都可以侵(qin)入网络,用你的密钥解密信息。非对称(cheng)营救行动:在非对称加(jia)密系统中,我们生(sheng)成一对密钥,即私钥(yao)和公钥。公钥和私钥在数学上是联系在(zai)一起的,但不能从(cong)对方派生出来。公钥就像分配给你(ni)的假名。你分享给大家,而私钥则起到(dao)了“替你说话”的作用。这就(jiu)是它的工作原理。你收到一条(tiao)信息,用你的私钥(yao)加密,然后发送给接收者(zhe)。现在,接收者(zhe)可以用您的公钥解密它,并(bing)验证消息是否来自合法的发送者。所(suo)以,你一定在想,如果每个人(ren)都有我的公钥,那么任何人(ren)都可以看到这个信息。
现在假设爱丽丝和(he)鲍勃想在互联网上分享一(yi)些信息。因此,它们将(jiang)生成自己的一组公钥和私(si)钥。他们都互相交换公钥,并把私钥保存在(zai)自己身上。爱丽丝可以(yi)使用鲍勃的公钥和(he)爱丽丝的私钥向鲍勃发送加密的(de)消尚力财经小编2022息(xi)。那么也就是说,当Bob收到消息时,他用Alice的公(gong)钥来保证消息来自Alice的私钥(只有Alice的公钥(yao)才能解密用Alice的(de)私钥加密的消息)来保证消(xiao)息是为他发送的。
…你签过支(zhi)票吗?因此,你必须了解(jie)签名的概念。它们可以(yi)作为你同意你签(qian)署的文件的证明(ming)。它们被绑定到特定的文档(dang),不能被复制和粘(zhan)贴到其他文档上。根据维基百科(ke):数字签名是一种数学方案,用(yong)于表明数字信息或文档的真实性。的有(you)效数字签名使接收方有理由相信消(xiao)息是由已知的发送方创建的(身份验(yan)证),并且发送方(fang)不能否认发送的消息,并确保消息在(zai)传输过程中没有被修(xiu)改。因此,数字签名涉及三(san)个步骤:生成密钥:首先,我们生成一对公钥(pk)和私钥(sk)。私钥用于签名,公钥用于验证签名者。(SK,PK):=生成密钥(密(mi)钥大小以位为单位)对消息进行签名:然后我们使用密钥对消息进(jin)行签名。Isvalid:=verify (pk,message,sig)==true验证:终于可以验证发送方(fang)了。Isvalid:=verify (pk,message,sig)==true
签名不能被伪造和用(yong)于其他消息。密(mi)钥不能从公钥派生。我们可以很容易地验证消(xiao)息在传输过程中是否发生了(le)变化。所以,现在我们(men)终于达到了顶峰,有了足够的知识来理(li)解区块链是如何把这(zhe)些碎片拼在一起的。
钱包创建和交(jiao)易签名是任何区块链系统(tong)的核心组件,它们在很大程度上依(yi)赖于公钥加密。公钥与(yu)哈希函数一起用于创建公共地址,供区(qu)块链用户用来接收和发送消息。私钥是(shi)保密的,用于签署数字交易,以确保交(jiao)易的来源是合法的。
…每笔交易都有不(bu)同的数字签名,这取决于用户的私钥。给定消息、公钥(yao)和用户的签名,验(yan)证用户的真实性是非常容(rong)易的。一旦事务被用户签名,它(ta)将在内存池中等待。在内存池中,挖(wa)掘者将挑选交易,并用用户的公钥验(yan)证交易上的数字签名,这样黑(hei)客就无法对交易进行更改。如果它是有(you)效的,数字签名将验证钱从一个钱(qian)包发送到另一个钱包(bao),然后交易被添加(jia)到块。