将区块链哈希转化为文字标题?IPSE哈希技术Hashlink解释

前言

在人类历史中,有多次的转化改变了信息文明走向。第一个是人类语言的诞生。将人类从抽象的声音识别交流转化为具体的文字交流。第二个是二进制的广泛使用。二进制是电子信息技术的巨大进步,让机器用0和1就能处理各类信息,二进制成就了今天的计算机。那么第三个,哈希转化会成为第三个重要的转变吗?


区块链网络中,为了安全和不可篡改,散列函数(即Hash)运用到数据结构的解决方案。数据经过转化,通过哈希值可以检验数据的完整性。哈希也就被用于数据的快速查找和加密算法。哈希值就像一个专属的指纹,独一无二。哈希在IPFS星际文件系统中“表露无疑”。


哈希的问题

除了Hash冲突和碰撞,目前哈希最大的问题就是哈希数值复杂化。在星际文件系统中,文件的哈希地址往往是一串字符串。比如这个哈希地址:

Qma1NrADxXtGwRxuyFYqxH7En78zuXV33WXu4XhsLfiXsc


这是什么?如果是没有接触到哈希概念的人,初次看到这一字符串,能知道它是什么吗?即便是了解哈希解构和知道哈希表的技术人员,看到一个新的哈希地址,他/她是否能根据地址说出代表的文件或数据?


哈希地址越来越多,哈希地址的长度太长。人类大脑比不上计算机,这些哈希地址是无法记住的。并且,作为内容寻址的IPFS,谁要是丢了你一个哈希地址(比如上面的),一时间根本不知道那是什么。


让哈希地址转化Hashlink

为了实现哈希的转化,IPSE开始了基于分布式数据结构处理的解决方案——Hashlink,使得冗长难记的哈希地址转化为简单易懂的文字标题,让区块链世界中的海量哈希和大脑可识别、可记忆的文字连接,使得符号记忆系统转变为形象记忆系统。

点击查看

目前,已经有50亿文件存在于星际文件系统上,并在不断增加。如何快速而高效的检索这些数据就成为了一个巨大的挑战。IPSE承担着检索层的任务,帮助用户快速搜索到星际文件系统上文件,并使用Hashlink直接知道文件是什么,搜索结果会在前端直接展示出来,用户可以查看到文件的哈希地址和相关联的文字标题。


Hashlink技术阐述

Hashlink是IPSE共识流程和数据持有性证明的关键部分。通过IPSE Consensus算法,存储矿工接收到任务后,进行下载并通过本地IPFS节点上传到网络。完成下载和上传任务后,需要上报挖矿成果,其中就包括minerid,taskid,size,category,tag等参数。而哈希地址相关的tag参数来源于hashlink。

点击查看


当遇到需要对一个数据切片发起挑战时,存储矿工需要对这些数据切片涉及到的扇区进行数据持有性PDP证明,并且将这些证明集合提交。然后索引起hashlink,然后将下发任务的状态进行更新。在数据持有性证明中,存储矿工根据被挑战的数据块内容,tag信息,challenge信息以及自己生成的一个随机数计算得到一个proof。用于检验是否真实存储了数据。Hashlink在共识流程及数据持有证明中是不可分离的关键部分。


具体可以在ipse.io上测试实际效果:

1.首先发现一个文件哈希

hash: QmewJcNhkw32yES3ZN5YrMgzGLr9twzTMCPnz5pKcfP6nN

2.经过Hashlink转化

3.文件标题为Love.Death.and.Robots.

4.在线访问结果: 点击查看


其实前三个步骤就是主要的环节,经过Hashllink后,陌生的哈希即可与文字进行匹配。


如果现在就说哈希转化是第三次信息文明的转变,未免太过理想。和人类语言诞生和二进制使用一样,哈希转化的作用只有历史才能证明。

转载于:https://juejin.im/post/5d2da09e6fb9a07ee0634a82

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/461918.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Gabor滤波器原理

一、什么是Gabor函数(以下内容含部分翻译自维基百科) 在图像处理中,Gabor函数是一个用于边缘提取的线性滤波器。Gabor滤波器的频率和方向表达同人类视觉系统类似。研究发现,Gabor滤波器十分适合纹理表达和分离。在空间域中&#x…

Linux中的MAN命令

学习Linux的同学,都会使用man来查阅一些命令的帮助信息,常见的使用方法就是“man 命令名称”这样简单的格式。本文就对man命令简要介绍一下。 l man命令的章节 man就是manual的缩写,用来查看系统中自带的各种参考手册,但是手册页分…

java程序调用Oracle 存储过程 获取返回值(无返回,非结果集,结果集)

oracle中procedure是不能有返回值的,要想返回值,就得有输出参数,同样要想返回记录集,可以把游标类型作为输出参数。 下面是详细情况说明: 一:无返回值的存储过程调用 存储过程: create or repl…

jeecms附件标签用法

