Elo wszystkim Czty ma ktos jakies pojecie na temat szyfrowania za pomocą algorytmu RC4???
Pomocy ludziska bo nie zalicze Programowania :-/
Elo wszystkim Czty ma ktos jakies pojecie na temat szyfrowania za pomocą algorytmu RC4???
Pomocy ludziska bo nie zalicze Programowania :-/
na jakiejś stronce znalazłem do assamblera kodzik nie wiem czy działa bo nie sprawdzałem .:
comment ~
Zrodelko algorytmu RC4 . Zaincluduj ten plik i wywolaj odpowiednie funkcje.
Szyfrowanie i deszyfrowanie przebiega tak samo :
push dlugosc_hasla
push offset haslo
call _rc4_setkey
push dlugosc_danych
push offset dane
call _rc4_crypt
WiteG//xtreeme
.code
_rc4_setkey proc ptrPass:DWORD, lPass:DWORD
pushad
mov eax, 0FFFEFDFCh
mov ecx, 256/4
_init_rc4keytable:
mov dword ptr [rc4keytable+4*ecx-4], eax
sub eax, 04040404h
dec ecx
jnz _init_rc4keytable
xor eax, eax
mov edi, ptrPass
_key_return:
xor ebx, ebx
mov esi , lPass
jmp _new_key
_key_loop:
inc bl
dec esi
jz _key_return
_new_key:
mov dl, byte ptr [rc4keytable+ecx]
add al, byte ptr [edi+ebx]
add al, dl
mov dh, byte ptr [rc4keytable+eax]
mov byte ptr [rc4keytable+ecx], dh
mov byte ptr [rc4keytable+eax], dl
inc cl
jnz _key_loop
popad
ret
_rc4_setkey endp
_rc4_crypt proc ptrData:DWORD, lData:DWORD
pushad
mov edi, lData
mov esi, ptrData
test ecx, ecx
jz _rc4_enc_exit
xor eax, eax
xor ebx, ebx
xor ecx, ecx
xor edx, edx
_rc4_enc_loop:
inc ebx
mov dl, byte ptr [rc4keytable+ebx]
add al, dl
mov cl, byte ptr [rc4keytable+eax]
mov byte ptr [rc4keytable+ebx], cl
mov byte ptr [rc4keytable+eax], dl
add cl, dl
mov cl, byte ptr [rc4keytable+ecx]
xor byte ptr [esi], cl
inc esi
dec edi
jnz _rc4_enc_loop
xor eax, eax
mov edi, offset rc4keytable
mov ecx, 256/4
cld
rep stosd
_rc4_enc_exit:
popad
ret
_rc4_crypt endp
.data?
rc4keytable db 256 dup (?)
a tu masz link do źródełka z jakimś opisem do visual c++ :
http://www.planet-source-code.com/vb/scripts/ShowZip.asp?lngWId=3&lngCodeId=4653&strZipAccessCode=tp%2FR46531919