マイクロソフト系技術情報 Wiki」は、「Open棟梁Project」,「OSSコンソーシアム .NET開発基盤部会」によって運営されています。

目次

概要

暗号化アルゴリズムは、一通り揃っている。

Managed、CAPI(CSP)、CNG実装とは?

参考

CAPI (CSP)

CNG

どれを使用すべき?

には、以下のようにある。

最適な実装を選択可能

アルゴリズムの選択

CngKey?

以下の様な違いがあるが、

RSACngのキーはCngKey?クラスによって管理され、RSACngのコンストラクタに注入できますが、
RSACryptoServiceProvider?は独自のキー操作に結びついています。

どちらでも良さそう。

性能

.NETの暗号化Providerの列挙

ハッシュ

暗号ハッシュ(HashAlgorithm?

https://msdn.microsoft.com/ja-jp/library/system.security.cryptography.hashalgorithm.aspx

キー付きハッシュ(KeyedHashAlgorithm?

https://msdn.microsoft.com/ja-jp/library/system.security.cryptography.keyedhashalgorithm.aspx

暗号化

秘密鍵暗号方式(SymmetricAlgorithm?

https://msdn.microsoft.com/ja-jp/library/system.security.cryptography.symmetricalgorithm.aspx

公開鍵暗号方式(AsymmetricAlgorithm?

AsymmetricAlgorithm?の内、暗号化・復号化が可能な公開鍵暗号方式は、RS256(RSA)のみ。

https://msdn.microsoft.com/ja-jp/library/system.security.cryptography.asymmetricalgorithm.aspx

署名・検証(AsymmetricAlgorithm?

署名・検証は、AsymmetricAlgorithm?の内の、以下のProviderを使用する。
なお、RS256(RSA)は、暗号化・復号化だけでなく、署名・検証にも利用可能である。

https://msdn.microsoft.com/ja-jp/library/system.security.cryptography.asymmetricalgorithm.aspx

乱数生成、キー生成

乱数生成

https://msdn.microsoft.com/ja-jp/library/system.security.cryptography.rngcryptoserviceprovider(v=vs.110).aspx

RNGCryptoServiceProvider?を使用する。
Membership.GeneratePassword?も下位でRNGCryptoServiceProvider?を使用している。

キー生成

https://msdn.microsoft.com/ja-jp/library/system.security.cryptography.rfc2898derivebytes.aspx

Rfc2898DeriveBytes?を使用する。

主に、

のキーを生成する(パスワードをそのまま使用しない)。

参考

DOBON.NET: VB.NET, C#, 無料ソフトウェア...

http://dobon.net/index.html

暗号ハッシュ

秘密鍵暗号方式

公開鍵暗号方式

署名・検証

乱数生成、キー生成

Open棟梁の暗号ラッパー


Tags: :.NET開発, :セキュリティ, :暗号化, :証明書


トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS