区块链中加密机制

简介: 区块链技术开发,搭建交易系统,发币,主链开发等

加密机制是整个区块链中的基础,很多文章都有对加密机制进行详细的分析,但是相当不容易理解,我这里用简单的语言来尝试解释以下区块链的加密机制

640_webp_1__meitu_1

哈希算法(hash)

哈希算法算是区块链中不可或缺的一种算法,它能把任意长度的数据映射成较短的固定长度的二进制值。它正向计算很快速,但是逆向十分困难,并且修改后hash值就会改变。
举个例子:
今天天气很晴朗
使用hash算法后会变成
6283725acf07139bc08db741bc78dc60078991a0
如果你改了其中一个字比如 今 改成 明,使用hash后会变成
348a04eb8a62ace1e8883231f3e6b0674f04e389
或者把这句话修改成如下
天气还不错
e4d7c6a8e828f4e835d88d7b04b47b753718a444
举个不太恰当但是更直观的例子:
假设三个数相加,其结果就是hash值
2+2+2 = 6
只要修改任何一个加数,算出来的结果都不对,比如把2改成1
1+2+2 = 5
逆向困难的意思就是,我现在给你个数字 6,你能告诉我原来是哪些数之和吗?

非对称加密

这是区块链中最重要的一种加密算法,非对称加密包括一对密钥:公钥和私钥,私钥自己持有,公钥可以公布出来。首先要知道的是,用公钥加密后的内容,只有私钥能解密;用私钥加密的内容,只有公钥能解密。

用公钥加密、私钥解密这个过程,就好比你手握的信箱钥匙(私钥),任何人都可以从信箱的投递口给你寄信,但是只有你能打开信箱看到内容。

用私钥加密、公钥解密这个过程,就好像纸钞的防伪,只有国家拥有给纸钞防伪的技术(私钥),但是其他人却可以通过这些防伪办法(公钥)来辨别真伪。

640_webp_2__meitu_2

密码对生成

拿比特币举一个例子
在 0~2^256 之间随机选择一个数当成私钥,私钥通过椭圆曲线算法可以算出公钥,公钥再通过一层Hash算法就得到了比特币的地址。

640_webp_3__meitu_3

流程可以总结为:私钥 -> 公钥 -> 地址,而且都是不可逆的,可以使用官方提供的程序来产生,当然如果你数学好,你甚至可以在纸上完成计算。

加密技术的运用

拥有了加密技术,区块链究竟是什么样运行的呢?
哈希算法的作用在于保证数据的不可变更,以及以后将会介绍到的工作证明等;
非对称加密在主要应用在数字签名上,要了解的是数字签名是 私钥加密,公钥解密,举个现实的例子可能更生动

A写下一段文字 给小明转10块钱,计算hash值后
2c169b8f47da442e6b22a694fa03dc9af31cf89086baffe0c3cbdf070f8767f0

用私钥加密Hash值,简单表示为 XXX

将文字和 XXX 发送到网络中

网络中的B接到这个消息,用A公布出来的公钥解密 XXX后得到hash值 2c169b8f47da442e6b22a694fa03dc9af31cf89086baffe0c3cbdf070f8767f0

B对收到的文字进行Hash后,发现得出来的值与公钥解密的值一致,说明接收到的文字信息没错

以上的案例说明了数字签名验证的过程。数字签名在区块链的交易中使用颇多,所以后面讲交易的时候,还会详细讲解流程。

目录
相关文章
|
9月前
|
自然语言处理 安全 网络协议
HTTPS的加密机制和加密流程?
HTTPS的加密机制和加密流程?
|
9天前
|
NoSQL 安全 MongoDB
MongoDB安全机制:认证、授权与加密
【4月更文挑战第30天】MongoDB提供全面的安全机制,包括认证(用户名/密码、LDAP、Kerberos、x.509证书)、授权(基于角色的访问控制,RBAC)和加密(TLS/SSL、透明数据加密TDE、字段级加密FLE),确保数据保密性、完整性和可用性。通过合理配置这些机制,企业可保障数据安全,应对不断变化的安全威胁。
|
9月前
|
安全 数据安全/隐私保护 开发者
【HTTPS】加密机制概述
【HTTPS】加密机制概述
80 0
|
安全 网络安全 数据安全/隐私保护
【计算机网络】网络安全 : 实体鉴别 ( 实体鉴别过程 | 不重数机制 | 公钥体质加密不重数 | 中间人攻击 )
【计算机网络】网络安全 : 实体鉴别 ( 实体鉴别过程 | 不重数机制 | 公钥体质加密不重数 | 中间人攻击 )
284 0
【计算机网络】网络安全 : 实体鉴别 ( 实体鉴别过程 | 不重数机制 | 公钥体质加密不重数 | 中间人攻击 )
|
自动驾驶 区块链 数据安全/隐私保护
BlockChain:区块链/加密数字货币落地技术应用高质量相关文章
BlockChain:区块链/加密数字货币落地技术应用高质量相关文章
BlockChain:区块链/加密数字货币落地技术应用高质量相关文章
|
Linux Shell 区块链
LTC 主网钱包linux安装(付款的加密货币 基于区块链技术)
Litecoin是一种点对点Internet货币,可以向世界上任何人即时支付接近零的费用。莱特币是一个开源的全球支付网络,无需任何中央机构就可以完全分散化。数学可以保护网络安全,并可以使个人控制自己的财务状况。
610 0
|
开发框架 JavaScript 算法
|
区块链 数据安全/隐私保护
2019年全球外卖、电动汽车、加密货币及区块链风投大幅下滑|全球快讯
还有几天2019年就结束了,创业寒冬并没有在今年正式降临。从全球来看,今年迄今,美国和其他地区的风投活动相当强劲,但是这些都被中国的风投下降抵消了。一些行业的表现尤其出色,但是也有一些重要行业,包括外卖、电动汽车、加密货币及区块链,同比大幅下降。
|
算法 数据安全/隐私保护 Python
文件很容易被破解?python带你了解加密解密机制
本节使用python实现了一种简单的加密和解密机制。 描述:使用python实现一个简单的加密和解密机制,使用26个字母和一个单词作为密钥key 秘钥:大写英文字符串 明文:包含空格,大小写字母,数字等的字符串 实现过程 算法过程 学习从来不是一个人的事情,要有个相互监督的伙伴,工作需要学习py.
2520 0