SSL中的密码与Jetty教程

jle*_*ard 16 ssl jetty

在本教程中,以下值来自何处?

  • password(OBF:1vny1zlo1x8e1vnw1vn61x8g1zlu1vn4)
  • keyPassword(OBF:1u2u1wml1z7s1z7a1wnl1u2g)
  • trustPassword(OBF:1vny1zlo1x8e1vnw1vn61x8g1zlu1vn4)

Bru*_*uno 15

前缀的密码OBF:来自Jetty自己的系统,用于混淆密码.这里有更多文档:http://wiki.eclipse.org/Jetty/Howto/Secure_Passwords

请注意,这是模糊的,未加密.它只是阻止人类快速阅读:

在某些情况下,例如密钥库密码和摘要认证,系统必须检索原始密码,这需要混淆方法.混淆算法的缺点是它只保护密码免于偶然查看.

你也可以把它们弄清楚,它不会有太大变化.

在这种情况下,password,keyPasswordtrustPassword分别是密钥存储的密码,密钥密码和信任库密码(应该,如果是一样的密钥存储密码是可选).这些是您在创建这些密钥库时设置的.

  • 可以在混淆之前搜索Jetty源代码以找出密码.前几天花了我一些时间,以防有人需要它...在这种情况下,开放文本中的密码是:"storepwd" - >"OBF:1vny1zlo1x8e1vnw1vn61x8g1zlu1vn4"和"keypwd" - >"OBF: 1u2u1wml1z7s1z7a1wnl1u2g". (10认同)
  • 为什么原始记录员在原始问题的上述链接中如此难以理解?说真的,这给我带来了无数的麻烦 - 而且仍然存在!我赞成这个回应,因为有人指出了配置中使用的"OBF"业务的来源,但我仍然不知道这些密码来自何处.这是我提供的东西吗?我不知道. (3认同)

Thi*_*ilo 13

有人(Norn Iron Hacker Scene的ack_)制作了一个Python脚本来反转Jetty密码混淆.需要将密钥库导出到其他程序时很有用.

# Jetty Deobfuscation Tool
from __future__ import print_function
import sys

def deobfuscate_jetty(ciphertext):
    plaintext = ""
    for i in range(0, len(ciphertext), 4):
        t = ciphertext[i:i + 4]
        i0 = int(t, 36)
        i1, i2 = divmod(i0, 256)
        x = (i1 + i2 - 254) >> 1
        plaintext += chr(x)
    return plaintext

if __name__ == '__main__':
    if len(sys.argv) == 2:
        print(deobfuscate_jetty(sys.argv[1]))
    else:
        print("Jetty Deobfuscation Tool v1.0")
        print("%s <string>" % sys.argv[0])
        exit(1)
Run Code Online (Sandbox Code Playgroud)