智能门锁中CPU卡加密
CPU卡中的雙向認(rèn)證的實(shí)現(xiàn)
實(shí)體:CPU卡 機(jī)具
CPU卡中存放一個(gè)密鑰
機(jī)具中存放和CPU卡相同的密鑰
CPU卡外部認(rèn)證步驟:
1、CPU卡產(chǎn)生一個(gè)8字節(jié)隨機(jī)數(shù)送給外部程序,CPU卡臨時(shí)保存隨機(jī)數(shù)在卡內(nèi)
2、外部程序把8字節(jié)隨機(jī)數(shù)送給機(jī)具,機(jī)具用密鑰計(jì)算隨機(jī)數(shù),得到8字節(jié)隨機(jī)數(shù)密文
3、外部程序把8字節(jié)隨機(jī)數(shù)密文送給CPU卡
4、CPU卡在卡片內(nèi)部解密8字節(jié)隨機(jī)數(shù)得到隨機(jī)數(shù)明文,
5、CPU卡在卡片內(nèi)部把解密后的隨機(jī)數(shù)和步驟1中臨時(shí)存放的隨機(jī)數(shù)比對,若相等,則外部認(rèn)證成功
所以外部認(rèn)證是CPU卡認(rèn)證機(jī)具。
機(jī)具內(nèi)部認(rèn)證步驟:
1、機(jī)具產(chǎn)生一個(gè)8字節(jié)隨機(jī)數(shù)送給外部程序,機(jī)具臨時(shí)保存隨機(jī)數(shù)在機(jī)具中
2、外部程序把8字節(jié)隨機(jī)數(shù)送給CPU卡,CPU用內(nèi)部認(rèn)證密鑰計(jì)算隨機(jī)數(shù),得到8字節(jié)隨機(jī)數(shù)密文
3、外部程序把8字節(jié)隨機(jī)數(shù)密文送給機(jī)具
4、機(jī)具解密8字節(jié)隨機(jī)數(shù)得到隨機(jī)數(shù)明文,
5、機(jī)具在內(nèi)部把解密后的隨機(jī)數(shù)和步驟1中臨時(shí)存放的隨機(jī)數(shù)比對,若相等,則內(nèi)部認(rèn)證成功
所以內(nèi)部認(rèn)證是機(jī)具認(rèn)證CPU卡
這樣機(jī)具和CPU卡從而達(dá)到了雙向認(rèn)證
5、密鑰的分散問題
由于一個(gè)機(jī)具必須可以認(rèn)證n張卡片,而每張卡片的密鑰都不相同
一般的想法:必須有n個(gè)機(jī)具對應(yīng)n張卡片,但是這樣代價(jià)太高,也不現(xiàn)實(shí)
密碼學(xué)中提出了一個(gè)方法,即密鑰分散的方法。
即機(jī)具中存放的是用戶卡的母密鑰,每次認(rèn)證的時(shí)候,由母密鑰根據(jù)用戶卡的標(biāo)識
計(jì)算得到用戶卡的密鑰。
總結(jié)
以上是生活随笔為你收集整理的智能门锁中CPU卡加密的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: ubuntu黑屏解决办法
- 下一篇: 树莓派教程之树莓派系统镜像刷入和远程登陆