f0rgiv3n wrote: » sorry for the length post... Dh makes me excited.
f0rgiv3n wrote: » DH uses two different numbers to derive the secret key. DH is asymmetric because each side has a different key to start with and they end up with the same secret key. I think it's a good way to envision that the symmetric keys they produce as the data. DH is used to produce the symmetric key for a symmetric algorithm. DH in itself is not a data encryption algorithm necessarily but a way to agree on a secret key via a public network. Make sense? The key term here is discrete logarithm. DH is one of my favorite things, it's extremely cool so let me elaborate: Alice and Bob want to do a symmetric encryption of all their data between themselves. Symmetric encryption is faster and they need to get the data in between themselves confidentially and fast. So in order to use a symmetric algorithm they need to agree on a key to use, and it needs to be the same for encryption and decryption. Using DH this is what they do (simplifying it a bit): Alice and Bob decide, publicly on a number (15). Alice then chooses a secret number(2) that no one knows and takes the public number and puts it to the power of her secret number (15^2=225) and sends the result (225) to Bob. Bob then does the same exact thing that Alice does, but with his secret number(3). So he takes the public number(15) and puts it to the power of his secret number (15^3=3375) and then sends the result (3375) to Alice. At this point in the game Alice has Bob's result 3375 and Bob has Alice's result of 225. Now the fun part. Alice takes' Bob's result (3375) and puts it to the power of her secret number(3375^2=11390625). Then Bob takes Alice's result and puts it to the power of his secret number (225^3=11390625). Magically(or shall we say "mathically") they come up with the same number!