javascript - .NETで復号化するCryptoJS AES暗号化暗号を作成する

原文 javascript asp.net aes md5 cryptojs

サーバー/クライアント間で機能する暗号化/復号化を作成しようとしています。クライアント側にCryptoJSがあり、サーバー側にASP.Net(VB.Net)があります。サーバー側は多くの場所で使用されているため変更できません。そのため、CryptoJSは.NETが行っていることを回避する必要があります。 CryptoJSで.NETを100%模倣することができません。
参考に、.NETコードは変更できません。JSは.NET機能と一致する必要があります。

リクエストに応じてコードを削除

クライアント側の暗号化を解読しようとすると、.NETで発生するエラー:

パディングは無効であり、削除できません。

追加情報
16進数をキーとしてプッシュする(.toString(CryptoJS.enc.Latin1)を削除する)だけでは、十分な文字が得られません(256ビットではなく128ビットに変更されるようです)。
JSのMD5_Keyによって返される実際のデータは、.NETのValidate_MD5と一致するようです...
私は不可能を達成しようとしていますか?
答え
CryptoJSは、基本的にRijndaelですが、128ビットのブロックサイズに制限されているAESのみをサポートします。 128、192、256ビットのキーサイズをサポートしています。あなたの.netコードは、CryptoJSでサポートされていない256のブロックサイズのRijndaelを使用しています。 CryptoJSは大きなIVを喜んで受け取り、最初の16バイトのみを使用します。

.netコードを変更できないため、これをサポートする別のライブラリを見つける必要があります。
関連記事

javascript - JSDocはコールバック関数にリンクします

javascript - JavaScript + Unicode正規表現

javascript - バックエンドサービスに同じ呼び出しを行う複数のブラウザースクリプトを処理するには

javascript - angularjsの名前とタイトルに従ってデータをフィルタリングする方法は?

javascript - console.logを呼び出すときにChromeスタックトレースをだましてリダイレクトする方法はありますか?

java - Android-Webview HTMLコード抽出が機能しない(Javascript)

javascript - 他のフレームセットからフレームを隠す

javascript - Snap.svgとjavascriptがキャッチされないSyntaxErrorをスローする

javascript - 入力日付カレンダーを拡張します(ブラウザーネイティブ)

javascript - AngularJSの確認モーダル