私はハードディスク、マザーボードetc.のserail番号を暗号化したいのですが、暗号化のための良い数学的方程式をお勧めしますか?暗号化のためのC#コード
答えて
http://code.google.com/p/zscreen/source/browse/trunk/ZScreenLib/Helpers/PasswordManager.csには、文字列を暗号化および復号化する方法があります。それがスタートです。 :)
System.Security.Cryptography名前空間
http://msdn.microsoft.com/en-us/library/system.security.cryptography.aspx
あなたがC#のを言及として、私は、.NETフレームワークCryptography namespaceを見てお勧めします。
独自に実装するアルゴリズムではなく、ここで提供されているアルゴリズムの1つを使用してください。あなたが前にそれを行っていない場合
を参照暗号化を含む一般的な経験則は、あなたはそれが間違ってやろうとしている、です。暗号化が重要な場合は、他の人のパッケージ(バックドアを導入しないようにするためにソースがあることが望ましい)を使用します。なぜなら、バグを解消するためです。いくつかの一般的な式と実装については、CryptoのSchneier's bookを参照してください。
しかし、暗号化を使用したいだけで実装するのが難しい場合(たとえそれが本のコードをコピーするだけであっても)、他の人が言及している暗号化名前空間をチェックアウトしてください。
これは良いアドバイスです。 –
同上!素晴らしい答え! – TrueWill
何を使用したいかによって異なります。 System.Security.Cryptography名前空間にはたくさんのアルゴリズムが実装されています。
データを暗号化して他のマシンに送信して復号化する場合は、非対称暗号化が最適です。 RSA。
データをエンコードして比較しても問題はありませんが、デコードしない場合は、SHA-1などのハッシュを使用するのが最善の方法です。
あなただけの文字列をマスクしたい場合、あなたははっきりいくつかの定義済みの定数を各文字をXORして、非常に同じプロセスを行うことによってデコードすることができます。
private static string key = "MySecretKey";
private static byte[] keyData = Encoding.ASCII.GetBytes(key);
public static byte[] Encrypt(byte[] source)
{
byte[] target = new byte[source.Length];
for (int i = 0; i < target.Length; i++)
target[i] = (byte)(source[i]^keyData[i % keyData.Length]);
return target;
}
BouncyCastle C#版はまたあなたにいくつかの興味深い機能を提供するかもしれません.NET暗号化を超えて
- 1. C++コードの暗号化チェック
- 2. RSA暗号化Cコード
- 3. 暗号化/ C++
- 4. 暗号化(C++)
- 5. Javascriptのコードの暗号化
- 6. base64暗号化コード
- 7. シーザー暗号シンプルな暗号化コード
- 8. C++の暗号化と復号化
- 9. aes_cbc_128 C#ビジュアルスタジオの暗号化/復号化
- 10. C++暗号化と復号化のソースコード
- 11. C#暗号化されたデータをJavascriptで暗号化する
- 12. CryptoJs暗号化とRijndaelManagedを使用したC#暗号化 - エラー
- 13. JS(CryptoJS)のC#での暗号化の暗号化
- 14. 暗号化のためのMySQLの列
- 15. IOSのためのファイルシステム暗号化?
- 16. 暗号化のためのPythonパディングAES
- 17. C#とPHPの暗号化/暗号化の問題(keysize)
- 18. 暗号化/復号化のためのアンドロイドスタジオのブローフィッシュ
- 19. ファイルの暗号化と復号化のためのPythonスクリプト
- 20. C++ Exe暗号化?
- 21. C++の暗号化機能
- 22. C#暗号化のクラリティ?
- 23. TEA C#での暗号化
- 24. cの暗号化機能
- 25. C#Informix ENCRYPT_TDES関数を復号するためのCトリプルDES暗号化
- 26. 暗号化/復号化のためのCLRアセンブリ
- 27. C/C++でのPKCS#5のAES暗号化の埋め込み
- 28. C#/ Java | AES256暗号化/復号化
- 29. シーザー暗号化と復号化C++
- 30. 暗号化C#復号化AES CBC 256
暗号化は、特定の脅威に対する特定の脆弱性を緩和するために設計されたセキュリティツールです。暗号化は、それを「より安全に」するために振りかける魔法のダストではありません。暗号化を使用してセキュリティの問題を解決することを検討する前に、まず保護するリソース、脆弱性、脅威の種類、攻撃者の種類などを詳細に記述した詳細な脅威モデルを作成してください。暗号化が有用なツールであるかどうかを判断し、そうであれば、どのような種類の暗号化を使用すべきかを把握しなければなりません。 –