如何通过GET / POST发送安全密码?

我想用Java发送HTTPS请求并在GET或POST数据中发送密码。 它安全吗? 我可以将密码作为纯文本放在POST / GET字段中,当我使用https时,它会被保护吗? 或者我应该做更多的事情?

通常的做法是将您的身份validation用户名+密码作为Base64编码的授权标头发送。

Base64编码不是加密。 您仍然必须确保它通过SSL / https。

Base64编解码器是一种确保路由器,交换机和其他网络中介的字节序和其他特性不会转换密码或任何二进制数据以在网络云上传输的方法。

编解码器通过将二进制数据流感知为一系列单独的文本字符来工作。 但这些字符不是8位而是6位。 使用的64个文本字符是通常的AZ,a,z,0-9,+,/。 A的值为0,值为63。

http身份validation标头通常具有以下基本身份validation格式:

授权:基本base64-encoded-username-password

其中base64-encoded-username-password的布局用户名:密码是通过base64编码器传递的(这是一个Java util类,顺便说一下)。

http://en.wikipedia.org/wiki/HTTP_header

http://en.wikipedia.org/wiki/Base_64

始终使用POST发送密码。 https将确保在发送时加密。