C# DES アルゴリズムの暗号化と復号化の例の分析

C# DES アルゴリズムの暗号化と復号化の例の分析

C# DES アルゴリズムの暗号化と復号化は、開発のセキュリティ部分として、その使用方法を理解する必要があります。56 ビット キーの DES アルゴリズムはもはや人気がなく、DES で暗号化された平文が解読されるという報告もよくありますが、以前の米国標準の暗号化アルゴリズムを理解することは常に有益であり、DES アルゴリズムは現在広く使用されており、場合によってはまだ役割を果たしています。

C# DES アルゴリズムの暗号化と復号化の特徴: グループ化が比較的短く、キーが短すぎ、パスワードのライフ サイクルが短く、操作速度が遅い。 C# DES アルゴリズムの暗号化と復号化の基本原理: 入力パラメータは、キー、データ、モードの 3 つです。 key は暗号化と復号化に使用されるキー、data は暗号化および復号化されたデータ、mode はその動作モードです。

C# DESアルゴリズムの暗号化と復号化のコアコードのデモンストレーション: DESは、一般的に使用される対称暗号化と復号化の方法です。

  1. /**/ /// <要約>
  2. /// DES 暗号化を実行します。  
  3. /// </要約>  
  4. /// <param name="pToEncrypt">暗号化する文字列。 </パラメータ>  
  5. /// <param name="sKey">キーは 8 文字にする必要があります。 </パラメータ>  
  6. /// <returns>暗号化された文字列が Base64 形式で返されます。 </戻り値>  
  7. 公共 文字列暗号化(文字列pToEncrypt,文字列sKey)
  8. {
  9. (DESCryptoServiceProvider des = を使用
  10. 新しいDESCryptoServiceProvider())
  11. {
  12. バイト[] inputByteArray = Encoding.UTF8.GetBytes(pToEncrypt);
  13. des.Key = ASCIIEncoding.ASCII.GetBytes(sKey);
  14. des.IV = ASCIIEncoding.ASCII.GetBytes(sKey);
  15. System.IO.MemoryStream ms =新しいSystem.IO.MemoryStream();
  16. (CryptoStream cs = new CryptoStream(ms,を使用)
  17. des.CreateEncryptor()、CryptoStreamMode.Write))
  18. {
  19. cs.Write(inputByteArray, 0, inputByteArray.Length);
  20. cs.FlushFinalBlock();
  21. cs.Close();
  22. }
  23. 文字列str = Convert.ToBase64String(ms.ToArray());
  24. ms.Close();
  25. strを返します
  26. }
  27. }
  28.  
  29. /**/ /// <要約>
  30. /// C#DES 復号化を実行します。  
  31. /// </要約>  
  32. /// <param name="pToDecrypt">復号化する Base64</param>  
  33. /// <param name="sKey">キーは 8 文字にする必要があります。 </パラメータ>  
  34. /// <returns>復号化された文字列。 </戻り値>  
  35. 公共 文字列復号化(文字列pToDecrypt,文字列sKey)
  36. {
  37. バイト[] inputByteArray = Convert.FromBase64String(pToDecrypt);
  38. (DESCryptoServiceProvider des = を使用
  39. 新しいDESCryptoServiceProvider())
  40. {
  41. des.Key = ASCIIEncoding.ASCII.GetBytes(sKey);
  42. des.IV = ASCIIEncoding.ASCII.GetBytes(sKey);
  43. System.IO.MemoryStream ms =新しいSystem.IO.MemoryStream();
  44. (CryptoStream cs = new CryptoStream(ms,を使用)
  45. des.CreateDecryptor()、CryptoStreamMode.Write))
  46. {
  47. cs.Write(inputByteArray, 0, inputByteArray.Length);
  48. cs.FlushFinalBlock();
  49. cs.Close();
  50. }
  51. 文字列str = Encoding.UTF8.GetString(ms.ToArray());
  52. ms.Close();
  53. strを返します
  54. }
  55. }

これは、C# DES アルゴリズムの暗号化と復号化の基本的な状況の紹介です。C# DES アルゴリズムの暗号化と復号化を理解し、学習するのに役立つことを願っています。

<<:  C# DES アルゴリズムの例の分析

>>:  C#DES アルゴリズムの概念と特性の簡単な分析

ブログ    
ブログ    
ブログ    

推薦する

CommScope Insights: データセンターが AI をより迅速かつコスト効率よく活用する方法

人気のSF小説で「機械知能の台頭」が描かれる場合、通常はレーザーや爆発などのシーンが伴います。それほ...

Java プログラミング スキル - データ構造とアルゴリズム「動的プログラミング アルゴリズム」

[[399211]]応用シナリオ - ナップサック問題バックパックの問題: 容量 4 ポンドのバッ...

顔認識技術の現状と今後の開発動向

顔認識は、一般的に肖像認識または顔認識とも呼ばれ、顔の特徴に基づいて人物を識別する生体認証技術です。...

顔認識: 顔の主要な特徴の認識

[[398462]]最後の顔認識画像の前処理では、前処理ステップを追加し、環境やその他の要因からの干...

Transformer はコンピューター ビジョンの分野でどこまで進歩したのでしょうか?

[[400862]] Transformer モデルは、自然言語処理 (NLP) の分野における新...

画像内のオブジェクト検出のための ML データを探索および視覚化する方法

近年、機械学習データ(MLデータ)を深く理解する必要性に対する認識が高まっています。しかし、大規模な...

グラフ ネットワークをより堅牢にします。 Googleは、データのラベル付けバイアスやドメイン転送を恐れないSR-GNNを提案

グラフ ニューラル ネットワーク (GNN) は、機械学習でグラフ構造データを活用するための強力なツ...

Kubernetes デバッグの究極の武器: K8sGPT

人工知能と機械学習の技術が進歩するにつれ、企業や組織は競争上の優位性を得るためにこれらの機能を活用す...

グラフ機械学習の特徴伝播を用いた欠損データの再構築

この論文で紹介されている特徴伝播​​は、グラフ機械学習アプリケーションで欠落している特徴を処理するた...

.NET8 究極のパフォーマンス最適化 プリミティブ - DateTime

序文前回の記事では列挙型の最適化について説明しました。今回は時刻形式である DateTime の最適...

「宝くじ仮説」の著者による新しいPyTorchライブラリは人気があり、モデルのトレーニングが2〜4倍高速化されます。

さまざまなタスクに人工知能を導入する企業が増えるにつれ、AI モデルのトレーニングはコストがかかり、...

TikTokの買収者は、コアアルゴリズムの削除を含む4つの買収オプションについて議論している

CNBCが以前報じたように、当初この取引は早ければ火曜日にも発表される予定だったが、当日になっても取...

...

PyTorchの基本操作の詳細な説明

[[406246]] PyTorch とは何ですか? PyTorch は、最大限の柔軟性と速度を備え...

ImageNetは人間の顔をぼかすことにしたが、ハスキー犬の顔の写真の認識率は急上昇した

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