搜索
首页web3.0学习区块链过程中的高频概念:哈希函数

学习区块链过程中的高频概念:哈希函数

Mar 06, 2024 pm 01:36 PM
区块链比特币区块链技术哈希函数比特币 (bitcoin)区块链(blockchain)

想进一步了解区块链技术和比特币的小伙伴,就不得不翻越技术的围墙,从技术的角度,“睁眼”看看区块链世界里第一个杀手级成功应用比特币,看看中本聪为什么能被称为外星人,而提到区块链的技术这就不得不提到,学习区块链技术经常被使用到的一个知识——哈希函数。

哈希函数是一种从任何一种数据中创建小的数字指纹的方法。哈希函数把消息或数据压缩成摘要,使得数据量变小,将数据的格式固定下来。该函数将数据打乱混合,重新创建一个叫做散列值的指纹。

百度百科和维基百科真有别称的话,应该叫(专业到让人)看不懂百科。给哈希函数一个简洁的白话定义:哈希函数是一系列复杂的但输出值位数固定的数学变换。

变换不能乱变换,要照着如下过程来:

1、任何长度的内容(数据)
2、经过这系列复杂但固定的数学变换后
3、会输出一个固定长度和格式的数据(数值)

脚注:数学领域会用 H() 表示这经过变化后输出的数值,中文名叫消息摘要或数字指纹。

比如,在比特币中,公钥生成地址时用到的哈希函数 SHA256,后面的“256”的意思是输出是固定 256 位长度的数据。

学习区块链过程中的高频概念:哈希函数

这数学变换不是任意变换都能被称之为哈希函数,一个数学变换要升级为哈希函数必须符合三个条件:唯一性、单向性、暴力求解:

1、哈希函数的唯一性

直观的理解就是:只有输入X,才能得到H(X)。理解这个特性时,可以把哈希函数理解成你和你的指纹,你是输入,你的指纹是输出,唯一性就是指只有你才能有你的指纹,在比特币里就是指,你转账用的比特币地址,只有你的公钥才能生成,就像你的指纹是独一无二的一样,世界上没有任何其他人能生成和你一样的转账地址。

2、哈希函数的单向性

哈希函数的单向性是指H(X)是无法反向推导X。如果给你一个指纹,仅有一个指纹的你,是绝对想象不出指纹的主人到底是男是女,到底长什么样,只能知道这是个指纹。

哈希函数的单向性可以用一个不准确但十分形象的类比来直观理解——来猜猜下巴的主人是谁?

学习区块链过程中的高频概念:哈希函数

这 Man 味十足的迷人下巴主人是白宇?是张震?还是赵又廷?谜底揭晓:是我们喜爱的坤坤,不是蔡徐坤,而是乡村 F4 谢广坤↓

学习区块链过程中的高频概念:哈希函数

因为哈希函数的单向性,所以在比特币里,即使我们的收款地址是公开的,但是没人能知道我们生成收款地址的公钥是什么,更无法知道生成公钥的私钥是什么。

市面上有一种言论说,量子计算机的出现会让比特币一文不值,但现在你应该知道,即使量子计算机出现可,目前也难以攻破哈希函数,哈希函数是中本聪为比特币设置的一道安全锁,希望比特币有充足的时间升级到抗量子的加密算法。

3、哈希函数的暴力求解

如果知道哈希值H(X)真想找到输入值 X,只能从源头出发,一个数一个数去尝试,每个数都套到哈希函数里,然后看看输出的哈希值是不是等于H(X)。

就像如果你真想知道某个指纹是谁的指纹,你只能全世界一个个人找过去,去对比每一个手里的指纹和这个指纹,是不是完全相同,没有丝毫偏差。 02

哈希函数因为这三个特性变成了中本聪手里的利器,帮助他在设计比特币的路上解决了多个难题,在比特币白皮书中,除了简介和结论的 10 个章节里,几乎每个章节都能看到哈希函数的使用

· 用哈希函数的唯一性用来防止作 假——数字签名

· 用哈希函数的唯一性来提升效率——默克尔树检索交易记录

· 用哈希函数的单向性用来保密——公钥生成比特币的地址

用哈希函数的暴力求解来设计比特币的工作量证明——当范围足够大的时候,拿着指纹去找指纹拥有人是不可能的事情,但如果把范围缩小呢,比如在一个只有几百万人的城市里找,难度就会小很多,这就是比特币的mining难度调整机制,想要难度高一点那就把范围扩大一点,想要难度低一点就把范围缩小一点。

