我正在阅读我的"学习PHP"一书中一个非常有趣的章节,并且遇到了我想在我的个人网站上修改和使用的代码示例(为了保护一个简单的文档,没有什么"大",这就是为什么我也不加密密码).
我已经使用了php-sample,但我根本无法使用它.
在这里(不要被长度吓到,它真的很简单):
<?php
if ($_POST['_submit_check']) {
if ($form_errors = validate_form()) {
show_form($form_errors);
} else {
process_form();
}
} else {
show_form();
}
function show_form($errors = '') {
echo '<form method="POST" action="' . $_SERVER['PHP_SELF'] . '">';
if ($errors) {
echo '<br>'
echo implode('<br>', $errors);
echo '<br>';
}
echo 'Username: ';
echo '<input type="text" name="username" value="Username goes here">';
echo '<br>'
echo 'Password: ';
echo '<input type="password" name="password">';
echo '<br>'
echo '<input type="submit" name="submit" value="Log In">';
echo '<input type="hidden" name="_submit_check" value="1">'; //when …Run Code Online (Sandbox Code Playgroud) 我正在准备我的一个网站的应用版本.
该应用要求您登录才能访问您的用户帐户.此登录过程通过HTTP而非HTTPS完成,但密码是使用MD5和我的服务器上的一些其他哈希值存储的.
这是否算作应用程序中的"加密",因此要求我提交其中一个"出口合规"表单?
谢谢你的帮助.
我正在尝试找到在mysql数据库中保护用户密码的最佳方法(哈希/加密方式).我哪种方法最安全,最难破解.我在加密/散列等领域的经验不多.目前我正在使用一种非常不安全的方法来进行这种加密:
$encrypted_password = strrev(base64_encode($password));
Run Code Online (Sandbox Code Playgroud)
我知道这不是最好的方式,但就像我说的,我是新的.有人能指出我正确的方向吗?
谢谢.
假设我有一个网站
htmlspecialchars()ed.error_reporting() 已关闭.htaccessevil()它被认为是安全的吗?还有哪些其他方法可以修复以提高安全性?你怎么能攻击它?哈哈呢?PHP/Server端可以提高安全性吗?
考虑到一个项目将工作多个开发人员并且将不断更新和维护,考虑到可读性和安全性,下面两个代码中的哪些代码可以被认为是PHP中的最佳实践?如果我们谈论性能,第二种选择可能会好一点,但有办法解决这一点.
选项1
$user = $_POST['user'];
$pass = $_POST['pass'];
// Prevent SQL Injection and XSS
$user = anti_injection($user);
$pass = anti_injection($pass);
if(strlen($user) <= 8 && strlen($pass) <= 12)
{
// SQL query
$sql = "SELECT id
FROM users
WHERE username = '$user' AND password = '$pass';";
}
Run Code Online (Sandbox Code Playgroud)
选项2
// Retrieve POST variables and prevent SQL Injection and XSS
$_POST['user'] = anti_injection($_POST['user']);
$_POST['pass'] = anti_injection($_POST['pass']);
if(strlen($_POST['user']) <= 8 && strlen($_POST['pass']) <= 12)
{
// SQL query
$sql = "SELECT id …Run Code Online (Sandbox Code Playgroud) 我有一个网站使用SHA1哈希密码.我最近阅读了以下文章,该文章认为不使用SHA1作为密码,因为SHA1从未设计用于保护密码:http://arstechnica.com/security/2012/08/passwords-under-assault/4/
你能否推荐一个好的哈希方法,我可以实现而不是SHA1,请提供一个教程的链接,该教程逐步介绍如何使用php实现该加密方法?
这是我目前在PHP/SQL项目中的密码哈希程序...
hash('sha512', $password.$salt.$pepper, TRUE)散列和盐在DB中以二进制形式存储,主要是出于习惯.我认为它在安全方面没有任何区别.如果有的话,它对SQL备份来说稍微不方便,并使PHP代码看起来稍微复杂一些.
是hash()与SHA-256和SHA-512通常被认为已被bcrypt这些天superceeded?
我相信SHA-2(256/512)仍然被认为是加密安全的,我可能过度使用了熵位.与攻击者从数据库转储中反向设计SHA-2哈希相比,我的代码中的缺陷更有可能导致问题.
但是,我是否应该更新我的方法以继续使用crypt()CRYPT_BLOWFISH(我相信这被称为bcrypt,而blowfish在技术上是一种密码而不是哈希算法)?
即使只是作为未来的最佳实践?
我并不特别关心算法的计算费用(在合理范围内).这只是在您创建帐户,更改密码或在您进行哈希比较时登录时的一个因素.这些活动构成了一小部分页面浏览量.我想在某种程度上越慢越好,如果它使服务器更难以生成,那么它将使攻击者的工作更慢到暴力.
干杯,B
我想让代码对用户来说非常安全.下面的代码显示了PHP代码
我已将它用于我的网站.现在我使用了一些验证,如密码和repeatPassword必须匹配,用户必须输入所有字段.
为了使其更安全,我想插入安全命令,如PDO,mysqli,加密或MD5
但我不知道如何,因为我有新的PHP.
我怎样才能做到这一点 ?
我的代码在这里:
<?php
include"config.php";
if (isset($_POST['submit']))
{
$user_name = $_POST['name'];
$user_surname = $_POST['surname'];
$user_email = $_POST['email'];
$user_academic = $_POST['academic_institute'];
$user_username = $_POST['username'];
$user_pass = ($_POST['password']);
$user_pass2 = ($_POST['repeatPassword']);
if($user_name && $user_username)
{
if($user_pass==$user_pass2)
{
$query = mysql_query("INSERT INTO members (name, surname, email, academic_institute, username, password, repeatPassword)
VALUES ('$user_name', '$user_surname', '$user_email', '$user_academic', '$user_username', '$user_pass', '$user_pass2')");
mysql_query($query);
echo '<script type="text/javascript">alert("You have been registered");</script>';
}
else
{
echo '<script type="text/javascript">alert("Password must match");</script>';
}
}
else {
echo '<script …Run Code Online (Sandbox Code Playgroud) 我是phpmyadmin的新手.我想在不使用php代码的帮助下将密码的md5哈希存储在数据库表中.所以我在这里找到了解决方案.但我在phpmyadmin-4.1.6中找不到'function'的选项.我怎样才能实现目标?
哪个是PHP中最安全的密码哈希算法?
速度是无关紧要的,因为我在一段固定的时间内迭代哈希(而不是固定的迭代次数).我感兴趣的是数学实力.
我的直觉告诉我它是漩涡,是最大和最慢的一群.那还是SHA-512.哪位专家推荐?
有没有其他算法提供超过512位的哈希?
php ×9
hash ×4
security ×4
encryption ×3
mysql ×3
algorithm ×1
bcrypt ×1
database ×1
export ×1
ios ×1
optimization ×1
passwords ×1
phpmyadmin ×1
postgresql ×1
sha ×1
sha1 ×1