Normally, if I complete a form, the data will be sent to the server as raw plain text which could be read by sniffers.
I want to encrypt form’s data client-side (like username, password,…) and then send them to the server.
It seems that there are two ways:
1- Using SSL (in my scenarion, I can’t use)
2- Using custom ActiveX control.
3- Using server side dynamic javascript encryption function.
Which one is better or any other solution?
If you can’t use SSL, which is the only sane option here IMHO, you must use client-side public key encryption with javascript, because symmetric encryption would require a key exchange over an insecure channel, which kind of defeats the purpose.
I haven’t tried it myself, but I found this library for doing RSA encryption in javascript.