[发明专利]基于智能合约和代理重加密的共享租房门锁密码的方法有效
申请号: | 202010870229.6 | 申请日: | 2020-08-26 |
公开(公告)号: | CN112053474B | 公开(公告)日: | 2022-03-29 |
发明(设计)人: | 王志伟;钱丽平 | 申请(专利权)人: | 南京邮电大学 |
主分类号: | G07C9/00 | 分类号: | G07C9/00;G06Q50/16;G06Q30/06 |
代理公司: | 南京瑞弘专利商标事务所(普通合伙) 32249 | 代理人: | 徐激波 |
地址: | 210046 *** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 智能 合约 代理 加密 共享 租房 门锁 密码 方法 | ||
1.一种基于智能合约和代理重加密的共享租房门锁密码的方法,其特征在于,包括以下步骤:
步骤S1、用户向系统注册;
步骤S1.1、可信第三方PKG生成系统参数和主密钥;
步骤S1.2、用户向系统注册,将身份信息ID发送给可信第三方,生成公钥PK和私钥SK;
步骤S1.3、房东用户设置出租房屋的初始密码P0;
步骤S1.4、代理重加密中密钥生成算法中引入时间和身份的属性,生成具有时间属性的公钥和私钥如下:
公钥:PKID,T=H1(ID)·gT;
私钥:SKID,T=skID·gT=(H1(ID)·gT)s;
其中:PKID,T为具有身份和时间属性的公钥,SKID,T为对应的私钥,H1为哈希函数,g为G的生成元,G为一个乘法循环群,T为时间属性,s为主密钥;
步骤S1.5、房东用户生成P0的密文;
用户选择一个随机数r∈Zp,其中Zp是一个群,房东利用自己的公钥加密P0,密文包括两部分:
其中P0为房东设置的原始门锁密码,为房东利用自己的公私钥加密的密文,改密文包括和两部分;其中g为G的生成元,G为一个乘法循环群,r为随机数,s为主密钥,T0为最初的时间戳;
步骤S1.6、房东用户向区块链发送交易信息并发布:
其中IH表示房屋信息,RP表示房屋租金,T0表示初始时刻,表示初始时刻密文,表示初始时刻公钥,IDl为身份信息;房东在系统中发布交易信息Tinitialrent,并附上自己的签名;
步骤S1.7、矿工利用房东用户发送的交易中身份IDl信息验证交易上的签名,若租房交易被验证通过,将会被写进新的区块;
步骤S1.8、租房用户租房时必须向系统注册生成最初的私钥,同时获取带有最初时间戳的公私钥;
步骤S2、房东向系统更新带有时间属性的加密门锁密文;
步骤S2.1、房东和租房用户获取具有身份和时间属性的公私钥:
(PKID,Ti,SKID,Ti)
其中Ti为此次密码的时效期;
步骤S2.2、租房用户根据租客身份信息获取对应公私钥并发出租房请求其中Ti表示租房时效,代表租房公钥,IDt表示租客身份信息;所述租房请求Ttenant附有自己签名;
步骤S2.3、房东更新初始密码,随机选择一个数δi∈GT,并更新当前门锁密码明文为Pi=Pi-1·δi;所述GT为一个乘法循环群;
步骤S2.4、更新加密门锁密码为Ti时间下的密文;上个时间段Ti-1所对应的密文如下:
房东更新门锁密码Pi并加密生成Ti时间段的门锁密文如下:
步骤S2.5、房东用户更新租房交易
步骤S2.6、矿工作为区块链中的工作节点,负责打包验证交易;矿工使用身份信息ID验证更新的租房交易信息,若验证通过更新的租房信息将会写入新的区块;
步骤S3、代理重加密生成重加密门锁密文阶段;
步骤S3.1、租房用户想要获取自己可以解密的门锁密文,就需要给房东发送交易;交易其中Deposite代表承诺的费用;房东要获得这个费用必须发布交易并且重加密门锁密文;当房东在一段时间后不想继续出租房屋时,租客可以申请退回相应的费用;
步骤S3.2、房东用户验证租房用户的身份信息,同时计算生成重加密密钥所述重加密密钥包括两部分:
房东用户IDl选择一个随机数X∈GT,并对X计算密文如步骤S1.5对X进行加密,生成对于X密文和
步骤S3.3、计算重加密密文;重加密密文由三部分组成:
其中
房东发布交易并附上自己的签名;其中IDt表示租客信息,表示门锁加密后的密文,Ti表示时效期,IDl表示房东身份信息,IH表示房屋信息;随后,房东发布另一个交易并附上自己的签名并且要求获得相应的费用,Ti包括这次的门锁密码所对应的时效期;
步骤S3.4、租房用户通过自己的私钥解密密文,获得房屋门锁密码;同时房东获取相应的费用,发布Getpaid交易;
对于重加密密文房东利用自己的私钥解密房东选取的随机数X具体步骤如下:
然后根据X和私钥解密Pi如下:
c2/e(c1,H2(X))=Pi·e(grH2(X))/e(gr,H2(X))=Pi;
最后房东发起Getpaid交易获取相应的租金;
步骤S4、智能合约检测房屋门锁时效期阶段;
步骤S4.1租房用户首先验证Rt交易和Getpaid交易是否由房东创建,当所述交易有效时,将交易写入区块,房东获得相应的租金;
步骤S4.2、当房东在某一时间段之后不愿意继续出租自己的房子,租客发布交易Getdeposit来获得剩下的存款;
步骤S4.3、矿工验证Getdeposit,并检查是否已经超过交易时效,当交易有效时,将Getdeposit写入区块,租客取回剩下的存款;
步骤S4.4、利用智能合约检测当前的门锁密码是否在时效期内;当门锁密码在时效期内时,租房用户可以解密;当门锁密码超过时效期时,则提醒房东用户更新密码;
步骤S4.5、下一个时间段Ti+1时租客选择续租,则房东和租客将重新执行步骤S1-步骤S3。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京邮电大学,未经南京邮电大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010870229.6/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种基于用户评论的推荐方法
- 下一篇:一种具有摩擦直包芯纱纺织机