teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

1

追記

2018/02/13 04:35

投稿

退会済みユーザー
answer CHANGED
@@ -7,4 +7,30 @@
7
7
  1 が変であれば、openssl_decrypt の使用方法をもう一度確認します。
8
8
  2 が変であれば、変数を追うことで、問題箇所が特定できます。
9
9
 
10
- デバッグの環境さえ整えてあれば、それほど難しい切り分けではないと思います。
10
+ デバッグの環境さえ整えてあれば、それほど難しい切り分けではないと思います。
11
+
12
+ **追記**
13
+ 本回答は、「PHP での暗号化・復号について」の回答ではなく、ただのデバッグに関しての記述です。
14
+ ```php
15
+ <?php
16
+ $encData = 'yWvjtqSQKl8kzJwgeri%2BtA%3D%3D';
17
+ $iv = '49bb573d407b4b64d20445f0c4b20279';
18
+ $key = 'bcbc43c15b482e4579529039ecbd32345b2f462f796f904a0eceffed93d5186da7f609c40a303f497a68615e14474b5f73f7f66bb80df298d5918fc1a9120eec';
19
+ $decData = '';
20
+ // 復号に使うメソッド
21
+ $method = 'AES-128-CBC';
22
+ // 復号に使うオプション
23
+ $options = OPENSSL_RAW_DATA;
24
+ // 復号
25
+ $decData = openssl_decrypt(pack("H*", $encData), $method, $key, $params['options'], $iv);
26
+ ```
27
+ ```
28
+ PHP Warning: pack(): Type H: illegal hex digit y in /workspace/Main.php on line 11
29
+ PHP Warning: pack(): Type H: illegal hex digit W in /workspace/Main.php on line 11
30
+ PHP Warning: pack(): Type H: illegal hex digit v in /workspace/Main.php on line 11
31
+
32
+ PHP Warning: pack(): Type H: illegal hex digit % in /workspace/Main.php on line 11
33
+ PHP Notice: Undefined variable: params in /workspace/Main.php on line 11
34
+ PHP Warning: openssl_decrypt(): IV passed is 32 bytes long which is longer than the 16 expected by selected cipher, truncating in /workspace/Main.php on line 11
35
+ ```
36
+ $encData がおかしいんじゃないですか?