質問

何が良いので簡単な暗号化スキームの保護のためのパスワードのデータベース?いっていることを教えてくれるハイパーの確保もないまっていることを教えてくれるの速いものもいいですね。主にしていきたいというのは、とても簡単に実行されずにものすごく遅い。

役に立ちましたか?

解決

As mkう SHA1はMD5にするとともに、SHA2.


更新:としてプロセッサを頂いており速く、ハッシュ頂いておりづくり-forceable.この現す bcrypt.


したいものはより一般的にはと呼ばれる暗号化ハッシュ機能です。暗号化ハッシュを設計することができる方法(この結果、ハッシュ、なんかできる本来の入)。また、可能性の任意の文字列のハッシュとして知られるハッシュの衝突き低い理想的には1/号のハッシュ値)。

残念ながら、パスワードをハッシュされませんからもうからなくてはいけないと、ハッシュされたバージョンで安全です。あまりにも多くの人々が利用弱いパスワードのよう脆弱性が存在します。オフライン力攻撃ができます。

編集-複数の人があるものについての重要性を指摘したところを塩です。塩は一定値にするミックスの入力を使用する前にハッシュ機能です。独自の塩分を防ぐオフライン攻撃者の利用を事前計算テーブルの共通パスワード(レインボーテーブル)の力パスワードも早くなるのです。

他のヒント

MD5 または SHA1 +ました。

ご利用の場合MD5またはSHA1を利用塩を避けるレインボーテーブルhacks.

クライアントまで、フルのC#これは簡単です:

MD5CryptoServiceProvider hasher = new MD5CryptoServiceProvider();
string addSalt = string.Concat( "ummm salty ", password );
byte[] hash = hasher.ComputeHash( Encoding.Unicode.GetBytes( addSalt ) );

簡単です: BCrypt.

Jeffの しょ格納パスワードを正しく 第は、優れた読み込んでいます。

した問題の鉱山カップルの週間前です。また展開を大きな誤プロジェクトを975異なる地域が独自のユーザー資格の店として使用する認証とはまったく異なる、既に実施し、使用願います。までも残り、石鹸に基づく認証サービスがお客様を主張するに至ることができ、ユーザー資格の店舗のほかのアプリケーションからだけでは、DB接続読み取り専用の関連テーブルやビュー。ため息をつきたくな... (この高結合の悪いデザイン決定の問題).

ことを余儀なくされる座に変換して塩を繰り返ハッシュされたパスワードの保管制の仕様を一部異なる言語の実装を容易に統合しました。

しか確保のハッシュされたパスワードまたは FSHP に短い。効率良く抽出できるようなPython,Ruby,PHP5です。可能な消費鬼,flamedや串GitHubで http://github.com/bdd/fshp

FSHPがでて塩を加え、繰り返ハッシュされたパスワードハッシュの実装です。

デザインの原則と非常に優秀な方々と働くことがで PBKDF1 仕様は、RFC2898 (a.k.a:PKCS#5:パスワードベース暗号の仕様バージョン2.0にアクセスしてください。) FSHPでの塩長反復回数の 原暗号化ハッシュ関数の中でSHA-1SHA-2 (256, 384, 512).自己を定義するメタprefix、全ての出力で携帯ながら、消費者選択の自己のパスワードを保安基準と

安全保障:

デフォルトFSHP1使8バイトの塩、4096回のSHA-256ハッシュ.-8バイトの塩画"レインボーテーブル攻撃の難を乗じることによって 必要なスペース2^64.-4096反復原因を総当り攻撃するかなり高価です。 が知られていないものへの攻撃に対するSHA-256を見衝突 計算力より2^128操作時の このリリース。

実装:

  • Python:試2.3.5(w/hashlib),2.5.1,2.6.1
  • Ruby試1.8.6
  • PHP5:試5.2.6

皆様には心から歓迎を欠言語の実装では ポーランドの現。

基本操作 (Python):

>>> fsh = fshp.crypt('OrpheanBeholderScryDoubt')
>>> print fsh
{FSHP1|8|4096}GVSUFDAjdh0vBosn1GUhzGLHP7BmkbCZVH/3TQqGIjADXpc+6NCg3g==
>>> fshp.validate('OrpheanBeholderScryDoubt', fsh)
True

カスタマイズにはCRYPT:

ましょう弱める当社のパスワードハッシュスキームです。-減塩長からのデフォルトの8-2.-の減少を繰り返しかけてデフォルト4096 10人になりました。 選択FSHP0SHA-1として、元のハッシュアルゴリズムです。

>>> fsh = fshp.crypt('ExecuteOrder66', saltlen=2, rounds=10, variant=0)
>>> print fsh
{FSHP0|2|10}Nge7yRT/vueEGVFPIxcDjiaHQGFQaQ==

をご利用 SHA 一方ハッシュアルゴリズム独自の塩です。このアルゴリズムを使っていた保存私のパスワードのデータベースです。

使用している場合は、まさにSQLサーバーがあり、HashBytes機能:

http://msdn.microsoft.com/en-us/library/ms174415.aspx

私の第二の投票のためのMD5またはSHAと塩です。他のウェブ開発言語機能を組み合わせたものをコンピューティングするこのハッシュ(PHPのmcryptパッケージ、必要となる。

必要なものを使用する"一方向のハッシュアルゴリズムのようSHA-1が上記の塩です。私はあなたがこのサイトです。このサンプルコードの実装です。http://www.obviex.com/samples/hash.aspx

の鍵はセキュリティを強化したいと思い、動的に挑みます。これをすることになりますのでランダムに生成し文字列それぞれの新しいユーザーを使用する文字列のハッシュ.もちろん、おく必要があること塩のデータベースを検証することができるパスワードの後に私は暗号化します。

非可逆的に暗号化などを受けるなら間違いなくSHA256はSHA1.MD5たくさんあの衝突現にも力を入れでいいます。

たいへのソリューションいSHA256はSHA512.暗号geekworldでの緊張感約MD5や、若干の程度の差はあるものの,SHA1.

または、あなたができる場合は、待ち SHA-3

にのって多くの混乱についパスワードハッシュが正しく、特にstackoverflow.で長々と書きましたページが明確なものです。が少しで簡単なハッシュ.

詳細情報: どのようなパスワードハッシュを適切に

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top