[#if content.attachments?size gt 0] [#list content.attachments as attach] <a id"attach${attach_index}">附件下载</a> [/#list] [/#if] 转载于:https://www.cnblogs.com/Jeely/p/11195310.html

递归的理解

其实就解决两个问题 1、当前应该怎么做&#xff1b; 2、下一步应该怎么做&#xff1b; 见下面的一个短小的例子&#xff1a;倒着输出刚才输入的整数。 #include<stdio.h>void fun(int);int main(void) {int a 0;printf("value of a \n");scanf("%d&quo…

点云配准

https://www.cnblogs.com/endlesscoding/p/10033527.html https://www.cnblogs.com/yhlx125/p/4955337.html https://blog.csdn.net/qq_41581769/article/details/89460153

支持多并发的单例有哪几种写法

一.什么是单例以及单例的使用场景就不多说了&#xff0c;不清楚的可以看我上篇文章或者自行查找 二.单例和多并发之间的规则 单例就是只能创建一个实例对象&#xff0c;而多并发情况下如果不处理一下单例的写法很难保证只创建一个实例对象&#xff0c;所以后面会出问题 处理的思…

兼容各种浏览器的自动左右滚动兼左右点击滚动代码

直接切入正题 红色表示要统一&#xff08;所有的id&#xff09; 演示地址&#xff1a;http://www.er-china.com/index.php?mcontent&cindex&alists&catid772 本框架为phpcms&#xff0c;大家可根据自己的框架更改循环。 <div class"rollBox"> <…

同步数据库仅在Worker内,目前只有Chrome6支持

Database.html <!DOCTYPE HTML><html> <head> <meta charset"UTF-8"> <title></title> </head> <body> <script> if(window.Worker){ var workernew Worker(worker.js); //向worker发送消息 wo…

全局曝光和卷帘曝光的区别

全局曝光和卷帘曝光是常见的相机曝光方式。一般来说&#xff0c;CCD相机是全局曝光&#xff0c;而CMOS相机则存在卷帘曝光。那么&#xff0c;这两种方式孰优孰劣呢&#xff1f;或者说&#xff0c;他们两者的差别在哪里呢&#xff1f;那么&#xff0c;先从两者的定义说起。 全局…

*p++、*(p++)、*++p、*(++p)的区别

1、*p 与 *(p)的区别 因为“”的优先级大于“*”&#xff0c;所以*p 相当于*(p)。 但是p表示先运算再&#xff0c;所以*p或者*(p)&#xff0c;其实等价于“先(*p)&#xff0c;然后再p”。 注意&#xff0c;“先(*p)&#xff0c;然后再p”不能表示成“ (*p)”&#xff0c;因为(*…

MySQL常用总结

创建数据库&#xff0c;指定编码utf8 create database wish charset utf8; 删除库 drop database wish; 使用库 use wish; 查看有什么表 show tables; 删除表 drop table wish; 清空表所有数据(主键从1开始) truncate stu; 显示表结构 desc wish; show create table wish; 设置…

Titanium 列表显示TableView

效果&#xff1a; Titanium中列表显示需要创建TableView var tableView Ti.UI.createTableView({style: Ti.UI.iPhone.TableViewCellSelectionStyle.NONE //TableView样式}); TableView的每一个行叫做TableViewRow 设置TableViewRow的hasChild为true便可显示这样的效果&#x…

Matlab的fspecial函数

函数原型 h fspecial(type) h fspecial(type&#xff0c;para) 根据函数原型对fspecial函数作个说明&#xff0c;fspecial是用来生成滤波器&#xff08;也叫算子&#xff09;的函数&#xff0c;使用type参数来指定滤波器的种类&#xff0c;使用para来对具体的滤波器种类添…

discuz x2.5插件开发傻瓜图文教程,用demo说话

2019独角兽企业重金招聘Python工程师标准>>> 刚刚接触DZ的插件开发&#xff0c;记个傻瓜图文教程&#xff0c;一是分享给初学者&#xff0c;二是方便自己以后回忆。 本篇文章适合人群&#xff1a;有一定的PHP开发经验&#xff0c;想通过一个简单明了的demo快速了解…

uboot源码——gd_t 类型、bd_t 类型

bd_t、gd_t是u-boot中两个重要的数据结构&#xff0c;初始化操作中很多全局变量都要靠这两个数据结构来保存或传递。 两者分别定义在include/asm-arm/u-boot.h、include/asm-arm/global_data.h中。 一、bd_t 类型 struct bd_info 这个结构体类型&#xff0c;主要是用来保存板子…

代码抽象的三原则

软件开发是"抽象化"原则&#xff08;Abstraction&#xff09;的一种体现。 所谓"抽象化"&#xff0c;就是指从具体问题中&#xff0c;提取出具有共性的模式&#xff0c;再使用通用的解决方法加以处理。 开发软件的时候&#xff0c;一方面&#xff0c;我们总…

对图像高频信号和低频信号的理解

今天开始讲图像了&#xff0c;讲了很多在频域处理的方法&#xff0c;回来复习一下图像的频域。 一 、关于图像高频和低频 1.1 对图像高频信号和低频信号的理解 图像中的低频信号和高频信号也叫做低频分量和高频分量。 简单一点说&#xff0c;图像中的高频分量&#xff0c;…

关于开源中国手机App的说明

随着移动互联网大潮的快速发展&#xff0c;开源中国社区作为国内大型IT技术人员社区也推出了手机移动客户端&#xff0c;覆盖iOS&#xff0c;Android以及Windows Phone这三个手机平台。主要为了能让我们的用户能随时随地的与开源中国社区的用户进行交流与互动。我们需要App实现…

uva 11174(排列组合+搜索)

依然是liurujia计数练习题。依然是自己想没想出来&#xff0c;在MOD是素数的情况下除以x即为乘x的逆。这个真心以前没听过&#xff0c;用了这个方法后处理就变得十分巧妙。 整个程序步骤还是很清晰的&#xff0c;先上来算阶乘与逆&#xff08;求数的逆还是有点没理解透&#xf…