Author

Topic: 一种基于区块链的自主、安全的开放数据索引唯一标识符设想--ODII(Open Data Index Identifier) (Read 830 times)

sr. member
Activity: 288
Merit: 250
主意不错。
好的想法,要变成好的软件,才真正发挥威力。
这样的应用多了,区块链数据就越有价值。
比特币的价格也随之提高!

full member
Activity: 406
Merit: 100
一种基于区块链的自主、安全的开放数据索引唯一标识符设想--ODII(Open Data Index Identifier)
        
                  -- PPk兴趣小组 ( The PPk Public Group )
                        http://ppkpub.org/

1、ODII 简介
ODII(Open Data Index Identifier) 是开放数据索引唯一标识的缩写。广义上,ODII 是指在网络环境 下标识和交换数据内容索引的一种开放性系统,它遵从URI(统一资源标识符) 规范,并为基于数字加密货币区块链(BlockChain)的自主开放、安全可信的数据内容管理和知识产权管理提供了一个可扩展的框架。它包括4 个组成要素:标识符、解析系统、元数据和规则(Policies) 。狭义上,ODII 是指标识任何数据内容对象的一种永久性标识符。
ODII可以被形象地理解为“数据时代的自主域名”。

2、ODII 的主要性质和功能 
ODII 系统具有以下显著特性和功能:
a. 自主性。ODII 标识符基于去中心化的区块链技术由申请者自主生成并管理,其生成和管理规则是完全开放的,没有中心化的控制机构。除了拥有管理密钥的申请者之外,其他组织和个人都无权控制和篡改。
b. 安全性。每一个ODII 标识符的拥有者都对应拥有一对非对称加密技术的公私钥,可以通过私钥对自主发布的数据内容进行签名,接受数据内容的个体可以通过公钥进行验证,以确保收到的数据是来源可信和不被篡改的。
c. 唯一性。ODII 标识符能对任何数据内容对象(如文本、图片、声音、数据、影像、软件等) 的开放访问索引进行唯一标识,使数据内容对象能被人们准确地识别和提取。
d. 永久性。ODII 标识符一旦生成就将永久不变,不随其所标识的数据内容对象的持有者或存储地址等属性的变更而改变。
e. 兼容性。它可以与现有的一些标识符(如国际标准书号ISBN、国际标准刊号ISSN、国际标准文本代码ISTC、出版者标识符PII 等) 相互兼容。
f. 互操作性( Interoperable) 。ODII 的处理系统可以与网络上不同的计算机操作系统在处理同一数据时能保持一致,能与不同时期的技术系统兼容。
g. 动态更新。ODII 系统可对其元数据、应用和服务功能进行快速的动态更新。
 
3、ODII 的运行机制
“PPk开放组”( The PPk Public Group)定义并发起建立了一套完全开放的ODII 运行机制, 包括基础技术(PPk System)和扩展应用方面。其中, PPk System 是一个基于区块链的分布式数据内容索引命名与标识系统,它保证数据内容的自主开放性、安全性、唯一性、永久性、可扩展性。

 首先,每个有意开放数据的个体(Data Owner)可以通过开源的ODII注册客户端来自主注册获得一个ODII号(成为ODII拥有者,即ODII Owner),以此为前缀可以为其开放的每一份数据资源编制一个包含本身ODII 前缀的,且增加了后缀的ODII 标识串,并将该ODII标识串索引到数据资源的元数据和URL 上,这样ODII 就成为数据资源的一部分,始终与该数字资源共存。然后,已被开放的这些数据资源的ODII 记录、元数据及其URL 信息可以JSON编码的形式保存在该ODII拥有者的数据库内,这些被集中存贮起来的资源就形成一个OODI资源标识库。
 
 当用户根据OODI标识串寻找一个数据资源或有关这一资源的相关信息时,查询请求就会通过开源的ODII解析库在区块链上进行定位,然后被传送到该ODII 拥有者所登记的访问点(Access Point)上进行解析并得到该数据资源的元数据描述和实际数据URL链接。
 
 ODII拥有者可以完全开放数据资源访问权,也可以通过适当的自定义机制让用户获取数据资源访问权,如通过订购、资源传递、按浏览付费或者预印本付费等方式获得。
 
 有条件的个体可以自主提供代理注册服务(称为ODII注册者,ODII Register),ODII注册者缺省拥有所代理注册ODII的维护私钥并有权对ODII的注册登记信息进行配置更新, 但经ODII Register和ODII Owner双方确认同意的情况下,可以将注册者转移更新为由ODII Owner拥有私钥的比特币地址,这时ODII Owner将获得完全自主的权利,等同于自主注册。

4、ODII的编码方式

4.1 一级骨干ODII
一级ODII 的标准结构式为:
        ppk:[BLOCK_SN].[INDEX_SN]/[DSS]
