问题标签 [salt]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
sql - 数据库查询后 SHA1 密码以明文形式返回
我的 aspnet_Membership 表中有一个 SHA1 密码和 PasswordSalt。但是,当我从服务器运行查询(一个 Sql 查询)时,读者会发现 pass 已作为其明文等效项返回。
我想知道我的 web.config 配置是否导致了这种情况?
提前致谢...
php - MySQL和php中的唯一文本字段
我创建了一种盐;md5(兰德(0,10000000)); (可能有更好的方法?)
似乎不可能在 MYSQL 中使文本字段唯一。那么如何检查盐是否已经被以前的用户使用过呢?
或者我应该根据当前日期/时间生成盐吗?因为两个用户不可能同时注册,对吗?
security - 如何在 postgresql 中散列密码?
我需要在 postgresql 上用盐对一些密码进行哈希处理,但我找不到任何有关如何完成此操作的相关文档。
那么如何在 postgresql 中散列密码(带有一些盐)?
security - 如果我只有一个数据库列,如何存储加盐密码哈希?
我已经阅读了许多关于这个主题的 SO 问题,但是我无法理解存储密码的加盐哈希的应用实践。
让我们从一些基本规则开始:
- 密码“foobar12”(我们不讨论密码的强度)。
- 一种语言,用于本次讨论的 Java 1.6
- 数据库、postgreSQL、MySQL、SQL Server、Oracle
有几个选项可用于存储密码,但我想考虑一 (1) 个:
将使用随机盐散列的密码存储在数据库中,一列
明文存储自动失效问题暂不讨论。:) 在 SO 和其他地方发现的是具有 MD5/SHA1 和使用双列的解决方案,各有利弊。
MD5/SHA1 很简单。Java 中的 MessageDigest 提供 MD5、SHA1(通过现代实现中的 SHA512,当然是 1.6)。此外,列出的大多数 RDBMS 都提供了插入、更新等 MD5 加密功能的方法。一旦了解“彩虹表”和 MD5 冲突(我已经了解了这些概念),问题就会变得明显。
双列解决方案基于salt
不需要保密的想法(理解它)。但是,如果您的旧系统具有一 (1) 列用于密码并且更新表和代码的成本可能太高,那么第二列引入的复杂性可能不是一种奢侈。
但它将密码用随机盐散列在单个数据库列中,我需要更好地理解,并具有实际应用。
我喜欢这个解决方案有几个原因:期望使用盐并考虑遗留边界。这就是我迷路的地方:如果盐是随机的,并且密码加盐被散列以产生单向值用于存储,那么系统如何匹配明文密码和新的随机盐?
我对此有理论,当我输入时,我可能会理解这个概念:给定一个 128 字节的随机盐和一个 8 字节的密码('foobar12'),它可以通过编程方式删除散列的一部分盐,通过散列一个随机的 128 字节盐并获取原始散列的子字符串,即散列密码。然后使用散列算法重新散列以匹配......?
所以......任何接受帮助的人。:) 我很亲密吗?
database - 加密散列密码?
使用强加密(AES 192 左右)对存储在数据库中的哈希和加盐密码进行加密是常识,还是我们只是针对星星?
当然,加密密钥不会在数据库本身,而是保存在安全的地方。
非常感谢!
salt - 字符串到键(s2k)说明符中的“盐”指的是什么?
字符串到键(s2k)说明符中的“盐”指的是什么?
它似乎是一个随机数生成器来改变现状,但我想知道“盐”代表什么?
例如它是这样写的:
但是盐没有定义,尽管它的含义似乎很清楚。
sql-server-2005 - [Sql-Server]密码盐和哈希值使用什么数据类型以及什么长度?
我正在使用我的密码生成盐值和哈希值,
您建议将这些值存储在 sql server 中的数据类型是什么?任何建议...
盐:9GsPWpFD
哈希:E778AF0DC5F2953A00B35B35D80F6262CDBB8567
asp.net-mvc - 在登录期间比较盐和散列密码似乎无法正常工作
我在用户注册期间存储了密码的盐和哈希值......但是在他们登录期间,我然后对用户提供的密码进行盐和哈希,发生的是一个新的盐并生成了一个新的哈希......
这些语句在注册和登录中都有......
注册期间的盐和哈希是eVSJE84W
和18DE22FED8C378DB7716B0E4B6C0BA54167315A2
在登录期间它是4YDIeARH
......12E3C1F4F4CFE04EA973D7C65A09A78E2D80AAC7
任何建议......
python - 使用盐在 SHA512 中进行散列?- Python
我一直在查看 hashlib 文档,但没有发现任何关于在散列数据时使用盐的内容。
帮助会很棒。
asp.net-mvc - ValidateAntiForgeryToken 盐值的运行时加载
Salt
考虑使用指令中的参数的 ASP.NET MVC 应用程序[ValidateAntiForgeryToken]
。
这种情况下,该应用程序将被许多客户使用。Salt
在编译时拥有已知信息并不是非常可取的。
当前的策略是在 web.config 中定位 Salt 值。
这会导致编译时异常,表明Salt
在编译时必须是 const。
属性参数必须是属性参数类型的常量表达式、typeof 表达式或数组创建表达式
如何修改应用程序以允许运行时加载,Salt
以便不必为每个客户重新加盐和重新编译应用程序?
考虑到Salt
不会经常更改(如果有的话),从而消除表单无效的可能性