掌桥专利:专业的专利平台
掌桥专利
首页

一种针对区块链上隐私数据审计的方法

文献发布时间:2024-04-18 19:58:21


一种针对区块链上隐私数据审计的方法

技术领域

本发明涉及区块链的产品存证和审计技术,尤其涉及IT应用领域的溯源方法和系统,具体是一种针对区块链上隐私数据审计的方法。

背景技术

数据审计是一种通过对数据进行采集、验证和分析后,帮助审计员掌握数据的总体情况、并反馈给数据所有者的技术。隐私数据审计使数据所有者能够验证存储在不受信任的云上的敏感数据的完整性和隐私性,而无需检索它们,该特性已被商业云存储广泛采用。然而,现有的方法仍然存在一些缺陷。存储在云服务器上的数据是存在隐私和安全问题的,硬件损坏、黑客的攻击、云服务商为了自身利益修改或删除数据等行为都会破坏数据的完整性,同时,用户将他们的数据存储外包给云平台,意味着他们将不再在物理上拥有他们的数据,因此用户失去了对数据的控制。

此外,许多传统的方案大多依赖于集中的第三方审计员TPA(Third PartyAuditor,简称TPA)进行可信的仲裁,TPA在密码学的帮助下,验证云上的数据,然而,大多数审计方案不能保护数据在审计过程中免受TPA的影响,TPA可能会将数据置于风险之中,或是存在不诚实的第三方审计员对数据恶意审计。在审计过程中,伴随着多种密码学方案来保证数据传输过程中的隐私性和安全性。

另外,还存在一些将区块链应用到数据审计中的方案,在部分方案中,区块链仅用于数据的哈希值与原始数据之间的映射,对于区块链技术的使用并不充分,同时,区块链的使用可以避免数据完整性的破坏,在安全性方面是优于云服务器存储隐私数据的。区块链在审计的未来中扮演着重要的角色,区块链技术不仅正在改变记录、处理和存储金融交易和信息的方式,而且还在改变审计事务所的工作方式。区块链是一门融合了密码学、共识机制、点对点网络的新技术,并依靠其去中心化、不可篡改、数据透明性等特点得到广泛的应用。区块链在审计的对账、查账方面有着天然的优势,原因在于:新的区块总是添加到链条的尾端,每次添加新区块都会生成相应的数字签名或哈希值,即一系列数字和字母,将区块添加到区块链后,如果更改这个区块中的某个金额或数字,这些签名也会随之改变,这一不可篡改的性质完美契合了审计的需要,弥补了传统的审计过程中存在着一些缺陷。比如:审核效率低下增加了审计的风险、审计成本普遍较高、数据采集困难、管理难等问题,而使用区块链技术可以提高审计的质量、效率和审计数据可靠性,促进现代审计方式的创新,将区块链技术应用于审计的优势有:

第一,数据无法篡改,可以更快对数据追本溯源和追踪检查:能够让审计人员获取更加真实有效的原始数据,从而对被审计单位做出更为准确和全面的了解,提高传统审计因信息不对称导致的效率低下;

第二,去中心化储存,使得财务信息能够高度共享、透明且安全:传统审计中,数据是中心化储存的,不仅容易被人为篡改而且容易成为黑客攻击目标,而区块链审计采用分布式储存数据,不仅为数据篡改增加难度,更重要的是保障了数据的安全性完整性;

第三,数据非对称加密,保证各方主体的隐私:利用区块链加密技术,各项交易以匿名方式实现,保证各方主体的隐私安全,同时,由于区块链技术具有高度公开透明的特点,审计人员可以看到企业账面上的所有信息,这样一来企业有关交易的任何信息都将无法隐藏,减轻了数据采集和整理的工作,从而提高了审计效率。

发明内容

本发明的目的是针对现有技术的不足,而提供一种针对区块链上隐私数据审计的方法。这种方法可对隐私数据进行合规审计和数据更新及信息溯源。

实现本发明目的的技术方案是:

一种针对区块链上隐私数据审计的方法,包括如下步骤:

1)AES-CBC密钥初始化:AES-CBC密钥初始化包括:

1-1)选择密钥长度:选择AES-128采用128位密钥;

1-2)密钥扩展:根据选择的密钥长度128位,采用KDF2(Key DerivationFunction2简称KDF2)密钥扩展算法生成扩展密钥,扩展密钥将用于加密和解密过程中的轮密钥生成;

1-3)轮密钥生成:采用扩展密钥生成每一轮的密钥,AES-128算法有10轮,每一轮都生成一个特定的密钥;

1-4)初始化向量IV:使用的CBC模式需要初始化向量,选择一个128位初始化向量,初始化向量应该是随机生成的,并且在每次加密过程中都是唯一的;

