【发布时间】:2012-05-23 19:03:40
【问题描述】:
一个现有的coldfusion网站将被转换为点网。
在coldfusion代码中,密码使用hash()函数进行哈希处理,没有算法:
SomePassword = '#hash(fldPassword)#'
找到this document,说默认加密是
CFMX_COMPAT:生成一个与由 ColdFusion MX 和 ColdFusion MX 6.1(默认)。
有一些文章实际上告诉我如何解密。
根据 Macromedia,ColdFusion 加密功能使用 基于 XOR 的算法,利用基于 32 位伪随机密钥的 用户作为参数传递给函数的种子。这 结果数据是 UU 编码的。
您需要先对编码值进行 uudecode http://www.eggheadcafe.com/printsear...asp?linkid=351
然后使用加密的密钥对其进行异或。 http://www.java2s.com/Code/CSharp/La...deamessage.htm
如果你没有钥匙 - 你在浪费时间。
但是,如何使它工作?我不认为有任何关键。我只能看到'#hash(fldPassword)#'。请帮忙。谢谢。
【问题讨论】:
-
我相信 hash() 被设计为一个不应该被“解密”的单向函数是吗?
-
有趣,那么为什么 Adobe/Macromedia 将其命名为
CFMX_COMPAT而实际上只是MD5? -
@Henry - 听起来像是文档错误。 (当您需要勘误表时,哪里有勘误表?;)MX6 的
hash()默认为MD5- 而不是CFMX_COMPAT。另外,在以后的版本中,他们会将默认值降低为CFMX_COMPAT是没有意义的。它甚至不是散列算法..
标签: hash coldfusion cryptography