GB35114 A级过检
最近公司要求支持GB35114 A級過檢,折騰了兩周,終于驗證通過,在此記錄一下,方便以后自己查看。
GB35114 A級過檢
單向認證,設(shè)備需要發(fā)送簽名信息給服務(wù)器驗證
簽名信息的組裝注意事項:
a) 按照GB協(xié)議規(guī)則組裝待簽名的字符串.
b) 對組裝好的字符串進行sm3雜湊算法,這里使用sm3雜湊算法時要使用設(shè)備自己的公鑰,用戶id是1234567812345678,長度為16.
c) 對32字節(jié)sm3雜湊值進行簽名,使用設(shè)備私鑰.
d) 對簽名算出來的 r和s值進行ans.1(der)編碼.
e) 對der編碼后的數(shù)據(jù)再進行base64編碼,得到簽名值.
雙向認證,服務(wù)器驗證設(shè)備身份的同時,設(shè)備也驗證服務(wù)器的身份
驗簽服務(wù)器簽名的方法:
a) 按照GB協(xié)議規(guī)則組裝待簽名的字符串.
b) 對組裝好的字符串進行sm3雜湊算法,這里使用sm3雜湊算法時要使用服務(wù)器的公鑰,用戶id是1234567812345678,長度為16.
c) 使用base64解出服務(wù)器發(fā)送過來的簽名數(shù)據(jù).
d) 對base64解析出來的簽名數(shù)據(jù)進行der解碼得到 r和s值.
e) 使用服務(wù)器的公鑰和sm3計算出來的hash值,以及r和s數(shù)據(jù)進行驗簽.
信令驗證,設(shè)備和服務(wù)器要相互驗證對的消息
驗證方法
a) 按照GB協(xié)議規(guī)則組裝待雜湊的字符串.
b) 對組裝好的字符串使用sm3雜湊算法得到hash值,不帶userid和公鑰.
c) 解碼nonce中的base64數(shù)據(jù)得到一個hash值.
d) 比較兩個hash值,判斷數(shù)據(jù)是否被更改過.
GB35114主要驗證兩個方面來保證數(shù)據(jù)安全:
總結(jié)
以上是生活随笔為你收集整理的GB35114 A级过检的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: html工资计算页面模板,工资计算表Ex
- 下一篇: 大数据架构演变之路