文献|DIA
Wei, Jiuqi, et al. “Data Interoperating Architecture (DIA): Decoupling Data and Applications to Give Back Your Data Ownership.” 2023 IEEE 47th Annual Computers, Software, and Applications Conference (COMPSAC). IEEE, 2023.
要解决的问题
身份管理:身份需要跨设平台,用户可以使用单个身份与多个应用交互。同时,避免使用中心化的第三方来分配身份。
数据标识与发现机制:应用需要数据简介检索数据,此外数据需要标识符系统实现全局可访问
数据所有权保护机制:数据所有权应该通过指定数据所有者来声明,并且可以公开验证该声明。需要一个授权机制来允许用户授予应用程序对其数据的访问权限。在应用程序能够访问数据之前,需要一个访问控制机制来基于授权策略验证应用程序的访问权限。
系统架构
区块链平台
为区块链平台实现三个智能合约:身份管理、标识符管理、授权管理
身份管理
每个终端用户(end-user)和应用都需要被分配一个独特的身份,可以跨平台
引入unique-identity,即u-ID来表示身份,u-ID由两个部分组成:标识符和公私钥对,即,符号表示关系绑定。
标识符管理
在数据注册(data registration)阶段,终端用户调用标识符管理智能合约,输入数据属性,区块链平台为数据分配标识符,并绑定数据属性与标识符,属性可作为标识符的不同条目,文中介绍了以下数据属性:
- :声明数据拥有者,由终端用户的表示
- :授权应用通过可访问地址从PDS处获得数据
- :数据签名 ,由数据拥有者的私钥签名
- :数据简介,由描述,由三部分组成:
- 数据标签:用户定义的关键词,描述数据内容
- 数据格式:数据特定结构、给定的例子
- 数据描述:数据的文本描述
授权管理
该智能合约在数据请求和数据授权处理阶段被调用。区块链账本记录授权记录
终端用户调用数据授权智能合约算法,修改授权记录的状态
身份系统
区块链平台的身份管理智能合约负责注册,身份系统负责提供公共身份查询服务。
在数据访问阶段,应用用生成数字签名,向PDS证明自己的身份。在身份认证阶段,PDS从身份系统获取应用的公钥,来验证签名。因此,身份系统需要根据标识符查询到公钥,形式化描述为
身份系统从区块链平台定期获取最新的身份数据。
标识符系统
数据标识符和授权记录由区块链平台创建。标识符系统提供数据发掘服务,便于应用检索用户数据;提供数据标识符和授权标识符解析服务。
数据发掘
除非终端用户直接向应用提供数据标识符,应用需要独立发掘用户数据。在数据发掘阶段,应用基于数据属性,尤其是终端用户的和数据简介。
标识符解析
应用获取数据标识符后,解析得到数据属性条目。
为了使PDS更有效地查询授权信息,需要将每个授权记录转换为带有绑定条目的授权标识符,并存储在标识符系统中,四个值域字段可以被封装为类型条目。
在授权验证阶段,PDS同样生成授权标识符,向标识符解析程序输入标识符和条目,获取完整值域字段,以此判断。