2)数据分类:用户将数据上传到区块链的智能合约上,由智能合约识别数据是否为隐私数据,非隐私数据直接上链,隐私数据则经过加密备份后存储到数据库中;

3)数据上传:用户使用自己的公钥和AES-CBC-128算法对隐私数据m进行加密,并将加密后的密文C

Cm=AES.Enc(Kpr,m),

用户通过数据上传智能合约将用户的数据上传至区块链,其中非隐私数据将直接上传至区块链,隐私数据由用户进行加密后,通过智能合约将密文上传至区块链,并将密文和链上的交易Hash备份至数据库;

4)数据审计:管理员对云数据库的内容进行审计,管理员从云数据库中获取数据的密文及其交易哈希,再从链上获取数据密文Cm对应的解密私钥Kpr,通过AES密钥Kpr解密得到电网数据明文m,其中AES.Dec为AES-CBC模式下的解密函数,定义如下:

m=AES.Dec(Kpr,Cm),

若数据无法解密,则证明数据库中的数据遭到了篡改,信息不安全,数据将从区块链更新到数据库,若数据能够成功解密,则将对该数据开始审计,门限投票智能合约用于将管理员审计的结果进行投票并得出投票结果,其中门限值由系统设定,达到门限值后,其他管理员无需投票,智能合约将自行设置投票结果,并在对应字段的标记数据经过审计的结果;

5)数据更新:数据更新智能合约用于将违规的数据进行更新,若数据违规,则需要由用户重新发起数据上传,并将新数据的交易Hash填写在旧数据的相应字段上,以完成新旧数据的链接,当管理员对数据审计发现数据违规时,将发起更新数据的请求,需要由违规数据的上传者重新上传新的数据来更新旧数据,若新的数据通过审计,则将旧数据的附加字段填上新数据的交易Hash,完成新旧数据的数据链接,若未能通过审计,则由数据的上传者重新上传新数据,直到数据能通过审计为止。

传统审计过程通常面临数据不可信、篡改和操纵的风险,审计人员往往需要依赖于被审计方提供的数据和信息,并且很难验证其真实性和完整性;其次,传统审计过程通常是手动和繁琐的,需要大量的人力和时间投入;第三,传统审计过程在保护敏感数据和隐私方面存在挑战,因为涉及到的数据可能被不当地使用或泄露。

区块链审计能够弥补这些不足之处,区块链技术具有透明性和可追溯性,所有的交易和操作都被记录在不可篡改的区块链上,审计人员可以查看和验证交易记录,确保其完整性和准确性。区块链技术使用密码学技术保护数据的安全性,数据难以篡改,审计人员可以通过验证哈希值来确保数据的完整性,区块链技术可以通过智能合约实现自动化的业务逻辑和规则执行,提高审计过程的效率,并减少人为错误和操纵的可能性,最后,区块链是一个去中心化的系统,所有参与者都可以共同验证和监督交易的进行,没有单一的权力可以操纵数据,这有助于建立信任关系。

本技术方案中的数据审计在保证安全性的同时,大大提升了区块链系统的性能,由于区块链的吞吐量较低,为了提高效率,本技术方案采用“区块链+数据库”的存储模式,隐私数据上传将先由用户进行隐私数据的加密,再通过智能合约上传至区块链,其中密文和私钥将上传至链上,密文及交易Hash将上传至数据库,隐私数据审计将由管理员获取数据库中的密文及Hash和链上的密钥,若数据库的数据被恶意修改,则获取的密钥将无法正确解密密文,从而能发现数据被破坏,此时可以通过交易Hash更新链上的数据。

本技术方案使得不合规的数据能够得到更新,在数据上传时,用户和管理员会被分配到一定的权限,该权限可以实现管理员对隐私数据的访问控制,没有权限的管理员无获得密钥,解密链上的隐私数据,用户通过智能合约将数据以密文的上传到区块链,同时使用访问控制机制上传用于解密数据的密钥,若被判断为隐私数据,则用户会从智能合约获取密文上链的交易Hash,并连同密文一起备份至数据库,方案中管理员将在链下对隐私数据解密并完成数据审计,若数据库中数据遭到破坏,则会被有效识别,并从区块链同步更新正确的数据,有权限的审计员可以通过访问控制机制从链上获取密钥,解密数据库中的隐私数据,然后通过门限投票来判断审计的隐私数据是否合规,若判定违规的人数达到门限,就会判定该数据违规。通过门限投票可以实现多方参与,防止恶意审计员的恶意操作;数据审计结果未通过,用户会发起智能合约对链上数据进行更新,同时更新数据库中的隐私数据的密文及其交易Hash值。区块链上的新数据会通过旧数据附加字段中的交易Hash去索引,数据库中新的交易Hash会覆盖掉旧的交易Hash。

