我正在运行一个带有密码哈希的网站,但我认为当前的算法是不够的.我尝试使用PHP的crypt()和blowfish选项,但我的PHP版本只有5.2,因此没有启用CRYPT_BLOWFISH.
我见过可以通过Blowfish进行加密的第三方库,但没有一个可以完成Bcrypt的完整散列.你知道有没有使用crypt()函数进行bcrypt散列的PHP库吗?或者,更好的是,任何将第三方blowfish加密算法提供给第三方bcrypt哈希算法的方法?
只是为了澄清,我无法安装更新版本的PHP,因为我在共享主机上.
我真的很感激任何建议!谢谢!
所以我有一个网站,用户可以使用他们选择的用户名进行注册,并可以提交大量文本并添加评论.目前,为了避免使用XSS,我在输入数据的数据上使用strip_tags,我只输出正文中的数据,而不是属性.我目前正在对网站进行更改,其中之一是创建一个用户页面,当用户点击用户名(链接)时加载该用户页面.这看起来像:
<a href="example.com/user/<?php echo $username; ?>">...</a>
Run Code Online (Sandbox Code Playgroud)
我担心$ username变量,有人可以插入
<a href="example.com/user/user" onClick="javascript:alert('XSS');">...</a>
Run Code Online (Sandbox Code Playgroud)
我已经阅读了其他一些SO帖子,但没有一个给出了黑白回答.如果我在输出的所有文本上使用以下内容,除了输入上的strip_tags:
echo htmlspecialchars($string, ENT_QUOTES, 'UTF-8');
Run Code Online (Sandbox Code Playgroud)
是否足以阻止所有XSS攻击,包括那些使用内联javascript:语法的攻击?
另外,有没有办法删除实际的HTML标签而不删除像"我>你"这样的东西?
谢谢!