0

MPC83XX のセキュリティ エンジンを Openssl で使用するためのコードに取り組んでいます。私はすでに、最大 64KByte のデータの AES を暗号化/復号化できます。長さビットの最大値が 65535 であるため、問題は 64KByte を超えるデータで発生します。

データは常に Ram 上で 1 つにまとめられていると想定できます。そのため、リンク テーブル内のすべてのデータを収集し、データへのポインターの代わりにテーブルへのポインターを使用し、J ビットを 1 に設定します。長さビットにどの値を使用すればよいかわかりません。 0 は Dword が無視されることを意味するためです。データの実際の長さも 16 ビットには大きすぎます。

http://cache.freescale.com/files/32bit/doc/app_note/AN2755.pdf?fpsp=1 考えられる情報は第 8 章にあります。

4

1 に答える 1

0

LENGTH をデータの長さに設定します。19ページ参照:

リンク テーブルまたはリンク テーブルのチェーンによってアクセスされるデータ パーセルのシーケンスの場合、パーセルの結合長 (それらの LENGTH および/または EXTENT フィールドの合計) は、リンク テーブル メモリ セグメント (SEGLEN フィールド) の結合長と等しくなければなりません。 . それ以外の場合、チャネルはチャネル ポインター ステータス レジスタに適切なエラー ビットを設定します...

どのモードを使用しているかはわかりませんが (ドキュメントは不必要に混乱しているようです!)、通常の暗号モード (CBC/CTR/CFB/OFB) の場合、通常の方法は、同じコンテキストを再利用して AES 呼び出しをチェーンすることです。 . 「Pointer Dword1」と「Pointer Dword5」を同じものに設定するだけで、これを実行できる場合があります。ただし、ドキュメントはほとんどありません。IVがどこから得られるのかわかりません。

于 2012-06-11T18:53:21.240 に答える