欢迎来到知嘟嘟! 联系电话:13336804447 卖家免费入驻,海量在线求购! 卖家免费入驻,海量在线求购!
知嘟嘟
我要发布
联系电话:13336804447
知嘟嘟经纪人
收藏
专利号: 201910476572X
申请人: 杭州电子科技大学
专利类型:发明专利
专利状态:已下证
专利领域: 电通信技术
更新日期:2024-01-05
缴费截止日期: 暂无
价格&联系人
年费信息
委托购买

摘要:

权利要求书:

1.一种基于门限密钥共享及区块链的共享内容监管方法,其特征在于包括如下步骤:步骤1、内容权限快照;

步骤2、基于Shamir(t,n)的密钥分发和恢复;

步骤3、基于交易的内容审查;

步骤1所述的内容权限快照,具体实现如下:

内容权限快照通过内容权限的创建交易和更新交易实现,在CP即内容提供者刚开始创建可供共享的资源集和相关访问权限的时候,生成一个内容创建交易Tcreate,如式(1)所示:在式(1)中,Tid表示交易标识,交易类型为创建Create,输入地址为PKCP和输出地址为PK0,Tpre表示上一次交易,因为是初始交易,Tpre和输入脚本为空,用 表示;ResN表示当前该CP的所有资源文件名,POp表示资源所对应的访问权限,st为当前的时间戳;

当CP每次进行内容权限更改时,需要发布一个权限更新交易Tupdate如下:在式子(2)中,该交易TUpdate的交易类型为更新Update,输入地址为PKCP和输出地址为PK0,第一次更改权限Tpre为TCreate,之后所发布的TUpdate的Tpre为上一个TUpdate,ResN′表示更改后CP的所有资源集的文件名,POp′是该资源集中资源所对应的更改后访问权限;

步骤2所述的基于Shamir(t,n)的密钥分发和恢复,具体实现如下:

2‑1.公私钥对、地址及主密钥的生成

系统初始化生成自身的公私钥对PK0/SK0、系统地址Addr0;在监管部门的钱包端,初始化生成公私钥对PKSP/SKSP、监管部门地址AddrSP;在节点的钱包端,初始化生成公私钥对PKMP/SKMP、节点地址AddrMP;

所有私钥都是秘密的,公钥和地址都是公开的;系统将随机选择一个主秘密K,将K分为两份KSP和KMP,对KSP和KMP分别进行基于Shamir(t,n)门限秘密共享;其中KSP分发给l个参与内容监管的监管部门,KMP分发给m个参与验证的节点,并设定秘密恢复门限分别为(v,l)和(u,m);v表示参与的监管部门中的任意v个监管部门;其中K、KSP和KMP均不需要保存;

2‑2.监管部门的子秘密分发与恢复

在监管部门的子秘密分发之前,所有的监管部门SP需要将自己的公钥PKSP和地址标识AddrSP发送到系统进行注册,具体如下:

2‑2‑1.秘密分发阶段

系统首先选取两个大素数p1,q1,计算 再寻找满足的最小正整数h;

然后系统计算 并对以下(l+1)个点(0,KSP),利用拉格朗日插值,得到的l阶多项式为:

其中系统只秘密存储多项式系数al,al‑1,…av,公开参数:p1,q1,PK0,h,在此过程中用到的KSP以及所构建的多项式(3)均销毁;

SP首先获取系统公开参数:p1,q1,PK0,h;然后根据式(4)计算子秘密

2‑2‑2.秘密恢复阶段

系统要想恢复秘密KSP,需要参与的监管部门中的任意v个监管部门参与,提供他们各自的子秘密 和对应的地址进行运算就能够恢复出KSP,具体过程如下:

①根据所提供的v个子秘密,计算Y′i′=x′t′+y′i′,i′=1,2,…v;②将x′i′分别用代入式(5)计算得v个点分别为:③根据拉格朗日插值法得到一个v‑1次多项式如下式(6):式(6)中,g(0)就是需要恢复的共享秘密KSP,Yi′′、Yi′为中间变量;

2‑3.节点的子秘密分发与恢复

在节点的子秘密分发之前,所有的节点MP需要将自己的公钥PKMP和地址标识AddrMP发送到系统进行注册;

2‑3‑1.秘密分发阶段

