當前位置:編程學習大全網 - 源碼下載 - Android用AES加密服務器,還是servlet用來發送請求?Name=曉明&;年齡=12

Android用AES加密服務器,還是servlet用來發送請求?Name=曉明&;年齡=12

隨著密碼分析技術的提高,新的數據加密標準AES已經取代了過時的DES。在闡述AES/RSA加密算法的基礎上,分別給出了AES/RSA對客戶/服務器網絡數據傳輸的加密流程。最後,在比較AES算法和RSA算法的基礎上,結合AES和RSA算法提出了壹種新的數據加密方案。

基本需求和概念

隨著互聯網的廣泛應用,信息安全問題日益突出,以數據加密為核心的信息安全技術也得到了極大的發展。目前的數據加密技術按照加密密鑰類型可以分為私鑰加密(對稱加密)系統和公鑰加密(非對稱加密)系統[1]。對稱加密算法是壹種比較傳統的加密系統。通信雙方在加密/解密過程中使用他們共享的單個密鑰。由於算法簡單、加密速度快等優點,它仍然是主流的加密系統之壹。最常用的對稱加密算法是數據加密標準(DES)算法,但DES密鑰長度較短,已經不適合當今分布式開放網絡對數據加密安全性的要求。最後,基於Rijndael算法的新的對稱高級數據加密標準AES取代了數據加密標準DES。非對稱加密因其不同的加密/解密密鑰(公鑰加密和私鑰解密)、簡單的密鑰管理而被廣泛使用。RSA是非對稱加密系統中最著名的公鑰密碼算法。

AES算法

基本原理和算法流程。

美國國家標準與技術研究院(NIST)經過三輪候選算法篩選,從眾多分組密碼中選擇Rijndael算法作為高級加密標準(AES)。Rijndael密碼是壹種叠代分組密碼,分組長度和密碼長度可變,可獨立指定為128比特、192比特或256比特。AES加密算法的數據處理單位是字節,將128位的位信息分成16個字節,依次復制成壹個4*4的矩陣,稱為狀態。AES的所有變換都是基於狀態矩陣的變換。

Nr代表加密壹個數據包的輪數(加密輪數與密鑰長度的關系如表1所示)。在round函數的每次叠代中,有四步變換,分別是ByteSubstitution運算(byte sub())、行變換(ShiftRows())、列混合(MixColumns())和round key加法變換Addoundkey () [3]。它的作用是通過重復簡單的非線性變換和混合函數變換來擴散字節替換操作產生的非線性。

表1是三種不同類型的AES加密密鑰包大小和相應加密輪次的比較表。加密開始時,輸入包的每個字節都被載入矩陣狀態,如表2所示。如果輸入ABCDEFGHIJKLMNOP,則輸入塊被映射到狀態矩陣,如表2所示。

  • 上一篇:為什麽冬天蚊子那麽多?
  • 下一篇:360是哪個國家的?
  • copyright 2024編程學習大全網