哈希算法函数的定义描述及其特征介绍

哈希的本质是一个采用哈希算法的数学函数,它被广泛应用于区块链中构建区块以及确认交易信息的完整性上。

什么是哈希算法?哈希算法是密码学中的一个重要算法,哈希的英文为Hash。

哈希算法有一个输入和一个输出,其输入称为消息,输出值是根据消息内容计算出的值,称为哈希值(又或称为摘要)

哈希算法函数的定义描述:

(1)输入消息长度任意

(2)输出哈希值长度固定

简单的理解,就是一串任意长的数据经过哈希函数的计算后,生成一串长度固定的短数据。

当今区块链技术中大量使用的哈希算法函数是SHA-256。SHA-256是SHA-2算法家族中的一种,SHA全称是安全哈希算法(SecureHashAlgorithm)。SHA-256的输入消息长度为任意位数,其输出的哈希值长度固定为二进制的256位。SHA-256具备密码哈希函数的基本特性

哈希函数有三个重要的特征。

第一,哈希的单向性、就是我们只能够把任意长度的数据,通过哈希函数生成一个固定长度的哈希值,反过来却不可能通过这个哈希值再推导出原来的输入数据,这就是哈希的单向性。

很多人好奇区块链是怎么形成的,简单理解,区块链=区块+链。例如我们把一个区块打包以后就会通过哈希函数计算出一个哈希值,这个值就会存放到下一个区块中,下一个区块里的哈希值就把上一个区块给锁定了,这就是哈希锁定。区块链的不可更改就是从这里来的,因为如果你把前面的区块数据篡改了,那和后面区块里的哈希值,就不能够对应了。在区块链中,每一个区块都对上一个区块进行内容锁定,这就是哈希锁定。

第二,哈希的唯一性。我们把一个任意长的数据通过哈希函数生成一个哈希值,生成的这个哈希值是唯一的。不会存在两个不同的输入生成的哈希值相同的这种情况。但是这句话是有问题的,为什么呢?你把任意长数据变成短数据,或者说你把大的文件变成一个短的哈希值,在科学上它是有一定的概率会形成相同的哈希值的,只是这个概率极低极低,到目前为止,采用SHA256算法的哈希函数还没有发生过相同哈希值的碰撞事件,所以说哈希的唯一性,就是这么来的。

第三,哈希的离散性。离散性是什么意思呢,就是两个非常相近的文件,或者说两个只相差一位数的数据,计算出来的两个哈希值却是天壤之别,是没有任何相似的地方的,这就是哈希的离散性。这个特性有效地规避了一些特定的攻击,如果两个文件只相差那么一丢丢,他计算出来的哈希值也很相近的话,是很容易遭受到攻击的。以上所述是哈希的三个重要特征。

