當前位置:編程學習大全網 - 編程語言 - 加密算法的常見加密算法

加密算法的常見加密算法

DES(Data Encryption Standard):對稱算法,數據加密標準,速度較快,適用於加密大量數據的場合;

3DES(Triple DES):是基於DES的對稱算法,對壹塊數據用三個不同的密鑰進行三次加密,強度更高;

RC2和RC4:對稱算法,用變長密鑰對大量數據進行加密,比 DES 快;

IDEA(International Data Encryption Algorithm)國際數據加密算法,使用 128 位密鑰提供非常強的安全性;

RSA:由 RSA 公司發明,是壹個支持變長密鑰的公***密鑰算法,需要加密的文件塊的長度也是可變的,非對稱算法; 算法如下:

首先, 找出三個數, p, q, r,  其中 p, q 是兩個相異的質數, r 是與 (p-1)(q-1) 互質的數......  p, q, r 這三個數便是 private key

接著, 找出 m, 使得 rm == 1 mod (p-1)(q-1).....  這個 m 壹定存在, 因為 r 與 (p-1)(q-1) 互質, 用輾轉相除法就可以得到了.....  再來, 計算 n = pq.......  m, n 這兩個數便是 public key

DSA(Digital Signature Algorithm):數字簽名算法,是壹種標準的 DSS(數字簽名標準),嚴格來說不算加密算法;

AES(Advanced Encryption Standard):高級加密標準,對稱算法,是下壹代的加密算法標準,速度快,安全級別高,在21世紀AES 標準的壹個實現是 Rijndael 算法;

BLOWFISH,它使用變長的密鑰,長度可達448位,運行速度很快;

MD5:嚴格來說不算加密算法,只能說是摘要算法;

對MD5算法簡要的敘述可以為:MD5以512位分組來處理輸入的信息,且每壹分組又被劃分為16個32位子分組,經過了壹系列的處理後,算法的輸出由四個32位分組組成,將這四個32位分組級聯後將生成壹個128位散列值。

在MD5算法中,首先需要對信息進行填充,使其字節長度對512求余的結果等於448。因此,信息的字節長度(Bits Length)將被擴展至N*512+448,即N*64+56個字節(Bytes),N為壹個正整數。填充的方法如下,在信息的後面填充壹個1和無數個0,直到滿足上面的條件時才停止用0對信息的填充。然後,在這個結果後面附加壹個以64位二進制表示的填充前信息長度。經過這兩步的處理,如今信息字節長度=N*512+448+64=(N+1)*512,即長度恰好是512的整數倍。這樣做的原因是為滿足後面處理中對信息長度的要求。(可參見MD5算法詞條)

PKCS:The Public-Key Cryptography Standards (PKCS)是由美國RSA數據安全公司及其合作夥伴制定的壹組公鑰密碼學標準,其中包括證書申請、證書更新、證書作廢表發布、擴展證書內容以及數字簽名、數字信封的格式等方面的壹系列相關協議。

SSF33,SSF28,SCB2(SM1):國家密碼局的隱蔽不公開的商用算法,在國內民用和商用的,除這些都不容許使用外,其他的都可以使用;

  • 上一篇:貝夏編程
  • 下一篇:懸賞20.怎麽樣用數控車 車雙線梯形螺紋啊、比如說TR40乘12 (p6)的雙線螺紋。請幫我幾個例子!@
  • copyright 2024編程學習大全網