CMP*_*MPS 4 php encryption ajax
我正在开发一个需要一些ajax调用的网站,以提高灵活性和性能.我的ajax调用是一个排名系统.我需要使用ajax(storeID,clientID,orderID)处理三个输入值.要使用ajax提交操作,我想确保使用Web工具的用户不会修改发送的参数值.所以我想到了三种不同的方法来保证发送的信息没有改变:
发送一个额外的值,它是一起发送的所有数据的加密.因此,在处理ajax时,在服务器端,我可以重新加密发送的数据,并查看加密结果是否与发送的加密值匹配.
将所有数据作为一个加密值发送.然后在执行ajax时在服务器上,我可以解密数据并再次分配值.
仅发送orderID及其加密,然后使用方法(1)验证orderID未更改,并使用数据库查询,获取另外两个信息.
以下是我对以下三种方式的看法:
消耗内存,因为我必须发送orderID,clientID,storeID,encryptedID.此外,ajax调用中监控的信息将为人们提供有关在对订单进行评级时会发生什么的信息.
我在网上查了mcrypt_encrypt和mcrypt_decrypt,但我从未使用过它们.我看到他们生成了一个长字符串,但我更喜欢将我的数据保持简短或看起来像md5加密数据.有更好的方法吗?
这是一种优雅的方式,它看起来很直接但它需要一些MySQL干预,这可能是耗时的,特别是在未来数据增长时.
那么你认为哪一个更好?如果你有更多的方式我欣赏,如果你在这里分享.谢谢
我想避免的场景示例:单击按钮将通过传递产品ID使用AJAX提交表单.用户转到源代码,并将产品的ID从X更改为Y.现在,用户单击按钮并提交表单,并且ID Y的产品受到影响.如您所见,发送的参数值不安全且可以修改.我正在寻找一种方法来保证发送的参数值是正确的而不是修改的.
PS:这个问题与CSRF处理无关.
小智 5
每个人都试图引导你到这些点:
在服务器上....
如果你没有做2和3,你就是在浪费你的时间完全依靠这个想法.无论你想出什么,只会增加你的不安全感.