C# 暗号化アルゴリズムの簡単な紹介

C# 暗号化アルゴリズムの簡単な紹介

C# 暗号化アルゴリズム

MD5 は Message-Digest Algorithm 5 の略で、1990 年代初頭に MIT コンピュータサイエンス研究所の Ronald L. Rivest 氏と RSA Data Security Inc. によって開発され、MD2、MD3、および MD4 から進化しました。その機能は、デジタル署名ソフトウェアを使用して秘密鍵に署名する前に、大量の情報を機密形式に「圧縮」することです (つまり、任意の長さのバイト文字列を特定の長さの大きな整数に変換します)。 md2、md4、md5 のいずれの場合でも、ランダムな長さのメッセージを取得し、128 ビットのメッセージ サマリーを生成する必要があります。これらのアルゴリズムの構造は多かれ少なかれ似ていますが、md2 の設計は md4 や md5 とはまったく異なります。これは、md2 が 8 ビット マシン用に最適化されているのに対し、md4 と md5 は 32 ビット コンピューター用に最適化されているためです。これら3つのアルゴリズムの説明とC言語のソースコードは、インターネットRFC 1321に詳細に記述されています。

C# 暗号化アルゴリズム コード

  1. システムの使用;
  2. Generic を使用します。
  3. System.Text を使用します。
  4. System.Security.Cryptography を使用します。
  5.  
  6. 名前空間md5
  7. {
  8. クラスプログラム
  9. {
  10. 静的void Main(文字列[] 引数)
  11. {
  12. Console.WriteLine(UserMd5("8"));
  13. Console.WriteLine(GetMd5Str("8"));
  14. }
  15. /**//// <要約>  
  16. ///MD516ビット暗号化
  17. /// </要約>  
  18. /// < paramname paramname = "ConvertString" > </ param >  
  19. /// <戻り値> </戻り値>  
  20. パブリック静的文字列 GetMd5Str(stringConvertString)
  21. {
  22. MD5CryptoServiceProvidermd5 = newMD5CryptoServiceProvider ();
  23. stringt2 = BitConverter.ToString
    (md5.ComputeHash(UTF8Encoding.Default.GetBytes(ConvertString)),4,8);
  24. t2 t2 =t2.Replace("-","");
  25. t2を返します。
  26. }
  27. http://www.cnblogs.com/sopper/archive/2007/01/08/615111.html
  28. /**//// <要約>  
  29. ///MD5 32ビット暗号化
  30. /// </要約>  
  31. /// <パラメータ名パラメータ名= "str" ​​> </パラメータ>  
  32. /// <戻り値> </戻り値>  
  33. 静的文字列 UserMd5 ( 文字列 str )
  34. {
  35. str文字列cl =str;
  36. 文字列pwd = "" ;
  37. MD5 MD5md5 =MD5.Create(); //md5オブジェクトをインスタンス化します
  38. //暗号化後はバイト型の配列になります。UTF8/Unicode等のエンコードの選択に注意してください。
  39. byte[] s = md5.ComputeHash (Encoding.UTF8.GetBytes(cl));
  40. //ループを使用して、バイト配列を通常の文字形式の文字列に変換します。
  41. for( inti = 0 ;i < s.Length ;i++)
  42. {
  43. //取得した文字列を16進形式に変換します。
    フォーマット後の文字は小文字です。大文字 (X) が使用されている場合、フォーマット後の文字は大文字です。
  44.  
  45. pwd pwd =pwd+s[i].ToString("X");
  46.  
  47. }
  48. パスワードを返します。
  49. }
  50. }
  51. }

上記はC#暗号化アルゴリズムの紹介です

<<:  C# はデジタル変換のための中国語アルゴリズムを記述します

>>:  F#の並列ソートアルゴリズムは実装が簡単

ブログ    
ブログ    

推薦する

...

...

堅牢な機械学習アルゴリズムの構築方法: ブースティングとバギング

[[211376]]機械学習とデータサイエンスの作業は、単にデータを Python ライブラリに渡し...

...

...

愚かではないチャットボットを構築したいですか? 6つの実用的なガイドラインをご紹介します

AppleがSiriを発表してから7年、そしてジェフ・ベゾスがスタートレックにインスピレーションを得...

ドローンを使って「国勢調査」を実施?人だけでなく動物も!

データによれば、我が国の人口は過去 10 年間にわたり緩やかな増加傾向を維持し続けており、我が国は依...

...

畳み込みニューラルネットワークにおける自己注意メカニズムの理解

導入コンピューター ビジョンにおけるエンコーダー/デコーダー アーキテクチャの制限とそれを改善する方...

...

米国のAI雇用市場の現在の規模を解読する

[[342720]] 人工知能の分野でのこの国の雇用機会はどのようなものでしょうか?私たちはすべてが...

...

顔認識に関する初の訴訟が法廷に。顔スキャンを拒否する権利は失われたのか?

今日では、顔認識技術は私たちの生活や消費の場面でますます利用されるようになっています。最近、「中国初...

アリババに採用された中国の高レベル科学者がAIがもたらす想像力の空間について語る

彼はかつてアマゾンの中国トップレベルの科学者であり、1年前に世界の小売業界にセンセーションを巻き起こ...

...