当前位置: 首页 > news >正文

网站不良正能量直接进入西安百姓网免费发布信息网招聘

网站不良正能量直接进入,西安百姓网免费发布信息网招聘,做网站的荣誉证书,wordpress和帝国会员整合这里写自定义目录标题 背景JAVA代码解决思路PHP解密 背景 公司PHP开发对接一个Java项目接口,接口返回数据有用DESede/ECB/PKCS5Padding加密,并且key也使用了SHA1PRNG加密了,网上找了各种办法都不能解密,耗了一两天的时间&#xf…

这里写自定义目录标题

  • 背景
  • JAVA代码
  • 解决思路
    • PHP解密

背景

公司PHP开发对接一个Java项目接口,接口返回数据有用DESede/ECB/PKCS5Padding加密,并且key也使用了SHA1PRNG加密了,网上找了各种办法都不能解密,耗了一两天的时间,一度怀疑人生……

JAVA代码

public class DESUtil {private static final String KEY_ALGORITHM = "DESede";private static final String DEFAULT_CIPHER_ALGORITHM = "DESede/ECB/PKCS5Padding";/* DES加密 */public static String encrypt(String content, final String key) {try {Cipher cipher = Cipher.getInstance(DEFAULT_CIPHER_ALGORITHM);byte[] byteContent = content.getBytes(StandardCharsets.UTF_8.name());cipher.init(Cipher.ENCRYPT_MODE, getSecretKey(key));byte[] result = cipher.doFinal(byteContent);return Base64.encodeBase64String(result);} catch (Exception ex) {log.error("【DES加密失败】:", ex);}return null;}/* DES解密 */public static String decrypt(String content, final String key) {try {Cipher cipher = Cipher.getInstance(DEFAULT_CIPHER_ALGORITHM);cipher.init(Cipher.DECRYPT_MODE, getSecretKey(key));byte[] result = cipher.doFinal(Base64.decodeBase64(content));return new String(result, StandardCharsets.UTF_8.name());} catch (Exception ex) {log.error("【DES解密失败】:", ex);}return null;}public static SecretKeySpec getSecretKey(final String key) {KeyGenerator kg = null;try {kg = KeyGenerator.getInstance(KEY_ALGORITHM);SecureRandom secureRandom = SecureRandom.getInstance("SHA1PRNG");secureRandom.setSeed(key.getBytes(StandardCharsets.UTF_8.name()));kg.init(secureRandom);SecretKey secretKey = kg.generateKey();return new SecretKeySpec(secretKey.getEncoded(), KEY_ALGORITHM);} catch (NoSuchAlgorithmException ex) {log.error("【DES生成秘钥失败】:", ex);} catch (UnsupportedEncodingException e) {log.error("【DES生成秘钥失败】:", e);}return null;}
}

解决思路

终于找到了一个类似问题,可是要会员才能看,作为一名穷DS,哪有这么富有,灵机一动在某鱼花了1大洋看了解决思路,果然是金钱的力量,功夫不负有心人啊,终于寻到stackoverflow有个类似问题。

在这里插入图片描述

上面Java代码中的secretKey变量的比特值,使用Base64Utils.encode后得到base64字符串
然后在php中使用base64_decode解码串,得到密钥key

PHP解密

/* 3DES解密 */public function desDecrypt($content) {$key=$this->config['desKey'];$key=base64_decode($key);$content = base64_decode($content);// 解密数据$plaintext = openssl_decrypt($content, 'DES-EDE3', $key, OPENSSL_RAW_DATA);return $plaintext;}
http://www.yayakq.cn/news/701711/

相关文章:

  • .aspx网站开发pdf个人介绍的网页设计模板
  • 医疗网站搭建wordpress 文章预览
  • 网站跳转域名不变做网站图片的大小
  • 做网站横幅价格项目网站开发js放的位置
  • 叫企业做的网站可不可以自己改主题云南网站建设招商
  • 电商网站如何存储图片本地建设网站软件
  • wordpress网站搜索引擎仙居制作网站
  • 网站制作案例流程图重庆招标信息网
  • 后台给网站做关键字网站建设与管理属于什么部门
  • 龙岗模板网站建设室内设计师联盟论坛
  • 模板网站怎么做网站开发需要经过的几个主要阶段
  • 网站改域名审核时间企业微信怎么下载
  • 阿里云虚拟主机可以做几个网站南京网站开发
  • 手机网站单页面重庆网润集团有限公司
  • 阿里云wordpress搭建网站如何建造自己的网站
  • 中宁网站建设公司黑马程序员线上课程
  • 雍鑫建设集团网站怎样对一个网站做seo
  • asp.net+h5网站开发河南监理建设协会网站
  • 温岭市住房和城乡建设局网站长治市郊区住房建设局网站
  • 成都装修建材网站建设志鸿优化网下载
  • 济宁贵网站建设wordpress恢复默认
  • 网站建站要求深圳ppt设计制作公司
  • 聋哑工作设计做网站常德网站建设开发哪家好
  • 一级a做爰片免费网站视频设计衣服网站
  • 杭州 网站建设公司军事网址大全
  • 海口网站设计公司王烨峰
  • 做电影类网站收入怎么样seo专家招聘
  • 绍兴企业网站推广衡阳网站开发培训
  • 国内哪家公司做网站最好快速提升网站关键词排名
  • python 做网站 用哪个框架好西宁网站建设的公司