问题标签 [sha]
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.
mysql - password storage in mysql for user content website
To store user passwords I am going to SHA 256 + salting. Just wanted to confirm if these are correct. Business requirement is password should be minimum 8 inputs and maximum 32 inputs. (any input is valid except blank space)
So to meet these requirements the plan is:
Front end - validate max input of 32 & min input of 8.
Backend the Database (MySQL) schema will be:
pass_hash(64) CHAR - store password hash
pass_slt(32) VARCHAR - store unique salt for each user
For salting I am not sure what value to use as yet. But i think when users create an account I will create a random character for each user and use that. Then the other question is: Do i store the salt as plain text or need to hash/encrypt that too?
Also I dont know if it matters but can passwords support multi-language with this current plan or will I run into any issues? (I am talking about funky characters like Arabic, Chinese, etc)
algorithm - 单个“1”位的 SHA-256 哈希是多少?
SHA-256 的定义似乎是这样的:由单个“1”位组成的输入具有明确定义的哈希值,与“01”字节的哈希值不同(因为填充是根据输入的位长度完成的)。
但是,由于字节顺序问题以及我找不到支持单比特馈送的实现这一事实,我无法完全弄清楚这个正确的值是什么。
那么,由位“1”组成的1 位长输入的正确散列是什么?(不是 8 位长字节 [] { 1 } 输入)。
python - 交替使用同一文件的不同 sha。为什么?
有人可以给我一个为什么我得到同一文件的备用 shas 的理由吗?但每一秒沙都一样吗?
ruby-on-rails - 更改设计和 rails 3 以使用 bcrypt 而不是 sha
我有一个使用设计处理身份验证的 rails 3 生产应用程序。我想更改为在应用程序上使用 bcrypt 而不是 sha,但我找不到任何资源来解释从一个迁移到另一个的过程。我假设您需要采取某种回退措施来处理目前密码以某种方式用 sha 加盐的事实......
以前有人做过吗?!任何提示、教程、演练等?!
c - 计算“基于”的数据校验和。(SHA1/2 等)
我不确定如何问这个问题,但这是我所希望的,给定一个可能包含5+n
键的结构(因此,我的系统有 5 个键是强制性的,其他键是可选的) - 我想要一个散列能够确定6
具有相同键的键散列5
是键结构的超集5
并提供附加信息的机制。特别是散列机制,因为有一些约束阻止在每个请求上通过线路发送完整的结构。
为澄清起见,这里有一些信息(示例需要2+n
密钥):
用 散列SHA-512
,-256
结果看起来像:
当添加一个额外的键时,(下面的例子)我希望能够推断出扩展数据集是第一个的超集。
但是,不出所料, inMD5
以及SHA-n
我研究过的任何其他散列函数,都没有办法做到这一点,例如:
(显然)没有相似之处......
我们的用例,即格式化为结构的数据,由第 3 方输入到我们的系统中。处理数据非常昂贵,每次操作需要 2-3 秒,如果我们知道我们有上一次运行的结果,我们可以获得大约 50% 的时间,但是 - 贝叶斯和 Levenstein 文本差异算法不是适合这里,因为我们经常看到作为首字母缩略词的键/值对,以及在完全不相关时可能看起来相似的其他文本。
我们需要的是一种校验和数据的方法(我可能会偏向于我的回答)——这样我们就可以确定它是否包含所有相同的键和相同的数据B
的超集。A
然而,我们的键/值条目中经常有太多的数据,struc
以至于每次通过网络发送它,只是为了确定我们已经看到了更完整的副本,这将是昂贵和浪费的。
hash - 生成 SHA256 / 512 哈希时,是否有最小的“安全”数据量来哈希?
我听说在创建哈希时,如果使用小文件或大量数据,则生成的哈希更有可能发生冲突。如果这是真的,是否应该使用最低“安全”数据量来确保不会发生这种情况?
我想这个问题也可以表述为:
可以安全可靠地散列的最小数据量是多少?
sha - 以可逆方式从大整数生成伪自然短语
我有一个大而“唯一”的整数(实际上是一个 SHA1 哈希)。
注意:虽然我在这里谈论的是 SHA1 哈希,但这不是密码学/安全问题!我不是要破坏 SHA1。如果有帮助的话,想象一个随机的 160 位整数而不是 SHA1。
我想(除了玩得开心)找到一种算法,将 SHA1 哈希映射到计算机生成的(伪)英文短语。映射应该是双向的(即,知道算法,必须能够从该短语计算原始 SHA1 哈希。)
这句话不必说得通。我什至会接受一整段废话。(虽然一个段落的质量——英语性——可能应该比一个短语更好。)
更好的算法会产生更短、更自然、更独特的短语。
一个变体:如果我只能使用哈希的一部分,那也没关系。说,前六个十六进制数字很好。
生成的短语的可能用法:Git 提交 ID 的人类可读版本,用作给定程序版本的座右铭,该程序版本是从该提交构建的。(正如我所说,这是“为了好玩”。我并不是说这非常实用——或者比 SHA1 本身更具可读性。)
可能的方法:在过去,我尝试建立一个概率表(单词),并根据我从 SHA 读取的位,将短语生成为马尔可夫链,为生成器播种(从概率树中挑选分支)。这不是很成功,产生的短语太长而且丑陋。我不确定这是一个错误,还是算法中的一般缺陷,因为我必须尽早放弃它。
现在我正在考虑再次尝试解决这个问题。关于如何解决这个问题的任何建议?你认为马尔可夫链方法可以在这里工作吗?还有什么?
ruby-on-rails - Digest::SHA2.hexdigest() 定义在哪里?
我正在阅读Agile Web Development with Rails一书中的教程,我发现了以下代码:
但是,查看Digest
源代码(digest.rb
以及digest/sha2.rb
在lib
我的 ruby 安装目录中),我似乎无法找到该hexdigest
方法的定义位置,但代码似乎工作得很好。
有人能告诉我这是怎么发生的吗?我假设我需要寻找一个看起来像这样的代码:
security - How long can a hash left out in the open be considered safe?
If I were to leave a SHA2 family hash out on my website - how long would it be considered safe? How long would I have before I could be sure that someone would find a collision for it and know what was hashed?
I know that the amount of time would be based on the computational power of the one seeking to break it. It would also depend on the string length, but I'm curious just how secure hashes are.
Since many of us run web-servers we constantly have to be prepared for the day when someone might make it all the way to the database which stores the user hashes. So, move the server security out of the way and then what do you have?
This is a slightly theoretical area for many of the people I have talked with, so I would love to actually have some more information about average expectations for cracking.
hash - 什么应该是迭代技术?
在编码理论课程中,我被要求实现一个压缩散列函数和我选择的迭代技术。
“迭代技术”应该是什么意思?
我为哈希函数选择了 SHA-1。
PS对不起,我不是以英语为母语的人,这就是为什么我要问这样一个模棱两可的问题。