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/JSSERefGuide.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
-- 
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Supercomputing Center Brno             Martin Kuba
Institute of Computer Science    email: [EMAIL PROTECTED]
Masaryk University             http://www.ics.muni.cz/~makub/
Botanicka 68a, 60200 Brno, CZ     mobil: +420-603-533775
--------------------------------------------------------------

Attachment: smime.p7s
Description: S/MIME Cryptographic Signature

Odpovedet emailem