我想使用SHA512来存储密码.要做到这一点,其中openssl_digest,hash和hash_hmac我应该使用,为什么?
SALT和HMAC?有什么区别?
我刚刚读到HMAC是建立在哈希函数之上的.
所以SHA512+SALT+HMAC真的有必要SHA512+SALT或者SHA512+HMAC?
在我们的项目中,有几个地方我们可以通过哈希来消除.例如,我们在许可证和数据库中的许可对象之间存储加密引用以及未加密的引用.这是为了确保用户无法通过混淆数据库来更改他们已获得许可的实体.
我们在任何地方使用加密的主要原因是我们已经有了一个很好的加密库和一个系统密钥.此外,开发散列库并不值得花时间.
我们使用加密而不是散列来创建安全风险吗?
可能重复:
使用PHP加密和解密密码的最佳方式?
我最近用PHP做了很多事情,想要建立我的第一个登录/注册系统.因此,我一直在网上做很多阅读,以找出实现这一目标的最佳方法.我遇到了几个指南,我对几个实例感到困惑,在开始这条路之前我想确定一下.
我的问题是我究竟如何使用河豚?我已经读过如果提供适当的盐,crypt()将自动选择河豚.如果是这样的话,是什么让盐河豚适合?
现在,我有一个脚本,它从日期和时间中取出一个盐,一个随机数,然后哈希为盐.那是否可以与河豚一起使用?
可能重复:
PHP密码的安全散列和盐
我正在建立一个网站,我需要一个安全的算法来存储密码.我第一次想到bcrypt,但后来发现我的主机不支持它,我无法更改主机.
我的主机允许这种加密:
而这些哈希:
那么,你们中的任何人都能用这个和一个盐来修复一个好的算法吗?
Asp.Net Identity框架使用什么样的算法来加密密码?我有一个Android,iPhone,Web和桌面使用相同数据库的场景.此密码应加密,因此ASP.NET MVC我使用Identity框架加密密码.现在我需要算法适用于所有平台.
任何帮助将不胜感激.
提前致谢.
我对加密很新,我需要将一个简单的字符串编码'ABC123'成类似的东西'3d3cf25845f3aae505bafbc1c8f16d0bfdea7d70f6b141c21726da8d'.
我第一次尝试这个:
>>> import base64
>>> q = 'ABC123'
>>> w = base64.encodestring(q)
>>> w
'QUJDMTIz\n'
Run Code Online (Sandbox Code Playgroud)
但是要简短,我需要更长的东西,而不是我尝试过:
>>> import hashlib
>>> a = hashlib.sha224(q)
>>> a.hexdigest()
'3d3cf25845f3aae505bafbc1c8f16d0bfdea7d70f6b141c21726da8d'
Run Code Online (Sandbox Code Playgroud)
这很好,但现在我不知道如何将其转换回来.如果有人可以帮助我使用这个例子或建议别的东西,我怎么能把一个小字符串编码/解码成更长的东西,那就太好了.
基于plockc答案我做了这个,它似乎工作:
from Crypto.Cipher import AES # encryption library
BLOCK_SIZE = 32
# the character used for padding--with a block cipher such as AES, the value
# you encrypt must be a multiple of BLOCK_SIZE in length. This character is
# used to ensure that your …Run Code Online (Sandbox Code Playgroud) 我有两个盐,每个用户都有一个独特的盐,与数据库中的用户信息一起存储.第二种盐是网站特有的盐.两者都需要哈希密码.
问题是我不知道我应该在哪里保持我的网站盐.现在它驻留在运行散列算法的PHP方法中.我应该将它保存在/ var/www /之外的文件中并打开PHP并读取文件吗?我不想将它存储在数据库中,因为如果我的数据库受到损害,那将会破坏两种盐的目的.
有什么建议?
可能重复:
md5解码.他们是怎么做到的?
这个页面表明,由于我们现在拥有巨大的处理能力,可以颠倒像md5()和sha1()这样的哈希算法.在这一点上,我认为只有彩虹表才有可能.我错了吗?
如果Rainbow Tables是唯一的方法,有人可以如何反转用盐制作的哈希?
我刚刚阅读了有关什么是HTTPS服务的文章,并了解了https的基本知识。
请求https内容时,服务器将向浏览器发送公钥,以便每次浏览器接收到的数据都将使用公钥解密。
我的问题是什么是CA证书?我们为什么需要它?
我已经集成了Live JS api来获取用户的Live联系人,它以散列格式(email_hash)返回电子邮件.如何使用javascript或c#.net转换为可读文本非常感谢!
hash ×6
php ×5
passwords ×4
security ×4
encryption ×3
crypt ×2
algorithm ×1
api ×1
asp.net-mvc ×1
blowfish ×1
c# ×1
javascript ×1
pki ×1
python ×1
rainbowtable ×1
salt ×1
sha ×1
ssl ×1
storage ×1
x509 ×1