Hezký den,
moc děkuji za vyjasnění. 
Jen zkusím vysvětlit svoji reakci - totiž vaše první odpověď mě společně s ne 
docela jasným populárním úvodem (jiným než tim vámi odkazovaným) docela 
zmátla a chvíli jsem si myslel, že je to zcela nesmyslně naopak - tedy že se 
použije symetrická šifra pro výměnu asymetrických klíčů. To je samozřejmě 
nesmysl :-), což mi je teď už díky vám jasné.

S SSL jsem doteď neměl žádné zkušenosti a bohužel krom oficiálních komplexních 
materiálů je mnoho těch snázeji čitelných a zavádějících. Dalším matoucím 
faktorem je poněkud zmatený bezpečnostní expert zákazníka ;-)

Jsem tedy velmi rád, že jsem to mohl prodiskutovat s někým znalým věci, kdo 
navíc není zatížen matoucími faktory v mém okolí.

mějte se

Dne úterý 04 prosinec 2007 14:41 Martin Kuba napsal(a):
> Pírko, Jiří Mikulášek napsal(a):
> >Díky,
> >myslím, že si rozumíme a sám jsem si u zákazníka ověřoval tuto skutečnost
> > a jedná se o ten symetrický klíč použitý při handshake.
>
> Ne, neroumíme, jedná se *asymetrický* klíč použitý pro výměnu symetrického
> klíče. Než se pustíte do čtení norských textů, zkuste si přečíst nějaký
> populární úvod do SSL, třeba
> http://www.ica.cz/home_cs/?acc=teorie_symetricke_a_asymetricke_kryptografie
> na konci obrázek 4b zobrazuje princip výměny náhodně vygenerovaného
> symetrického klíče pomocí asymetrického klíče.
>
> Při navazování SSL spojení server zašle svůj certifikát obsahující
> asymetrický klíč, klient vygeneruje náhodný symetrický klíč, zašifruje
> ho asymetrickým klíčem serveru a pošle ho serveru. Dále je veškerá
> komunikace zašifrovaná oním náhodně vygenerovaným symetrickým klíčem.
>
> Používané asymetrické algoritmy jsou RSA a DSA a jejich klíče mívají
> délky 1024 nebo 2048 bitů.
>
> Používané symetrické algoritmy jsou DES, AES, IDEA, BlowFISH, RC2, RC4, RC5
> a jejich klíče mívají 50 až 256 bitů.
>
> > Dobrý den,
> > protože už z těch různých informací od zákázníků, kolegů a různých popisů
> > SSL protokolu začínám být zamotaný, tak jsem ještě hledal trochu víc z dá
> > se mi, že tady:
> > http://java.sun.com/javase/6/docs/technotes/guides/security/jsse/JSSERefG
> >uide.html#HowSSLWorks v části SSL process, konkrétně:
> >      The client and server exchange information that allows them to agree
> > on the same secret key. For example, with RSA, the client uses the
> > server's public key, obtained from the public key certificate, to encrypt
> > the secret key information. The client sends the encrypted secret key
> > information to the server. Only the server can decrypt this message since
> > the server's private key is required for this decryption.
>
> To je přesně to, co popisuji, akorát že používají výraz 'secret key'
> místo symetrický klíč.
>
> Např. se vygeneruje náhodný AES256 klíč a ten se zašifruje RSA klíčem
> získaným z certifikátu serveru.
>
> > vyvrací vaši myšlenku, respektive jestli to správně chápu, použijí se
> > klíče z certifikátu například v RSA pro ustanovení symetrického session
> > key, to by i souhlasilo s oním požadavkem. Avšak měl byste pravdu s tím
> > že je třeba implementovat vlastní TrustManager
>
> Moji myšlenku nic nevyvrací :-) Potřebujete zkontrolovat, že
> asymetrický klíč ze serverového certifikátu má určitou délku,
> a přesně to můj kód dělá.
>
> Nicméně bych dodal, že požadavek zákazníka ukazuje, že nemá vůbec
> tušení, že existují různé algoritmy (DSA a RSA) a v nich jsou stejné
> délky klíče různě bezpečné, takže bezpečnost výsledného systému bude
> pravděpodobně diskutabilní :-)
>
>
> Makub

-- 
        Pírko
        Bc. Jiří Mikulášek
E-mail: [EMAIL PROTECTED] || [EMAIL PROTECTED]
Tel:    +420 721 571 280
ICQ#    330718616
Skype:  pirkojm
web:    http://pirko.bloguje.cz
        http://www.fi.muni.cz/~xmikula2

Odpovedet emailem