加密演算法(五) RC4

2021-04-12 20:58:04 字數 557 閱讀 4806

rc4加密演算法是大名鼎鼎的rsa三人組中的頭號人物ron rivest在2023年設計的金鑰長度可變的流加密演算法簇。之所以稱其為簇,是由於其核心部分的s-box長度可為任意,但一般為256位元組。該演算法的速度可以達到des加密的10倍左右。

rc4演算法的原理很簡單,包括初始化演算法和偽隨機子密碼生成演算法兩大部分。假設s-box長度和金鑰長度均為為n。先來看看演算法的初始化部分(用類c偽**表示):

for (i=0; i s[i]=i;

j=0;

for (i=0; i

在初始化的過程中,金鑰的主要功能是將s-box攪亂,i確保s-box的每個元素都得到處理,j保證s-box的攪亂是隨機的。而不同的s-box在經過偽隨機子密碼生成演算法的處理後可以得到不同的子金鑰序列,並且,該序列是隨機的:

i=j=0;

while (明文未結束)

得到的子密碼sub_k用以和明文進行xor運算,得到密文,解密過程也完全相同。

而且,根據目前的分析結果,沒有任何的分析對於金鑰長度達到128位的rc4有效,所以,rc4是目前最安全的加密演算法之一,大家可以放心使用! 

RC4加密演算法

rc4於1987年提出,和des演算法一樣,是一種對稱加密演算法,也就是說使用的金鑰為單鑰 或稱為私鑰 但不同於des的是,rc4不是對明文進行分組處理,而是位元組流的方式依次加密明文中的每乙個位元組,解密的時候也是依次對密文中的每乙個位元組進行解密。rc4演算法的特點是演算法簡單,執行速度快,而且...

RC4加密演算法

簡介 包括初始化演算法 ksa 和加密演算法兩大部分 主要 初始化部分 這個基本上是固定的 void rc4 init unsigned char s,unsigned char key,unsigned long len s最開始是傳入的長度為256的char型空陣列,用來存放初始化後的s key...

RC4加密演算法

rc4於1987年提出,和des演算法一樣,是一種對稱加密演算法,也就是說使用的金鑰為單鑰 或稱為私鑰 但不同於des的是,rc4不是對明文進行分組處理,而是位元組流的方式依次加密明文中的每乙個位元組,解密的時候也是依次對密文中的每乙個位元組進行解密。rc4演算法的特點是演算法簡單,執行速度快,而且...