.NET 2.0 + C ++用の暗号化アルゴリズム/ライブラリ
-
11-07-2019 - |
質問
.NET 2.0とC ++の両方で動作する標準のMicrosoft提供の暗号化ライブラリが必要です。あなたは何を提案しますか?
AESは.NET 3.5でのみ提供されます(C ++でも利用可能です)
Rijndaelは.NET 2.0で使用されていますが、標準C ++ライブラリでは使用できません。
間違っている場合(非常に良いチャンス)、私を正しい方向に向けることができますか?
最悪のシナリオでは、PInvokeを使用して.NETからRijndaelアルゴリズムを呼び出すことができますが、ネイティブソリューションが必要です。
解決
私たちはあなたに役立つと思われる同様のことを成功させています:
C ++ CryptoAPI
- CryptoAPI は純粋なWin32(c / c ++)、すべてのMicrosoft OSにネイティブ。
- 拡張暗号化プロバイダー(< code> MS_ENHANCED_PROV )
- トリプルDES (
CALG_3DES
)アルゴリズム
.NET TripleDesプロバイダー
サイドノート
- CAPICOMに伴う展開の悪夢は面倒な価値がないため、ペストのように CAPICOMを避けます 。
- .NET側のバイトオーダーは、時々機能します。たとえば、C ++(CryptoAPI)側で生成されたキーを使用するには、TripleDESCryptoServiceProvider内で使用する前にバイト配列を逆にする必要があります。
詳細をご希望の場合は、コメントを残してください。詳細をお伝えします。ハッピークリプト!
他のヒント
AESとRijndaelは基本的に同じアルゴリズムで、ブロックサイズと暗号モードに制限があります。そのため、制限(面倒ではありません)互換的に使用できます。
3DESはCapicomから入手できます。詳細については、こちらをご覧ください。
Windowsには、 AES暗号化サービスプロバイダー。ネイティブC / C ++アプリケーション内からの使用に適しています。
所属していません StackOverflow