
教えて下さい。
Windows側でopensslの暗号化結果とPHP上での暗号化結果が異なってしまいます。
Windows側 (コマンドプロンプトにて)
------------------------------------------------------------------------------------
SET /P X="a" < NUL | openssl.exe enc -a -nosalt -k "1" -K "1234567890123456" -aes-256-cbc
------------------------------------------------------------------------------------
実行結果「oWrFclQURpWwu7ROfgYUqA==」
php側
------------------------------------------------------------------------------------
<?php
$input = 'abc';
$raw_output = false;
$method = 'aes-256-cbc';
$password = '1';
$iv = '1234567890123456';
$enc = openssl_encrypt($input, $method, $password, $raw_output, $iv);
print $enc;
?>
------------------------------------------------------------------------------------
実行結果「z2MxaX+/xVEyeYGg/1vu4Q==」
最初はWindows側のダブルクォーテションの問題かな?と思ったんですが
どうやら関係なさそうです。どうにかして同じ結果にしたいんですが
どのようにすれば良いでしょうか?教えて下さい。
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
>実際には同じ文字列でも異なってしまいます。
う~ん……試せる環境がないのでアレですが……。
echoの場合は「abc」だけ。
phpでやったものは「abc」に文字列終端のコード(0x00)が付いていた。
とかいうことはありませんか?
バイナリエディタで”abc”に0x00を追加した4バイトのファイルを作成し、
openssl.exeの入力ファイルにそのファイルを指定してみたらどうでしょう??
対応ありがとうございます。
> phpでやったものは「abc」に文字列終端のコード(0x00)が付いていた。
> とかいうことはありませんか?
それは無いと思います。
対象文字列をintger型に変えてもダメだったので、、、。
No.1
- 回答日時:
>SET /P X="a" < NUL | openssl.exe enc -a -nosalt -k "1" -K "1234567890123456" -aes-256-cbc
は、入力文字は"a"。
>$input = 'abc';
>$enc = openssl_encrypt($input, $method, $password, $raw_output, $iv);
では、入力文字列は"abc"じゃないですか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- PHP PHPでユーザー情報を入力して簡易ログイン機能をつくってみたのですが 1 2023/05/29 08:51
- PostgreSQL PostgreSQL14.6のSSL対応について 1 2023/01/05 15:42
- Excel(エクセル) PHPプログラムをエクセルに張り付けると検索ボックスがでてくる! 3 2022/05/08 07:10
- PHP PHP MySql 画像を取得 1 2022/06/04 14:05
- PHP PHPでCookieを使った訪問回数について 1 2023/05/28 14:10
- Windows 10 EFS(内容を暗号化してデータをセキュリティで保護する)はHomeエディションでは使えませんか??? 1 2023/05/20 18:16
- PHP htmlspecialcharsが機能していないです。 バグですか? 1 2022/04/05 01:22
- PHP バージョン情報の取得方法について 1 2023/03/15 11:56
- MySQL php テーブルを作れない 2 2022/11/17 18:22
- PHP PHPのエラーの解消法について教えて下さい。 1 2023/02/06 10:48
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
【file_exists】ファイルが存在...
-
サーバ無しでphpを動作させる
-
.phpファイルが、表示されない
-
PHPを使ってのサーバ上ファイル...
-
URLが.PHPってどういう...
-
別のドメインのファイルをrequire
-
.phpと.incファイルの違いはな...
-
PHPでフォルダ選択ダイアログを...
-
他サーバーにあるファイルに書...
-
.htaccess でPHPを動かすサ...
-
phpで外部ファイルを取り込み変...
-
PHPのif文でその処理を途中で抜...
-
「クラス関数」「メンバ関数」...
-
glob関数で日本語文字が取得で...
-
VB6.0とBASP21を用いてyahooメ...
-
URLの変わらないページをPHPで...
-
FTPClientで転送結果(OKかFAIL)
-
PHPの設定で、 エラーが発生し...
-
VB6にてメールを送信する方法
-
別ファイルの変数を呼び出した...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
.phpと.incファイルの違いはな...
-
【file_exists】ファイルが存在...
-
.phpファイルが、表示されない
-
session_start()でwarningが表...
-
サーバー間のファイルの移動(コ...
-
URLが.PHPってどういう...
-
apacheで拡張子を省略してアク...
-
PHPを使ってのサーバ上ファイル...
-
file(), file_get_contents(), ...
-
「temp.ppd」という添付ファイル
-
コマンドプロンプト エラー
-
fputs()はfwrite()のエイリアス...
-
use と requireの違いは?
-
PHPでフォルダ選択ダイアログを...
-
バイナリーデータをGIFで表示さ...
-
Xamppでindex.phpだけしか表示...
-
PHPファイルの中身が見られるこ...
-
sqlite_open、SQLite3::open
-
HTMLに埋め込んだPHPがうまく出...
-
phpでgifアニメかどうかチェッ...
おすすめ情報
あ!!大変お恥ずかしい。。。
すいません説明文の誤りです、、、。
実際には同じ文字列でも異なってしまいます。
----------------------------------------------------------------------------------------------
SET /P X="abc" < NUL | openssl.exe enc -a -nosalt -k "1" -K "1234567890123456" -aes-256-cbc
----------------------------------------------------------------------------------------------
実行結果「m27/G5djWgm8BKB6stFBmQ==」