在文本区域中使用用户敏感数据并将其传递给javascript/ajax时,如何确保安全

在文本区域中使用用户敏感数据并将其传递给javascript/ajax时,如何确保安全,javascript,html,encryption,Javascript,Html,Encryption,我有以下代码 <textarea class="input" id="input" onkeypress="ifenter(event,'<?php echo $id ?>"></textarea> 您需要用密码签署此ID。假设您有一个ID$ID和一个只有服务器才知道的秘密$secret,那么您不需要只放,而应该放: <?php echo $id + "some delimiter" + hash($id, $secret) ?> 其中

我有以下代码

 <textarea class="input" id="input"  onkeypress="ifenter(event,'<?php echo $id ?>"></textarea>

您需要用密码签署此ID。假设您有一个ID
$ID
和一个只有服务器才知道的秘密
$secret
,那么您不需要只放
,而应该放:

<?php echo $id + "some delimiter" + hash($id, $secret) ?>

其中
hash()
是一些散列函数,如MD5或SHA-1。然后,您可以在服务器上检查通过连接ID和secret是否得到相同的散列。如果是,一切正常,如果不是,有人换了身份证

这是最简单的方法。已经有一些更好(更难破解)的解决方案,比如


编辑:同样,取决于这个ID是什么,你应该考虑如果你做的是正确的事情。如果是用户ID,则可以使用会话,如果是其他资源ID,则应检查登录用户是否有权修改此资源。

是,但由于我需要能够解密,因此md5和sha不可协商。所以我想到了AES或base64。但这是正确的方法吗?在这种情况下,您不必解密任何内容,因为您发送未加密的数据+签名,然后检查签名是否匹配。你只是想检查一下没有人更改身份证,不是为了保密,是吗?