G06F21/62 G06F21/64 G06F21/60
1.一种基于区块链和权限合约的数据隐私保护的方法,用于数据隐私保护,它包括以下步骤:
1)加密的隐私数据通过数据存证合约存储到区块链上,在链下形成隐私数据目录;
2)使用者通过隐私数据目录查询出所需的数据,并通过隐私数据申请合约向所有者提出数据使用申请,系统向所有者发送申请信息;
3)当所有者获取申请后,通过授权智能合约向使用者授权数据的使用权限或驳回申请,并将授权信息行为记录到区块链上,隐私数据授权通过后生成授权码,并将授权码发送给使用者;
4)当获取用户访问隐私数据请求时,首先通过权限控制合约拦截访问请求,通过授权码和访问规则判断用户是否具有访问权限,当用户不具有访问权限时将用户的非法访问行为记录到区块链中,并以消息的形式发送给所有者;
5)当通过权限控制合约验证后,通过隐私数据查询合约所有者将隐私数据解密后获取原始数据,用请求者的公钥加密原始数据并返回加密后的隐私数据。
2.如权利要求1所述数据隐私保护的方法,其特征在于:所述隐私数据首先通过hash算法得到数据的数字指纹,数字指纹用于核验隐私数据是否被篡改;隐私数据通过平台密钥第一次加密得到加密后的密文再通过用户的公钥进行第二次非对称加密,经过两次加密后的密文和对应的数字指纹通过数据存证合约存储到区块链上;隐私数据在区块链上存储成功后,将数据指纹和隐私数据基本信息包含隐私数据名称、隐私数据唯一标识、隐私数据描述等信息但不包含隐私数据本省存储到结构化数据中形成隐私数据目录方便数据使用者定位。
3.如权利要求1所述数据隐私保护的方法,其特征在于:所述使用者通过隐私数据目录查询出所需的数据索引信息,根据需要向系统提出数据使用申请;系统将申请信息以消息的形式通知给数据所有者;数据所有者接收到申请信息后审核使用申请,审核同意后系统根据隐私数据的唯一标识和申请者的公钥通过加密算法生成唯一的数据使用授权码,审核不通过申请者则无法获得使用授权,系统将审核结果信息发送给申请者;数据使用者对申请者的访问权限进行设置,例如设置数据访问有效期、访问次数等,将访问权限和授权码的关联关系通过智能合约保存到区块链上,保证隐私数据使用权益、所有权和安全性,系统将授权码发送给使用者。
4.如权利要求1所述数据隐私保护的方法,其特征在于:所述使用者通过数据使用授权码查询隐私数据时首先权限控制合约拦截数据查询请求,权限控制合约检查授权码的合法性;授权码合法性检查通过后权限控制合约继续检查授权码授权信息;授权码授权信息检查通过后系统通过使用者的公钥解析出授权码中的数据唯一标识;通过数据唯一标识通过数据查询合约查询出隐私数据的秘文,首先通过平台的秘钥第一次解密得到隐私数据第一次加密后的数据;
数据所有者获取区块链上的第一次加密后的数据后,用自己的私钥第二次解密数据获取隐私数据的明文数据,并通过申请者的公钥加密隐私数据得到密文,将密文发送给使用者。
5.如权利要求4所述的数据隐私保护的方法,其特征在于:所述权限控制合约用于治理隐私数据相关合约的拦截规则,对规则的修改只需操作权限合约,不需要调整其他合约,且修改会实时生效。
6.如权利要求1所述的数据隐私保护的方法,其特征在于:所述智能合约用于隐私数据注册、隐私数据申请查询、隐私数据授权、隐私数据查询等全生命周期行为的上链。
7.如权利要求1所述基于区块链和权限合约的数据隐私保护的方法的系统,其特征在于,它包含以下功能模块:
1)隐私数据注册模块:用于注册隐私数据,将隐私数据保存到区块链上并形成隐私数据目录;
2)隐私数据申请审核模块:用于数据使用者申请隐私数据访问和使用权限,用于数据所有者审核隐私数据的使用和访问申请;
3)隐私数据权限控制模块:用于隐私数据访问授权和使用授权,数据授权码生成和验证功能;
4)隐私数据查询模块:用于查询区块链上的隐私数据,并提供数据的加密和解密功能;
5)行为管理模块:用于记录隐私数据注册、隐私数据申请查询、隐私数据授权、隐私数据查询等全生命周期行为信息,将行为信息记录到区块链上;
6)消息模块:用于隐私数据申请消息、隐私数据审核结果信息、隐私数据访问信息等消息推送。
本发明属于区块链技术领域,具体涉及一种基于区块链和权限合约的数据隐私保护的方法和系统。
目前基于区块链的隐私数据相关合约日益丰富,越来越多的隐私数据相关合约需要引入权限控制。如果不对智能合约做权限控制,那么无法满足隐私数据的安全性要求。在隐私数据查询场景中,如果隐私数据查询函数没有正确设置权限拦截逻辑,整套逻辑就会被攻击者轻易操控,隐私数据将无法起到保护的作用。另外隐私数据安全得到保护但隐私数据的共享又极其不方便,使用者无法及时获取隐私数据信息,又无法发挥数据的价值。
针对上述现有技术中存在的问题,本发明的目的是提供一种基于区块链和权限合约的数据隐私保护的方法和系统。它充分结合区块链难以篡改性、密码技术,跨合约访问技术,提供一个专门的权限控制合约用于治理隐私数据相关访问的拦截规则,在保证隐私数据安全的情况下通过提供隐私数据目录让使用者快速定位所需的数据,通过隐私数据使用申请,数据授权码,并设置数据查询规则和数据授权码的有效期,能显著提高隐私数据的安全性,并能保证隐私数据的所有权方便隐私数据共享,具有很强的现实意义和使用场景。
为实现上述发明目的,本发明的技术方案以如下方式实现:
一种基于区块链和权限合约的数据隐私保护的方法,用于数据隐私保护,它包括以下步骤:
1)加密的隐私数据通过数据存证合约存储到区块链上,在链下形成隐私数据目录。
2)使用者通过隐私数据目录查询出所需的数据,并通过隐私数据申请合约向所有者提出数据使用申请,系统向所有者发送申请信息。
3)当所有者获取申请后,通过授权智能合约向使用者授权数据的使用权限或驳回申请,并将授权信息行为记录到区块链上,隐私数据授权通过后生成授权码,并将授权码发送给使用者。
4)当获取用户访问隐私数据请求时,首先通过权限控制合约拦截访问请求,通过授权码和访问规则判断用户是否具有访问权限,当用户不具有访问权限时将用户的非法访问行为记录到区块链中,并以消息的形式发送给所有者。
5)当通过权限控制合约验证后,通过隐私数据查询合约所有者将隐私数据解密后获取原始数据,用请求者的公钥加密原始数据并返回加密后的隐私数据。
在上述数据隐私保护方法中,所述隐私数据首先通过hash算法得到数据的数字指纹,数字指纹用于核验隐私数据是否被篡改。隐私数据通过平台密钥第一次加密得到加密后的密文再通过用户的公钥进行第二次非对称加密,经过两次加密后的密文和对应的数字指纹通过数据存证合约存储到区块链上。隐私数据在区块链上存储成功后,将数据指纹和隐私数据基本信息包含隐私数据名称、隐私数据唯一标识、隐私数据描述等信息但不包含隐私数据本省存储到结构化数据中形成隐私数据目录方便数据使用者定位。
在上述数据隐私保护方法中,所述使用者通过隐私数据目录查询出所需的数据索引信息,根据需要向系统提出数据使用申请。系统将申请信息以消息的形式通知给数据所有者。数据所有者接收到申请信息后审核使用申请,审核同意后系统根据隐私数据的唯一标识和申请者的公钥通过加密算法生成唯一的数据使用授权码,审核不通过申请者则无法获得使用授权,系统将审核结果信息发送给申请者。数据使用者对申请者的访问权限进行设置,例如设置数据访问有效期、访问次数等,将访问权限和授权码的关联关系通过智能合约保存到区块链上,保证隐私数据使用权益、所有权和安全性,系统将授权码发送给使用者。
在上述数据隐私保护方法中,所述使用者通过数据使用授权码查询隐私数据时首先权限控制合约拦截数据查询请求,权限控制合约检查授权码的合法性。授权码合法性检查通过后权限控制合约继续检查授权码授权信息。授权码授权信息检查通过后系统通过使用者的公钥解析出授权码中的数据唯一标识。通过数据唯一标识通过数据查询合约查询出隐私数据的秘文,首先通过平台的秘钥第一次解密得到隐私数据第一次加密后的数据。数据所有者获取区块链上的第一次加密后的数据后,用自己的私钥第二次解密数据获取隐私数据的明文数据,并通过申请者的公钥加密隐私数据得到密文,将密文发送给使用者。
在上述数据隐私保护方法中,所述权限控制合约用于治理隐私数据相关合约的拦截规则,对规则的修改只需操作权限合约,不需要调整其他合约,且修改会实时生效。
在上述数据隐私保护方法中,所述智能合约用于隐私数据注册、隐私数据申请查询、隐私数据授权、隐私数据查询等全生命周期行为的上链。
如上所述基于区块链和权限合约的数据隐私保护的方法的系统,其结构特点是,它包含以下功能模块:
1)隐私数据注册模块:用于注册隐私数据,将隐私数据保存到区块链上并形成隐私数据目录。
2)隐私数据申请审核模块:用于数据使用者申请隐私数据访问和使用权限,用于数据所有者审核隐私数据的使用和访问申请。
3)隐私数据权限控制模块:用于隐私数据访问授权和使用授权,数据授权码生成和验证功能。
4)隐私数据查询模块:用于查询区块链上的隐私数据,并提供数据的加密和解密功能。
5)行为管理模块:用于记录隐私数据注册、隐私数据申请查询、隐私数据授权、隐私数据查询等全生命周期行为信息,将行为信息记录到区块链上。
6)消息模块:用于隐私数据申请消息、隐私数据审核结果信息、隐私数据访问信息等消息推送。
本发明由于采用了上述系统和方法,充分结合区块链难以篡改性、密码技术,跨合约访问技术,提供一个专门的权限控制合约用于治理隐私数据相关访问的拦截规则,在保证隐私数据安全的情况下通过提供隐私数据目录让使用者快速定位所需的数据,通过隐私数据使用申请,授权码,并设置数据查询规则和授权码的有效期,从而保证隐私数据的安全性。
图1为本发明数据隐私保护方法的流程示意图;
图2为本发明数据隐私保护系统的功能架构示意图;
图3为本发明实施例中隐私数据存储示意图;
图4为本发明实施例中隐私数据授权流程示意图;
图5为本发明实施例中隐私数据权限控制功能原理示意图。
下面结合附图对本发明进行详细地描述,省略对一些公知通用的功能和结构的描述。
图1为本发明一种基于区块链和权限合约的数据隐私保护的方法的流程示意图,本发明实施例适用隐私数据注册、隐私数据申请、隐私数据使用、隐私数据在区块链中存储和隐私数据使用。该实施例需要结合区块链网络和软件系统来实现,由软件系统来体现展示。
下面结合图1进一步说明本发明所申请的实施例中一种基于区块链和权限合约的数据隐私保护的方法,包括以下步骤:
步骤S101:加密的隐私数据通过数据存证合约存储到区块链上,在链下形成隐私数据目录。
其中,隐私数据首先通过哈希算法得到数据的数字指纹,数字指纹用于核验隐私数据是否被篡改;隐私数据通过平台密钥第一次加密得到加密后的密文再通过用户的公钥进行第二次非对称加密,经过两次加密后的密文和对应的数字指纹通过数据存证合约存储到区块链上;隐私数据在区块链上存储成功后,将数据指纹和隐私数据基本信息包含隐私数据名称、隐私数据唯一标识、隐私数据描述等信息但不包含隐私数据本省存储到结构化数据中形成隐私数据目录方便数据使用者定位。在整个隐私数据存储到区块链的过程中,隐私数据全程存储的都是加密后的密文,并经过两个加密,第一次加密的密文在所有者手中,系统不保存,即使区块链节点被暴力访问也无法拿到隐私数据的原始内容从而保证得了隐私数据的安全性。
隐私数据保存成功后,将交易hash值与隐私数据唯一标识、隐私数据名称等信息作为数据目录的基本信息存到结构化数据中并对系统中的用户开放,以快速定位数据,数据目录中不涉及到隐私数据内容信息,不存在泄露的风险,数据目录结合行为记录实现隐私数据权属登记在保证数据安全的情况下为保障隐私数据流转与共享、促进业务协同夯实基础。
综上所述,隐私数据的属性应该包含:隐私数据名称、隐私数据唯一标识、隐私数据描述。隐私数据目录属性应该包含:目录项ID、隐私数据名称、隐私数据描述、存证时间、交易hash值。
步骤S102:使用者通过隐私数据目录查询出所需的数据,并通过隐私数据申请合约向所有者提出数据使用申请,系统向所有者发送申请信息。
数据使用者提隐私数据使用申请时,通过行为智能合约会将用户的申请信息作为申请行为记录到区块链中,为行为追溯提供数据支撑。
步骤S103:当所有者获取申请后,通过授权智能合约向使用者授权数据的使用权限或驳回申请,并将授权信息行为记录到区块链上,隐私数据授权通过后生成授权码,并将授权码发送给使用者。
数据所有者接收到申请信息后审核使用申请,审核同意后系统根据隐私数据的唯一标识和申请者的公钥通过加密算法生成唯一的数据使用授权码,审核不通过申请者则无法获得使用授权,系统将审核结果信息发送给申请者。数据使用者对申请者的访问权限进行设置,例如设置数据访问有效期、访问次数等,将访问权限和授权码的关联关系通过智能合约保存到区块链上,保证隐私数据使用权益、所有权和安全性,系统将授权码发送给使用者。
数据授权码通过ASE加密方式加密,加密秘钥K为数据申请者的公钥,加密内容P为隐私数据唯一标识、数据使用者的用户ID和授权信息(数据访问有效期,访问次数),通过ASE加密方式加密后得到密文,密文作为数据授权码。
步骤S104:当获取用户访问隐私数据请求时,首先通过权限控制合约拦截访问请求,通过授权码和访问规则判断用户是否具有访问权限,当用户不具有访问权限时将用户的非法访问行为记录到区块链中,并以消息的形式发送给所有者。
权限控制合约拦截对合约函数的非法调用,通过数据授权码与用户和资源的管理,可轻松实现对隐私数据访问的权限控制,数据所有者可随时调整数据授权码的授权信息,权限的修改即可实时生效,权限控制合约功能示意图详见图5。
步骤S105:当通过权限控制合约验证后,通过隐私数据查询合约所有者将隐私数据解密后获取原始数据,用请求者的公钥加密原始数据并返回加密后的隐私数据密文。
使用者通过数据使用授权码查询隐私数据时首先权限控制合约拦截数据查询请求,权限控制合约检查授权码的合法性;授权码合法性检查通过后权限控制合约继续检查授权码授权信息;授权码授权信息检查通过后系统通过使用者的公钥解析出授权码中的数据唯一标识;通过数据唯一标识通过数据查询合约查询出隐私数据的秘文,首先通过平台的秘钥第一次解密得到隐私数据第一次加密后的数据;数据所有者获取区块链上的第一次加密后的数据后,用自己的私钥第二次解密数据获取隐私数据的明文数据,并通过申请者的公钥加密隐私数据得到密文,将密文发送给使用者。本步骤涉及的加密算法为非对称加密,支持国密SM2等常用非对称加密算法。
本实施例的技术方案,二次加密后的隐私数据密文通过存证智能合约存储到区块链网络上,数据存储成功通过隐私数据目录和交易hash值进行关联,通过行为上链结合数据授权码的使用,既能保证隐私数据快速定位,又能保证隐私数据使用全程可追溯。本实施例中在权限控制合约中拦截非法访问和权限控制,保证数据安全的同时能随时修改授权策略并能实时生效。
图2是本实施例中的系统功能架构示意图,主要功能包含如下:
S201:隐私数据注册模块:用于注册隐私数据,将隐私数据保存到区块链上并形成隐私数据目录;本实施例中用户填写隐私数据名称、隐私数据描述、隐私数据内容,点击保存按钮,系统首先听过哈希算法获取隐私数据的hash值作为数字指纹,系统内置函数给当前的隐私数据编码获取唯一的标识,通过用户的私钥对隐私数据进行第一次加密得到隐私数据的密文,密文连同唯一编码、数字指纹、隐私数据名称、隐私数据描述和用户信息封装成交易内容,调用数据存证合约,将隐私数据存储到区块链网络中,交易成功后,系统将交易hash值,隐私数据唯一标识、隐私数据名称、隐私数据描述、用户信息作为目录的基本信息存储到隐私数据目录中。
S202:隐私数据申请审核模块:用于数据使用者申请隐私数据访问和使用权限,用于数据所有者审核隐私数据的使用和访问申请;数据使用者通过数据隐私目录定位到需要的隐私数据,通过本实施例中的申请功能,填写申请原因,点击提交按钮后系统将申请原因和目录基本信息保存到数据库中,形成一条申请信息,系统以站内消息的形式通知数据所有者;数据所有者登录系统后查看申请信息,审核申请信息,所有者如果拒绝申请,则申请结束所有者无法获取隐私数据。
S203:隐私数据权限控制模块:用于隐私数据访问授权和使用授权,数据授权码生成和验证功能;
需要说明的是,隐私使用申请审核通过后,数据所有者通过此功能给数据使用者授权,本实施例中数据所有者通过设置数据使用有效期和数据使用次数来控制隐私数据的访问权限,数据授权码载体可以使二维码也可以是url地址。
S204:隐私数据查询模块:用于查询区块链上的隐私数据,并提供数据的加密和解密功能;用户在系统中输入数据授权码,系统通过用户的公钥通过解密算法解析出授权码中的数据资源信息,通过授权控制模块验证访问权限,验证通过后,系统通过隐私数据唯一标识通过查询目录获取隐私数据的交易hash值,并通过查询合约在区块链上的查询出隐私数据的密文,通过二次解密获取隐私数据的明文信息,系统用数据使用者的公钥通过非对称加密方法再次加密隐私数据得到隐私数据密文并将密文发送给数据使用者。在隐私数据查询模块中隐私数据全程传输的都是密文形式,增加了隐私数据的安全性。
S205:行为管理模块:用于记录隐私数据注册、隐私数据申请查询、隐私数据授权、隐私数据查询等全生命周期行为信息,将行为信息记录到区块链上;
S206:消息模块:用于隐私数据申请消息、隐私数据审核结果信息、隐私数据访问信息等消息推送;消息模块的引入能及时通知数据所有者隐私数据的使用情况和隐私数据的非法访问情况,使数据所有者能及时获取数据的安全信息,以及数据的使用信息。
需要说明的是,基于区块链和权限合约的隐私数据保护的系统,系统中对隐私数据所有的操作行为都会通过行为合约存储到区块链上,为隐私数据的全生命周期溯源提供支撑,为隐私数据的审计提供数据,从而加强了隐私数据的安全性。
图3是本实施例中隐私数据存储示意图,具体步骤如下:
S301:数据所有者登录系统,输入隐私数据名称、隐私数据描述、隐私数据。
S302:点击保存,系统通过编码函数为隐私数据生成唯一标识。
S303:系统对隐私数据通过哈希函数获取隐私数据hash值,作为数字指纹。
S304:通过用户的公钥对隐私数据进行第一次加密,获取第一次加密的密文。
S305:第一次加密的密文通过系统进行第二次加密获取第二次加密的密文。
S306:第二次加密的密文、唯一标识和数据指纹信息通过智能合约存储的区块链网络上,保存成功返回交易hash。
S307:保存交易失败,返回错误信息,流程结束。
S308:系统将交易hash值、隐私数据唯一标识、隐私数据名称等不包含隐私数据本身,新增一条隐私数据目录,并将保存行为信息保存的区块链上。
图4是本实施例中隐私数据授权示意图,具体步骤如下:
S401:数据使用者申请数据使用,
S402:系统将申请行为记录到区块链上。
S403:系统发送申请消息给数据所有者。
S404:数据所有者审核申请信息。
S405:申请不通过,系统将审核行为记录到区块链上,流程结束。
S406:申请通过,设置隐私数据访问规则,设置访问有效期或访问次数,系统将授权信息记录的区块链上。
S407:系统生成数据授权码,并发送消息给数据申请者,系统将授权行为记录到区块链上,流程结束。
图5是本实施例中基于合约的隐私数据权限控制功能原理图示意图,具体步骤如下:
S501:查询隐私数据,数据使用者在调用隐私数据查询合约。
S502:权限判断,植入在隐私数据查询合约内部的会向权限控制合约查询该用户是否有权限调用查询合约。
S503:权限层,鉴权请求通过权限层查询隐私数据的授权信息。
进一步的,数据使用者在调用隐私数据查询合约,植入在隐私数据查询合约内部的会向权限控制合约查询该用户是否有权限调用查询合约,权限层服务具体的鉴权功能,在本实施例中权限层通过数据授权码和权限规则来实现鉴权功能。数据所有者可在权限层随时修改权限规则,修改完成后,权限规则即生效,从而加强了隐私数据的安全性。
以上所述的实施例的是对本发明的方法一种比较详细的阐述,并非用于限制本申请的保护范围。基于本发明的思路、原理所做的任何修改、等同的替换和改进,均应在本申请的保护范围内。
本发明使用时,通过权限控制合约用于治理隐私数据相关合约的拦截规则,对规则的修改只需操作权限合约,不需要调整业务合约,且修改会实时生效。在保证隐私数据安全的情况下通过提供隐私数据目录让使用者快速定位所需的数据,通过隐私数据使用申请,所有者授权通过后利用申请者的公钥和隐私数据的唯一标识通过系统生成隐私数据访问授权码,并设置数据查询规则和授权码的有效期,由于授权码与使用者的公钥和用户信息绑定只能由被授权者访问,从而保证数据的安全性。对于隐私数据的访问行为通过行为智能合约全程上链,数据所有者能够随时查询数据是否被使用,被谁使用,并可以决定是否被使用的方法可以极大增加用户隐私数据使用的透明度,让用户对自己隐私数据保存在平台上的安全性有了很大的信心和信任。本发明通过消息通知模块数据使用申请信息和数据非法访问信息及时通知数据所有者。
本文发布于:2023-04-13 15:59:03,感谢您对本站的认可!
本文链接:https://patent.en369.cn/patent/3/86104.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |