小言_互联网的博客

3分钟带你入门CVT的PDP数据完整性验证协议

284人阅读  评论(0)

为了很好的维护PoC贡献量证明机制的生态运作,保障日益增长需求旺盛的“云储存”功能的安全,CyberVein技术团队提出了验证文件可用性和完整性的基本方法——PDP数据完整性验证协议,是将多个加密字节“哨兵”插入到数据块中进行“保卫”,集合严密的PDP检测机制,致使数据块处于半加密但又不可读、不可入侵。整个过程的每一步操作都会被写入区块链中,防篡改、可溯源。接下来,我将根据官方发布的相关资料对此进行解析,或许你只需花这3分钟仔细阅读,便能对PDP有一定的了解。

PDP是天书吗?只是你没读对罢了
相信不少人会觉得技术原理像天书,如CVT在其PDP机制中的一段描述:“PDP能检查远程云服务器是否保留一个文件,该文件由n个块的集合组成。数据所有者处理数据文件以生成一些元数据以在本地存储它。然后将该文件发送到服务器,并且所有者删除该文件的本地副本。所有者在质询响应协议中验证文件的拥有。”以上这段话的意思大概是在CVT中PDP方案,当你在链上存储了文件,云服务器会用N个“块”分别存储这份文件,本地磁盘即可删掉原来的文件以腾出更多的空间给你。也不必担心文件会丢失,因为众节点会共同记录和监督。

现在就说说人话,如果你可以操作这个PDP数据完整性验证协议,你该怎么做
PDP已经问世20年,是目前分布式储存领域最广泛使用也是最成熟的存储完整性证明机制。它能快速判断远程节点上数据是否完整,主要用于检测大数据文件的完整性。CVT的PDP机制的一个应用场景如下:
举例一个PDP应用场景:
1.Arthur要求Bobo存储一组信息;
2.Arthur本身并不会存储这组信息,原因有很多,可能内存不足,或者自己电脑存储不安全;
3.过了一阵子,Arthur请Chloe来确认Bobo是否还存储这组信息;
4.当然,Chloe并不了解这组信息的内容,只是个见证人
注:为了方便理解,我们对这些角色进行代换:Arthur即是用户,Bobo即为存储矿工,Chloe即为第三方审核者(以下简称TPA)。

这个应用场景的完成,有以下两个方面:

一、setup阶段(你得先拥有一个完成任务的工具):

1、初始化阶段
Arthur往电脑里插入她的硬盘,电脑和硬盘同时读写PDP的软件,把变量赋为默认值,把控件设为默认状态,注册成功后Arthur会有自己的密钥。
2、用户运行密钥生成算法生成密钥对(pk,sk)
Arthur按照使用说明,运行密钥,会生成算法和密钥对(pk,sk)
3、对存储的文件进行分块F=(m1,m2,…,mn)
分块是指分类,方便日后搜索。文件F是存储进PoC系统中的块(block)里,这些块有固定的存储量(视矿工贡献的空间而定),它们还可以链接其他块。如果存的文件小,只需放在一个块内即可,存的文件大,多的部分就会被分到其他块里,并创建一个空块,该块将链接到文件的所有其他部分。这个空块就类似于一个大信封,里面会涵盖整个文件的所有部分。
4、运行数据块标签生成算法,为文件中每一个数据块生成同态标签集合Φ
即Arthur对存储的文件分类完毕,会对她所存块的文件标记,同时这个标记会广播到所有数据块当中留底
5、Arthur将数据文件F和签名集合Φ同时存入云中,删除本地的{F,Φ}
Arthur所存储的文件F有了身份认证后Φ就上传到“云数据库”中,并通过系统检索找到了有足够存储空间的Bobo,即文件存入了“云数据库”中的Bobo。
此时就不会占用Arthur的本地磁盘空间,因为已经由Bobo来存储文件F了。而Bobo根据存储文件F的大小(178MB),会获得相应的Token奖励。

二、Challenge阶段(如果你想找到这个文件)

1、用户或TPA作为验证者,周期性的发起完整性验证请求。
Arthur想查看文件F是否还完整地存在云上,或是需要重新下载这份文件时,可发起验证请求。当然Arthur也可委托Chloe来验证文件F是否老实完整地存在Bobo那。
2、从文件F分块索引集合[1,n]中随机挑取c个块索引{s1,s2,…,sc},并且为每一个索引si选取一个随机数vi,将两者组合一起生成挑战请求challenge发送给服务器。
这时候,Arthur随PDP操作了一翻(别怕,有相关指令和步骤,基本上是不用动脑),系统会自动生成“搜查令”发送到“云数据库”中。
3、服务器作为证明者,根据存储在其服务器上的数据文件{F,Φ},调用证据生成算法和完整性证据P,返回给验证者。
服务器会快速索引文件F,若文件完整,会将“在云证明P”实时反馈给Arthur,以此确认Bobo还完整地存储着文件F,没有丢失也没有删除。
4、验证者接受证据后,执行证据检测算法验证证据是否正确。
若是由Chloe代查,并代收了“在云证明P”,Arthur依旧不放心,还能通过证据检测算法来验证这个“在云证明P”的真实性和有效性。

PDP数据完整性验证协议的极简主义

传统的文件上传和下载或浏览网页方式,都需要基于位置的寻址方式,一次一次从服务器上获取资料。一旦服务器出现故障、被限制或是被攻击,就会出现文件丢失或者网页无法打开的情况(错误404)又或是IP被删、服务器关闭,都会导致用户无法使用该文件。如果这个文件是很多人都需要的,那么每个人都得去下载才能使用,造成很大的存储空间浪费问题。PDP既去中心化的还是极简的,你往后需要上传或下载文件,不再需要跑到中心服务器上,也不存在信息丢失或者被篡改的问题,就能实现文件共享,并节省存储空间。PDP实则是重构了我们传递、获取、存储信息的方式,彻底改变我们看待信息的方式,成为我们日常生活的一部分。

欢迎大家加入并关注CyberVein其他自媒体社交平台,获取最新动态!

官方微博
weibo.com/CyberVein
官方CSDN
blog.csdn.net/CyberVein
官方GitHub
https://github.com/CyberVein-official
官方电报群
t.me/CyberVeinCommunity
官方推特
twitter.com/cyberveingroup
最新动态
twitter.com/cyberveingroup/status/1349952968955555841?s=21


转载:https://blog.csdn.net/CyberVein/article/details/113272208
查看评论
* 以上用户言论只代表其个人观点,不代表本网站的观点或立场