哈希是英文Hash的音译,它是一种信息压缩的方法。利用哈希能够将很长的一段文字,压缩成很短的一段乱码,然后获得这段信息的“摘要”。

  下面讲的是比特币,这个词大家可能都不陌生,很多人当初接触区块链就是因为炒比特币,也有很多的区块链开发技术公司专门去挖掘比特币。那比特币为什么用SHA256?这是因为比特币中所用到的信息加密方法,是基于哈希的加密方法一SHA256, SHA即安全散列算法(Secure Hash Algorithm), 256指的是哈希值的位数,即256bit。SHA256的特性就是相同的输入信息通过SHA256的输出值是唯一的,当用SHA256加密的信息中受到修改,即使是很小的修改,得到的结果也会完全不同。

比特币本身是个公开的账本,每一个区块就是一页账,从首页开始,每一页上都有一个这样的哈希值。每一页的哈希值,都是由上一页的哈希值和剩下的信息通过SHA256得到的结果。如果有人修改之前的账目,那从修改的下一页账开始,每一页的哈希值都会完全不同,会被所有人一眼看穿。修改过的账本,是不能得到51%以上的人承认,也不能被写入区块中,因此修改是无效的。这样的设计可以保证比特币这个分布式账本的不可篡改性。

SHA安全加密标准是至今世界上使用最广泛且安全的压缩算法之一,随着密码学研究的不断深入和计算机技术的快速发展,SHA-256算法得到全面推广应用,并且使用SHA-256加密算法的比特币网络已安全运行多年,这是因为它在数学上的复杂性保证的。凭借现在的计算机破解需要消耗极大的资源,所以不能获得利益。数次的黑客攻击事件,并非攻破了由于比特币网络本身,而是交易所和一些个人。SHA-256这套算法的安全性是被世界各国密码学家所广泛承认的,在量子计算机普及之前,其安全性不必担心。
  
  文章来源:https://www.jianshu.com/p/e5a54d3ec666

区块链中的哈希是什么?相关推荐

  1. 哈希函数在区块链中的应用

    哈希指针 除了保存结构体在内存中的位置还要保存结构体的哈希值. 好处:不只可以找到结构体的位置,还可以检测这个结构体的哈希值. 区块链和普通链表的主要区别就在于用哈希指针代替了普通的指针. 识别区块数 ...

  2. 区块链中哈希算法c语言代码,解析区块链中的核心技术哈希(Hash)算法

    原标题:解析区块链中的核心技术哈希(Hash)算法 作者:崔利民 区块链是分布式数据存储.点对点传输.共识机制.加密算法等计算机技术的新型应用模式.区块链的关键技术组成主要为:P2P网络协议.共识机制 ...

  3. 区块链100讲:区块链中的随机数

    2019独角兽企业重金招聘Python工程师标准>>> 我们生活的环境充满了随机性.一直以来,运气,概率和命运这些概念都与随机性紧紧联系在一起.所有人类无法理解或无法预测的事物往往都 ...

  4. 区块链中的基本概念整理

    区块链中的基本概念整理 区块链本身是由多种技术集合而成,涉及了多方面的内容,而在其组合应用的过程中,同时也产生了很多新的概念.对于这些概念的整理和理解,有助于更加深刻的理解区块链的本质,也可以指导我们 ...

  5. 区块链中密码学与安全技术

    区块链的定义 区块链的定义,应当是:区块链是一种按照时间顺序将数据进行分布式存储的块链式数据结构,它利用共识机制进行数据验证,利用密码学进行数据保护和用户安全访问,利用智能合约来操作数据,从而成为不可 ...

  6. 区块链中涉及到密码学的场景

    区块链中涉及到密码学的场景 共识算法(Consensus algorithm) 交易签名(Signing transaction) 第二层网络如何在第一层网络中验证(Layer2's verifica ...

  7. gossip 区块链_区块链中的P2P

    区块链中P2P介绍 p2p是什么 为什么区块链需要P2P 比特币.以太坊.超级账本和EOS的P2P对比 P2P是什么 P2P作为区块链网络中去中心化的标识 P2P全称对等式网络(peer-to-pee ...

  8. 密码学在区块链中的应用 【八】

    密码学在区块链中的应用 [8] 区块链相关密码学 数据的组织方式,区块链的块链结构.通过块的哈希链接起来的链. 世界状态:使用 merkle 哈希树组织,便于快速检索和网络传输.如账户树,交易树,账单 ...

  9. sdk版本过低怎么办_区块链中的“块”是什么?区块链网络拥堵怎么办?-Gemini双子新约...

    区块链中的"块"是什么? 比特币是基于区块链的,这一点大家都知道.但是这个区块链是什么呢?更准确地说,区块链的各个组成部分是什么呢? 区块链是一个数据块.每个块可以看作是分类帐中的 ...

最新文章

  1. 简单易上手编译FFmpeg
  2. OpenCV-Python教程(4、形态学处理)
  3. pip国内镜像源速度几十倍于官方及如何设置
  4. CVPR 2019 开源论文 | 基于翻译向量的图像翻译
  5. 人脸识别撞脸名画_奇瑞全新电动SUV现身,“撞脸”保时捷,全铝车身,轴距2805mm...
  6. ubuntu20.04安装mysql_Ubuntu 20.04安装MySQL 8.0.20记
  7. 2x麦克劳林公式_极限求解-泰勒公式理解
  8. svn: E155036: Please see the ‘svn upgrade‘
  9. 如何取消计算机待机时间,如何更改电脑待机时间
  10. uniapp之安卓使用高德地图
  11. 那些年,从博客到出书的博主
  12. 数据探查平台-元数据对标专利 -- 普帝
  13. Java中的基本数据类型讲解(数值型、字符型、布尔型)
  14. 先验分布 后验分布 似然估计
  15. Sealed class密封类详解
  16. windows搭建go语言开发环境
  17. 小米手机怎么关闭移动卡信号显示无服务器,一条指令代码教你解决小米手机信号和待机问题...
  18. python print rdd_【Spark机器学习速成宝典】基础篇02RDD常见的操作(Python版)
  19. [XCTF-Reverse] 58-61
  20. OCaml入门(一)——OCaml中的基本数据类型、运算符号、表达式和函数

热门文章

  1. 配置HylaFAX传真服务器
  2. 公务员的福利待遇比事业单位的好吗?
  3. Scrapy——可配置的爬虫
  4. android天气搜索框,Android简易天气App
  5. 李小璐晒全家福 贾乃亮赤膊女儿可爱(图)
  6. 智慧平安社区系统开发解决方案,智慧小区大数据分析平台建设
  7. *谷粒商城项目笔记*
  8. s3c2416运行JAVA_s3c2416裸跑环境配置
  9. 机械学哪种计算机语言,哪种编程语言被认为是最适合机器学习的语言?
  10. 解压压缩软件推荐 —— Bandizip