[發明專利]基于以太坊IoT實體輕量級認證方法、系統、智能終端有效
| 申請號: | 201911385265.7 | 申請日: | 2019-12-28 |
| 公開(公告)號: | CN111147228B | 公開(公告)日: | 2022-04-01 |
| 發明(設計)人: | 李暉;張秀娟;曹進;羅玙榕;趙興文 | 申請(專利權)人: | 西安電子科技大學 |
| 主分類號: | H04L9/06 | 分類號: | H04L9/06;H04L9/08;H04L9/30;H04L9/32;H04L9/40;G06F16/27 |
| 代理公司: | 西安長和專利代理有限公司 61227 | 代理人: | 何畏 |
| 地址: | 710071 陜西省*** | 國省代碼: | 陜西;61 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 基于 以太 iot 實體 輕量級 認證 方法 系統 智能 終端 | ||
1.一種基于以太坊IoT實體輕量級認證方法,其特征在于,所述基于以太坊IoT實體輕量級認證方法包括以下步驟:
第一步,智能設備在注冊時獲得公私鑰并將設備關鍵數據的變色龍哈希函數值存儲在CN節點,等待下一次共識時間的到來進行全網備份;
第二步,開始認證時,向CN節點發送請求消息REQ,CN節點利用變色龍哈希函數的特性驗證身份并生成驗證通過的token標識發送需要請求通信的設備;
第三步,設備向CN和發送的REQd和ACKd信息,CN節點根據保存的設備變色龍哈希函數值驗證設備的身份,驗證通過后向設備返回響應信息;
所述基于以太坊IoT實體輕量級認證方法的智能設備注冊階段具體包括:
(1)參與到區塊鏈中的CN節點選擇初始化輸入參量(m*,r*),其中m*,P是橢圓曲線上的一點,變色龍哈希函數定義為CHY(m,r)=mP+rY,其中(P,Y)是公鑰,(k,x)是陷門密鑰,其中Y=xP,k=m*+r*x;
(2)節點CN基于橢圓曲線數字簽名算法生成簽名驗簽密鑰對(skcn,vkcn),并將公有參數PK={P,vkcn}公布到區塊鏈中,本地保存私鑰skcn;
(3)本地私有鏈有智能設備注冊時,智能設備所屬的智能家居CN節點為注冊的設備分配相應的公私鑰,公鑰作為設備的地址,私鑰加密返回給智能設備;CN節點更新維護的兩個密鑰列表KeyList1和KeyList2;主人在本地數據庫存儲相關的訪問策略列表Access List;
(4)設備在計算變色龍哈希值,執行下列步驟:
1)設備A生成隨機數x,m,計算Y=xP,并計算設備關鍵數據的哈希r=H(ID),之后利用變色龍哈希函數計算CHdc=CHYdc(m,r),將消息M=ID||CHdc發送給CN節點;
2)CN節點收到消息后將CHdc和設備生存期時間Texp共享到區塊鏈中,并利用CN節點的簽名私鑰計算簽名信息Msig=sigCN(IDdc||CHdc),將Msig和Texp發送給設備A;
3)設備A收到消息Msig后,驗證CN簽名,并計算k=m+rx,之后保存陷門密鑰sk=(k,x);
所述基于以太坊IoT實體輕量級認證方法的發送認證請求信息具體包括:
(1)請求者選擇隨機數α,β,并計算A=αY,B=βY,獲取本地時間戳Tcur,令γ=H(A||B||Tcur),之后計算m=k-rx,其中r=αγ;
(2)請求者將請求信息REQ=m||A||B||Tcur發送給設備device1所在的CNd節點并廣播信息;request→CNd:REQ=m||A||B||Tcur;
所述基于以太坊IoT實體輕量級認證方法針對變色龍哈希函數驗證請求信息并發送認證信息和應答信息具體包括:
(1)CNd收到請求者發送的消息REQ后,執行下列步驟:
1)解密信息,在自己管理的范圍內通過KeyList1,允許訪問智能家居設備的用戶密鑰列表)檢查該請求者的地址是否合法,若合法跳轉到2),否則將它舍棄;
2)驗證時間戳Tcur;合法之后,跳轉到3),否則將它舍棄;
3)計算γ=H(A||B||Tcur),并根據公式mP+γA=CHdc驗證請求者的身份合法性,如果驗證成功跳轉到4),否則將它舍棄;
4)節點CNd生成token=Hash(Req′address+H(R1)),將token發給請求者需要通信的智能設備device1并廣播消息;
(2)智能設備device1收到消息后,驗證節點CNd簽名的token的合法性,若合法,device1選擇自己的隨機數α′,β′,計算A′=α′Y′,B′=β′Y′,獲取本地時間戳Tcurr,令γ′=H(A′||B′||Tcurr),之后計算m′=k′-r′x′,其中r′=α′γ′;
根據公式Krd=x′(α′+β′)(A+B)生成請求者request和智能設備之間的會話密鑰Krd,并且生成應答信息REQd=m′||A′||B′||Tcurr和ACKd=H(Krd||REQd);之后設備device1將REQd和ACKd發送給請求者所屬的節點CNr;
(3)節點CNr收到消息后,執行下列步驟:
1)驗證時間戳Tcurr,若合法,跳轉到2),否則舍棄它;
2)驗證收到的token是否合法,若合法,跳轉到3),否則舍棄它;
3)根據等式m′P+γ′A′=CHd檢測設備device1的變色龍哈希值CHd的合法性驗證設備的身份合法性;如果驗證通過,將應答信息發送給請求者;
所述基于以太坊IoT實體輕量級認證方法的發送認證確認消息具體包括:
(1)請求者收到消息后在本地根據公式Kdr=x(α+β)(A′+B′)計算Kdr,并計算請求者的ACKr=H(Kdr||REQ)返回給設備device1;request→device1:ACKr;
(2)設備device1收到請求者的ACKr后檢測其合法性,合法后認證通過;設備device1收到請求者的ACKr后檢測其合法性,合法后認證通過;
所述基于以太坊IoT實體輕量級認證方法的IoT實體間交互信息具體包括:
(1)設備A請求設備B的數據信息,設備A生成帶有設備關鍵數據哈希值H(firmware)的Tgetdata交易請求發送給CN:A→CN:M1=Tgetdata;
(2)CN節點接收到請求后檢索智能設備密鑰列表KeyList2檢查設備A的地址是否合法;若合法,再檢查設備A的關鍵數據的哈希值H;若合法,檢索策略頭部查詢其是否具有訪問權限,若有則向設備B請求數據;
(3)設備B利用自己的私鑰簽名需要發給設備A的數據,并將簽名后的數據和哈希后的數據一起發送給節點CN:B→CN:
(4)CN收到消息M2之后,解密并對data進行哈希,驗證數據的完整性,若完整則對資源的交易簽名并生成合約記錄存儲在本地賬本中,將數據返回給設備A。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于西安電子科技大學,未經西安電子科技大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201911385265.7/1.html,轉載請聲明來源鉆瓜專利網。





