1

我有两个功能:get_post_data()从表单中获取 POST 数据。然后它将用户名和密码发送到process_login($username, $password). 我想以纯文本形式发送密码。

我这样做安全吗,还是必须在将密码作为函数参数发送之前对密码进行哈希/加密?

4

3 回答 3

1

将密码存储到永久位置时,或者显然需要根据存储的哈希检查密码时,应该进行哈希处理。

否则,如果您将其从一台服务器传输到另一台服务器或外部资源,我认为最好对其进行散列或至少使用加密连接。最好两者兼而有之。

于 2013-07-31T19:12:49.000 回答
1

是的,你是安全的,散列应该在服务器端完成,以防止客户端散列实现中的不一致。

一旦你的 php 代码中有变量,在你自己的函数中传递它是安全的,用户将无法访问它。

如果您担心通过纯文本将密码从客户端传输到服务器,您应该考虑使用 https。

于 2013-07-31T19:14:16.283 回答
1

拥有没有什么错

$password = 'some piece of malicious code';

process_login($password);

因为该恶意代码只会作为 DATA 传输,而不会实际执行。

现在,如果您正在做一些愚蠢的事情(好吧,这将是彻头彻尾的愚蠢):

eval($password);

那么是的,你很容易让你的系统被完全颠覆。

于 2013-07-31T19:14:22.000 回答