問題タブ [cbc-mode]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - PHP のこの Cipher.encrypt() 関数に相当するものは何ですか?
以下に詳述するように、クライアントが Cipher.encrypt() 関数を使用して暗号化されたメッセージを送信してきました (未知のプログラミング言語から)。
PHP を使用してメッセージからデータを抽出するには、メッセージを復号化する必要があります。PHP関数 mcrypt_decrypt を使用しようとしました:
しかし、2 つの関数の引数が異なるように見えるため、メッセージを解読できませんでした。
PHPを使用してメッセージを復号化する方法について、誰か提案がありますか?
java - Java と Objective-C で PKCS7Padding を使用した AES CBC 暗号化の結果が異なる
Java で Android 用のアプリケーションを作成し、Cipher
クラスを使用して AES でデータを暗号化しました。今、私はそのアルゴリズムをCommonCrypto
クラスで iOS に取り入れたいと思っています。コードは機能しますが、結果は異なります。
これはJavaのコードです:
これはObjective-Cのコードです:
更新 1:
データ:text to encrypt
鍵:testkey
Java (望ましい)結果:7ptTEyImNz9KgC96+JPFXQ==
Objective-C の結果:U7FAVHi01q0Hhf+m9NsKjw==
java - 紛らわしい結果を伴うJavaブルートフォースforループ
AES-CBC キーから欠落している 20 ビットを見つけようとする小さなプログラムを作成しました。次のように構成されています。
ここに問題があります。i が 0 から始まる場合、結果が得られません。追跡用の文字列は、i が 2^20 に達するまで常に出力されます。しかし、i を目的のソリューション 0xd63c5 または 0xd63c4 に設定すると、復号化されたテキストが得られます。0xd63c3 でも「機能」はありません。木には木が見えないかもしれませんが、かなり長い間解決策を見つけようとしています。
事前に感謝します。
java - AES 暗号化は ECB モードで実装されていますが、セキュリティに準拠していません。CBC モードの実装方法
私はJavaでAES暗号化を実装しましたが、セキュリティに準拠していないECBモードで実装されているため、アルゴリズムはチームに受け入れられていません.私は暗号化とセキュリティ要件に非常に慣れていません.
誰かがアルゴリズムをCBCモードに変更するのを手伝ってくれませんか。ECB モードで実装したコードを添付しました。
早めの返信をいただければ幸いです。前もって感謝します
security - AES を使用した OpenSSL データ転送
サーバーとクライアント間のデータ転送に OpenSSL を使用したいと考えています。CBC モードの AES で EVP を使用して実行したいと考えています。しかし、クライアントで 2 番目のメッセージをデコードしようとすると、EVP_EncryptFinal_ex は 0 を返します。私のスキームは画像に示されています。
この動作は、1 つの EVP コンテキストに対して EVP_EncryptFinal_ex (および EVP_DecryptFinal_ex) を 2 回呼び出すためだと思います。正しく行う方法は?
encryption - aes 256 cbcモードでのブルートフォース
私は一連の暗号化されたテキストを持っています。それらは暗号化されたテキストごとに aes 256 ビット CBC モードで暗号化されています。私もそれらを持っている iv があり、そのアルゴリズムが aes 256 ビット CBC モードであることを知っています。私が知っている新しい暗号化された値を生成できます。はプレーンテキストですが、iv は異なります。mac という名前の別のものがありますが、それが何であるかはわかりません。アルゴリズムが elocryptfive という名前の laravel プラグインの 1 つであることを知っている方法で、16 進形式で 64 文字です。キーを見つけたり、値を解読したりするために攻撃を行いますか?
c++ - AES が Qt の StringSource および StringSink 関数で正しく機能しない
モードでメソッドを使用して文字列を暗号化し、およびを使用してパラメーターを定義および文字列化するため、QtでCrypto ++ライブラリを使用しています。AES
CBC
StringSource
StringSink
input
output
まず、ファイルからすべてのバイトを読み取り (「ユニコード」または「ASCII」エンコーディング)、関数のパラメーターとして設定し、input
出力(暗号テキスト) の (データ型) としてパラメーターを設定します。文字列を取得して「aes-cbc」で暗号化し、出力を表示したいだけです。StringSource
string
また、データをファイルに書き込むための2 つの関数 (consistおよびstream パラメータ) も知っFileSource
ています。しかし、ファイルの内容を入力文字列として読みたいです。FileSink
input
output
私のコード:
今、私は以下の問題を抱えています:
コンパクト ファイルのコンテンツ (例: 900 バイト) を読み取り、それを入力として設定すると
StringSource
、生成された暗号が不完全になります (例: 320 バイト)「QMessageBox」での出力
strlen(cipher.c_str())
が異なりますcipher.size()
私のコードは、いくつかのファイル(「Unicode」または「ASCII」、「大きな」または「小さな」サイズ)を読み取ると、正しく機能しない場合があります。どの理由がこの問題を引き起こしたのかわかりませんか?
- でも、入力文字列を直接設定して(ファイルから読み取らずに)、再び失敗しました!
よろしく!
encryption - 暗号化されたデータを kafka 経由で送信する
AES - CBC モードを使用してメッセージを暗号化し、kafka 経由で送信しています。消費者は、キーと初期ベクトルを持っていないときに、どのようにしてメッセージを復号化できますか。
ここで鍵交換を使用する必要があるかどうか混乱しています。また、消費者が生産者に送り返すことはできますか?
任意のアドバイス
ありがとう