什么样的数据应该上链?| 联盟链开发 (五)

  • 李大狗
  • 更新于 2020-02-04 18:32
  • 阅读 1436

先思考数据上链的目标与特点

系列索引: 上链与背后的流程 | 联盟链开发(一) 动手编 SDK | 联盟链开发(二) SDK 1.0 版本的打造 | 联盟链开发(三) 将 SDK 发布到 PIP | 联盟链开发(四) 什么样的数据应该上链?| 联盟链开发 (五) BSN 相关问与答 | 联盟链开发(六) 链上简历应用 — 设计 | 联盟链开发(七) FISCO BCOS 介绍 | 联盟链开发(八) WeIdentity 极速体验 | 联盟链开发(九) 给Remix升个级 | 联盟链开发(十) 伪代码简述 ECDSA 签名过程 | 联盟链开发(十一) WeIdentity 的多签及限量凭证的实现 | 联盟链开发(十二)


目前,区块链仍然是一个处于早期的领域。

对于诸多新接触这个领域的开发者来说, 「什么样的数据应该上链」 是一个需要深入思考的问题。

今天我们对此进行一些探讨。

数据上链的目标是什么?

提到区块链数据,那么提及最多的一个特性就是 「不可篡改」 了。

但是,在我的理解里,「不可篡改」是区块链数据的特性,而非 「目标」

有时候不可篡改是要达成这样一个目标 —— 增强数据的 「可信度」

所以,数据不可篡改,就可以推导出数据可信吗?

并非如此。

我对某个电影的评论上链了,并不能够直接地让我的评论更加可信。

因此,如何正确地选择上链的数据,以结合「不可篡改」的特性让数据达成「更加可信」这一目标,是需要我们思考的。

在这里,我就不给出正面例子了,以免限制大家的思路。反正,链上豆瓣这种区块链应用是「然并卵」。

除了增强数据「可信度」之外,有时候我们还会用数据上链达成另一个目标——「证明数据上传在某个时间点之前」,进而 「证明数据诞生在某个时间点之前」

有时候我们会把这两个目标混淆,虽然都借助了不可篡改这一特性,但这两个目标截然不同。

这个目标的一个很典型的应用就是「著作权」的证明,通过上链来证明 「我的作品诞生于某个时间点之前」

数据上链的特点是什么?

1)成本高

就目前阶段而言,数据上链的成本要远高于存储在普通数据库里。

因此,大型数据,例如视频文件并不适合存在区块链上。

事实上,如果是为了达成前述的两个目标,大型数据在链上存储没有必要。

「保证数据可信」与「证明数据诞生在某个时间点之前」,我们都只需要在链上保存数据的「哈希值」就行了。

2)上链即透明

在大部分情况下,上链的数据对所有人都开放了「读权限」,因此数据上链即意味着数据透明。

所以在进行数据上链的时候,我们要谨慎地思考,究竟什么样的数据是要做到如此透明的。「数据滥用」在这个时代是一种危险且泛滥的行为。

一个解决方案是让 「上链权归用户」 ,让哪些数据透明化让用户自己决定。

本文是一篇开放型文章,并未给出明确的答案。因为正如文章开头所言,区块链仍然是一个处于早期的领域,我们需要在保持谨慎的同时打开我们的思路。大家加油ヾ(◍°∇°◍)ノ゙!


.jpeg

点赞 1
收藏 0
分享
本文参与登链社区写作激励计划 ,好文好收益,欢迎正在阅读的你也加入。

0 条评论

请先 登录 后评论
李大狗
李大狗
面向炫酷编程