專利名稱:用于usb key音頻加解密裝置密鑰協(xié)商的方法
技術(shù)領域:
本發(fā)明屬于USBKEY音頻加解密裝置密鑰協(xié)商領域,尤其是通過對USB KEY 音頻加解密裝置內(nèi)加解密密鑰和算法的動態(tài)更改,從而提高音頻通信傳輸?shù)陌踩?性和可靠性的用于USBKEY音頻加解密裝置密鑰協(xié)商的方法。
技術(shù)背景隨著計算機技術(shù)的飛速發(fā)展,信息網(wǎng)絡已經(jīng)成為社會發(fā)展的重要保證。現(xiàn)在的網(wǎng)絡通信應用越來越多,各種聊天軟件(如QQ、 MSN、 Skype等等)應用也越來越廣泛,隨著網(wǎng)絡帶寬的增加及網(wǎng)絡應用的深入,網(wǎng)絡音頻信號通信成為當 今最具潛力的網(wǎng)絡應用領域。網(wǎng)絡音頻信號通信可以將音頻信號轉(zhuǎn)換成數(shù)據(jù)包通過互聯(lián)網(wǎng)來傳輸,與傳統(tǒng)電話相比,網(wǎng)絡音頻信號通信的實現(xiàn)不僅費用低廉,而 且具有高清晰的音頻信號質(zhì)量,通話效果甚至比傳統(tǒng)的電話音頻信號還要好。作為一種比較經(jīng)濟靈活的通話方式,成本低廉的網(wǎng)絡音頻信號通信服務廣受歡迎,為越來越多的個人或企業(yè)用戶所接收并廣泛應用。然而,在普通大眾及企業(yè)享受網(wǎng)絡通信帶來便利的同時,其安全問題也逐漸 浮出水面。像網(wǎng)絡中的其他應用一樣,網(wǎng)絡音頻信號通信中所存在的安全隱患令 人堪憂,網(wǎng)絡音頻信號通信成為網(wǎng)絡攻擊者鎖定的目標,加上不良網(wǎng)絡軟件的產(chǎn) 生,導致網(wǎng)絡通話被監(jiān)聽,或者利用不良程序如木馬程序截獲數(shù)據(jù)信息等,頻頻 引發(fā)了網(wǎng)絡通話的安全危機。網(wǎng)絡私人信息以及企業(yè)機密信息被泄密或遭到監(jiān) 聽,給個人和企業(yè)帶來了不可估量的損失。因此在網(wǎng)絡通信的實際應用中,隨時 都可能由于信息泄露和泄密而帶來嚴重后果和不良影響。隨著對音頻通信的安全性提高的要求, 一些即時聊天軟件的自身也帶有一些 加密的功能,但是作為網(wǎng)絡上通信的公共軟件,對其加密的破解就變得相當容易, 所以其加密的安全性也無法得到保障。發(fā)明內(nèi)容本發(fā)明的目的是提供一種用于USB KEY音頻加解密裝置的密鑰協(xié)商的方法, 以克服原有技術(shù)中密鑰和算法固定、唯一所導致的信息安全的隱患。通過發(fā)送方 和接收方的協(xié)商實現(xiàn)在聊天過程中動態(tài)的更改USB KEY音頻加解密裝置的加解 密密鑰和算法,從而大大提高音頻數(shù)據(jù)的安全性和可靠性。并且整個加密和解密 的過程都在USB KEY信息安全設備內(nèi)進行,真正的音頻數(shù)據(jù)不會在通信鏈路和計 算機中出現(xiàn),所以有效的防止了音頻數(shù)據(jù)被非法竊取。 本發(fā)明的技術(shù)方案是用于USB KEY音頻加解密裝置密鑰協(xié)商的方法,其特征是包括如下兩個過 程USB KEY音頻加解密裝置根據(jù)設置狀態(tài)對采集的音頻信號進行加密處理的過 程,和USB KEY音頻加解密裝置根據(jù)數(shù)字音頻信號數(shù)據(jù)的類型對收到數(shù)字音頻 信號進行解密處理的過程,USB KEY音頻加解密裝置根據(jù)設置狀態(tài)對采集的音頻信號進行加密處理的 過程包括下列步驟USB KEY音頻加解密裝置從主機端采集音頻信號的指令,判斷所述USBKEY 音頻加解密裝置當前的設置狀態(tài),如果是強制加密狀態(tài),則發(fā)送協(xié)商密鑰請求, 等待進行協(xié)商密鑰,然后判斷密鑰是否成功,如果成功則采集音頻信號,對采集 的音頻信號加密,并封裝成數(shù)字音頻信號的格式輸出給主機,如果不成功則結(jié)束 本次操作;如果是可選加密狀態(tài),則發(fā)送加密狀態(tài)查詢請求,然后采集音頻信號,判斷 是否需要加密音頻信號,如果不需要加密音頻信號,則把音頻信號輸出給主機, 如果需要加密音頻信號,則發(fā)送協(xié)商密鑰請求,等待進行協(xié)商密鑰,并判斷協(xié)商 密鑰是否成功,如果協(xié)商密鑰不成功,則把音頻信號輸出給主機,如果協(xié)商密鑰 成功,則對采集的音頻信號加密,并封裝成數(shù)字音頻信號的格式輸出給主機; 如果是不加密狀態(tài),則采集音頻信號,并把音頻信號輸出給主機; USB KEY音頻加解密裝置根據(jù)數(shù)字音頻信號數(shù)據(jù)的類型對收到數(shù)字音頻信 號進行解密處理的過程包括下列步驟USBKEY音頻加解密裝置從主機端收到數(shù)字音頻信號之后,判斷數(shù)字音頻信 號數(shù)據(jù)的類型,如果數(shù)字音頻信號數(shù)據(jù)為加密數(shù)據(jù),則進行解密處理,并輸出解 密結(jié)果;如果數(shù)字音頻信號數(shù)據(jù)為加密狀態(tài)請求消息,則輸出加密狀態(tài)應答給主機;如果數(shù)字音頻信號數(shù)據(jù)為協(xié)商密鑰請求消息,則輸出商密鑰應答給主機; 如果數(shù)字音頻信號數(shù)據(jù)為明文數(shù)據(jù),則輸出音頻信號。所述裝置當前的設置方法具體為通過手動對所述USB KEY音頻加解密裝置 設定的三種狀態(tài)強制加密狀態(tài)、可選加密狀態(tài)和不加密狀態(tài)進行設置。所述協(xié)商密鑰的方法具體為首先本方USB KEY音頻加解密裝置生成協(xié)商密 鑰請求消息,封裝成數(shù)字音頻信號的格式輸出給主機,所述主機把生成的協(xié)商密 鑰請求信息傳送到對方主機,再由對方主機發(fā)給本方的USB KEY音頻加解密裝 置;對方主機的USBKEY音頻加解密裝置檢查當前的加密狀態(tài),生成加密狀態(tài)應 答消息,封裝成數(shù)字音頻信號的格式輸出給本方主機,本方主機把加密狀態(tài)應答 消息傳回,進行協(xié)商密鑰。所述協(xié)商密鑰的協(xié)議具體為挑戰(zhàn)-響應協(xié)議。所述協(xié)商密鑰的方法還包括下列步驟USB KEY音頻加解密裝置在協(xié)商密鑰 完成之后記錄保存當前的協(xié)商結(jié)果狀態(tài)值,相應的,在所述USB KEY音頻加解密裝置根據(jù)數(shù)字音頻信號數(shù)據(jù)的類型對 收到數(shù)字音頻信號進行解密處理的過程中,所述設備獲取到音頻信號后直接查詢 保存的協(xié)商結(jié)果狀態(tài)值,如果協(xié)商結(jié)果是需要加密的,則對音頻信號要進行加密, 如果協(xié)商結(jié)果不需要加密,則不對音頻信號進行加密。對采集的音頻信號加密所采用的加密算法具體為DES算法、3DES算法或 AES算法。本發(fā)明的有益效果是本發(fā)明通過在發(fā)送方和接收方之間的USB KEY音頻 加解密裝置內(nèi)進行的協(xié)商,實現(xiàn)了 USBKEY音頻加解密裝置內(nèi)加解密密鑰和算法 的動態(tài)更改,因此,本發(fā)明克服了現(xiàn)有技術(shù)中USBKEY音頻加解密裝置內(nèi)加解密 密鑰和算法是唯一、固定的缺陷,提高了音頻通信,傳輸?shù)陌踩院涂煽啃?;另外,本發(fā)明的方法和裝置實現(xiàn)了動態(tài)的更改加解密密鑰和算法,因此也提 高了加密后的音頻數(shù)據(jù)的防破壞能力;再者,本發(fā)明采用的是USBKEY安全信息設備做加解密設備,因此,也保證 了音頻數(shù)據(jù)的加密強度和不可能在計算機中或通信鏈路中被竊取。
圖1是本發(fā)明的發(fā)送方發(fā)送音頻信號程序流程框圖;圖2是本發(fā)明的接收方處理接收到音頻信號程序流程框圖。
具體實施方式
下面結(jié)合附圖和實施例對本發(fā)明做進一步的說明。 本發(fā)明的USB KEY音頻裝置與主機進行連接。本發(fā)明提供的方案中,對現(xiàn)有USBKEY音頻裝置進行了改進,在裝置上可以 手動設定三種方式強制加密、可選加密和不加密。在裝置內(nèi)提供了一個用于在 協(xié)商中對數(shù)據(jù)進行加解密的密鑰和算法、一個隨機數(shù)生成算法和多種用于對音頻 信號進行加解密的算法。特別的,在協(xié)商中使用的算法可以是對稱算法,也可以 是非對稱算法,就是說強度要高一些的,而對音頻信號進行加解密的算法應該是 對稱算法,并且每種算法都有一個標識ID。圖1中,準備聊天的時候,主機首先打開USBKEY音頻加解密裝置,然后發(fā) 送開始采集音頻信號的指令。USB KEY音頻加解密裝置在收到開始采集音頻信號 的指令后,首先判斷是否需要進行加密,如果不需要,則直接開始采集音頻信號; 如果是可選加密,則獲取對方是否需要加密的狀態(tài),如果對方也需要加密,則開 始對采集的音頻信號進行加密,如果對方是不需要加密的,則直接采集音頻信號; 如果是強制加密,則獲取對方是否需要加密的狀態(tài),如果對方也需要加密,則開 始對采集的音頻信號進行加密,如果對方是不需要加密的,則不采集音頻信號或 者繼續(xù)請求加密處理。圖2中,USB KEY音頻加解密裝置接收到數(shù)據(jù)之后,首先對數(shù)據(jù)的頭進行解 密,根據(jù)解密之后的結(jié)果來判斷怎么處理,可以分為四類來處理接收到的數(shù)據(jù) 是一個獲取是否需要加密的請求、是一個對于請求的回應、加密數(shù)據(jù)、未加密數(shù) 據(jù)。對于請求,則返回自己的狀態(tài),比如不需要加密,需要加密(可選加密按 需要加密處理);對于請求的回應則保存回應中的加密狀態(tài);對于加密數(shù)據(jù),則 繼續(xù)解密接下來的字段,獲得解密音頻信號數(shù)據(jù)的密鑰和算法,從而對后面的音頻信號進行解密;對于未加密數(shù)據(jù)則直接輸出。下面說明具體流程。我們把整個過程中的雙方分為A (發(fā)起的一端)和B(響 應的一端),把用于對數(shù)據(jù)的頭進行加解密的密鑰和算法叫做安全密鑰和算法,他應該是安全強度比較高的。把每個數(shù)據(jù)頭中存放的用于對音頻信號進行加解密 的密鑰和算法叫做當前密鑰和算法。當設備從主機端收到采集音頻信號的指令之后步驟IOI,判斷USB KEY音頻加解密裝置當前的設置的狀態(tài),如果是強制加 密l,到步驟102;如果可選加密2,到步驟107;如果是不加密3,到步驟115;步驟102: USB KEY音頻加解密裝置生成協(xié)商密鑰請求消息,封裝成數(shù)字音 頻信號的格式輸出給主機;步驟103: USB KEY音頻加解密裝置等待進行密鑰協(xié)商;步驟104: USB KEY音頻加解密裝置判斷協(xié)商密鑰是否成功,如果是到步驟 105,如果否到步驟117;步驟105: USB KEY音頻加解密裝置采集音頻信號;步驟106: USB KEY音頻加解密裝置對音頻信號加密,并封裝成數(shù)字音頻信 號的格式輸出給主機,結(jié)束;步驟107: USB KEY音頻加解密裝置生成加密狀態(tài)查詢消息,封裝成數(shù)字音 頻信號的格式輸出給主機;步驟108: USB KEY音頻加解密裝置采集音頻信號;步驟109: USB KEY音頻加解密裝置判斷是否需要加密音頻信號。如果接收 到加密狀態(tài)應答消息且內(nèi)容為需要加密,到步驟110;如果否,則到步驟114;步驟110: USB KEY音頻加解密裝置生成協(xié)商密鑰請求消息,封裝成數(shù)字音 頻信號的格式輸出給主機;步驟111: USB KEY音頻加解密裝置等待進行密鑰協(xié)商;步驟112: USB KEY音頻加解密裝置判斷協(xié)商密鑰是否成功,如果是,到步 驟113,然后結(jié)束,如果否,則到步驟114,然后結(jié)束;步驟113: USB KEY音頻加解密裝置對音頻信號加密,并封裝成數(shù)字音頻信 號的格式輸出給主機,然后結(jié)束;步驟115: USB KEY音頻加解密裝置采集音頻信號;步驟116: USBKEY音頻加解密裝置把音頻信號輸出給主機,然后結(jié)束。 當USB KEY音頻加解密裝置從主機端收到數(shù)字音頻信號之后,步驟201: USB KEY音頻加解密裝置判斷數(shù)字音頻信號的類型,如果是加密 數(shù)據(jù)202,到步驟203,如果是加密狀態(tài)請求消息205,到步驟206,如果是協(xié)商 密鑰請求消息207,到步驟208,如果是明文數(shù)據(jù)209,到步驟210; 步驟203: USBKEY音頻加解密裝置嘗試解密; 步驟204: USBKEY音頻加解密裝置輸出解密結(jié)果,然后結(jié)束; 步驟206: USB KEY音頻加解密裝置檢査當前的加密狀態(tài),生成加密狀態(tài)應 答消息,封裝成數(shù)字音頻信號的格式輸出給主機,然后結(jié)束;步驟208: USB KEY音頻加解密裝置生成協(xié)商密鑰應答消息,封裝成數(shù)字音 頻信號的格式輸出給主機,然后結(jié)束;步驟210: USBKEY音頻加解密裝置輸出音頻信號,然后結(jié)束。 協(xié)商密鑰的具體方法是首先主機A的USB KEY音頻加解密裝置生成協(xié)商密 鑰請求消息,封裝成數(shù)字音頻信號的格式輸出給A, A把它傳送到主機B,由B 發(fā)給自己的USB KEY音頻加解密裝置;B的USB KEY音頻加解密裝置檢査當前的 加密狀態(tài),生成加密狀態(tài)應答消息,封裝成數(shù)字音頻信號的格式輸出給B, B把 加密狀態(tài)應答消息傳送到A,進行協(xié)商密鑰。 協(xié)商密鑰的協(xié)議具體為挑戰(zhàn)-響應協(xié)議。如果A的USB KEY音頻加解密裝置的當前狀態(tài)是可選加密,則設備首先生成 加密狀態(tài)查詢消息,封裝成數(shù)字音頻信號的格式輸出給A。如果接收到來自B的 加密狀態(tài)應答消息且對方狀態(tài)為加密,則開始進行協(xié)商密鑰,否則直接采集音頻 信號并輸出給主機。如果A的USB KEY音頻加解密裝置的當前狀態(tài)是不加密,則設備直接采集音 頻信號并輸出給主機。A還可以在協(xié)商密鑰完成之后記錄下當前的協(xié)商結(jié)果,在以后的處理過程中, 獲取到音頻信號后直接查詢該狀態(tài)值,如果是需要加密的,則加密,不需要的, 則不加密。這里需要解釋的就是,其實A和B只是整個協(xié)商過程中的雙方,也就是說 A和B是沒有什么區(qū)別的,從另外的方向看,B也可以看做是A,甚至A可以就 是B,這樣就確保了 A和B能協(xié)商成功。特別的一種情況就是,如果A和B中只有一方是USB KEY音頻加解密裝置, 假設是A,而B只是普通的音頻裝置,則他們的協(xié)商過程會是這樣的B肯定是不會發(fā)起協(xié)商,不會請求加密狀態(tài),也不會響應請求。 根據(jù)A的狀態(tài),也有三種情況-(1) A不需要加密,A也不主動獲取B是否需要加密的狀態(tài),所以A和B進 行不加密的音頻傳送;(2) A是可選加密,A將主動獲取B是否需要加密的狀態(tài),但是卻得不到B 的回應,所以最后A和B也將進行不加密的音頻傳送;(3) A是強制加密,A將主動獲取對方是否需要加密的狀態(tài),但是卻得不到 B的回應,所以A和B最終不能進行音頻傳送。從上面三種情況看,普通的音頻裝置其實就相當于是一個不需要加密的USB KEY音頻加解密裝置,只是它的狀態(tài)是固定的(不需要加密),不能改變的。 加密算法具體可以為DES 3DES AES等。加密狀態(tài)查詢消息的具體格式為長度為128位,前面8位為'ooooooor, 后面的120位都為加密狀態(tài)應答消息的具體格式為長度128位,前面8位為'00000010,, 后面的120位都為'r;標識該音頻數(shù)據(jù)是加密的音頻數(shù)據(jù)的格式長度128位,前面8位為'ooooooir,后面的120位都為'r;協(xié)商密鑰請求消息的具體格式為長度為128位,前面8位為'00000000,,接著是112位的隨機數(shù),最后8位為'llllllll';協(xié)商密鑰應答消息的具體格式為長度i28位,前面s位為'iiiinir,接著112位是接收到的密鑰協(xié)商請求中112位隨機數(shù)的掩碼,最后8位為加解密算法的標識ID;112位掩碼與112隨機數(shù)共同產(chǎn)生一個密鑰,具體方法為 一位一位判斷,如果掩碼中該位數(shù)據(jù)為'1',取出隨機數(shù)中該位的值然后繼續(xù),否則繼續(xù)取下一 位進行判斷,最后由所有取出來的值合并產(chǎn)生一個密鑰。
權(quán)利要求
1、用于USB KEY音頻加解密裝置密鑰協(xié)商的方法,其特征在于包括如下兩個過程USB KEY音頻加解密裝置根據(jù)設置狀態(tài)對采集的音頻信號進行加密處理的過程,和USB KEY音頻加解密裝置根據(jù)數(shù)字音頻信號數(shù)據(jù)的類型對收到數(shù)字音頻信號進行解密處理的過程,USB KEY音頻加解密裝置根據(jù)設置狀態(tài)對采集的音頻信號進行加密處理的過程包括下列步驟USB KEY音頻加解密裝置從主機端采集音頻信號的指令,判斷所述USBKEY音頻加解密裝置當前的設置狀態(tài),如果是強制加密狀態(tài),則發(fā)送協(xié)商密鑰請求,等待進行協(xié)商密鑰,然后判斷密鑰是否成功,如果成功則采集音頻信號,對采集的音頻信號加密,并封裝成數(shù)字音頻信號的格式輸出給主機,如果不成功則結(jié)束本次操作;如果是可選加密狀態(tài),則發(fā)送加密狀態(tài)查詢請求,然后采集音頻信號,判斷是否需要加密音頻信號,如果不需要加密音頻信號,則把音頻信號輸出給主機,如果需要加密音頻信號,則發(fā)送協(xié)商密鑰請求,等待進行協(xié)商密鑰,并判斷協(xié)商密鑰是否成功,如果協(xié)商密鑰不成功,則把音頻信號輸出給主機,如果協(xié)商密鑰成功,則對采集的音頻信號加密,并封裝成數(shù)字音頻信號的格式輸出給主機;如果是不加密狀態(tài),則采集音頻信號,并把音頻信號輸出給主機;USB KEY音頻加解密裝置根據(jù)數(shù)字音頻信號數(shù)據(jù)的類型對收到數(shù)字音頻信號進行解密處理的過程包括下列步驟USB KEY音頻加解密裝置從主機端收到數(shù)字音頻信號之后,判斷數(shù)字音頻信號數(shù)據(jù)的類型,如果數(shù)字音頻信號數(shù)據(jù)為加密數(shù)據(jù),則進行解密處理,并輸出解密結(jié)果;如果數(shù)字音頻信號數(shù)據(jù)為加密狀態(tài)請求消息,則輸出加密狀態(tài)應答給主機;如果數(shù)字音頻信號數(shù)據(jù)為協(xié)商密鑰請求消息,則輸出商密鑰應答給主機;如果數(shù)字音頻信號數(shù)據(jù)為明文數(shù)據(jù),則輸出音頻信號。
2、 根據(jù)權(quán)利要求1所述的用于USB KEY音頻加解密裝置密鑰協(xié)商的方法, 其特征在于所述裝置當前的設置方法具體為通過手動對所述USB KEY音頻加解密裝置設定的三種狀態(tài)強制加密狀態(tài)、可選加密狀態(tài)和不加密狀態(tài)進行設置。
3、 根據(jù)權(quán)利要求1所述的用于USB KEY音頻加解密裝置密鑰協(xié)商的方法, 其特征在于所述協(xié)商密鑰的方法具體為首先本方USB KEY音頻加解密裝置生成 協(xié)商密鑰請求消息,封裝成數(shù)字音頻信號的格式輸出給主機,所述主機把生成的 協(xié)商密鑰請求信息傳送到對方主機,再由對方主機發(fā)給本方的USBKEY音頻加解 密裝置;對方主機的USBKEY音頻加解密裝置檢查當前的加密狀態(tài),生成加密狀 態(tài)應答消息,封裝成數(shù)字音頻信號的格式輸出給本方主機,本方主機把加密狀態(tài) 應答消息傳回,進行協(xié)商密鑰。
4、 根據(jù)權(quán)利要求1所述的用于USB KEY音頻加解密裝置密鑰協(xié)商的方法, 其特征在于所述協(xié)商密鑰的協(xié)議具體為挑戰(zhàn)-響應協(xié)議。
5、 根據(jù)權(quán)利要求3所述的用于USB KEY音頻加解密裝置密鑰協(xié)商的方法, 其特征在于所述協(xié)商密鑰的方法還包括下列步驟USBKEY音頻加解密裝置在協(xié) 商密鑰完成之后記錄保存當前的協(xié)商結(jié)果狀態(tài)值,相應的,在所述USB KEY音頻加解密裝置根據(jù)數(shù)字音頻信號數(shù)據(jù)的類型對 收到數(shù)字音頻信號進行解密處理的過程中,所述設備獲取到音頻信號后直接査詢 保存的協(xié)商結(jié)果狀態(tài)值,如果協(xié)商結(jié)果是需要加密的,則對音頻信號要進行加密, 如果協(xié)商結(jié)果不需要加密,則不對音頻信號進行加密。
6、 根據(jù)權(quán)利要求1所述的用于USB KEY音頻加解密裝置密鑰協(xié)商的方法, 其特征在于對采集的音頻信號加密所采用的加密算法具體為DES算法、3DES算 法或AES算法。
全文摘要
一種用于USB KEY音頻加解密裝置的密鑰協(xié)商的方法,包括如下兩個過程USB KEY音頻加解密裝置根據(jù)設置狀態(tài)對采集的音頻信號進行加密處理的過程,和USB KEY音頻加解密裝置根據(jù)數(shù)字音頻信號數(shù)據(jù)的類型對收到數(shù)字音頻信號進行解密處理的過程。本發(fā)明通過在發(fā)送方和接收方之間的USB KEY音頻加解密裝置內(nèi)進行的協(xié)商,實現(xiàn)了加解密密鑰和算法的動態(tài)更改,進而克服了現(xiàn)有技術(shù)中USB KEY音頻加解密裝置內(nèi)加解密密鑰和算法是唯一、固定的缺陷,提高了音頻通信,傳輸?shù)陌踩院涂煽啃?;另外,也提高了加密后的音頻數(shù)據(jù)的防破壞能力;再者,也保證了音頻數(shù)據(jù)的加密強度和不可能在計算機中或通信鏈路中被竊取。
文檔編號H04L9/08GK101335615SQ20081011418
公開日2008年12月31日 申請日期2008年5月30日 優(yōu)先權(quán)日2008年5月30日
發(fā)明者于華章, 舟 陸 申請人:北京飛天誠信科技有限公司