THE END
1.数据加密哈希算法加密哈希算法散列表(哈希表)、散列函数(哈希函数) 对称/非对称加密 信息摘要 图文彻底搞懂非对称加密(公钥密钥) 哈希算法 哈希思想:哈希表与哈希桶的深度解析 哈希表+哈希桶简介及实现 基本介绍 参考:hash算法详解 定义:散列算法(HashAlgorithm),又称哈希算法,杂凑算法,是将任意长度的二进制值串映射为固定长度的二进制值串,这https://blog.csdn.net/qq_38496750/article/details/135203924
2.介绍哈希算法及其在数字签名中的应用到目前为止,你已经了解如何使用加密来防止消息被窥探。 加密还用于验证数据(如文档和图像)是否被篡改。 通过称为哈希的过程完成此操作。 什么是哈希? 哈希使用算法(也称为哈希函数)将原始文本转换为固定长度的唯一值。 这称为哈希值。 每次使用同一算法对相同的文本进行哈希处理时,都会https://docs.microsoft.com/zh-cn/training/modules/describe-concepts-of-cryptography/4-describe-hashing-its-application-digital-signing/
3.深入研究哈希的概念和原理哈希函数 哈希函数采用可变长度的输入数据并产生固定长度的输出值。我们通常将其称为哈希码、摘要、哈希值或简称哈希。#优质作者榜#哈希函数有一些重要的属性:散列是一种单向过程。因此,我们无法从其哈希中检索原始数据。哈希函数是确定性的。因此,当我们将相同的输入传递给哈希函数时,它总是生成相同的输出哈希码,https://baijiahao.baidu.com/s?id=1786215886634044507&wfr=spider&for=pc
4.小白入门——哈希算法哈希(Hash)也称为散列,就是把任意长度的输入,通过散列算法,变换成固定长度的输出,这个输出值就是散列值。 哈希表 哈希表(Hash table,也叫散列表),是根据关键码值(Key value)而直接进行访问的数据结构。也就是说,它通过把关键码值映射到表中一个位置来访问记录,以加快查找的速度。这个映射函数叫做散列函数,存放https://www.jianshu.com/p/07d9b19bb265
5.未来科学大奖首位女得主王小云:多关注密码学界年轻人才—新京报王小云破解了5个国际通用哈希函数算法,她将成功的密码归因于“坚持”,“一个人能够坚持10年做一件事,一定能做成。” 新京报快讯(记者 张璐)今年9月7日,2019未来科学大奖揭晓,这项设立4年的大奖迎来首位女性得主——密码学家王小云。 在信息时代,金融服务、网络安全等背后都离不开密码系统的“护航”。在大众眼中,https://www.bjnews.com.cn/detail/157395355915964.html
6.Comunion区块链深度学习系列哈希碰撞原理什么是原像?函数有定义域,有词语,有对应关系。那么类比到这里,原像是指定义域里面的一些未知数。 引用哈希算法应用中挖矿的例子来说,X是定义域,里面的部分就是原像,Y就是一个值域。 我们来看其定义,几乎所有消息摘要,都难以用ppn算法计算出一个原像。 https://m.thepaper.cn/wap/resource/jsp/newsDetail_forward_8774038
7.王小云院士回顾展望密码前沿研究王小云院士是国际著名的密码学家。她提出了密码哈希函数的碰撞攻击理论,并以此攻破了多个以前被普遍认为是安全的密码哈希函数标准,推动并帮助了新一代密码哈希函数标准的设计,并已在金融、电网、交通等重要领域广泛使用。 11月1日,中国密码学会——密码安全与人工智能前沿研讨会在陕西省西安市召开。多位行业主管部门领导https://www.sxgmj.gov.cn/f/view-13-36704448610b44d9a8e321fcd4c66a21.html
8.hash函数的基本知识·点滴算法·看云将关键字分割成位数相同的几个部分(最后一部分位数可以不同),然后取这几个部分的叠加和(舍弃进位)作为哈希地址。 关键字位数很多,而且关键字中每一位数字分布大致均匀时,可以采用折叠法。 3 处理hash冲突 1)冲突是如何产生的? 上文中谈到,哈希函数是指如何对关键字进行编址的,这里的关键字的范围很广,可视为https://www.kancloud.cn/digest/pieces-algorithm/163623
9.科学网—[转载]基于区块链与函数加密的隐私数据安全共享模型研究步骤5:解密。DU首先利用Usk对链上获取的被Upk加密的sk进行解密。然后从CSP获取密文,并与链上的哈希值进行对比,验证文件是否被篡改,最后运行解密算法获取F(x)。 4 算法构造 下面详细阐述本文模型中使用的函数加密和零知识证明的具体算法设计及构造过程。 https://blog.sciencenet.cn/blog-3472670-1362036.html
10.熵选择多重二进制编码基于映射的哈希算法, 如LSH算法[7]和ITQ算法[14], 这类算法的哈希函数为线性映射函数。基于映射的哈希算法根据新样本点与线性哈希映射函数的映射结果的符号, 将新样本点编码为二进制编码。基于查找的哈希算法所生成的二进制编码对数据集在欧式空间内的分布特性有较强的自适应性, 近邻检索性能较好。但基于查找的http://xuebao.jlu.edu.cn/gxb/article/2017/1671-5497-47-1-218.html
11.什么是哈希算法?常见的哈希算法有哪些?区块链技术区块链哈希算法是一种数学函数或者算法,它可以将任意长度的数据(称为“消息”)转换为固定长度的字符串(称为“哈希值”或者简称“哈希”)。哈希算法的作用是将数据进行一次性的加密,从而生成一个唯一且不可逆的标识。哈希算法在数据安全、数据压缩、数据检索等领域有着广泛的应用。本文将介绍哈希算法的原理、特点、用途和常https://www.jb51.net/blockchain/891421.html
12.哈希算法(hash)加密解密腾讯云开发者社区一、哈希算法(hash)加密解密介绍 代码语言:javascript 复制 哈希,英文叫做 hash。 哈希函数(hashfunction)可以把 任意长度的数据(字节串)计算出一个为固定长度的结果数据。 我们习惯把 要计算 的数据称之为 源数据, 计算后的结果数据称之为 哈希值(hash value)或者摘要(digests)。 https://cloud.tencent.com/developer/article/2080658
13.80个常用的哈希算法Tangle:一种基于有向无环图(DAG)的哈希函数,用于IOTA加密货币的事务验证和存储。 Streebog:俄罗斯标准的哈希函数,生成256位和512位哈希值,广泛应用于密码学和安全领域。 Poly1305-AES:使用AES加密算法和Poly1305消息认证码生成哈希值,用于身份验证和数据完整性校验。 https://www.bilibili.com/read/cv23729219/
14.基于相似度驱动的线性哈希模型参数再优化方法无监督哈希学习算法在哈希函数设计或哈希码的学习过程中不需要样本标签信息, 其中, 谱哈希[2, 3]和迭代量化哈希[4]及其改进版本是两类典型的无监督哈希算法.近年来, 在图像检索领域, 结合样本的其他属性, 出现了很多无监督哈希学习算法[5-8], 例如, Zhu等人[5, 6]提出了利用文本辅助的语义迁移构造无监督哈希https://www.jos.org.cn/html/2020/4/5918.htm