4

.NET アプリケーションを FIPS に準拠させる作業を行っていますが、Managed暗号化クラス ( などAESManaged) が FIPS に準拠していないことがわかりました。C# AES アルゴリズムが FIPS に準拠するのはいつかなど、どのクラスが準拠しているかに関する他の記事や質問をいくつか読みました およびhttp://social.msdn.microsoft.com/Forums/en-US/netfxbcl/thread/e0b4493f-6e20-4b75-a118-6b6e5d26a2a6。CryptoServiceProvider クラスは FIPS に準拠しているように見えますが、Managed クラスは準拠していません。

CryptoServiceProvider誰かがクラスとクラスの違いを説明できるかどうか疑問に思っていManagedますか? CryptoServiceProviderクラスが FIPS に準拠しているのにマネージド クラスが準拠していない理由を誰かが説明できれば、暗号化メソッドを書き直さなければならない理由を上司に説明できます。それらはボンネットの下で根本的に異なっていますか? それとも、MS はマネージ クラスを NIST 認定を受けていないだけなのでしょうか? Managedクラスがクラスをラップするだけの場合、クラスが自動的に FIPS に準拠しCryptoServiceProviderないのはなぜですか? Managedまた、FIPS 準拠のクラスをより使いやすい独自のクラスにラップするクラスを作成すると、ソフトウェアは FIPS に準拠しなくなりますか?

ありがとう。

4

1 に答える 1

6

「FIPS準拠」は間違った用語です-FIPS認定のものについて話しているのです。違いは、アルゴリズムが参照実装およびサードパーティの実装と互換性がある必要がある場合、このアルゴリズムを説明する対応する FIPS に準拠する必要があることです。しかし、認定は別の話です。

CryptoServiceProvider クラスは、CryptoAPI (管理されていない Windows API) を呼び出して実際の暗号化操作を実行します。一部の CryptoAPI モジュールは (ビジネス目的で) FIPS 認定を受けています。明らかに、.NET マネージ クラスを認定する十分な理由はありませんでした。認定されたモジュールが必要な場合は、CryptoAPI のものを使用してください。認定には多くの時間、労力、多額の費用がかかります。

また、マネージ モジュールの認証を妨げる技術的な理由もあると思いますが、これは単なる推測です。.NET (IL および仮想マシン) の性質が、認証プロセスのために定義された要件と矛盾する場合があります。つまり、認証できない場合があります。

独自のラッパー クラスについては、人材トレーニングと認定自体を提供する会社がいくつかあります。また、コンサルティングサービスも提供しています。そのようなサービスの誰かがここで応答することを願っていますが、必要に応じてそれらに連絡することもできます.

于 2010-10-29T16:58:51.883 に答える