php实现rc4加密算法

WBOY
发布: 2016-07-25 09:09:32
原创
2877 人浏览过

此算法的解密方法是重新加密一次,便可还原。。

  1. /*
  2. * rc4加密算法
  3. * $pwd 密钥
  4. * $data 要加密的数据
  5. */
  6. function rc4 ($pwd, $data)//$pwd密钥 $data需加密字符串
  7. {
  8. $key[] ="";
  9. $box[] ="";
  10. $pwd_length = strlen($pwd);
  11. $data_length = strlen($data);
  12. for ($i = 0; $i {
  13. $key[$i] = ord($pwd[$i % $pwd_length]);
  14. $box[$i] = $i;
  15. }
  16. for ($j = $i = 0; $i {
  17. $j = ($j + $box[$i] + $key[$i]) % 256;
  18. $tmp = $box[$i];
  19. $box[$i] = $box[$j];
  20. $box[$j] = $tmp;
  21. }
  22. for ($a = $j = $i = 0; $i {
  23. $a = ($a + 1) % 256;
  24. $j = ($j + $box[$a]) % 256;
  25. $tmp = $box[$a];
  26. $box[$a] = $box[$j];
  27. $box[$j] = $tmp;
  28. $k = $box[(($box[$a] + $box[$j]) % 256)];
  29. $cipher .= chr(ord($data[$i]) ^ $k);
  30. }
  31. return $cipher;
  32. }
复制代码


相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!