本文章为2023年pkurw考核论文

1、论文研究背景、动机与主要贡献

研究背景

《通用数据保护条例》( General Data Protection Regulation,GDPR )通过对管理和处理个人数据的服务提供者设定更高的要求和义务,将个人数据的控制权交还给所有者。

  • 存在问题
    • 认证一个服务提供商是否一直遵守GDPR是具有挑战性的。
    • 此外,数据所有者无法感知服务提供者是否遵守GDPR并有效保护其个人数据。

动机

  • 传统的研究
    • 在这些文章中,采用了一种整体架构,将用于会计和审计数据访问的BC与物理存储数据的存储层解耦。遗憾的是,目前尚缺乏一套完整的设计理念和技术机制来实现BC在个人数据管理和符合GDPR要求方面的能力
    • 在这篇文章中,我们提出了一个基于BC的符合GDPR的个人数据管理平台的设计理念和技术机制,以及详细的配置文件管理的实现

主要贡献

  1. 细粒度的访问控制与复杂身份(c-ID)系统
    • 复杂身份(c-ID):这是一个扩展的数字身份概念,与数据集相关联,并由多个参与方共享。在个人数据管理的背景下,c-ID 包含数据主体(DS)、数据控制者(DC)和数据指针(pm)的非对称密钥对。
    • 访问权限的定制:数据所有者可以自定义每个数据集的访问控制策略,通过在区块链上记录这些策略,数据所有者能够以细粒度的方式管理谁可以访问其数据,以及在什么条件下可以访问。
  2. 基于角色的权限管理
    • 角色定义:系统明确区分并定义了三个关键角色——数据主体(DS)、数据控制者(DC)和数据处理者(DP),每个角色都有其特定的权利和义务。
    • 智能合约的角色:智能合约用于自动化执行这些角色的权限管理,例如,通过智能合约来实施数据访问控制,确保只有获得适当授权的DP可以访问和处理数据。

2、论文问题描述或定义

CS架构下的数据隐私保护

场景描述:

  1. 端用户(End-user):服务的客户,拥有个人数据。他们允许服务提供商(SP)在提供服务时收集其数据。
  2. 服务提供商(Service Provider, SP):直接收集和管理个人数据的实体,出于运营和业务目的。SP可能将个人数据存储在资源服务器(Resource Server, RS),这可以是SP自己运营的系统或独立的服务。SP还可能与第三方分享收集的数据。
  3. 第三方(Third-party, TP):提供服务给端用户,但需要依赖SP的基础设施来开发服务和获取所需的个人数据。

数据管理与共享流程:

  1. 端用户开始使用SP提供的服务,SP请求用户授权收集其个人数据。
  2. 端用户授予SP收集和处理个人数据的权限。
  3. TP请求访问由SP收集和管理的端用户的个人数据。
  4. 端用户登录SP提供的服务,并授予TP访问其个人数据的权限。

挑战:

  1. GDPR要求的挑战:现有的个人数据管理解决方案基于客户端-服务器架构(过于中心化),这种架构在透明度和信任方面存在限制,难以满足GDPR的要求。
  2. 中央化的问题:当前的解决方案依赖于SP作为认证和授权的中心点,它完全依赖于SP (即,一个委托的认证和授权服务器)的真实性,因为它是( i )认证和授权参与者的唯一权威;( ii )控制数据访问和溯源。这导致数据管理和访问的透明度和问责性降低,增加了个人数据泄露的风险。
  3. 监管机构的监督:监管机构不定期进行的合规性检查使得SP难以持续证明其数据处理的合法性和安全性。
  4. 数据访问的灵活性:现有解决方案通常不提供细粒度的访问控制,端用户通常只能选择“全接受”或“退出”。

3、论文提出的新思路、新理论、或新方法

理论

提出符合GDPR的个人数据管理平台的设计理念,包括高层的系统架构、设计准则以及详细的功能和算法。

系统程序工作流

  • 假设:设计基于区块链平台的安全性模型,假设资源服务器(RS)是“诚实但好奇的”,而服务提供商(SPs)则遵循恶意模型。
  • 将与GDPR合规性相关的机制从传统的集中式服务器移植到区块链网络中。
    • 区块链网络作为 身份认证 的组成部分之一

