.NET が提供する暗号化アルゴリズムの概要

.NET が提供する暗号化アルゴリズムの概要

データは、対称暗号化アルゴリズムまたは非対称暗号化アルゴリズムを使用して暗号化できます。対称暗号化は非対称キーよりもはるかに高速ですが、対称キーでは安全なキー交換の問題を解決する必要があります。 .NET Framework では、System.Security.Cryptography 名前空間のクラスを使用して暗号化を実行できます。いくつかの対称および非対称アルゴリズムを実装します。 .NET 3.4 以降、一部の新しいクラスには、Cryptography Next Generation を意味する Cng というプレフィックスまたはサフィックスが付けられ、Windows NT 6.0 以降のカーネル バージョン (Vista、Win7、Win2008、Win8) を使用するオペレーティング システムで使用されます。この API を使用すると、プロバイダーベースのモデルを使用してアルゴリズムに依存しないプログラムを作成できます。

次のリストには、System.Security.Cryptography 名前空間の暗号化クラスとその機能が含まれています。 Cng、Managed、または CryptoServiceProvider サフィックスのないクラスは、MD5 などの抽象基本クラスです。 Managed サフィックスは、アルゴリズムがマネージ コードで実装され、他のクラスが内部 Windows API 呼び出しをカプセル化する可​​能性があることを示します。 CryptoServiceProvider サフィックスは抽象基本クラスを実装するクラスに使用され、Cng サフィックスは特定のバージョンのオペレーティング システムでのみ使用できる新しい Cryptography CNG API を利用するクラスに使用されます。

カテゴリ親切説明する

散らばる

リスト

MD5、MD5Cng

SHA1、SHA1マネージド、SHA1Cng

SHA256、SHA256Managed、SHA256Cng

SHA3​​84、SHA384Managed、SHA384Cng

SHA512、SHA512Managed、SHA512Cng

ハッシュ アルゴリズムの目的は、任意の長さのバイナリ文字列から固定長のハッシュ値を作成することです。これらのアルゴリズムは、データの整合性を確保するためにデジタル署名と組み合わせて使用​​されます。同じバイナリ文字列を再度ハッシュすると、同じハッシュ結果が返されます。 MD5 (Message Digest Algorithm 5) は RSA Laboratories によって開発され、SHA1 よりも高速です。 SHA1 はブルートフォース攻撃に対して比較的強力です。 SHA アルゴリズムは、米国国家安全保障局 (NSA) によって設計されました。 MD5 は 128 ビットのハッシュ値を使用し、SHA1 は 160 ビットのハッシュ値を使用します。他の SHA アルゴリズムでは、名前にハッシュの長さが含まれます。 SHA512 はハッシュ長が 512 ビットで、これらのアルゴリズムの中で最も強力ですが、最も低速でもあります。

言う

DES、DESCryptoServiceProvider

トリプルDES、トリプルDESCryptoServiceProvider

AES、AESCryptoServiceProvider、AESManaged

RC2、RC2CryptoServiceProvider

Rijandel、Rijandel管理

対称キー アルゴリズムでは、同じキーを使用してデータを暗号化および復号化します。 DES (データ暗号化標準) は、56 ビットのキーのみを使用し、24 時間以内に解読できるため、現在では安全ではないと考えられています。トリプル DES は DES の後継であり、キーの長さは 168 ビットですが、提供される有効なセキュリティは 112 ビットのみです。 AES (Advanced Encryption Standard) は米国政府が採用している暗号化規格で、キーの長さは 128、192、または 256 ビットです。 Rijandel は AES と非常に似ていますが、キーの長さのオプションがより多くあります。

いいえ

言う

DSA、DSACryptoServiceProvider

ECDsa、ECDsaCng

ECDiffieHellman、ECDiffieHellmanCng

RSA、RSACryptoServiceProvider

非対称アルゴリズムでは、暗号化と復号化に異なるキーが使用されます。 RSA (Rivest、Shamir、Adleman) は、署名と暗号化に使用された最初のアルゴリズムでした。このアルゴリズムは、電子商取引プロトコルで広く使用されています。 DSA (デジタル署名アルゴリズム) は、米国連邦政府のデジタル署名標準です。 ECDsa (楕円曲線 DSA) と ECDiffieHellman は、楕円曲線グループに基づくアルゴリズムを使用します。これらのアルゴリズムはより安全で、より短いキー長を使用します。たとえば、キー長が 1024 ビットの DSA は、キー長が 160 ビットの ECDsa と同じくらい安全です。したがって、ECDsa は高速です。 ECDiffieHellman アルゴリズムは、公開チャネルを介して秘密鍵を安全に交換するために使用されます。

