import org.apache.commons.codec.binary.Base64; import javax.crypto.Cipher; import javax.crypto.KeyGenerator; import javax.crypto.spec.IvParameterSpec; import javax.crypto.spec.SecretKeySpec; import java.security.AlgorithmParameters; import java.security.Key; import java.security.Security; public class AES { // 算法名 public static final String KEY_NAME="AES"; // 加解密算法/模式/填充方式 // ECB模式只用密钥即可对数据进行加密解密,CBC模式需要添加一个iv public static final String CIPHER_ALGORITHM="AES/CBC/PKCS7Padding"; public static String wxDecrypt(String encrypted, String session_key, String iv) { String json=null; byte[] encrypted64=Base64.decodeBase64(encrypted); byte[] key64=Base64.decodeBase64(session_key); byte[] iv64=Base64.decodeBase64(iv); byte[] data; try { init(); json=new String(decrypt(encrypted64, key64, generateIV(iv64))); } catch (Exception e) { e.printStackTrace(); } return json; } public static void init() throws Exception { Security.addProvider(new org.bouncycastle.jce.provider.BouncyCastleProvider()); KeyGenerator.getInstance(KEY_NAME).init(128); } public static AlgorithmParameters generateIV(byte[] iv) throws Exception { // iv 为一个 16 字节的数组,这里采用和 iOS 端一样的构造方法,数据全为0 // Arrays.fill(iv, (byte) 0x00); AlgorithmParameters params=AlgorithmParameters.getInstance(KEY_NAME); params.init(new IvParameterSpec(iv)); return params; } public static byte[] decrypt(byte[] encryptedData, byte[] keyBytes, AlgorithmParameters iv) throws Exception { Key key=new SecretKeySpec(keyBytes, KEY_NAME); Cipher cipher=Cipher.getInstance(CIPHER_ALGORITHM); // 设置为解密模式 cipher.init(Cipher.DECRYPT_MODE, key, iv); return cipher.doFinal(encryptedData); } ![]()
1、为什么要升级? 当需要申请开通一键创建门店小程序时,(www.zhaogouwu.cn)已经开通过门店管理的公众号必须通过升级入口申请创建门店小程序。 如果无门店小程序需求,可以不升级,原有的业务功能和入口不变。 2、升级后对公众号最大的影响变化是什么? 1)升级前的门店管理展现是网页H5形式,升级后是门店小程序形式,被分享传播打开后会留在用户小程序列表页。 2)升级前添加可用的门店无需提交资质证明归属权,即可添加非自己营业执照范围外的门店地址;升级后公众平台会强校验门店地址与营业执照地址的归属和关联,添加的门店地址必须为该公众号经营地址范围内的。 3)升级前卡券业务不依赖审核结果使用,升级后需要审核通过后才可生效使用。 3、升级过程中会影响原有卡券、WIFI、广告业务逻辑么? 不影响。原有的门店管理未成功升级为门店小程序插件时,都可以继续按照原有业务逻辑使用,譬如卡券仍然可不依赖审核结果使用。 4、升级中可以新增门店么? 一旦升级填写商家资质审核通过后,将不可新增门店。 5、为什么有的门店无法迁移? 原来门店管理中审核不通过,或者门店地理位置已经失效的则无法迁移。无法迁移的门店需要通过删除才可完成升级过程。 6、升级后原有的API接口可继续调用么? 不可以。 另外要注意,一旦在公众平台门店管理升级,且商家资质补齐审核通过后,原有的API接口里的新增门店将不可再继续使用,但是拉取、删除、更改、查看仍可使用。 |
|