使用CryptoJS解決微信小程序用戶信息解密
問題描述:
wx.getUserInfo(OBJECT)?微信官方的這個獲取用戶信息的方法踏志,需要對接口返回的加密數(shù)據(jù)( encryptedData )進(jìn)行對稱解密。
微信官方有提供加密數(shù)據(jù)解密算法
接口如果涉及敏感數(shù)據(jù)(如wx.getUserInfo當(dāng)中的 openId 和unionId ),接口的明文內(nèi)容將不包含這些敏感數(shù)據(jù)悟耘。開發(fā)者如需要獲取敏感數(shù)據(jù),需要對接口返回的加密數(shù)據(jù)( encryptedData )進(jìn)行對稱解密母廷。 解密算法如下:
對稱解密使用的算法為 AES-128-CBC石抡,數(shù)據(jù)采用PKCS#7填充檐嚣。
對稱解密的目標(biāo)密文為 Base64_Decode(encryptedData)。
對稱解密秘鑰 aeskey = Base64_Decode(session_key), aeskey 是16字節(jié)啰扛。
對稱解密算法初始向量 為Base64_Decode(iv)嚎京,其中iv由數(shù)據(jù)接口返回嗡贺。
具體參照
https://www.cnblogs.com/cai-rd/p/6816849.html