あなたの質問は、暗号化を使用して何を保護しようとしているのか、そして何に対して保護しようとしているのか(趣味のプログラマー、暗号の専門家、シークレットサービス)に関して少し不明確です。スマートカードとそのオペレーティングシステムは十分に保護されているため、カードの不正な抽出を防止することはほとんどありません。また、正規のホストアプリケーションが暗号化された形式で処理を行う可能性はほとんどありません。したがって、読み取りプロセス自体を保護する必要がある可能性があります。これは、非接触型/ NFCの場合は明らかですが、接触ベースの通信の場合にも適しています。
ここで重要な用語は、セキュアメッセージングです。使用の強度に応じて変更する必要がほとんどない強力な静的キーを使用するか、より一般的には、(おそらく固定された)シークレットに依存する可能性のあるセッションキーをネゴシエートします。両方をシーケンスカウンターと組み合わせることができるため、セッションで同じデータを読み取っても、異なる暗号文が提供されます。どちらの方法を選択しても、キーは両側に保存/計算する必要があります。シークレットの一部には、それ自体に安全なストレージが必要です。これは、攻撃の可能性に応じて、ディスク上の暗号化されたファイル(完全に異なるキーを使用)にある場合があります。極端な場合は、セキュリティモジュールと呼ばれるデバイスのような特別なスマートカードにあります。、改ざんに対するハードウェアの抵抗がある可能性があります。(少なくともセキュリティシールの破損などによる操作を示す攻撃を防止しない場合)。