ColdFusion通过ajax发送加密的表单数据

时间:2012-10-17 19:41:20

标签: ajax encryption encoding coldfusion decoding

所以我有一个字符串,我需要在表单中的隐藏元素中进行编码,并在提交后对其进行解码:

<input type="hidden" class="secret_number" value="#encrypt(0, 'foo')#">

所以在html中,这看起来很可怕,比如

$&(A$4!v

这会导致URL出错,所以我把它放在URLEncodedFormat中。所以最终版本看起来像这样:%25%28%25%5F%23WLT%20%0A,这很好。如果您对此进行解码和解密,则会回到原来的状态。

但提交后看起来像这样:

%&#x28;%_#WLT

由于分号而在解码时出错。

值得注意的是,在提交时,这是通过ajax调用运行的。有什么想法吗?

1 个答案:

答案 0 :(得分:1)

尝试此操作以获得更多URL友好编码

<input type="hidden" class="secret_number" value="#encrypt(string=0, key='foo', encoding='HEX')#">

我还要注意,如果你关心这种情况下的安全性,那么不要使用默认的CFMX_COMPAT算法。

<input type="hidden" class="secret_number" value="#encrypt(0, 'foo','AES/CBC/PKCS5Padding','HEX')#">

并且不要将密钥硬编码到代码中。

我假设您这样做是为了获得正确的编码与实际安全性。