I would like to be able to send and retrieve data in a semi-secure way without having to use HTTPS or SSL.
Currently, I am POSTing data to the server using a salted MD5 hash digest like so (to prevent argument tampering):
http://www.myserver.com?name=John&digest=ed076287532e86365e841e92bfc50d8c
But I would also like encrypt the plain-text data on the client, then decrypt it on the server back into plain text so that the data looks something like:
http://www.myserver.com?name=sK5E4Ld4sw5ie&digest=ed076287532e86365e841e92bfc50d8c
What’s a good method to use to accomplish this?
The easiest way would be to include pre-shared key (AES, for instance) in client and the same on server.
Or, use RSA keypair (public on client, private one on server), however RSA encrypted parameter will take more space.