本技术方案适用于绝大多数需要对隐私数据进行审计的场景、可对隐私数据进行合规审计和数据更新及信息溯源,在此场景中,可以保证隐私数据的安全性,信息不可篡改,数据无法置换,在保证安全性的同时,又利用数据库提高了系统效率,绝大多数的作伪行为都会导致数据库的信息与链上信息不一致,从而被系统监控并予以更正。

这种方法可对隐私数据进行合规审计和数据更新及信息溯源。

附图说明

图1为实施例中系统模型图;

图2为实施例中隐私数据上传及审计的流程图;

图3为实施例中隐私数据更新的流程图。

具体实施方式

下面结合附图和实施例对本发明的内容作进一步的阐述,但不是对本发明的限定。

实施例:

本例中:如图1所示的系统中,由2种实体组成,分别是用户和管理员,管理员负责对数据的更新请求进行审核,并参与智能合约投票,管理员在系统中是完成数据审计的功能,管理员将获取区块链上所有的隐私数据并予以审计,单个管理员审计的结果将通过智能合约进行投票,若投反对票的数量超过门限值,则判定该隐私数据违规,需要进行数据更新;用户负责将发起数据上传和更新数据请求,用户在系统中是完成数据上传的功能,所有隐私数据和非隐私数据均通过用户上传,若隐私数据未能通过审计,用户需要重新上传新的隐私数据以替代旧数据,系统采用数据上传,设有门限投票和数据更新为主要功能的若干个智能合约,其中数据库和区块链用于存储相应的数据,具体为:

一种针对区块链上隐私数据审计的方法,包括如下步骤:

1)AES-CBC密钥初始化:AES-CBC密钥初始化包括:

1-1)选择密钥长度:选择AES-128采用128位密钥;

1-2)密钥扩展:根据选择的密钥长度128位,采用KDF2密钥扩展算法生成扩展密钥,扩展密钥将用于加密和解密过程中的轮密钥生成;

1-3)轮密钥生成:采用扩展密钥生成每一轮的密钥,AES-128算法有10轮,每一轮都生成一个特定的密钥;

1-4)初始化向量IV:使用的CBC模式需要初始化向量,选择一个128位初始化向量,初始化向量应该是随机生成的,并且在每次加密过程中都是唯一的;

2)数据分类:用户通过数据上传智能合约将数据上传到区块链的智能合约上,由智能合约识别数据是否为隐私数据,非隐私数据直接上链,隐私数据则经过加密备份后存储到数据库中;

3)数据上传:如图2所示,用户使用自己的公钥和AES-CBC-128算法对隐私数据m进行加密,并将加密后的密文C

Cm=AES.Enc(Kpr,m),

数据上传智能合约将用户的数据上传至区块链,其中非隐私数据将直接上传至区块链,隐私数据由用户进行加密后,通过智能合约将密文上传至区块链,并将密文和链上的交易Hash备份至数据库;

4)数据审计:管理员对云数据库的内容进行审计,管理员从云数据库中获取数据的密文及其交易哈希,再从链上获取数据密文Cm对应的解密私钥Kpr,通过AES密钥Kpr解密得到电网数据明文m,其中AES.Dec为AES-CBC模式下的解密函数,定义如下:

m=AES.Dec(Kpr,Cm),

若数据无法解密,则证明数据库中的数据遭到了篡改,信息不安全,数据将从区块链更新到数据库,若数据能够成功解密,则将对该数据开始审计,门限投票智能合约用于将管理员审计的结果进行投票并得出投票结果,其中门限值由系统设定,达到门限值后,其他管理员无需投票,智能合约将自行设置投票结果,并在对应字段的标记数据经过审计的结果;

5)数据更新:如图3所示,数据更新智能合约用于将违规的数据进行更新,若数据违规,则需要由用户重新发起数据上传,并将新数据的交易Hash填写在旧数据的相应字段上,以完成新旧数据的链接,当管理员对数据审计发现数据违规时,将发起更新数据的请求,需要由违规数据的上传者重新上传新的数据来更新旧数据,若新的数据通过审计,则将旧数据的附加字段填上新数据的交易Hash,完成新旧数据的数据链接,若未能通过审计,则由数据的上传者重新上传新数据,直到数据能通过审计为止。

相关技术
  • 一种在区块链数据库上针对关键字key的索引方法
  • 一种对联盟区块链上多方隐私保护数据审计的方法及装置
  • 一种对联盟区块链上多方隐私保护数据审计的方法及装置
技术分类

06120116483752