Ik ben voor school een werkstuk aan 't maken over de werking van SSL, maar nu kwam ik wat raars tegen bij de encryptie methode. Tijdens de authenticatie, en het bewijzen dat de server is wie hij zegt dat hij is, wordt er gebruik gemaakt van het public-key principe (via certificaten enz.), maar als er vervolgens data verstuurd gaat worden gebruikt SSL ineens een sleutel die ze tijdens de authenticatie overeen zijn gekomen, in plaats van public-key. Weet iemand waarom dit zo is? Het lijkt mij namelijk zo dat ze dan net zogoed verder kunnen gaan met het public-key principe...
ik denk dat je eens op www.whatis.com moet gaan zoeken...zal denk ik heel verhelderend werken
Al is het nieuws nog zo slecht, het wordt leuker als je het op zijn Brabants zegt :)
ok, daar staat het volgende:
terwijl hier het volgende staat:SSL uses the public-and-private key encryption system from RSA, which also includes the use of a digital certificate.
daar maak ik dus uit op dat ze een nieuwe sleutel overeen komen, anders dan de public of private key... wat is 't nou??This technique strengthens Internet security by using the secret as another key, but this time it's a key to a symmetric cryptographic algorithm (such as DES, RC4, or IDEA). Alice knows the secret because she generated it before sending it to Bob. Bob knows the secret because Bob has the private key and can decrypt Alice's message. Because they both know the secret, they can both initialize a symmetric cipher algorithm and then start sending messages encrypted with it. Here is a revised protocol:
A->B
B->A
A->B
B->A
A->B
B->A
hello
Hi, I'm Bob, bobs-certificate
prove it
Alice, This Is bob
{ digest[Alice, This Is Bob] } bobs-private-key
ok bob, here is a secret {secret} bobs-public-key
{some message}secret-key
How secret-key is computed is up to the protocol being defined, but it could simply be a copy of secret
Ik ben geen RSA specialist, maar volgens mij zit het zo met ssl:
RSA = public/private key enctyption method = vorm van asymetric encryption
1) op verzoek van de client stuurt de server een encryptie methode voorstel + zijn public key.
2) de client kiest daaruit een encryptie methode en stuurt deze samen met een "eigen master key" versleutelt met die public key (van de server) naar de server terug.
3) de server decrypt de master key.
Nu heb je dus een situatie waarbij beide machines dezelfde masterkey hebben, terwijl iemand die alle verkeer heeft afgeluisterd toch de masterkey niet kan decrypten.
Met een symetric key kun je zowel encrypten als decrypten dus als je de masterkey nu als symetric key gebruikt, kunnen beide machines sturen+encrypten en ontvangen+decrypten.
symetric key heeft volgens mij ook performance voordeel t.o.v. RSA
Je hebt dus zeg maar meta-encryptie uitwisseling (in die 3 stappen) mbv RSA en verdere datauitwisseling met symetric key.
zie verder http://www.rsasecurity.com/rsalabs/faq/5-1-2.html
zoiets dus
RSA = public/private key enctyption method = vorm van asymetric encryption
1) op verzoek van de client stuurt de server een encryptie methode voorstel + zijn public key.
2) de client kiest daaruit een encryptie methode en stuurt deze samen met een "eigen master key" versleutelt met die public key (van de server) naar de server terug.
3) de server decrypt de master key.
Nu heb je dus een situatie waarbij beide machines dezelfde masterkey hebben, terwijl iemand die alle verkeer heeft afgeluisterd toch de masterkey niet kan decrypten.
Met een symetric key kun je zowel encrypten als decrypten dus als je de masterkey nu als symetric key gebruikt, kunnen beide machines sturen+encrypten en ontvangen+decrypten.
symetric key heeft volgens mij ook performance voordeel t.o.v. RSA
Je hebt dus zeg maar meta-encryptie uitwisseling (in die 3 stappen) mbv RSA en verdere datauitwisseling met symetric key.
zie verder http://www.rsasecurity.com/rsalabs/faq/5-1-2.html
zoiets dus