如何从Ruby中的5字加密哈希中找到SHA1加密字符串
How to find a SHA1 encrypted string from the 5-word encrypted hash in Ruby?
假设您正在使用CryptoJS加密字符串"alextoul"。SHA1.
正如下面的来源所解释的,你会得到一个看起来像这样的对象:
CryptoJS。SHA1("alextoul")={words:{0:1025575641 1:-2026381578 2:1077518901 3:1028391820 4:1049226021}}
事实证明,如果你把它转换成一个字符串,你会得到:
CryptoJS。SHA1("alextoul")。ToString()="3d210ad98737def64039a2353d4c038c3e89eb25"
现在我要做的是从Ruby中的5个单词中找到上面的字符串("3d210ad98737def64039a2353d4c038c3e89eb25")。
thefunctionined(params[:words])#等于"3d210ad98737def64039a2353d4c038c3e89eb25"
来源:https://code.google.com/p/crypto-js/#The_Hasher_Output
只需阅读来源:
https://code.google.com/p/crypto-js/source/browse/tags/3.1.2/src/core.js#181-->
https://code.google.com/p/crypto-js/source/browse/tags/3.1.2/src/core.js#306-->
function stringify(wordArray) {
// Shortcuts
var words = wordArray.words;
var sigBytes = wordArray.sigBytes;
// Convert
var hexChars = [];
for (var i = 0; i < sigBytes; i++) {
var bite = (words[i >>> 2] >>> (24 - (i % 4) * 8)) & 0xff;
hexChars.push((bite >>> 4).toString(16));
hexChars.push((bite & 0x0f).toString(16));
}
return hexChars.join('');
}
然后呼叫
stringify(CryptoJS.SHA1("alextoul"))
对不起,我对ruby的了解不足以移植
相关文章:
- jQuery将查询参数附加到当前哈希中,忽略重复项
- 如何在哈希中设置输入值
- Emberjs :哈希中的函数原型
- 为什么从位置哈希中选择下拉列表在 Chrome 上有效,但不适用于 Firefox、IE 或 Safari
- RegEx 用于从 JavaScript 中的 url 哈希中提取参数
- 如何将帮助程序方法的输出用作 HAML 哈希中的值
- 删除窗口哈希中的 # 以在函数中使用
- 如何从返回的Facebook图形API哈希中提取数据
- IndexedDB数据库身份验证-安全选项-加密/哈希JavaScript HTML5
- 如何使用密钥名称的值来获取密钥名称(在哈希中)
- 如何从哈希中获取数字
- 在发送到客户端之前,是否应该对表的Id列进行加密/哈希处理
- '这'当创建函数存储在哈希中的JS对象时,其作用域为窗口对象
- 按键和返回值从哈希中删除
- 如何将新元素附加到哈希中的同一个键
- Javascript加密哈希保护加载器
- mongodb中的加密哈希函数
- 在新创建的模型哈希中缺少烬数据映射
- 如何从Ruby中的5字加密哈希中找到SHA1加密字符串
- 如何将插入的字符串/动态属性传递到Javascript哈希中