这个密码值的格式是什么?

时间:2018-03-28 10:40:36

标签: azure asp.net-web-api passwords hashcode password-encryption

用于生成密码值的格式/哈希类型是什么,如下所示:

1000:Z7yApDhypjU88p8cTU3SLRGqW6cZXtbv:oThRlVGlTNMggciquvhXn6jjvnaoRfFM

我只知道在Azure上运行一个asp.net webapi应用程序。

1 个答案:

答案 0 :(得分:1)

(如果这是一个真正的哈希,请考虑混淆/"泛化和#34;它们将来)

您是否有多个样本,以便您可以判断格式和长度:

([integer (user id? rounds?)]:[32 bytes]:[32 bytes])

......确切而且一致吗?

如果是这样,它不会直接匹配(包括长度)hashcat wiki上的任何示例哈希值:

https://hashcat.net/wiki/doku.php?id=example_hashes

我暂时断定它是自定义格式,或以某种方式与the Azure AD password hash sync format间接相关:

  
      
  • 密码哈希同步代理通过首先将哈希转换为32字节,将16字节二进制密码哈希扩展为64字节   十六进制字符串,然后将此字符串转换回二进制文件   UTF-16编码。
  •   
  • 密码哈希同步代理将一个由10字节长度的盐组成的salt添加到64字节的二进制文件中,以进一步保护   原始哈希。
  •   
  • 密码哈希同步代理然后组合MD4哈希加盐,并将其输入到PBKDF2函数中。 1000次迭代   使用HMAC-SHA256密钥散列算法。
  •   
  • 密码哈希同步代理获取生成的32字节哈希值,连接盐和SHA256迭代次数   到它(供Azure AD使用),然后从Azure AD传输字符串   通过SSL连接到Azure AD。
  •   

所以' 1000'一开始可能是轮数。不过,这是一个疯狂的猜测。