最近手上需要解決一個問題,就是JAVA加密,PHP解密。
因爲版本的關係,必須用openssl_decrypt解密,
開始一直用openssl_encrypt去加密,結果一直不對。
後來發現是填充方式的問題。openssl_encrypt($text,'aes-128-cbc',$key,false,$iv);
當時我以爲openssl_encrypt 的options=false 的時候是不選擇填充,
JAVA那邊就選擇不填充,結果一直不對。
後來發現options=false 等於PKCS5PADDING填充方式
至於iv 和key的加密,PHP和JAVA加密方式一直即可。