ODII 分为前缀和后缀两部分 中间用一斜杠分开。前缀中又以小圆点分为两部分 [BLOCK_SN]为该ODII在比特币区块链上的登记记录所在区块的数字流水号(由比特币网络决定),
 [INDEX_SN]为该ODII在比特币区块链上的登记记录所在区块内的具体存储位置的阿拉伯数字编号(从0开始寻址)。
 
后缀[DSS] (Data Suffix String)由ODII拥有者可选并自行给出的具体资源标识,需要自主确保具有唯一性。

下面几例都是符合定义的一级ODII的合法编码:
ppk:351474.430
ppk:351474.430/567810.23416
ppk:305678.568/893-22-23333-5678
ppk:305678.1000/ISBN0764548891
ppk:305678.2224/2009-08-15

一级骨干ODII可以采用短编码方式,结构式为:
        ppk:[REG_ORDER_SN]/[DSS]
[REG_ORDER_SN]为该ODII记录在全部ODII注册记录中以注册时间早晚排序的阿拉伯数字编号(从0开始)。
下面几例都是符合定义的一级ODII的合法缩短编码:
ppk:1
ppk:356/ISBN0764548891


ODII的命名结构使每个数据资源在全网具有自主、安全的唯一索引标识。ODII不同于URL,它是数据资源的索引名称,而与实际地址无关。实际上它是一种URI(Universal Resource Identifier,统一资源标识符)或URN(Universal Resource Name,统一资源名称),是信息索引的数字标签和身份证。有了它,就使数据资源具有了唯一性和可追踪性。


4.2 二级扩展ODII
以一级ODII为基础,拥有一级ODII的注册者可以利用自有的区块链来扩展自定义二级ODII,并将二级ODII注册记录批量打包后形成的新区块的HASH关键字写入一级骨干区块链(即比特币区块链)获得合法验证并确保唯一性。

二级ODII 的完整结构式为:
    ppk:[SECOND_BLOCK_SN].[SECOND_INDEX_SN]@[FIRST_BLOCK_SN].[FIRST_INDEX_SN]/[DSS]
    
[FIRST_BLOCK_SN]和[FIRST_INDEX_SN]为对应一级ODII在比特币区块链上的登记记录所在区块和区块内记录位置的阿拉伯数字编号,
[SECOND_BLOCK_SN]和[SECOND_INDEX_SN]为对应二级ODII在二级自定义区块链上的登记记录所在区块和区块内记录位置的阿拉伯数字编号。
后缀[DSS] (Data Suffix String)由二级ODII拥有者可选并自行给出的具体资源标识,需要自主确保具有唯一性。
    
举例:
    ppk:[email protected]
    ppk:[email protected]/28367
    ppk:[email protected]/ISBN2890321345

二级ODII 缩短结构式为:
    ppk:@/[DSS]
举例:
    ppk:65@1
    ppk:65@1/28367
    ppk:65@1/ISBN2890321345

 
5、利用ODII查找数据
那么如何根据ODII号找到原始数据呢?

通过ODII查找原始数据的方法很简单:

5.1  通过一个ODII检索网站

有网站搭建能力的个体都可以利用开源的ODII检索库来设立一个ODII检索网站。

比如登陆http://ppkpub.org/odii/这个原型示例,在"Query ODDI"的提示框内输入已知ODII号, 点击"Go"按钮,ODII系统就会显示相应的ODII注册信息。

例:我们在"Resolve A ODII Name"的提示框内输入ODII号“0”,点击"Go"按钮,则会显示该ODII号的相关信息。

另外上例也可以直接在浏览器地址栏里输入 http://ppkpub.org/odii/?odii=0 可获得相同的展现结果。

在此案例的基础上,可以进一步实现更为复杂的资源检索功能,我们将逐步提供相关的示例。


5.2 APP内置ODII支持

APP的开发者可以将开源的ODII检索库直接应用到自己的程序内,这样就能直接获取OODI所对应数据资源的元数据描述和实际数据URL, 并根据元数据的定义来自定义最终展现。

例如,最新版本的菜鸟币(Newbiecoin)客户端就内嵌了对ODII标识的支持,可以从这里下载:http://newbiecoin.org/
有兴趣的程序猿朋友可以从github下载其开源代码进行研究。

6.FAQ

6.1 PPk是啥意思?
PPk这个名称来源于 Peer-Peer networK 即“对等/去中心化网络”的缩写。

“PPk开放组”是一个业余兴趣小组,集合了一群对比特币等加密货币感兴趣的P2P技术爱好者。相比加密货币的价格起伏,我们更关注其以区块链为代表的底层技术的潜在价值!

联系资料:
邮箱: [email protected]
网站: ppkpub.org