身份管理

  • 三层身份体制
    • DS (Data Subject) - 数据主体:
      • 数据主体是指个人数据的所有者,即数据的主体。
    • DC (Data Controller) - 数据控制者(数据库):
      • 数据控制者负责确定个人数据的处理目的和方式。
    • DP (Data Processor) - 数据处理者(第三方):
      • 数据处理者是指代表数据控制者或根据数据控制者的指示处理个人数据的个人或组织。
  • CID:复杂身份集合,来指定一个与两个或多个参与者相关的数字资产。
    • 三对密钥体系
      • (pkDS, skDS)是数据主体的密钥对,用于DS的身份验证和数据访问授权。
      • (pkDC, skDC)是数据控制者的密钥对,用于DC的管理操作和数据访问策略的制定。
      • (pkenc, skenc)是用于数据加密和解密的密钥对,确保数据的安全性。
        • enc代表数字指针,由于区块链存储开销,将数据分布式进行链下加密存储,会有一个数据指针指向这个加密数据。
    • 向外暴露公钥:$c-ID_{DS,DC}^{ext}=(pk_{DS},pk_{DC},pk_{enc})$
    • 对自身暴露自己的私钥:$c-ID_{DS,DC}^{DS}=(pk_{DS},sk_{DS},pk_{DC},pk_{enc},sk_{enc})$
    • 细粒度控制

      分布式账本的数据模型

  • 分布式账本采用键值对(key-value pair)格式
  • 状态和状态转换
    • 账本的状态(state)是特定时间点上账本的快照,包含了所有键值对的集合。
    • 状态转换(state transition)是交易的结果,涉及创建、更新或删除键值对。
    • 账本包含了所有状态转换的完整历史记录,这些记录是按时间戳排序的、不可变的,并且抗篡改。
  • 两类账本 3A_ledger和log_ledger
    • 作者定义了两种不同的账本:3A_ledger和log_ledger,每种账本都有其特定的数据模型和用途。
    • 3A_ledger用于认证、授权和访问控制:$\mathrm{3A_ledger}=\{(c\text{-}ID,\mathrm{policy},\mathrm{en_pointer})\}$
      • policy是权限
      • enpointer是加密的数据指针,指向本地的数据
    • 而log_ledger用于访问令牌的验证和日志记录

3A认证体系

  • 身份验证(athentication):私钥生成签名,公钥验证签名
  • 授权(athoration):数据访问策略详细规定了哪些参与者可以对数据执行哪些操作(如读取、写入、修改或删除)
  • 访问控制(access control):
    • 复杂身份(c-ID):每个数据集都有一个与之关联的c-ID,它包含了数据主体(DS)、数据控制者(DC)和数据指针(pm)的密钥对。
    • 数据使用策略:在3A_ledger中记录,定义了数据访问的规则和条件。
    • 智能合约:自动执行访问控制策略,确保只有符合策略的请求才能被批准。
  • 认证流程
    • 注册:共享密钥对( pkenc , skenc)一起授予DC(数据控制者)管理其个人数据的同意权。
    • 更新策略:策略可以被认为是一个数据集的访问控制列表/规则,当同意被授予或撤销时进行更新。
    • 智能合约调用:
      • GrantConsent函数:DS或DC使用此函数授予DP特定的数据访问权限。
      • RevokeConsent函数:DS或DC使用此函数撤销已授予的权限。
      • TokenValidation函数:在每次数据访问请求时调用,验证访问令牌的有效性。
      • DataAccess函数:DP使用此函数获取加密的数据指针和访问令牌,以访问所需的数据。

授权

部署

部署Hyperledger

架构图

用例:档案信息存储与数据共享

  • 角色
    • 节点角色:在HLF框架下,网络中的节点分为客户端对等节点(Peer)和排序服务节点(用于出块)。每个节点由证书颁发机构(CA)分配身份并由成员服务提供商(MSP)管理权限。
    • 数据处理角色:平台确保只有指定的数据主体(人)(DS)、数据控制器(档案管理平台)(DC)和授权的数据处理器(其他单位)(DP)能够按照双方约定的数据使用政策处理个人数据。
  • 伪匿名性
    • 数字证书:使用 HLF 内置的 Fabric CA生产数字证书,实现实体身份的识别和管理
    • 全流程使用数字证书进行交流,实现了伪匿名性
  • 实现了资源服务器 (RS) 作为个人档案数据的存储和管理系统,并支持 CRUD 操作。

访问令牌

如果意外泄露在访问令牌(access_token)的有效期内,攻击者有可能获取到数据访问权限。这里有几个关键点需要理解:

  1. 访问令牌(access_token):在基于令牌的身份验证系统中,访问令牌是一个字符串,代表了一个已认证用户或客户端的权限。持有有效访问令牌的实体可以访问受保护的资源。

  2. 有效期(expires_in):每个访问令牌都有一个与之关联的有效期,这个有效期定义了令牌能够被用来访问资源的时间范围。在论文中,这个有效期由log_ledger中的expires_in参数定义。

  3. 不可避免性(inevitable):作者指出,在访问令牌有效的时间窗口内,如果攻击者设法获得了这个令牌,他们就能够访问与之关联的数据。这在一定程度上是不可避免的,因为系统必须信任在有效期内的令牌是合法的。

  4. 安全风险:这里提到的风险是,如果攻击者在访问令牌的有效期内获得了这个令牌,他们就可以像合法用户一样访问数据。这可能发生在令牌被泄露、被盗或通过其他安全漏洞被攻击者获取的情况下。

  5. 缓解措施:尽管存在这种风险,系统通常会有其他安全措施来减轻它,例如:

    • 令牌过期:令牌具有有限的有效期,过期后将不再有效。
    • 令牌撤销:如果检测到安全漏洞,可以提前撤销令牌。
    • 监控和日志记录:对令牌使用情况进行监控,以便在发生不当访问时能够迅速响应。
  6. 设计考虑:在设计系统时,需要考虑到这种风险,并实施相应的安全措施来保护数据和确保系统的完整性。

