[关闭]
@jzp113 2018-06-28T02:11:15.000000Z 字数 977 阅读 1025

掌上六安加密Api分析

api 逆向


PHP加密解密代码

  1. <?php
  2. //Enter your code here, enjoy!
  3. $uc_key="f4fna96cdnf27i8W9Jd7bV6T1sadf9z5Zcaaby0W6ob88raaf126OOo659HUhoji";
  4. function rc4($key, $str) {
  5. $s = array();
  6. for ($i = 0; $i < 256; $i++) {
  7. $s[$i] = $i;
  8. }
  9. $j = 0;
  10. for ($i = 0; $i < 256; $i++) {
  11. $j = ($j + $s[$i] + ord($key[$i % strlen($key)])) % 256;
  12. $x = $s[$i];
  13. $s[$i] = $s[$j];
  14. $s[$j] = $x;
  15. }
  16. $i = 0;
  17. $j = 0;
  18. $res = '';
  19. for ($y = 0; $y < strlen($str); $y++) {
  20. $i = ($i + 1) % 256;
  21. $j = ($j + $s[$i]) % 256;
  22. $x = $s[$i];
  23. $s[$i] = $s[$j];
  24. $s[$j] = $x;
  25. $res .= $str[$y] ^ chr($s[($s[$i] + $s[$j]) % 256]);
  26. }
  27. return $res;
  28. }
  29. function decode($sourse, $key){
  30. $key = md5($key);
  31. $keya = md5(substr($key, 0, 16));
  32. $keyb = md5(substr($key, 16, 16));
  33. $cryptkey = $keya.md5($keya.substr($sourse, 0, 4));
  34. $body = rc4($cryptkey, base64_decode(substr($sourse,4)));
  35. return substr($body,26);
  36. }
  37. function encode($sourse, $key){
  38. $key = md5($key);
  39. $keya = md5(substr($key, 0, 16));
  40. $keyb = md5(substr($key, 16, 16));
  41. $keyc = "f4fn";
  42. $body = $keyc.base64_encode(rc4($keya.md5($keya.$keyc), "0000000000".substr(md5($sourse.$keyb), 0, 16).$sourse));
  43. return $body;
  44. }
  45. $result = decode($en_body, $uc_key);
添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注