目前对这个问题的最高投票表明:
另一个不是安全问题的安全问题虽然与安全相关,但却是完整的,并且很难解决散列密码和加密密码之间的区别.最常见于代码中的程序员试图提供不安全的"提醒我密码"功能.
究竟是什么区别?我总是认为哈希是一种加密形式.海报所指的不安全功能是什么?
下面我使用sha1加密了一个字符串变量.现在我希望使用sha1函数解密数据,但我会去一些地方.有人会挺身而出,以正确的方式指导我.
以下是我的代码
<?php
$variable = "tiger";
echo $variable;
$encrypt = sha1($variable);
echo $encrypt;
$decrypt = sha1($encrypt);
echo $decrypt;
?>
Run Code Online (Sandbox Code Playgroud)
我得到这样的输出
tiger
46e3d772a1888eadff26c7ada47fd7502d796e07
989df2c8b5ea37eb7cfde0527d94c01a15257002
Run Code Online (Sandbox Code Playgroud) 我正在参加之前的信息安全考试。
我正在研究与密码加密有关的加盐。我的问题是 - 如果 SHA 256 是一种单向加密,那么如何解密?
我只是想,当通过电子邮件发送消息时,它们会被加密和解密,以便可以访问消息或文件。
SHA 256 如何工作?如果加密无法解密,您如何查看您的消息或文件?或者它只是保护密码本身?
我目前正在研究这个(在大学),希望得到任何帮助。请原谅我的问题中的任何愚蠢错误,因为我仍在尝试了解这个主题。
谢谢。
我想使用SHA-256算法在数据库中加密密码.我已经做了一些研究,我发现我应该使用MessageDigest类来正确加密字符串对象.问题是如何恢复哈希函数以恢复原始密码?我的意思是如果我要创建一个登录系统,我必须能够恢复到原来的密码,或者可能不是?也许当密码填写到表单中时,必须将其转换为哈希函数并与存储在数据库中的哈希字符串进行比较,对吧?
我使用上面的代码加密了一个字符串.
public String encrypt(String generatedKey)
{
try {
MessageDigest md = MessageDigest.getInstance("SHA");
md.update(generatedKey.getBytes("UTF-8"));
byte digest[] = md.digest();
return (new BASE64Encoder()).encode(digest);
}
catch (Exception e) {
return null;
}
}
Run Code Online (Sandbox Code Playgroud)
同样,我需要一个代码来解密上面生成的代码.我怎样才能做到这一点?
encryption ×4
java ×2
sha ×2
algorithm ×1
cryptography ×1
hash ×1
passwords ×1
php ×1
security ×1
sha1 ×1