当前位置:首页 > PHP+MySQL应用中使用XOR运算加密算法

PHP+MySQL应用中使用XOR运算加密算法

点击次数:1191  更新日期:2011-01-03
\n

本文将介绍一个简单易用的加密/解密算法:使用异或(XOR)运算。本算法原理简单,旨在使读者对信息的加密/解密有一个更加直观的印象。

  XOR算法原理

  从加密的主要方法看,换位法过于简单,特别是对于数据量少的情况很容易由密文猜出明文,而替换法不失为一种行之有效的简易算法。

  从各种替换法运算的特点看,异或运算最适合用于简易加解密运算,这种方法的原理是:当一个数A和另一个数B进行异或运算会生成另一个数C,如果再将C和B进行异或运算则C又会还原为A。

  相对于其他的简易加密算法,XOR算法的优点如下。

  (1)算法简单,对于高级语言很容易能实现。

  (2)速度快,可以在任何时候、任何地方使用。

  (3)对任何字符都是有效的,不像有些简易加密算法,只对西文字符有效,对中文加密后再解密无法还原为原来的字符。

  XOR算法实现

  上一部分介绍了如何使用XOR运算进行加密/解密的原理,本节将使用其加密用户的登录信息。根据上一小节介绍的XOR加密算法的原理,不难写出以下的加密解密函数。首先列出加密算法。


\n

1 <!–encrypy_xor:简单使用XOR运算的加密函数———————–>
2 <?php
3 //加密函数
4 function myEncrypt(string, key)
5 {
6 for(i=0; i<STRLEN(STRING); p i++)<>
7 {
8 for(j=0; j<STRLEN(KEY); p j++)<>
9 {
10 string[i] = string[i]^key[j];
11 }
12 }
13 return string;
14 }

\n