节点子秘密分发阶段,完全是由系统生成子秘密并分配给每个已注册节点;首先,系统随机选择u‑1个元素b1,b2,…,bu‑1∈GF(q1),其中GF(q1)为有限域,并构建一个u‑1阶的多项

2 u‑1

式f2(x)=KMP+b1x+b2x+…+bu‑1x ,其中KMP为节点所共享的秘密;接着,系统随机选择m个不同的非零元素xi″∈GF(q1),i″=1,2,…,m,对每个非零元素xi″分别计算yi″=f2(xi″)mod q1,得到数对(xi″,yi″),该数对即分发给节点的子秘密;最后,系统通过区块链交易的形式将该子秘密(xi″,yi″)分配给加入系统的节点;

每当有新节点加入时,系统会根据秘密保存的多项式f2(x),为其计算子秘密,并分配给新节点;

2‑3‑2.秘密恢复阶段

对于KMP的恢复,假定任意u个子秘密就能够一起恢复出KMP,即秘密恢复门限为(u,m);

根据式(7),当x=0时,多项式f2(x)的常数项f2(0)=KMP,即得到需要恢复的秘密KMP;

步骤3所述的基于交易的内容审查,包括4个交易阶段:内容审查的发起交易、审查请求验证交易、内容审查结果交易以及内容提供者CP拒绝审查处理交易,具体实现如下:

3‑1.内容审查发起交易

3‑1‑1.监管部门SP审查预交易

内容审查是由系统中注册过的监管部门SP发起的,假定一共有l个监管部门可表示为SP1,…,SPi,…,SPl,i=1,2,…,l,某个监管部门SPi发起内容审查过程如下所述:首先,SPi向其他的监管部门广播一个内容审查请求req,请求如式(8)所示:在式(8)中,PKCP表示需要被审查的内容提供者的地址; 表示某个内容监管部门的审查信息如式(9)所示:

在式(9)中, 和 分别表示SPi的公钥和地址;

其中 是SPi的子秘密;σ表示信息的签名,即 st表示当前的时间戳;

接着,当l‑1个监管部门SP1,…,SPi‑1,SPi+1,…,SPl收到该请求如式(8),需要先对该SPi进行审查信息有效性验证,若有效,则会加入自己的审查信息,其中SPi审查信息的验证过程如下:①验证时间戳st,从 中提取st,验证当前时间Tcur与st之差是否在有效期内;

②验证签名σ,提取σ并进行签名验证

③验证SPi提供的子秘密 是否属实,根据 计算

验证 是否成立,如果是,则说明所给的 属实;

④若上述验证都通过,则加入自己的审查信息;

最后,当SPi接收到该内容审查请求的至少v‑1个响应时,SPi从中选取v‑1组审查信息,并提取子秘密 加上自己的子秘密,计算子秘密和 最后形成SP的审查信息集InfoSP,如式(10)所示:在式(10)中, 由SP的子秘密和SumKSP和v个经处理的SP的审查信息 组成,其中 可见式(11),与式(9)不同之处是式(11)使用系统的公钥PK0对 进行加密;

SPi将 作为交易内容形成一个审查预交易(pre‑transaction,preTsup);preTsup的交易内容由加入审查的监管部门和节点的审查信息集 构成,其中的上标v表示v个监管部门审查信息已添加完全, 的上标0表示还未有节点加入;

3‑1‑2.节点MP审查请求交易

假定网络中共有m个在线节点MP,其中某个节点MPj收到preTsup验证并形成最终的审查请求交易过程如下:首先,MPj验证 是否有效,前两步时间戳和签名验证相同,第三步验证SP子秘密是否属实,只需验证式(12)是否成立;

接着,若验证成功加入自己的审查信息 如式(13)所示:在式(13)中, 为该节点MPj的地址; 其中

是MPj的子秘密;σ表示签名;

最后,当有u个节点审查信息加入完成即

形成一个完整的审查请求交易TRequest如式(14)并广播到全网;

3‑2.审查请求验证交易

当上述的内容审查请求写入区块链之后,区块链系统能够验证该审查信息的有效性;

系统使用自身私钥SK0获取上述审查请求交易的交易内容 接着使用SK0解密上述审查信息 中的 得到 计算

得到监管部门的子秘密 再者根据所提出的秘密恢复方法进行秘密恢复,分别得到KSP和KMP;最后获得交易审查码生成代码的密钥K=KSP||KMP;

