php实现rc4加密算法代码


Posted in PHP onApril 25, 2012

代码

/* 
* rc4加密算法 
* $pwd 密钥 
* $data 要加密的数据 
*/ 
function rc4 ($pwd, $data)//$pwd密钥 $data需加密字符串 
{ 
$key[] =""; 
$box[] =""; 
$pwd_length = strlen($pwd); 
$data_length = strlen($data); 
for ($i = 0; $i < 256; $i++) 
{ 
$key[$i] = ord($pwd[$i % $pwd_length]); 
$box[$i] = $i; 
} 
for ($j = $i = 0; $i < 256; $i++) 
{ 
$j = ($j + $box[$i] + $key[$i]) % 256; 
$tmp = $box[$i]; 
$box[$i] = $box[$j]; 
$box[$j] = $tmp; 
} 
for ($a = $j = $i = 0; $i < $data_length; $i++) 
{ 
$a = ($a + 1) % 256; 
$j = ($j + $box[$a]) % 256; 
$tmp = $box[$a]; 
$box[$a] = $box[$j]; 
$box[$j] = $tmp; 
$k = $box[(($box[$a] + $box[$j]) % 256)]; 
$cipher .= chr(ord($data[$i]) ^ $k); 
} return $cipher; 
}
PHP 相关文章推荐
关于在php.ini中添加extension=php_mysqli.dll指令的说明
Jun 14 PHP
PHP高级对象构建 多个构造函数的使用
Feb 05 PHP
检查php文件中是否含有bom的函数
May 31 PHP
php 对输入信息的进行安全过滤的函数代码
Jun 29 PHP
php 目录遍历、删除 函数的使用介绍
Apr 28 PHP
基于PHP array数组的教程详解
Jun 05 PHP
PHP SplObjectStorage使用实例
May 12 PHP
PHP实现将MySQL重复ID二维数组重组为三维数组的方法
Aug 01 PHP
Laravel5.1自定义500错误页面示例
Oct 09 PHP
PHP连接MySQL进行增、删、改、查操作
Feb 19 PHP
PHP有序表查找之二分查找(折半查找)算法示例
Feb 09 PHP
php下的原生ajax请求用法实例分析
Feb 28 PHP
PHP filter_var() 函数 Filter 函数
Apr 25 #PHP
iis下php mail函数的sendmail配置方法(官方推荐)
Apr 25 #PHP
php判断变量类型常用方法
Apr 24 #PHP
介绍一些PHP判断变量的函数
Apr 24 #PHP
PHP的几个常用数字判断函数代码
Apr 24 #PHP
php中邮箱地址正则表达式实现与详解
Apr 24 #PHP
PHPMYADMIN导入数据最大为2M的解决方法
Apr 23 #PHP
You might like
java EJB 加密与解密原理的一个例子
2008/01/11 PHP
PHP乱码问题,UTF-8乱码常见问题小结
2012/04/09 PHP
php程序总是提示验证码输入有误解决方案
2015/01/07 PHP
PHP实现简单数字分页效果
2015/07/26 PHP
php简单随机字符串生成方法示例
2017/04/19 PHP
基于Laravel(5.4版本)的基本增删改查操作方法
2019/10/11 PHP
php如何实现数据库的备份和恢复
2020/11/30 PHP
用Javascript做flash做的事..才完成的一个类.Auntion Action var 0.1
2007/02/23 Javascript
jQuery前台数据获取实现代码
2011/03/16 Javascript
JS模拟键盘打字效果的方法
2015/08/05 Javascript
ClearTimeout消除闪动实例代码
2016/02/29 Javascript
JavaScript和jquery获取父级元素、子级元素、兄弟元素的方法
2016/06/05 Javascript
详解Angular.js的$q.defer()服务异步处理
2016/11/06 Javascript
jQuery动态生成表格及右键菜单功能示例
2017/01/13 Javascript
JavaScript中的编码和解码函数
2017/02/15 Javascript
JS实现移动端判断上拉和下滑功能
2017/08/07 Javascript
Vue移动端项目实现使用手机预览调试操作
2020/07/18 Javascript
Python定时执行之Timer用法示例
2015/05/27 Python
Numpy掩码式数组详解
2018/04/17 Python
Python绘制频率分布直方图的示例
2019/07/08 Python
基于python判断目录或者文件代码实例
2019/11/29 Python
django rest framework serializer返回时间自动格式化方法
2020/03/31 Python
Python爬取股票信息,并可视化数据的示例
2020/09/26 Python
python 爬虫如何正确的使用cookie
2020/10/27 Python
pymongo insert_many 批量插入的实例
2020/12/05 Python
Python实例教程之检索输出月份日历表
2020/12/16 Python
在HTML5 canvas里用卷积核进行图像处理的方法
2018/05/02 HTML / CSS
html5贪吃蛇游戏使用63行代码完美实现
2013/06/25 HTML / CSS
GAP欧盟网上商店:GAP EU
2016/09/13 全球购物
欧洲最大的预定车位市场:JustPark
2020/01/06 全球购物
三年级科学教学反思
2014/01/29 职场文书
技能比赛获奖感言
2014/02/14 职场文书
产品质量保证书
2014/04/29 职场文书
财务情况说明书范文
2014/05/06 职场文书
2016党员发展对象培训心得体会
2016/01/08 职场文书
Python手拉手教你爬取贝壳房源数据的实战教程
2021/05/21 Python