DES加密与位异或加密的比较分析

    在一个基于WebService和窗体的C#应用项目中,需要对传输数据做加密处理。在服务器端做加密解密处理时,还是希望找到一个轻量级的快速加密解密方法。下面给出了20个int字段的数据表(DataTable)的加密时间(毫秒),其中XOR是位取异或加密。步骤为:先对DataTable序列化获得字节数组,然后用XOR或DES加密字节数组,最后用Convert.ToBase64String() 获得结果字符串。DES和XOR的加密矢量均为8位。

记录数    序列化            XOR           DES

---------------------------------------------------

1000      140                 156             187

2000      265                 296             390

5000      671                 765             937

10000    1375              1500           2343

---------------------------------------------------

    表中看出,XOR比DES速度快。事实上,XOR只多了个全字节数组扫描的时间和每个数的位取反时间。下表给出了记录数为5000和10000时,XOR加密矢量长度变化时的加密时间:

XOR加密矢量长    8         16          32            64        128

-------------------------------------------------------------------------

5000条记录          734     718        703         718      718

10000条记录       1453   1453      1437      1437    1437

-------------------------------------------------------------------------

    表中可以看出,XOR加密矢量长度变化时,加密时间变化不大。因此,如果使用XOR加密,且较长的加密矢量,破解的难度是比较大的。

你可能感兴趣的:(加密,webservice,String,解密,服务器,破解)