什么是公钥加密和数字签名

区块链

577人已加入

描述

在这篇文章中,我们将进一步讨论它是如何处理信息交换的。但是为了达到这一点,我们将从底部技术开始认识。那么,让我们首先讨论一下公钥加密(也称,非对称加密)。

对称加密:

在对称加密中,我们使用相同的密钥来加密密文和解密密文。

下图说明了对称加密的过程。

那么对称加密,有什么问题吗?问题是,你要把钥匙写在纸上,然后把它寄给另一个人。但是,这显然不是一个有效的方法。因此,您可以在网络上共享密钥,但这里有一个陷阱,任何身份的人都可以侵入网络,并使用您的密钥来解密该消息。

不对称加密的拯救行动:

· 在不对称加密体制中,我们生成一对密钥,即私钥和公钥。

· 公钥和私钥在数学上是连接在一起的,但不能从另一个派生而来。

· 一个公钥就像一个分配给你的假名,你和每个人分享它,而私钥扮演的是“为你说话”的角色。

· 这就是它的工作原理。您获取一个消息,用您的私钥加密它并发送给接收者。现在,接收方可以使用您的公钥解密它,并验证消息是否来自合法的发送方。

· 所以,你一定在想,如果每个人都有我的公钥,那么任何人都能看到这些信息。

· 现在假设Alice和Bob想在互联网上共享一些信息。因此,它们就会生成自己的一组公钥和私钥。

· 他们都互相交换公钥,并将私钥保存在自己身上。Alice可以使用Bob的公钥和Alice的私钥向Bob发送加密消息。

· 那么,也就是说,当Bob收到消息时,他使用Alice的公钥来确保消息来自Alice(只有Alice的公钥可以解密使用Alice的私钥加密的消息)的私钥来确保消息是为他发送的。

让我们讨论一下数字签名

· 你签过支票账单吗?因此,您必须了解签名的概念。它们可以作为你同意你签署的文件的证明,它与特定的文件绑定在一起,不能复制粘贴到其他文件上。

根据维基百科: 数字签名是一种数学方案,用来表示数字信息或文档的真实性。有效的数字签名使接收方有理由相信消息是由已知的发送方(身份验证)创建的,发送方不能否认发送过得消息,并且消息在传输过程中要确保没有被修改。因此,数字签名涉及三个步骤:

· GenerateKeys :首先我们生成一对公共密钥(pk)和私人秘钥(sk)。私钥用于签名,公共密钥用于验证签名者。

(sk,pk):=generateKeys(keysize in bits)

· 签署消息:然后我们使用密钥在消息上签名。

isValid:=verify(pk,message,sig)==true

· 验证:最后我们可以验证发送方。

isValid:=verify(pk,message,sig)==true

数字签名的优点:

· 签名不能伪造并用于其他消息。

· 密钥不能从公钥派生。

· 我们可以很容易地验证消息在传输过程中是否发生了更改。

所以,现在我们终于到达了顶峰,有了足够的知识来理解区块链是如何把这些碎片拼在一起的。

公钥加密和区块链

· 钱包创建和事务签名是任何区块链系统的核心组件,它们严重依赖于公钥加密。

· 公钥与哈希值函数一起使用,以创建区块链用户用来接收和发送消息的公共地址。

· 私钥是保密的,用于签署数字事务,以确保事务的起源是合法的。

数字签名和区块链

· 每个事务都有不同的数字签名,这取决于用户的私钥。

· 给定消息、公钥和用户的签名,验证用户的真实性非常容易。

· 一旦事务由用户签名,事务就会在内存池中等待,在内存池中,挖掘人员会挑选事务并使用用户的公钥验证其上的数字签名,这样黑客就无法对事务进行更改。如果它是有效的,数字签名就会验证钱从一个钱包发送到另一个钱包,然后交易被添加到块中。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分