新四季網

用於接入的安全二維碼生成方法與流程

2024-03-05 12:59:15 2


本發明涉及網絡安全
技術領域:
,特別是一種用於接入的安全二維碼生成方法。
背景技術:
:身份認證對於開放環境中的各種信息系統的安全性極為重要,是網絡安全中其他安全服務的前提和基礎。隨著Internet,尤其是電子商務的迅猛發展,信息安全問題已成為是會關注的熱點。傳統的帳戶密碼方式有著極為明顯的局限性。所以,現如今,已經產生了多種新型密碼,例如U盾,動態密碼。同時,在遠程操作過程中,直接傳輸信息是一件不安全的行為,容易被截取。二維碼是用某種特定的幾何圖形按一定規律在平面(二維方向上)分布的黑白相間的圖形記錄數據符號信息的;在代碼編制上巧妙地利用構成計算機內部邏輯基礎的「0」、「1」比特流的概念,使用若干個與二進位相對應的幾何形體來表示文字數值信息,通過圖象輸入設備或光電掃描設備自動識讀以實現信息自動處理:二維碼能夠在橫向和縱向兩個方位同時表達信息,因此能在很小的面積內表達大量的信息。而且,二維碼可以利用不同的算法實現,這樣的話,不知道正確的算法是不可以實現信息的解讀的。這樣存儲信息,不但達到了安全的目的,還壓縮了傳輸內容,提高了傳輸效率。然而,由於U盾成本較高且容易丟失,二維碼一般用於存儲普通信息,不能通過更為低價且便於保管的方法進行安全審核。技術實現要素:本發明的目的在於提供一種安全性好、效率高的用於接入的安全二維碼生成方法。實現本發明目的的技術解決方案為:一種用於接入的安全二維碼生成方法,包括以下步驟:第一步,伺服器為每一個用戶分配一個唯一的用戶ID,並使用改進的SHA-1及ECC方法,將用戶ID加密得到密文m;第二步,使用DataMatrix編碼方法,將密文m轉化為二維碼;第三步,使用DataMatrix解碼方法,將二維碼轉化為密文m,用於安全審核;第四步,將密文m使用改進的SHA-1及ECC方法解密得到用戶ID並進行檢測。進一步地,第一步中所述的改進的SHA-1方法,具體為:使用安全散列值計算及變換原始邏輯函數的方法,在計算散列值時採取在原消息中添加一個隨機512bit分組的方法,將該隨機512bit分組添加到原消息的後面;SHA-1壓縮函數邏輯結構有四輪循環模塊,每一輪用一個邏輯函數;用f1,f2,f3,f4表示四輪循環對應的邏輯函數,每個函數都操作3個32位字,用AND、OR、NOT和XOR表示邏輯運算符與、或、非和異或,B、C、D為上述的3個32位字,由於SHA-1中f2和f4邏輯函數相同,對f4的函數表達式進行了變動,將f4的函數表達式改為(BANDNOTC)XORD。進一步地,第一步中所述的改進的ECC方法,具體為:使用點積運算優化的方法,在使用ECC方法進行加密、解密的時候,對點積運算nP=P1+…+Pn的優化過程如下,n、P為點積運算兩個向量:(1)將n用二進位數的形式表示,即n=(nknk-1…ni…n1);(2)除去(nknk-1…ni…n1)的最高位nk,便得(nk-1…ni…n1);(3)依照(nk-1…ni…n1)從高到低的順序,當ni=0時,計算2P;當ni=1時,計算2P+P,並將計算結果作為下次運算的初始值,即2P變為P或2P+P變為P。進一步地,第一步中所述將用戶ID加密得到密文m,具體如下:(1)根據用戶ID生成的時間戳產生隨機分組Si;(2)將Si添加到用戶ID尾部,對添加了隨機分組的消息通過SHA-1方法計算散列值H1(ID,Si);(3)在得到散列值H1(ID,Si)後,進行對ID和H1(ID,Si)進行ECC加密立即產生一個隨機數k,所述ECC公鑰為PKB,G為橢圓基點,進行K1=kG和K2=k*PKB的計算;然後用K2的X坐標對ID和H1(ID,Si)採用ECC方法進行加密得到密文m。進一步地,第二步中所述DataMatrix編碼方法的過程依次為:輸入數據生成碼字流、生成RS糾錯碼、模塊排列和生成二維碼。進一步地,第三步中所述DataMatrix解碼方法的過程依次為:DataMatrix條碼圖像讀入、圖像預處理、二維碼檢測和定位、圖像矯正和識別、糾錯和解碼。進一步地,第四步所述將密文m使用改進的SHA-1及ECC方法解密得到用戶ID並進行檢測,具體如下:(1)將密文m進行ECC解密,首先計算K=K1*SKB=k*G*SKB=n*PKB=K2,其中SKB為ECC方法私鑰,PKB為ECC方法公鑰,G為橢圓基點,K1=kG,K2=k*PKB,k為隨機數,然後通過K的X坐標密文m進行解密,得到ID和H1(ID,Si);(2)也根據時間戳產生隨機分組Si,將Si添加到用戶ID尾部,通過SHA-1方法計算散列值H2(ID,Si);(3)比較H1(ID,Si)和H2(ID,Si):若相等,則表明消息沒有被修改,轉至步驟(4);否則,轉至步驟(5);(4)進行用戶ID確認:若存在此ID則完成安全接入;否則,轉至步驟(5);(5)拒絕接入。本發明與現有技術相比,其顯著優點:(1)使用二維碼作為接入的工具,降低了成本並且便於攜帶;(2)使用改進的SHA-1及ECC方法,在確保接入的安全性的同時,提高了接入的效率。附圖說明圖1為本發明用於接入的安全二維碼生成方法的流程圖,其中(a)為加密轉換為二維碼的流程圖,(b)為將二維碼解密校驗的流程圖。圖2為安全散列值工作流程圖。圖3為DataMatrix編碼方法流程圖。圖4為DataMatrix解碼方法流程圖。具體實施方式本發明在確保接入的安全性的前提下,將接入的驗證信息使用DataMatrix編碼方法轉換為二維碼;驗證時使用DataMatrix解碼方法獲取到接入的驗證信息,進行安全驗證,實現通過二維碼的安全接入。結合圖1~2,本發明用於接入的安全二維碼生成方法,包括以下步驟:第一步,伺服器為每一個用戶分配一個唯一的用戶ID,並使用改進的SHA-1及ECC方法,將用戶ID加密得到密文m;所述的改進的SHA-1方法,結合圖2,具體為:使用安全散列值計算及變換原始邏輯函數的方法,在計算散列值時採取在原消息中添加一個隨機512bit分組的方法,將該隨機512bit分組添加到原消息的後面;SHA-1壓縮函數邏輯結構有四輪循環模塊,每一輪用一個邏輯函數;用f1,f2,f3,f4表示四輪循環對應的邏輯函數,每個函數都操作3個32位字,用AND、OR、NOT和XOR表示邏輯運算符與、或、非和異或,B、C、D為上述的3個32位字,由於SHA-1中f2和f4邏輯函數相同,對f4的函數表達式進行了變動,將f4的函數表達式改為(BANDNOTC)XORD。所述的改進的ECC方法,具體為:使用點積運算優化的方法,在使用ECC方法進行加密、解密的時候,對點積運算nP=P1+…+Pn的優化過程如下,n、P為點積運算兩個向量:(1)將n用二進位數的形式表示,即n=(nknk-1…ni…n1);(2)除去(nknk-1…ni…n1)的最高位nk,便得(nk-1…ni…n1);(3)依照(nk-1…ni…n1)從高到低的順序,當ni=0時,計算2P;當ni=1時,計算2P+P,並將計算結果作為下次運算的初始值,即2P變為P或2P+P變為P。所述將用戶ID加密得到密文m,具體如下:(1)根據用戶ID生成的時間戳產生隨機分組Si;(2)將Si添加到用戶ID尾部,對添加了隨機分組的消息通過SHA-1方法計算散列值H1(ID,Si);(3)在得到散列值H1(ID,Si)後,進行對ID和H1(ID,Si)進行ECC加密立即產生一個隨機數k,所述ECC公鑰為PKB,G為橢圓基點,進行K1=kG和K2=k*PKB的計算;然後用K2的X坐標對ID和H1(ID,Si)採用ECC方法進行加密得到密文m。第二步,使用DataMatrix編碼方法,將密文m轉化為二維碼;結合圖3,所述DataMatrix編碼方法的過程依次為:輸入數據生成碼字流、生成RS糾錯碼、模塊排列和生成二維碼。第三步,使用DataMatrix解碼方法,將二維碼轉化為密文m,用於安全審核;結合圖4,所述DataMatrix解碼方法的過程依次為:DataMatrix條碼圖像讀入、圖像預處理、二維碼檢測和定位、圖像矯正和識別、糾錯和解碼。第四步,將密文m使用改進的SHA-1及ECC方法解密得到用戶ID並進行檢測。所述將密文m使用改進的SHA-1及ECC方法解密得到用戶ID並進行檢測,具體如下:(1)將密文m進行ECC解密,首先計算K=K1*SKB=k*G*SKB=n*PKB=K2,其中SKB為ECC方法私鑰,PKB為ECC方法公鑰,G為橢圓基點,K1=kG,K2=k*PKB,k為隨機數,然後通過K的X坐標密文m進行解密,得到ID和H1(ID,Si);(2)也根據時間戳產生隨機分組Si,將Si添加到用戶ID尾部,通過SHA-1方法計算散列值H2(ID,Si);(3)比較H1(ID,Si)和H2(ID,Si):若相等,則表明消息沒有被修改,轉至步驟(4);否則,轉至步驟(5);(4)進行用戶ID確認:若存在此ID則完成安全接入;否則,轉至步驟(5);(5)拒絕接入。下面結合附圖及具體實施例對本發明做進一步詳細說明。實施例1結合圖1(a)~(b)和圖2,本發明用於接入的安全二維碼生成方法,包括以下步驟:第一步,伺服器為伺服器為每一個用戶分配一個唯一的用戶ID,並用改進的SHA-1及ECC方法,將用戶ID加密得到密文m。工作流程如下:(1)根據用戶ID生成的時間戳產生隨機分組Si;(2)將Si添加到用戶ID尾部,對添加了隨機分組的消息計算散列值H1(ID,Si);(3)在得到散列值H1(ID,Si)後,進行對ID和H1(ID,Si)進行ECC加密(公鑰為PKB)立即產生一個隨機數,並進行K1=nG(G為橢圓基點)和K2=n*PKB的計算;然後用K2的X坐標對ID和H1(ID,Si)採用ECC方法進行加密得到密文m。在其中SHA-1方法進行了安全散列值計算的改進,由於散列方法是公開的,惡意節點可能會截獲處於傳輸過程中的消息,修改消息內容,然後衝洗計算散列值並替換原來的散列值,使消息的完整性遭到破壞。為此在計算散列值時在消息中添加一個隨機的512bit分組的方法,從而增加安全係數。本發明將時間戳產生隨機分組,添加在用戶ID的後面。按照這種方法計算出的散列值,不僅可以有效地保證消息的完整性,還可以起到時間戳的作用,增強了消息的安全性,所以稱其為安全散列值。SHA-1壓縮函數邏輯結構有四輪循環模塊,每一輪用一個邏輯函數。用f1,f2,f3,f4表示四輪循環對應的邏輯函數,用AND、OR、NOT和XOR表示邏輯運算符與、或、非和異或,由於SHA-1中f2和f4邏輯函數相同,這樣勢必會給防禦攻擊帶來一定的風險,所以本發明對f4的函數表達式進行了適當的變動,將f4的函數表達式改為(BANDNOTC)XORD。這樣改進不多,對運算速度幾乎沒有影響,但卻相對提高了安全性。改進後的四個邏輯函數表達式如表1所示。表1輪數邏輯函數函數表達式第一輪(0≤t≤19)f1(B,C,D)(BANDC)OR(NOTBANDD)第二輪(20≤t≤39)f2(B,C,D)BXORCXORD第三輪(40≤t≤59)f3(B,C,D)(BANDC)OR(BANDD)OR(CANDD)第四輪(60≤t≤79)f4(B,C,D)(BANDNOTC)XORD對ECC方法進行了點積運算的優化,在使用ECC方法進行加密、解密的時候,會有大量的點積運算,如:nP=P1+…+Pn。對點積運算的優化過程如下:(1)將n用二進位數的形式表示,即n=(nknk-1…ni…n1);(2)除去(nknk-1…ni…n1)的最高位nk,便可得(nk-1…ni…n1);(3)依照(nk-1…ni…n1)從高到低的順序,當ni=0時,計算2P;當ni=1時,計算2P+P,並將計算結果作為下次運算的初始值,即2P→P或2P+P→P。如果使用傳統ECC算法,則需要進行n次運算,進過點積運算的優化後,平均只需要進行3/2[log2n]次運算,最多也只需要3/2[log2n]次運算,從而減少了運算時間,提高了運算效率。第二步,使用DataMatrix編碼方法,將密文m轉化為二維碼;結合圖3,具體步驟如下:(1)數據編碼,數據編碼,使用ASCII編碼數據進行編碼將密文m轉化為碼字流。(2)生成RS糾錯碼,在,在DataMatrix編碼方式中,我們使用Reed-Solomon算法獲得糾錯碼。RS糾錯方法中碼元符號可以表示成相應的二元數組,與通常所用的二進位序列相對應。GF(2m)域中有2m個元素,除0和1之外的2m-2個元素由原本多項式P(x)生成。原本多項式P(x)的特性是得到的餘式等於0.我們這裡採用的原本多項式為:P(x)=X8+X4+X3+X2+1=0在RS碼生成多項式中,碼字長n=2m-1,監督元數目r=n-k=2t,能糾正t個錯誤。在(n,k,d)的RS碼中,存在唯一的(n-k)次多項式g(x),使得每一個碼多項式c(x)都是g(x)的倍式,g(x)稱為[n,k,d]RS碼的生成多項式。g(x)=(x-α)(x-α2)...(x-α2t)在DataMatrix中有G(x)=(x-2)(x-22)…(x-2K-1)=(x+2)(x+22)…(x+2K-1)糾錯碼字是數據碼字被糾錯多項式G(x)除的的餘數即R(x)即為糾錯碼字,跟在數字碼字的後面。(3)條碼數據模塊排布,如表2所示,給出一個碼字的符號結構。8個模塊分別對應每一個碼字的8bit二級制位數據,MSB表示數據流中碼字8bit二進位信息的最高位有效元,LSB表示數據流中碼字8bit二進位信息的最低位有效元。我們在獲取條碼數據流,糾錯碼和符號大小信息後,進行模塊排布,生成DataMatrix條碼符號,如果符號矩陣塊數大於1,則須按協議將矩陣分解表2碼字模塊的排布過程就是講數據流的碼字和糾錯碼的碼字轉化為二進位數據,生成的碼字流的每一位映射到DataMatrix二維圖形,根據編碼方式和碼字流大小,按照相應的編碼協議進行排放。第三步,使用DataMatrix解碼方法,將二維碼轉化為密文m,結合圖4,具體步驟如下:(1)圖像與處理,DataMatrix條碼圖像灰度處理,將條碼圖片轉為灰度圖,以增強條碼處理的速度。DataMatrix條碼圖像去噪處理,使用中值濾波的方法對條碼圖像進行去噪處理。DataMatrix條碼圖像二值化處理,採用最大類間方差二值法進行處理。(2)使用DataMatrix圖像檢測和定位找到二維碼的具體位置信息。(3)對二維碼進行幾何畸形糾正,對圖像採取平移、旋轉、扭斜和縮放等措施,然後進一步對條碼進行透視失真糾正。(4)在透視變換之後,我們首先柵格化二維碼圖像,然後根據深淺顏色代表的碼字信息將二維碼轉換成數字矩陣,再通過所羅門糾錯算法對矩陣信息進行糾錯,最後通過相關解碼規則即可得到條碼信息。第四步,將密文m使用改進的SHA-1及ECC方法解密得到用戶ID並進行檢測,具體步驟如下:(1)將密文m進行ECC解密,(SKB為私鑰)首先計算K=K1*SKB=n*G*SKB=n*PKB=K2,然後通過K的X坐標密文m進行解密,得到ID和H1(ID,Si);(2)也根據時間戳產生隨機分組Si,將Si添加到ID尾部,計算散列值H2(ID,Si);(3)比較H1(ID,Si)和H2(ID,Si),若相等,則表明消息沒有被修改;(4)進行用戶ID確認,若存在此ID則完成安全接入。當前第1頁1&nbsp2&nbsp3&nbsp

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