在PHP中保护SMTP密码

在PHP中保护SMTP密码,php,wordpress,email,phpmailer,Php,Wordpress,Email,Phpmailer,我将在WordPress插件中使用phpMail类来支持在电子邮件功能中使用SMTP。在PHP代码中存储密码安全吗?我觉得把我的登录名留在那里不是100%舒服。所以我的问题是:它足够安全吗?我怎样才能使它更安全;我应该把它散列到数据库还是什么?我知道MD5并没有那么安全,但我想它比把密码放在源代码中要好。很多网站都在PHP源代码中存储密码。如果密码存储在标签中,则可以认为它是安全的 PHP源代码在公开之前由PHP引擎呈现,这是一个必要的安全组件。除非您的站点本身存在安全漏洞,否则没有已知的方法读

我将在WordPress插件中使用phpMail类来支持在电子邮件功能中使用SMTP。在PHP代码中存储密码安全吗?我觉得把我的登录名留在那里不是100%舒服。所以我的问题是:它足够安全吗?我怎样才能使它更安全;我应该把它散列到数据库还是什么?我知道MD5并没有那么安全,但我想它比把密码放在源代码中要好。

很多网站都在PHP源代码中存储密码。如果密码存储在
标签中,则可以认为它是安全的

PHP源代码在公开之前由PHP引擎呈现,这是一个必要的安全组件。除非您的站点本身存在安全漏洞,否则没有已知的方法读取它

资料来源:


基本上你不能——这里有很多帖子正是这么说的。然而,你可以混淆它,以使机会主义者远离。最简单的方法是将密码放在外部配置文件中(这有助于避免明显的错误,如将密码检查到github中)。您可以在某种程度上对其进行加密,但在某些情况下,您需要使用其他假定的密钥对其进行解密,因此您又回到了原点


md5和sha1(或任何其他哈希函数)与此问题无关;散列函数根本不适用于此用例。

这是用于分布式插件还是只在站点上使用的东西?无论哪种方式,您都需要纯文本密码。请尝试将其存储在数据库中,用散列函数进行散列。更安全的是Martin Fowler的一篇文章,他说,你可以在源代码中加密你的密码,签出时,会有一个解密脚本,它需要输入密码,然后解密密码。@sushant如果对密码进行哈希处理,则无法将其传递给另一个服务进行身份验证。除了简单地读取源之外,还有其他泄漏敏感数据的方法。简单例子