4、论文方法的理论分析或实验评估方法与效果

安全性分析

  • 密码学保证
    • 这意味着敌手无法:( i )逆向/破解密码哈希函数,( ii )逆向公钥以获得私钥,( iii )在不知道相应私钥的情况下伪造另一方的数字签名。

安全威胁

  • 安全威胁来自两个来源:
    • ( i )以拜占庭方式行事的内部敌手,他们被授予访问个人数据的权利;
    • ( ii )一个诚实的一方,他的私钥和解密密钥泄露给外部敌手
  • 令牌风险:如果意外泄露在访问令牌(access_token)的有效期内,攻击者有可能获取到数据访问权限。
    • 不可避免性(inevitable):作者指出,在访问令牌有效的时间窗口内,如果攻击者设法获得了这个令牌,他们就能够访问与之关联的数据。这在一定程度上是不可避免的,因为系统必须信任在有效期内的令牌是合法的。
    • 缓解措施:尽管存在这种风险,系统通常会有其他安全措施来减轻它,例如:
      • 令牌过期:令牌具有有限的有效期,过期后将不再有效。
      • 令牌撤销:如果检测到安全漏洞,可以提前撤销令牌。
      • 监控和日志记录:对令牌使用情况进行监控,以便在发生不当访问时能够迅速响应。

        隐私威胁

  • 隐私威胁主要包括:

    1. 公开的分布式账本:区块链的分布式账本对所有网络参与者都是可见的,这意味着任何人都可以查看交易记录。这可能会暴露某些敏感信息,从而侵犯用户隐私。
    2. 伪匿名性的风险:虽然区块链提供了伪匿名性,即参与者的身份不是直接可见的,但通过分析区块链数据和使用某些技术,攻击者可能能够将交易与特定用户关联起来,从而破坏匿名性。
      1. 交易分析:通过分析区块链上的交易模式,攻击者可能推断出用户的行为模式或个人身份。
      2. 身份链接:使用各种去匿名化技术,攻击者可能能够将公钥地址与用户的真实身份联系起来。
      3. 智能合约漏洞:智能合约中可能存在的漏洞可以被攻击者利用,以获取不应公开的信息。
      4. 数据泄露:如果敏感信息被存储在区块链上而没有适当的加密措施,可能会发生数据泄露。
  • 缓解措施

  1. 加密技术:使用加密技术,如公钥加密,来保护存储在区块链上的敏感信息。这意味着只有拥有正确密钥的授权参与者才能访问数据。
  2. 零知识证明:使用零知识证明等密码学技术,允许在不暴露数据本身的情况下验证数据的真实性。

性能评估

  • 分布式集群
    • 读写账本分离(类似于Redis)
      • 读账本:仅用于备份(读取信息),不负责处理和写入信息。
      • 写账本:仅用于处理、写入信息,定时共识同步到读账本中
  • 测试场景:
    • 不同的 HLF 网络设置: 验证节点数量从 4 到 32 不等。
    • 不同的工作负载: 交易提议每秒从 100 到 1000 个。
  • 测试指标
    • 吞吐量(Throughput):系统每秒能够处理的交易数量。
    • 延迟(Latency):从提交交易到交易被记录在区块链上所需的时间。
    • 成功率(Success Rate):成功处理的交易占总交易的百分比。
    • 资源消耗(Resource Consumption):执行交易所需的计算和存储资源
  • 测试结果
    • 读写性能: 读取交易吞吐量高于写入交易,因为写入交易需要更多步骤,例如排序服务和广播新块。
    • 成功率和延迟: 随着工作负载的增加,成功率和延迟都显著下降,表明系统无法处理高负载。
    • 可扩展性: 随着验证节点数量的增加,吞吐量下降,延迟增加,表明系统可扩展性较差。

      5、总结

      (包括分析论文的优缺点,本文带来的启示、后续研究思路等)

创新优点

  • 基于身份六元组的身份控制系统:以身份标识确定角色权限,实现角色的分离。同时,各个角色之间可以共存。
  • 以区块链代替身份验证器:区块链用于隔离数据和操作,所有请求都需要流经区块链,进行验证。
  • 3A认证体系:身份验证、授权、访问控制三层逐层加码,保证数据安全。且分层管控能减少一定的恶意流量。
  • 伪签名:(类似于车联网),用于一个匿名证书来代表用户,实现了数据脱敏
  • 读写账本分离:读账本和写账本实现并行。

缺点、改进

  • 内部结点的安全性仍然不能得到控制
    • 可以尝试从结合POR声誉共识,将声誉机制引入,为每个结点进行声誉评估。
  • 可扩展性不足
    • 可以尝试使用区块链分片计数,将区块链划分为多个不同的分片,每个分片只处理对应的,进而提升整体处理的性能。

rw_test_thesis_list


原文:链接