Javacard的內部和外部認證

一、認證的目的

認證的目的是卡片和卡外實體之間確認對方是否爲自己所預期的。如何達到這個目的呢,有一個可行的辦法,在卡外實體和卡片上都存儲相同的祕鑰,這樣任何一方就可以通過向對方發出明文,然後接收對方對這段明文的加密結果,最後解密密文並判斷與原明文是否相等的方式來確定對方是否和自己擁有相同的祕鑰,如果結果一致則祕鑰也一致了,說明對方是預期的。

二、內部認證(卡外實體認證卡片

卡外實體產生挑戰值(一般就是一串隨機數),發給卡片,卡片對其進行加密,返回給卡外實體,卡外實體解密,並與發出的挑戰值比較,相同,則卡外實體內部認證通過。

三、外部認證(卡片認證卡外實體

卡片產生挑戰值(一般就是一串隨機數),發給卡外實體,卡外實體對其進行加密,返回給卡片,卡片解密,並與發出的挑戰值相比較,相同,則卡片外部認證通過。

四、祕鑰分散

卡外實體需要認證N張卡片,但每張卡片的祕鑰不同,那麼,不可能讓卡外實體存儲N個祕鑰,也不可能N臺卡外實體對應N張卡片,這些都不現實。所以需要祕鑰分散,意思是:卡外實體存放用戶卡片的母祕鑰,認證時,由母祕鑰根據用戶卡片標識,計算得到用戶卡片的祕鑰。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章