一种简便易行的防止恶意提交数据的手段

一种简单易行的防止恶意提交数据的手段
当闲的蛋疼的程序员想通过自己写代码,伪造客户端应用给服务器提交数据时,可通过下面方法解决:
                                                           

          首先服务端需要接受一条密码,通过这条密码即可知道是恶意提交还是通过客户端应用正常提交;

          客户端应用要进行反编译处理,才能保证恶意提交数据!

          然后客户端应用就可以生成一条用于验证身份的密码了,具体实现如下:

          1. 客户端应用生成一列随机字符串A

          2. 客户端应用根据这段字符串A进行多次非可逆加密(可以掺杂可逆加密),得到字符串B

          3. 客户端再次对字符串A进行多次可逆加密,得到字符串C

          4. 把B和C拼接到一起,得到最终密码D




           当服务器端收到密码时,根据约定取出C,然后对其反向解密,从而得到随机字符串A,然后再通过相通加密方式(把A变为B的加密方式)对其加密,得到字符串M,

          通过对比M和密码中提取的B对比,若一致则可以认为是客户端应用提交的数据



         优点:  由于无法得到明文(字符串A),即使通过抓包也只能得到加密后的密文,从而几乎不能破解加密方式,但可以反复提交这一条抓包得到的密码N,解决方法:可以直接使用当前时间作为被加密的字符串,这样服务端可以得到提交时间,从而可以过滤掉反复发提交的N
                                                            
                                                                                              by 青春微凉   qq 772478760