[linux] ako zakodovat heslo?
Ondrej Jombik
nepto na pobox.sk
Pondělí Únor 25 23:17:34 CET 2002
Maxim, 23:16:58
25. februar 2002 (pondelok)
Zdravim
> :-) Ja si to tiez uz nepamatam, ale intuitivne by som povedal, ze
> (transformacna) funkcia ma inverznu funkciu vtedy, ak pre dva rozne vstupy
> generuje dva rozny vystupy a pre rovnake vstupy generuje rovnake vystupy a
> toto plati pre vsetky mozne vstupy.
Tej prvej vlastnosti sa hovori injektivnost a ta druha vyplyva
priamo z definicie funkcie. Totiz len tazko si mozn predstavit funkciu,
ktora pre dva rovnake vstupy generuje dva rozne vystupy. :-)
Dalej by som rad upresnil, ze transformacna funkcia je taka, ktora
zobrazuje mnozinu A na mnozinu A. Ak navyse zobrazuje x \in A na x, tak
sa jej hovori Identita (mnoziny A).
Funkcia md5 teda trasformacna zrejme nebude. Dokaz: Nech funkcia md5
definovana takto je transformacna.
md5: A -> B; y = md5(x), y \in B, x \in A
Potom z vlastnosti md5 algoritmu vieme, ze y ma fixnu dlzku n. A
teda mnozina B urcite neobsahuje napr. slova dlzky n - 1. Mnozina A vsak
taketo slova obsahuje a to je spor s predpokladom. Takze md5 nie je
transformacna funkcia.
Este dalej. Co sa tyka inverznych funkcii, treba rozlisovat lave
inverzne zobrazenia a prave inverzne zobrazenia. Definicia:
Nech
a: A -> B, b: B -> A,
a * b = I_A
kde
I_A je identita mnoziny A (viz. vyssie),
* je operacia skladania funkcii.
Potom
a je prave inverzne zobrazenie,
b je lave inverzne zobrazenie.
Inymi slovami, lave inverzne zobrazenie (funkcia) funkcie F je take,
ktore je schopne dostat na vystupe vsetky prvky z vstupu F. Prave je zase
take, ktore ako vstup akceptuje vsetky mozne vystupy funkcie F. Ci existuje,
alebo nie, inverzne (prave, lave, alebo oboje) zobrazenie k funkcii md5
prenechavam na dokaz citatelom (oblubena veta zo skript ;-).
Pouzita literatura:
Katrinak & spol.: Algebra a teoreticka aritmetika 1., UK Bratislava 1999
S pozdravom
=Nepto=
____________________________________________________________________________
Ondrej 'Nepto' Jombik, Platon SDG http://www.platon.sk
Další informace o konferenci linux