生成审查码vCode的执行代码Code是被加密过的,这个被加密的审查码生成代码可记作EncCode,即EncCode=EncK(Code),因而想要准确地执行Code生成vCode需要正确的密钥K,如果Code=DecK(EncCode)得到的Code可以正常运行,则表示解密成功,也说明密钥K是正确的,即审查请求验证成功;

如果审查信息验证成功,则系统执行Code生成vCode,之后形成审查验证交易TVerify如式(15)所示:另外,为了确保vCode仅可使用一次,还需要建立一个Cuckoo Filter记作CFver;在将TVerify写入区块链之前,节点需要先对TVerify中的vCode合法性进行验证,验证步骤如下:

1)验证时间戳st,防止vCode被重放;

2)验证签名, 确保vCode生成的合法性,即由系统生成;

3)验证审查信息的合法性,验证式(12)是否成立,若成立则说明该审查请求是由多个监管部门同意之后才发起的,因而生成的审查码是合法的;

4)进行正常的区块链交易验证,若成功,将该交易写入区块链,同时将该vCode的哈希值H(vCode)插入CFver;

3‑3.内容审查结果交易

某一发起审查请求的监管部门SPi使用审查码vCode对内容提供者CP的共享内容进行审查,具体实现如下:

3‑3‑1.内容审查交易

SPi接收到系统通过TVerify传递给他的vCode时,说明SPi对于内容提供者CP的内容审查请求已经通过;SPi使用vCode对CP的所有的共享内容进行审查,并形成一个内容审查交易TSupervision如式(16)所示:

3‑3‑2.内容审查结果交易

对于CP,首先会接收到系统通过TVerify传递给他的审查码vCode;接着,CP将接收到SPi通过TSupervision传递给CP包含审查码的交易内容vCode||st||σ,提取其中的vCode记作vCode′,具体的审查码验证流程步骤如下:

1)验证vCode是否一致,即验证vCode=vCode′是否成立;

2)验证签名, 确保该审查是由SPi发起的;

3)审查码可用性验证,如果在CFver中可以找到H(vCode′),则说明该vCode′可用;

vCode验证成功后,SPi能够对CP的所有共享内容进行审查,进行预处理验证之后,利用现有的内容分析技术形成一个审查报告{Report},并生成审查结果交易TResult如式(17):

3‑4内容请求者拒绝审查处理

当该监管部门SPi接收到内容提供者CP拒绝审查之后,监管部门再次发起内容审查交易TSupervision,若是CP连续3次拒绝监管部门的内容审查,该CP用于交易传输的公钥地址PKCP将被挂起:将该CP的PKCP加入系统的CP异常状态表;

对于某一监管部门SPi:挂起某个CP,向系统发起一个挂起交易THang‑up如下:系统获取THang‑up之后,需要验证vCode确保SPi的挂起请求是合法性,若验证通过,则将该CP加入用户异常状态表,状态设置为挂起;

CP在被挂起的时效内向该监管部门提出申诉,向该监管部门发起一个申诉请求reqC,如式(19)所示:reqC=PKCP||cCode||{Complain}||σ||st       (19)式(19)中,cCode为申诉代码;{Complain}表示申诉报告,同一个CP仅可每隔t1/5申诉一次,否则无效;

SPi接收申诉之后,再次向系统发起审查请求交易重新获取vCode,并使用这个新的vCode对CP进行内容审查;若CP未拒绝,则SPi向系统发起一个状态修正交易TModify如式(20)所示:系统接收TModify之后,需要验证vCode确保SPi的状态修正请求的合法性,若验证通过,则将该CP从用户异常状态表中删除。

2.根据权利要求1所述的一种基于门限密钥共享及区块链的共享内容监管方法,其特征在于在SPi在进行内容审查之前还需要进行以下两步预处理:①查找区块链确保最近的H(ResN′||POp′)更新时间是否在接收到vCode之前;

②验证H(ResN′||POp′)=H(ResN||POp)是否成立,即记录在区块链中的内容和访问权限与当前该CP的所有内容以及对应的访问权限是否一致;若步骤①,②中有一点不满足则将该用户的审查状态记为2;接着SPi对CP的共享内容利用内容分析技术,进行内容审查得到结果后,SPi先更改所有涉及违法内容的访问权限;然后形成一个审查报告{Report};最后生成一个审查结果交易TResult,见式(17)。