パフォーマンスについて少し補足します。同じアルゴリズムに対して、 CryptoServiceProvider、Managed、Cng の 3 つの実装があります。Managed に MD5 が実装されていないハッシュでメソッドをテストし、「Test」文字列のハッシュ値を 100,000 回計算しました。

見えます。 Cngアルゴリズムの速度は最悪で、Cspは中間です。マネージド実装は非常に高速です。また、SHAアルゴリズムのビット数を増やすと、384ビットに達すると違いは明らかではなくなり、Cspアルゴリズムに必要な時間が最も短くなります。これは、オペレーティングシステムAPI呼び出しによって形成される利点だと思います。

オリジナルリンク: http://www.cnblogs.com/lekko/archive/2012/09/11/2680288.html

<<:  アルゴリズム設計者が新たな人気者になる

>>:  アリの採餌とインターネットアルゴリズム

ブログ    
ブログ    

推薦する

AI トレーニングを容易にするために、分散を通じてクラウドで弾力的なスループットを実現するにはどうすればよいでしょうか?

翻訳者 | 李睿レビュー | Chonglou人工知能は現在、定量的研究などの分野におけるソフトウェ...

機械学習は言語から意味を抽出するのにまだ苦労している

私たちは幼児期から言語を吸収し始めます。簡単な単語は1年目か2年目に出てきます。 6 歳までに語彙は...

人工知能が教育評価の近代化に貢献

教育評価は、教育の質の継続的な向上を促進する「牛の鼻」として、確立された教育目標に基づき、一定の教育...

企業がより持続可能な推論を通じてより環境に優しい AIGC を実現する方法

モデルとは何か一般人にとって、AIとそのプログラミングの基盤となるアルゴリズムが、これほど広範囲にわ...

具現化された知能の新時代! VLAは、UIナビゲーションとロボット操作を備えた最強の基本モデルMagmaを歓迎します

既存の大規模言語モデル、画像生成モデルなどは、少数のモーダルデータに対してのみ動作し、人間のように物...

OpenAIが「Copyright Shield」機能を開始、AI著作権問題の支払いプラットフォーム

IT Homeは11月7日、本日開催されたOpenAI初の開発者会議で、OpenAIが「Copyri...

超速い! ByteDanceが配列推論エンジンLightSeqをオープンソース化

これは、Transformer や GPT などの複数のモデルの高速推論を完全にサポートする業界初の...

報告書:人工知能は5年以内に人間の雇用を著しく脅かすだろう

ある報告書によると、自動化と人工知能は最大5年以内に人間の雇用を脅かすことになるという。このような状...

悲劇!ウーバー、自動運転車が人をはねて死亡させたため全テストを中止

ウーバー、自動運転車が人をはねて死亡させたため全テストを中止 アメリカ現地時間19日朝、アリゾナ州...

Googleの怠け者ツールが登場:AIカンファレンスのアバターがリリース、ワンクリックで要約、質問、スピーチが可能に

会議で苦しめられてきた労働者はついに解放される!先日終了した Google Cloud Next&#...

人工知能はサイバー犯罪をより容易かつ頻繁にしている、と研究が指摘

8月10日、サイバーセキュリティ企業SlashNextが発見した一連の証拠から、違法目的で開発された...

量子機械学習変分量子分類器 (VQC) の紹介

変分量子分類器 (VQC) は、量子コンピューティング技術を使用して分類タスクを実行する機械学習アル...

ハッシュアルゴリズムに基づくMySQLテーブルパーティション

以下に紹介する Mysql テーブルのパーティショニング プロセスは、ハッシュ アルゴリズムに基づい...

GPT-3 ハイパーパラメータは単一の GPU で解決できます。まず小さなモデルをトレーニングし、ワンクリックで移行します

この記事はAI新メディアQuantum Bit(公開アカウントID:QbitAI)より許可を得て転載...