I know this subject doesn't necessarily pertain to PHP in particular, but this is the only forum I regularly read and I trust the people here intellectually (mostly the people who are moderators, which is why I posted this here). With that said, I'm in no rush for responses (I'm busy too) so read this at your leisure (or not at all).
I have been reading through as much as I can about cryptography in the last two months since I realed how vital a component it is to PHP & web-based applications in general. I'm not keen to the mathematics, but I do have a pretty solid grip on the ideas.
Specifically, I've been thinking about one-time pads lately. I don't know if this idea has been implemented anywhere, but here's what I've been thinking:
There are reasonably secure methods to transport an initial pad to the client browser during login. The server and the client would both store the pad, and the next one to make contact either way would first "randomly" generate a new pad (I know the limitations discussions that follow any use of the word random), store it locally, tack it on to the information being sent, then encrypt it using the initial pad sent by the server.
The server would then save the new pad, and then whoever would initiate the contact would do the same thing.
This is far too simple. It is either
(a) Theoretically flawed
(b) Implementationally (?) flawed
(c) Already in existence
Someone please enlighten me.