1953 年哈希函数出现,1970 年哈希函数蓬勃发展,2001 年 SHA-256 出现,在 2008 年时,哈希函数却在中本聪手里被玩出了花,成为了区块链技术里不可撼动的基石。

从这个角度看,多少让人理解了为什么专家和大牛都忍不住夸赞中本聪天才,甚至怀疑中本聪是不是外星人。

至此,虽然比特币白皮书中技术原理你只是懂了一个基础知识哈希函数,但这一点都不妨碍你理解了比特币白皮书里 50%想要表达的内容。

以上是学习区块链过程中的高频概念:哈希函数的详细内容。更多信息请关注PHP中文网其他相关文章!

声明
本文转载于:知乎。如有侵权,请联系admin@php.cn删除
2025年5月份牛市怎么入场 入场交易所推荐2025年5月份牛市怎么入场 入场交易所推荐May 12, 2025 pm 08:51 PM

2025年5月份牛市交易所推荐:1、币安;2、OKX;3、火币;4、gate.io;5、芝麻开门等交易所。上述交易所安全可靠,并且支持多种币种,本文提供详细下载入口地址。

2025年火币APKV10.50.0下载指南 怎么下载2025年火币APKV10.50.0下载指南 怎么下载May 12, 2025 pm 08:48 PM

火币APKV10.50.0下载指南:1、点击文中直达链接;2、选择正确的下载包;3、填写注册信息;4、开始火币交易流程。

2025年牛市交易所推荐2025年牛市交易所推荐May 12, 2025 pm 08:45 PM

2025年5月份牛市交易所推荐:1、币安;2、OKX;3、火币;4、gate.io;5、芝麻开门等交易所。上述交易所安全可靠,并且支持多种币种,本文提供详细下载入口地址。

2025年火币APKV10.50.0下载地址2025年火币APKV10.50.0下载地址May 12, 2025 pm 08:42 PM

火币APKV10.50.0下载指南:1、点击文中直达链接;2、选择正确的下载包;3、填写注册信息;4、开始火币交易流程。

2025年火币APKV10.50.0下载网址2025年火币APKV10.50.0下载网址May 12, 2025 pm 08:39 PM

火币APKV10.50.0下载指南:1、点击文中直达链接;2、选择正确的下载包;3、填写注册信息;4、开始火币交易流程。

2025年牛市币有哪些 在哪里买方便2025年牛市币有哪些 在哪里买方便May 12, 2025 pm 08:36 PM

2025年牛市暴涨的币友:1、PI币(24小时暴涨57.12%);2、WIF币(24小时暴涨44.59%);3、KAS币(24小时暴涨18.9%);4、FLOKI(暴涨17.98%);5、PEPE(暴涨15.45%)。上述加密货币可以在币安、OKX、火币、gateio等交易所购买,本文提供详细下载入口地址。

火币APKV10.50.0版本安装教程火币APKV10.50.0版本安装教程May 12, 2025 pm 08:33 PM

火币APKV10.50.0下载指南:1、点击文中直达链接;2、选择正确的下载包;3、填写注册信息;4、开始火币交易流程。

2025年牛市交易所有哪些2025年牛市交易所有哪些May 12, 2025 pm 08:30 PM

2025年5月份牛市交易所有:1、币安;2、OKX;3、火币;4、gate.io;5、芝麻开门等交易所。上述交易所安全可靠,并且支持多种币种,本文提供详细下载入口地址。

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

安全考试浏览器

安全考试浏览器

Safe Exam Browser是一个安全的浏览器环境,用于安全地进行在线考试。该软件将任何计算机变成一个安全的工作站。它控制对任何实用工具的访问,并防止学生使用未经授权的资源。

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

功能强大的PHP集成开发环境

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

VSCode Windows 64位 下载

VSCode Windows 64位 下载

微软推出的免费、功能强大的一款IDE编辑器

MinGW - 适用于 Windows 的极简 GNU

MinGW - 适用于 Windows 的极简 GNU

这个项目正在迁移到osdn.net/projects/mingw的过程中,你可以继续在那里关注我们。MinGW:GNU编译器集合(GCC)的本地Windows移植版本,可自由分发的导入库和用于构建本地Windows应用程序的头文件;包括对MSVC运行时的扩展,以支持C99功能。MinGW的所有软件都可以在64位Windows平台上运行。