RC4 Algoritması

RC4 Algoritması

Ronald Rivest, RSA tarafından 1987 yılında bulunmuştur. 1994 yılında meçhul kişilerce  kaynak kodu internette yayınlanmıştır. Kullanımı lisans gerektirmektedir. Simetrik şifreleme algoritması kullanır.Genellikle simetrik algoritmalarda elektronik yongaların sevdiği ve/veya, dışarlayıcı-veya (XOR) gibi basit işlemler kıllanır. WEP ve de SSLde kullanılan RC4 bu türün en bilinen örneğidir

• Değişken anahtar uzunluğuna sahiptir.
• Güvenliği rasgele bir permütasyon kullanımına bağlıdır.
• Tekrarlama periyodu 10100den daha büyüktür.
• Bilinen kötü anahtar yoktur.
• Şifreleme hızı yaklaşık olarak Megabyte/sn seviyesindedir.

Public Function RC4(inp As String, key As String) As String
Dim s(0 To 255) As Byte, K(0 To 255) As Byte, i As Long
Dim j As Long, temp As Byte, Y As Byte, t As Long, X As Long
Dim Outp As String

For i = 0 To 255
s(i) = i
Next

j = 1
For i = 0 To 255
If j > Len(key) Then j = 1
K(i) = Asc(Mid(key, j, 1))
j = j + 1
Next i

j = 0
For i = 0 To 255
j = (j + s(i) + K(i)) Mod 256
temp = s(i)
s(i) = s(j)
s(j) = temp
Next i

i = 0
j = 0
For X = 1 To Len(inp)
i = (i + 1) Mod 256
j = (j + s(i)) Mod 256
temp = s(i)
s(i) = s(j)
s(j) = temp
t = (s(i) + (s(j) Mod 256)) Mod 256
Y = s(t)

Outp = Outp & Chr(Asc(Mid(inp, X, 1)) Xor Y)
Next
RC4 = Outp
End Function

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir