【签名】PRESSone上已创建的内容签名有版本概念吗?
-
群友问:
我认为PRESSone应该在创建数字内容的签名时,添加一个版本的概念。
虽然发布到区块链上的内容是不能修改的了,但在现实情况下,我们不可避免的会完善自己已经发布的数字内容,比如完善自己曾经发布的文章内容,或是修复已经发布的软件的bug等。这样购买过我的数字内容版权的用户,就能够自动获得我发布的更高版本的数字内容的版权。既不违反区块链数据不可篡改的特性,又能满足现实需求。
霍炬答:
有版本概念的,区块链本身就是版本。每次发布只要指向上一次的地址就行了。
-
-
本文主题:PRESSone如何实现“内容修订”?
一份数字内容,采用区块链技术进行数字签名后,是否依然可以更改内容?如可以,如何实现的?
答案是:可以实现。
这个提问,最初来自于PRESSone的用户,但其实也是区块链+内容行业的一个通用问题。
PRESSone CTO 的回答如下:
霍炬说的言简意赅,程序员们看到这里可能就已经懂了。
至于不那么了解技术的小伙伴们,还是不懂怎么办呢?这里分享一下我的理解,如有偏差欢迎评论指正。
采用区块链技术来服务内容行业时,就会涉及到一个关键问题:
内容是否上链?
在PRESSone的实现方案中,内容并不上链,内容经过hash运算后的hash才会上链。如大家所知,一份内容,即便简单改下标点符号,重新hash运算后的hash都会不同。
但真实情况是,用户们总会常常遇到文章修订,图片调整的情境。虽然文章/图片经过了修订,从用户的视角来看,依然还是同一篇文章/图片呀。
以上矛盾,该用什么办法解决?
不满足用户?是不OK的。
把不可篡改的区块链网络,经营成“可修改的”?非常不OK。
下面,我以霍炬的回答来推测PRESSone将如何实现内容修订。第二次强调,在PRESSone网络中,数字内容并不直接上链,而是数字内容的hash上链。
以一篇文章为例,
- 初始稿内容为a,生成的hash为x,上链保存视为版本A
当PRESSone通过web或者app把“修改内容并重新提交签名”的功能入口开放给用户,用户按需使用,就产生了以下情况:
- 用户把初始稿内容a修改为b
- 内容b生成的hash为y,上链保存视为版本B
此时链上就有2个版本,A与B。
- 链上,版本A的数据依然存在。
- 经过用户修改和提交,生成了一个新的版本B。
- 版本A和版本B被记录下相关关系。
当用户在PRESSone 的web或app访问该文章时,PRESSone就会呈现给用户最新的那个版本。
通过这样的方式,从用户的视角来看,PRESSone实现了内容修订的需求。而从PRESSone的视角来看,只是做了一次版本的关联和指向。
我这样讲,你能理解吗?
-
那么用户修改了哪些内容我们可以知道吗?在目前的社交网络有人删帖的话,如果事先没有截图我们就不知道原始发布的内容了;而区块链世界的一大特点就是不可删除,那么Pressone链上保存的只是Hash,如果有人删除或修改了内容,我们是否还可以还原出修改前的内容呢?
-
@Evan
Hash是不能反向还原出内容的,但是作者自己发布的内容的原始版本应该会有链下存储,会知道自己的原始内容。读者可以通过对比hash看出是否有修改。
-
@四爷 谢谢 那么另一个问题就是如果有人发布了一篇侵权文章,后来删除了 或者修改了 我们可以通过他的链上hash来证明侵权内容确实存在过吗?
-
@Evan 如果发现侵权立刻把快照存下来一份,之后就算删除也可以证明,你可以从保存的快照计算出来hash,和链上保存的hash一致。链上的内容/快照可以删掉,但hash是删不掉的。