6.2 为什么采用区块链?
以比特币为代表的区块链的独特之处在于实现了历史上第一个形式上去中心化、逻辑上却完美中心化的技术体系,简单理解就是:从彼此无关的不同节点读取到都是完全相同的唯一拷贝。以此为基础,才能定义出类似ODII这样具有自主、安全关键特性的唯一资源标识。

6.3 采用比特币区块链作为一级骨干是否能确保安全?
比特币作为第一个提出和实现区块链的加密货币,经过多年的运行已形成一个具有超强算力的分布式网络,其算力已经远超传统超级计算服务集群的合计算力且还在持续增加,从而充分保证了其区块链的安全性和稳定性。

理论上,如果比特币网络的超大算力有超过一半被一个个体所控制,该个体就可以篡改近期的若干区块数据(即著名的51%攻击),但其攻击难度随区块增长呈现指数级提高,超过6个区块确认后基本就不可能了,而且攻击者也只能篡改自己相关的交易信息(比如重复消费自己的比特币)或者不记录别人发出的交易,但不能凭空伪造别人比特币地址相关的交易,所以ODII申请者在向比特币网络广播ODII注册消息后,只需要等待6个区块就可以规避以上攻击风险以确认注册是否成功,即使在极小概率的情况下比特币网络被攻击成功导致注册不成功,也只需重新发起注册即可,对于注册者来说除耽误了一些操作时间外没有损失。

所以采用比特币区块链作为ODII的一级骨干区块链是安全可信的。

6.4 比特币价格的大幅调整是否会对ODII标识体系的稳定运行产生很大影响?
每条ODII消息存储到比特币区块链的成本主要是支付给收录该交易的比特币“矿工”的费用,目前是0.0001BTC,相当于3美分或0.2元人民币,是非常少的,当比特币价格有大幅调整时该项费用也可以适当调整达到相对合理和低的费用(调整客户端的参数配置即可)。
另外,通过使用二级扩展标识还可以大幅降低标识的注册和维护成本(可以接近0成本)。

如果未来比特币价格存在大幅走低的可能性,导致矿工关闭矿机使得算力减少,在一定程度上会降低比特币网络的健壮性,但对于ODII标识来说,只要等待6个区块的确认仍能保证相当高的可信和稳定性。

所以比特币价格的大幅调整会对ODII标识体系整体的稳定运行会有很小的不良影响且通过适当的规则可有效规避相关风险。

6.5 与现有DNS域名体系的差异?
现有DNS域名体系是组织形式和逻辑上都中心化,与承载OODI的区块链相比无法提供自主性,且DNS协议因为出现历史早,在安全性等多方面上也存在不足,但因为其作为现有互联网的基础协议以稳定为重,很难做出大的改变。

ODII形式上和DNS域名有点像,但借助区块链的独特性使得运行机制上有本质的差别,强调自主和安全,是“数据时代的自主域名” 。

6.6 与EMULE、BT/MAGNET等P2P网络的差异?
EMULE、BT/MAGNET等P2P网络是形式上的去中心化,但却没有进一步达成逻辑上的中心化,因此无法提供一个集中的目录索引服务。比特币区块链是借鉴了EMULE、BT等P2P网络的经验,并将非对称加密等技术集大成组合到一起形成的创新技术体系,逻辑上能提供一个唯一性数据索引目录,同时能提供更好的安全性。

另外,以“magnet:?”开头的磁力链接为例,这种链接的“数字指纹”是通过文件内容的Hash结果来生成的,并以此来定位和识别文件的,当文件内容发生变动,其磁力链接的“数字指纹”地址也会发生变化,导致无法通过原有磁力链接来定位到新版本的文件内容。
而ODII可以兼容磁力链接地址并将其作为AP设置选项,这样当文件内容发生改变时,只需更改AP设置即可,不影响ODII号,通过既有ODII地址仍能访问到新修改的文件。

6.7 ODDI与URI/URL的差异性在哪?
ODII不同于URL(Uniform Resource Locator,
统一资源定位符),它是数据资源的索引名称,而与实际地址无关,与URL 的最大区别就是实现了对
资源实体的永久性标识。实际上它是一种URI(Universal Resource Identifier,统一资源标识符)或URN(Universal Resource Name,统一资源名称),是信息索引的数字标签和身份证。有了它,就使数据资源具有了自主、安全的唯一性和可追踪性。

6.8 与其它基于区块链的标识应用像Namecoin,Openname,Onename等案例的差异性在哪?
ODII和以上这些标识应用本质上都利用了区块链技术来生成唯一可信标识,也都是完全开放开源的,但在技术方案、应用扩展上各有特点,可以互相借鉴探讨。
ODII明确以BTC区块链承载一级标识并以此为基础延伸扩展引入其他加密币区块链或类区块链承载二级标识。
Openname,Onename缺省采用Namecoin区块链,并支持兼容其它加密币区块链替换作为同级承载。
Jump to: