1.文章内容
1.1 摘要&简介
Implement a protocol that turns a blockchain into an automated access-control manager that does not require trust in a third party.
- (1)We combine blockchain and off blockchain storage to construct a personal data management platform focused on privacy.
- (2)We illustrate through our platform and a discussion of future improvements to the technology, how blockchains could become a vital resource in trusted-computing.
1.2 挑战(隐私问题)
- Data Ownership(数据拥有者):确保用户私有信息的所有和支配
- Data Transparency and Auditability(数据透明性和可审计性):被收集的数据和访问方式对用户是完全的透明的
- Fine-grained Access Control(细粒度访问控制):在任何给定的时间,用户可以更改权限集并撤销对以前收集的数据的访问
1.3 提出方法
1.3.1 平台简介
(1)系统实体
- Users(用户):对下载数据和使用应用感兴趣
- Services(服务):出于运维和商业相关的原因需要对个人数据进行处理的应用提供者
- Nodes(节点):为得到奖励而维护区块链和分布式私有键值对数据存储的实体
(2)交易类型
- Taccess:用于访问控制管理
- Tdata:用于数据存储和检索
(3)交易流程
- User安装应用并首次注册,生成(user,service)身份并与相应的权限通过Taccess发送到区块链
- User的智能手机将收集的数据(包括传感数据和位置信息等)用共享的对称密钥加密后通过Tdata发送到区块链,区块链将这些数据随后以键−值对的方式存储在off-blockchain,只保留一个指向此公共账单上数据的指针(此指针为数据的SHA-256哈希值)
- 此时user和 service通过Tdata交易使用指针(即“键”)访问数据。区块链会验证数字签名属于user或service,如果是service,需要同时检查其权限
- 最后,user可以通过Taccess交易和新的权限为service重新授权或者撤销数据的访问
PS:off-blcokchain的键−值对存储是用分布式哈希表(DHT)来实现的
1.4 网络协议
定义:
- 对称加密机制3元组(Genc,εenc,Denc):生成器、加密、解密算法
- 数字签名3元组(Gsig,Ssig,Vsig):生成器、签名、验证算法
1.4.1 系统构建模块
(1)身份
- 复合身份(Compound identities):Compoundu,s(public)=(pksigu,s,pksigs,u)
- 完整身份:Compoundu,s=(pksigu,s,sksigu,s,pksigs,u,,sksigs,u,,skencu,s)
- 复合身份生成协议:
- 1)user执行Gsig()生成相应的公/私钥对,执行genc()生成对称密钥
- 2)service执行Gsig()生成相应公/私钥对
- 3)双方互换公钥,user多分享一个对称密钥给service,最终双方都拥有(pksigu,s,pksigs,u,skencu,s)
(2)区块链存储
- L代表区块链内存空间,哈希表L:{0,1}256→{0,1}N
- 交易的输出地址用于编码256比特的内存地址指针以及其他附属元数据
- 当作查询L[k]时返回最近的交易
(3)访问策略
- 用户u授予服务s的权限表示为POLICYu,s
- POLICYu,s={location,contacts}表示具有位置和联系人的访问权限
(4)附属函数
- Parse(x)用于反序列化发送到交易的信息,包含参数、CheckPolicy(pksigk,xp)
-
CheckPolicy(pksigk,xp)协议如下:
- 输入当前签名公钥pksigk和要检查的权限xp
- 区块链检查签名公钥,若签名公钥属于用户即pksigk=pksigu,s,则直接返回1(表示拥有权限);若签名公钥属于服务方即pksigk=pksigs,u则需进一步验证当前权限是否与用户授予的权限吻合,若xp∈POLICYu,s则返回1,否则返回0
1.4.2 区块链协议
(1) 访问控制协议
- Taccess交易只能由用户发起,因此需要对用户的身份进行审计,采取一定的访问控制策略
- 具体协议如下图:
- 输入用户签名公钥pksigk和消息m
- 对消息进行解析得到用户和服务分别的公钥以及用户对服务的权限
- 然后区块链检查用户签名公钥是否和解析出的用户签名公钥相同,即判断pksigk=pksigu,s是否成立
- 若成立将当前用户签名公钥的哈希值作为L的地址,并在当前地址存储信息m,最后返回1(表示访问成功)
(2) 存储或加载协议
- 输入用户/服务签名公钥pksigk和消息m
- 对当前信息进行解析,得到c,xp,rw分别代表 “存储数据”、“访问权限”、“读写权限”
- 判断当前用户/服务是否具有访问权限,是则进入下一步
- 如果读写权限为写,表示存储操作 ,如果权限为写,表示加载操作
2.文章术语
- K-匿名
- l-diversity
- t-closeness
- Fully Homomorphic Encryption(全同态加密)
- Distributed Hashtable- DHT(分布式哈希表)
- ECDSA (Elliptic Curve Discrete Signature Scheme椭圆曲线离散签名机制)
- Shamir’s Secret Sharing (虾米尔密钥分享)
- Multiparty Computation(MPC 安全多方计算)
3.生词
3.1 写作助手
- In the sequel 结果,后来
- To illustrate, consider the following example
- albeit 尽管;虽然;即使
- In light of this 鉴于此
- state-of-the-art systems 先进的系统
3.2 生僻词
- well-rounded adj. 良好的;健康的;适宜的 adv. 很好地;充分地;满意地
- surveillance n.监督;监视
- opt-out 撤退;退出;辞职
- entrust 委托;托管
- storage and retrieval 存取
- harness vt. 利用;驾驭
- subvert 颠覆;暗中破坏;使背叛;搅乱
- mitigate 减轻;缓和