问题标签 [message-digest]

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.

0 投票
3 回答
3261 浏览

javascript - 使用盐进行密码散列的协议

我试图了解需要在 Web 应用程序中发送哪些信息。基本上我有一个在网络服务器上运行的网络应用程序,一个数据库,其中有一个带有哈希密码和盐的用户表,当然还有启用了 javascript 的网络客户端。

当用户登录 login 时,在客户端输入用户名和密码。我想知道发送了哪些信息。Web客户端是否以纯文本形式发送密码,还是使用javascript在没有盐的情况下对密码进行哈希处理并发送hased结果?还是客户端从服务器以纯文本形式获取盐,然后客户端发送密码+盐?

散列和盐散列的最佳方法是什么?MD5 可以作为哈希吗?hash(password_plain_text + salt) 与 hash(hash(password_plain_text) + salt) 的区别,其中 + 是字符串连接?

0 投票
1 回答
3762 浏览

java - Java 等价于 PHP 的 pack 函数

我有一个示例应用程序,它在 PHP 中生成 SHA1 哈希,如下所示。

我试图在 Java 中实现相同的目标,但到目前为止,输出是不同的。我使用的方法如下(Base64 和 Hex 类来自 commons-codec 库)。

我的问题是,我采用的方法会产生与 PHP 的 pack() 函数相同的输出吗?我的猜测是 PHP pack() 函数返回原始字节,其中 Hex.encodeHex 返回十六进制字符串形式(参考:http ://www.w3schools.com/php/func_misc_pack.asp )。

如何在 Java 中实现与 PHP 的 pack() 函数相同的输出(或上述 PHP 代码的完整输出)?

0 投票
1 回答
609 浏览

android - Android中的HMAC-Whirlpool实现

有没有人在 Android 手机上实现或使用 Hmac-Whirlpool?
我在互联网上找到了whirlpool.java,但 Android SDK 中的默认安全提供程序似乎没有 Whirlpool 或 Hmac-Whirlpool。

0 投票
3 回答
8764 浏览

java - java messagedigest会在不同的jdk版本上生成不同的MD5哈希吗?

我正在使用 java 消息摘要创建用于身份验证的 MD5 哈希。MD5 哈希作为 varchar2 存储在数据库中。我做了一个测试,在本地笔记本电脑上的 tomcat 服务器上创建一个用户。当我将war部署到linux redhat上的测试tomcat服务器时,由于哈希不匹配,身份验证失败。我检查了用户名和密码:它们都是正确的。两个 Web 服务器都指向同一个数据库。

我怀疑在我的本地笔记本电脑上生成的哈希值与测试服务器生成的哈希值不同。我对吗?

下面是我生成哈希的代码。

返回的 String 将保存在数据库表中,该表定义如下

这是我笔记本电脑上的 java 版本输出

这是redhat服务器上的java版本输出

0 投票
1 回答
1962 浏览

java - 有没有办法缩短 java.security.MessageDigest 生成的值?

如果我使用此 Java 代码生成消息摘要(用于我的应用程序中的安全功能):

我最终得到一个非常长的字符串,如下所示:

传递 URL 不是最好的方法!

有没有办法缩短这个?

0 投票
3 回答
1224 浏览

encryption - MD5 或 SHA-X 哈希与加密有何不同?

我读过几次 MD5 不是加密,例如在MD5 上……加密?命令行消息摘要实用程序

好吧,我知道它是一个哈希/消息摘要,上面链接中的解释说加密必须有一个密钥,而 hash/md 是一个仅产生签名的加密哈希函数。我真的不明白其中的区别。难道您看不到加密哈希函数/算法作为密钥吗?

另外,加密的东西和加密的东西有什么区别?

0 投票
2 回答
7880 浏览

attributes - 使用 x509 证书进行 S/MIME 验证

我在使用 x509 证书验证 S/Mime 签名消息时遇到了一些问题。这是我的代码:

}

我有这个例外的问题:

CMSSignerDigestMismatchException:消息摘要属性值与计算值不匹配。我不知道我在做什么错。我使用 jdk 1.4.2。

0 投票
1 回答
109 浏览

java - 类似于消息摘要但逐步描述文件的东西

我有一组具有异构操作系统的地理远程节点,这些节点需要使用我正在编写的 Java 程序来传输文件和更新。目前,如果文件更改,我需要再次发送整个文件。有没有办法确定文件中不同的部分并只发送这些部分(请注意,这些文件不一定是文本,它们可以是任何格式)。我能想到的唯一方法是将文件分成块,对块进行哈希处理并将哈希发送回请求者,然后请求者只请求它需要的块,但是对于小块和大文件,这是一个很大的开销,所以有没有如何发送一些描述我的文件的消息,以便可以分析单个消息以提供需要传输的块的列表?

大多数摘要函数的设计使得数据的微小变化会导致整个哈希输出发生很大变化,我基本上需要相反的,这将适用于所有操作系统。

0 投票
2 回答
621 浏览

java - 为什么我的两种 MD5 散列方法会产生不同的散列?

我是java新手,真的需要一些帮助。我创建了一个命令行工具来获取文件的 MD5 哈希。这很有效,所以我随后定制了我的代码以将其置于 GUI 形式中。这两个程序给出了同一文件的不同哈希值,这令人困惑。我已经研究过 UTF-8,但据我所知,它只适用于字符串而不是文件实例。谁能告诉我为什么他们提供不同的哈希值并指出正确的方向?

第一种方法(命令行)...

第二种方法(为gui构建)...

0 投票
4 回答
31029 浏览

android - 是否每部 Android 手机都支持 SHA-256

所以阅读这篇文章:如何在 Android 中计算字符串的 SHA-256 哈希?

和文档:http: //developer.android.com/reference/java/security/MessageDigest.html

我很好奇; 哪些手机将支持 SHA-256?在文档中,关于“NoSuchAlgorithmException”的行让我觉得有些手机不支持所有算法。在我为一个应用程序实现这个并期望它在所有手机上都能正常工作之前,我想知道是否有人对此有所了解......?

我觉得奇怪的是 MessageDigest 类没有一些常量来选择你想使用的算法。