当前位置: 首页 > 面试题库 >

如何使用Java生成像apache的htpasswd这样的哈希

董庆
2023-03-14
问题内容

我在htpasswd中使用“密码的强制MD5加密”来生成实例“ 123”的哈希,我得到:

使用htpasswd:123 => $ apr1 $ kaTbKaLO $ ewJXRZAKpjaxK4thy2jOp /

使用MD5摘要:123 => 202cb962ac59075b964b07152d234b70

请告诉我如何使用Java生成像apache htpasswd这样的哈希。


问题答案:

Apache
.htpasswd文件中的密码使用salt编码。如果要使用Java生成这些密码,则需要执行相同的操作。这个站点解释了用于Apache的.htpasswd文件的salt /
hashing算法。我正在寻找一种可以使用的实际算法,找到答案后将对其进行编辑。

这是Apache的文档及其源代码:

http://httpd.apache.org/docs/2.2/misc/password_encryptions.html

http://svn.apache.org/viewvc/apr/apr-
util/branches/1.3.x/crypto/apr_md5.c?view=co



 类似资料:
  • 问题内容: 是否有任何方法可以在Java中生成字符串的MD5哈希? 问题答案: 你需要。 调用以获取你可以使用的MD5实例。 通过执行以下操作之一来计算哈希: 将整个输入作为并使用进行一次运算来计算哈希。 订阅通过调用一次块。添加完输入字节后,请使用计算哈希值 。 在返回的是MD5哈希值。

  • 在GitHub或BitBucket中每个存储库的主页上都显示了自述文件。md的格式非常漂亮。 有没有办法用红宝石做同样的东西?我已经找到了一些像红毯这样的宝石,但它看起来从来都不漂亮。我按照红毯的说明进行了操作。 我确信这不仅仅是缺少css,因为在3个反引号之后 (```) 我编写了或之类的语法,并在第一个图像中编写了它。 编辑2: 这里的这段代码:

  • 问题内容: 我目前正在尝试使用Java安全API和BouncyCastle生成主题哈希。 当我使用Openssl库时,这是我的工作: 这将生成一个短的8位数字哈希 1817886a 这是我的Java代码 问题答案: 这将生成一个短的8位数字哈希1817886a OpenSSL有两种形式: 在Java中生成X509Certificate的主题哈希… 这是他们的来源: 最后: 使用RFC 2459 (

  • 问题内容: 我需要使用HMAC SHA256生成哈希。我在Java中使用以下代码。我需要在Objective-C中使用等效的代码。 键= 值= 输出= 我有这个Objective-C功能: 我得到的输出是这样的: 我尝试删除base64编码,但是没有用。 任何建议都是最欢迎的。 问题答案: 您需要修复Java hmac打印机,因为它无效。里面的所有内容都有一个赠品,您要先将字节符号扩展为32位带符

  • 基本上,我如何生成这个?我很确定这是的工作,但是我无法理解如何正确地调整操作窗格与菜单栏的大小。红色的 请注意,第二条红线应该正好是框架下半部高度的三分之一。 这是我的最新尝试,通过尝试使用3x6网格(c是GridBagConstraint对象,字符肖像包含所有肖像,当前屏幕是“动作窗格”): 取而代之的是,这将在象限的底部三分之一产生每个肖像,并且操作窗格占据中心列的5/6,而不是我想要的4/6

  • 我正在将一个web应用程序从Ruby移植到Java,并希望允许用户在不重置密码的情况下登录。下面是使用pbkdf2 gem生成哈希的Ruby代码: 读取Ruby gem的源代码时,它使用openssl::digest.new(“sha256”)作为默认散列函数,并生成一个32字节的值,该值使用“unpack(”h*“)”转换为一个64字符串。 所以,在Java,我尝试了以下几种方法: 使用pass