component_verify_ticket解密出来的不是xml格式?
发布于 6 年前 作者 jing49 2859 次浏览 来自 官方Issues

$ciphertext_dec = base64_decode($encrypted);

$iv = substr($this->key, 0, 16);

$decrypted = openssl_decrypt($ciphertext_dec, ‘AES-256-CBC’, $this->key, OPENSSL_RAW_DATA|OPENSSL_ZERO_PADDING, $iv);

打印$decrypted 是这样的: dd30a23742fd6b971 1611136039 wx7354340dfb5a098b,并不是一个xml

1 回复
"3369a889d428c840\x00\x00\x011<xml><AppId><![CDATA[wx761e

\n<CreateTime>1611145042</CreateTime>\n<InfoType><![CDATA

t]]></InfoType>\n<ComponentVerifyTicket><![CDATA[ticket@@

p5Lc57sbe-3VTCcqtzPtXYZxIDRQV1C9tSNbwT3iu2wTXCWskc

rifyTicket>\n</xml>wx761e7856cd618a26\t\t\t\t\t\t\t\t\t"

不是,解密出来的

前面16个字节是随机的

然后4个字节是消息长度,用网络字节序表示

后面的才是xml

最后还带了个appid

回到顶部