实现本地des和aes 解密的工具

举报
lxw1844912514 发表于 2022/03/27 02:31:41 2022/03/27
【摘要】 <?php$raw = file_get_contents('php://input');if(!empty($raw)) { parse_str($raw);//解析到当前作用域 if (!empty($method) && !empty($password) && !e...

    
  1. <?php
  2. $raw = file_get_contents('php://input');
  3. if(!empty($raw)) {
  4. parse_str($raw);//解析到当前作用域
  5. if (!empty($method) && !empty($password) && !empty($encodetext)) {
  6. $method = trim($method);
  7. $password = trim($password);
  8. $encodetext = trim($encodetext);
  9. $allowdmethod = ['aes', 'des'];
  10. if (!in_array($method, $allowdmethod)) {
  11. die();
  12. }
  13. if ($method == 'aes') {
  14. $method = 'aes-128-cbc';
  15. $iv = '1234567890123456';
  16. }
  17. if ($method == 'des') {
  18. $method = 'des-cbc';
  19. $iv = '12345678';
  20. }
  21. $decodtext = openssl_decrypt($encodetext, $method, $password, false, $iv);
  22. die($decodtext);
  23. }
  24. }
  25. ?>
  26. <html>
  27. <head>
  28. <title>des和aes解密</title>
  29. </head>
  30. <body>
  31. <center>
  32. <form action="#" method="">
  33. <label for="">加密方式:</label>
  34. <input type="radio" name="method" value="des">DES
  35. <input type="radio" name="method" value="aes">AES<br/>
  36. <label for="">密码:</label>
  37. <input type="text" name="password" value=""><br/>
  38. <label for="">密文:</label><br>
  39. <textarea name="encodetext" id="" cols="100" rows="15"></textarea><br/>
  40. <input style="width:100px;height:100px" type="submit" id="myform" value="解密">
  41. </form>
  42. <br><br>
  43. <textarea id="decodetext" cols="100" rows="20">
  44. </textarea>
  45. <center/>
  46. <script src="/static/js/jquery-1.8.3.min.js" type="text/javascript"></script>
  47. <script type="text/javascript">
  48. var myform = document.getElementById("myform");
  49. myform.addEventListener('click',function(e){
  50. e.preventDefault();
  51. var method = $("input[name='method']:checked").val();
  52. var password = $("input[name='password']").val();
  53. var encodetext = $("textarea").val();
  54. //console.log(method,password,encodetext);//return false;
  55. $.ajax({
  56. type : "POST",
  57. url : "jsondecrypt.php",
  58. data : {'method':method,'password':password,'encodetext':encodetext},
  59. dataType : "text",
  60. success : function(data){
  61. $("#decodetext").val(data);
  62. // console.log(data);
  63. }
  64. });
  65. });
  66. </script>
  67. </body>
  68. </html>

  

文章来源: blog.csdn.net,作者:lxw1844912514,版权归原作者所有,如需转载,请联系作者。

原文链接:blog.csdn.net/lxw1844912514/article/details/100027774

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。