国产久草深夜福利精品_精品国产看高清国产毛片_成年日韩片av在线网站_亚洲国产综合777_免费高清一级在线观看_欧美色图中文字幕_老中医用嘴排阴毒 小雨_99精品无码视频在线播放_久久久精品强暴视频_国产aⅴ一区最新精品

HMAC認證協(xié)議的ZQ032SA單片機實現(xiàn)
電子元件,電子元器件深圳市創(chuàng)唯電子有限公司
您現(xiàn)在的位置: 首頁 > 電子技術(shù)
HMAC認證協(xié)議的ZQ032SA單片機實現(xiàn)  2012/3/1
引言在開放的通信和計算機系統(tǒng)中,建立安全可靠的電子商務平臺是十分重要的。通常需要通過加密的方法對客戶的有關(guān)信息,如密碼、合同等加以保護,使之不被盜取或篡改。當客戶提出服務申請時,必須對客戶身份的合法性、報文的完整性進行確認。HMAC(Keyed-HashingforMessageAuthentication)是一個公開的協(xié)議。它是一種基于密鑰的報文完整性的驗證方法,其安全性是建立在Hash算法基礎(chǔ)上的。它要求通信雙方共享密鑰、約定算法、對報

    引言

在開放的通信和計算機系統(tǒng)中,建立安全可靠的電子商務平臺是十分重要的。通常需要通過加密的方法對客戶的有關(guān)信息,如密碼、合同等加以保護,使之不被盜取或篡改。當客戶提出服務申請時,必須對客戶身份的合法性、報文的完整性進行確認。

HMAC(Keyed-Hashing for Message Authentication)是一個公開的協(xié)議。它是一種基于密鑰的報文完整性的驗證方法,其安全性是建立在Hash算法基礎(chǔ)上的。它要求通信雙方共享密鑰、約定算法、對報文進行Hash運算,如MD5、SHA、RIPEMD等,形成固定長度的認證碼。通信雙方通過認證碼的校驗來確定報文的合法性。這個協(xié)議可以用來作加密、數(shù)字簽名、報文驗證等。

利用HMAC協(xié)議可以建立一個身份認證的電子商務平臺,客戶和服務端雙方需要預先約定唯一的公鑰和加密算法;客戶單方面保留自己密碼作為密鑰,服務端只保留公鑰和認證碼。這個認證碼是密鑰經(jīng)HMAC協(xié)議加密得到定長碼字。當客戶提出服務申請時,應提交鑰和密鑰的認證碼。服務端通過公鑰確認客戶的基本身份,再檢驗認證碼確定客戶的合法性。這樣,客戶的私密信息在服務端、傳輸媒介中都是加密隱藏的。

我們利用服務器建立了服務端的模擬用戶數(shù)據(jù)庫,單片機實現(xiàn)客戶端的加密算法,電話線作為傳輸介質(zhì),實現(xiàn)了HMAC協(xié)議在IP電話計費系統(tǒng)中的應用。

1 HMAC的算法原理

1.1 HMAC算法定義

 

用公式表示如下:

HMAC=H(key xor opad,H(key xoripad,text))

H(X,Y)代表對X+Y的消息進行一種Hash運算;

ipad代表重復B次的單字節(jié)十六進制常數(shù)0x36;

opad代表重復B次的單字節(jié)十六進行常數(shù)0x5c;

key代表64字節(jié)的字符串,由密鑰組成,不足的補0;

text代表任意長度文本。

密鑰≥L字節(jié)。當大于B時,先經(jīng)Hash計算形成L字節(jié)的秘鑰(B是Hash算法中一次迭代運算的數(shù)據(jù)塊字節(jié)數(shù);L是Hash算法形成報文摘要的字節(jié)數(shù))。

HMAC協(xié)議定義了迭代兩次的Hash加密算法,最終形成報文摘要(DIGEST)值就是認證碼。基于算法的可靠性、安全性和易于計算機實現(xiàn)特性,先用Hash中的MD5算法實現(xiàn)HMAC,其B=64,L=16。

1.2 MD5算法定義

MD5算法以對任意長度消息多次循環(huán)迭代的散列運算,最終形成16 Byte報文摘要。這個摘要對文本具有唯一性,可作為認證碼。在目標計算機的計算速度下,這個摘要是難于破解的。

(1)報文填充

MD5算法要求對任意長度報文進行填充,構(gòu)成N×64 Byte消息分組,N為整數(shù)。其中每一分組又劃分為16個4字節(jié)子分組。

填充數(shù)據(jù)分2步。首先,填充使得數(shù)據(jù)位長度恰好為(N×64-8)Byte的數(shù),即在報文有效數(shù)據(jù)后補1個0x1,其它補0x0至滿足上述要求。然后,再后補上8字節(jié)(64位)的報文數(shù)據(jù)長度(填充前字節(jié)數(shù))。這樣,數(shù)據(jù)就被填充為64Byte(512bit)的整數(shù)倍。

(2)初始化MD5參數(shù)

 

4個4字節(jié)位變量(A、B、C、D)用來作為報文摘要的初始值:

A=0x01234567

B=0x89abcdef

C=0xfedcba98

D=0x76543210

(3)算法

MD5算法是對消息分組依次迭代算法。第1次運算的初始值為ABCD,以后每一次迭代運算的結(jié)果都替換ABCD作為下一次的初始值,共經(jīng)過N次的迭代運算,就得到該消息的報文摘要,如圖1所示。

與《HMAC認證協(xié)議的ZQ032SA單片機實現(xiàn)》相關(guān)列表
電話:400-900-3095
QQ:800152669
庫存查詢
Copyright(C) 2011-2021 Szcwdz.com 創(chuàng)唯電子 版權(quán)所有 備案號:粵ICP備11103613號
專注電子元件代理銷售  QQ:800152669  電子郵件:[email protected]  電話:400-900-3095