evo真人(中国)

文章橫幅PC版
文章橫幅iPad版
文章橫幅手機版

智能密碼鑰匙基於非對稱密碼算法的PIN傳輸

TIME:2019-03-15 16:14  click: 218 次 來源: 未知

使用智能密碼鑰匙自行生成的公鑰加密PIN,加密過程有智能密碼鑰匙生成的隨機數參與,有“一次一密”“一鑰一密”的效果;解密在智能密碼鑰匙內部完成,所用私鑰及解密過程被安全晶片妥善保護。

步驟1:智能密碼鑰匙與主機建立連接,智能密碼鑰匙初始化清空隨機數緩衝區。

步驟2:智能密碼鑰匙等待主機下發指令。

步驟3:智能密碼鑰匙判斷主機發出的指令類型,如果是獲取隨機數指令,執行步驟4,如果是獲取RSA公鑰指令,執行步驟6,如果是驗證PIN碼指令,執行步驟9。

主機發送給智能密碼鑰匙的驗證PIN碼指令是經過主機加擾和加密操作後的密文指令,智能密碼鑰匙在未進行處理前是不能識別和執行的。其他指令的加擾與加密過程是在主機中完成的,這個加擾與加密的過程是本實例下面將敘述的過程的逆過程,主機先利用本實例步驟5中智能密碼鑰匙返回給主機的隨機數,對將要發送給智能密碼鑰匙的指令進行加擾操作,再利用步驟7中智能密碼鑰匙返回給主機的公鑰進行加密,得到加密後的指令並傳送給智能密碼鑰匙。以下步驟是智能密碼鑰匙對主機發送的其他指令解密和後續處理的過程。

步驟4:智能密碼鑰匙生成隨機數並把隨機數保存在隨機數緩衝區。智能密碼鑰匙生成的隨機數可以是8位的,但並不局限於8位。

步驟5:智能密碼鑰匙把生成的隨機數返回給主機,返回步驟2,等待主機下發新的指令。智能密碼鑰匙每次返回的隨機數不同,目的是防止攻擊者的重複攻擊,重複攻擊是攻擊者對主機和接收設備之間通信的信息進行截取,並二次利用截取到的信息進行欺騙操作。智能密碼鑰匙將生成的隨機數返回給主機,是為了實現主機對明文指令進行隨機數處理也就是加擾操作的過程。

步驟6:智能密碼鑰匙檢查密鑰存儲區是否存在密鑰,如果密鑰存儲區存在密鑰,執行步驟7,否則執行步驟8。

步驟7:將RSA公鑰發送給主機,返回步驟2,等待主機下發新的指令。

在本實施例步驟7中,RSA密鑰對的產生可在智能密碼鑰匙初始化時生成或寫入,也可在主機下發獲取密鑰匙指令時生成。

步驟8:智能密碼鑰匙生成RSA密鑰對,執行步驟7。

在本實施例步驟8中,智能密碼鑰匙生成的密鑰為RSA非對稱密鑰對,密鑰對包括公鑰和私鑰,其中公鑰發送給主機,用於實現主機對指令的加密過程,私鑰存儲在智能密碼鑰匙中,用於實現智能密碼鑰匙對主機發送的密文指令進行解密操作。

步驟9:讀取隨機數緩衝區和密鑰存儲區,如果所述隨機數緩衝區為空,執行步驟10,若密鑰存儲區為空,執行步驟10,若隨機數緩衝區和密鑰存儲區都不空,執行步驟11。

步驟10:智能密碼鑰匙的隨機數緩衝區為空,智能密碼鑰匙無法讀取隨機數,不能對主機發送給智能密碼鑰匙的其他指令進行去擾操作,智能密碼鑰匙返回錯誤,無法執行主機發送的其他指令;智能密碼鑰匙的密鑰存儲區為空,智能密碼鑰匙無法讀取私鑰,不能對主機發送給智能密碼鑰匙的其他指令解密,智能密碼鑰匙返回錯誤。

步驟11:智能密碼鑰匙的隨機數緩衝區和密鑰存儲區都不為空,智能密碼鑰匙讀取隨機數和私鑰,智能密碼鑰匙用私鑰對主機傳送的驗證PIN碼的指令解密。

步驟12:智能密碼鑰匙使用步驟9中讀取的隨機數對解密後的指令進行去擾操作,得到明文形式的驗證PIN碼的指令。

步驟13:智能密碼鑰匙清空隨機數緩衝區。

步驟14:智能密碼鑰匙解析步驟12中得到的驗證PIN碼指令,根據解析結果進行操作並返回步驟2,等待主機下發新的指令。

上一篇:基於智能密碼鑰匙的新型網上交易系統 下一篇:智能密碼鑰匙用通用數據總線傳輸數據的方法