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

时间:2012-02-26 22:21:18

标签: java post https get

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

2 个答案:

答案 0 :(得分:6)

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

答案 1 :(得分:1)

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

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

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

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

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

授权:基本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