本講演の経緯 第1回神泉セキュリティ勉強会 にて, パスワードの保存(10分)の話を講演 @ikepyon さんから講演の依頼 時間は1時間 ご要望を満たすために 「パスワードの保存」の話をして, その後その他のテーマの話をします. 参考文献 man 3 crypt Manpage of CRYPT CRYPTOGRAPHY ENGINEERING ISBN-13: 978-0470474242 認証技術 パスワードから公開鍵まで ISBN-13: 978-4274065163
![パスワードの話](https://cdn-ak-scissors.b.st-hatena.com/image/square/0049b69a9b7a9b4bbc6b92865d4ed137d9e3b508/height=288;version=1;width=512/http%3A%2F%2Fharuyama.github.io%2F445_14_20101211%2Fimage%2Ffig1.png)
レインボー・クラックとは悪用が懸念されている強力なパスワードの解読手法である。「アルファベットや数字,使えるなら記号も組み合わせて最低でも8文字以上のパスワードを作る」──。パソコンやネットワークへログインする際に使うパスワードは,こんな原則に基づいて作るのが常識となっている。簡単に推測できそうな,人名や地名のような意味のある単語はもちろん使えない。こうした原則に従って作れば,今でも多くのシステムで安全なパスワードとして十分通用する。 しかし,レインボー・クラックの登場より,一部のシステムではこうした原則が必ずしも通用しなくなりつつある。特に危険なのがWindowsだ。現在主流のWindows XPでは過去との互換性確保のためOSの標準設定がセキュリティ的に弱い状態になっており,このレインボー・クラックによって潜在的にパスワードを盗まれる危険にさらされている。 レインボー・クラックがどのよ
opensslのMD5関数 ハッシュ値を求める #include <openssl/md5.h> unsigned char * MD5(const unsigned char *d, unsigned long n, unsigned char *md); 戻り値:MD5によるハッシュ値へのポインタ d:ハッシュ値を求める元データn:元データdの長さ md:元データdをハッシュした値(16バイトのバイナリデータ) opensslのMD5関数でハッシュ値を求めるサンプル #include <stdio.h> #include <string.h> #include <openssl/md5.h> char * hexdigest(const char *key, int length) { static char hex[32 + 1]; unsigned char digest[16];
255byte以内のURLに対してMD5でハッシュを得たときに、それがコリジョンを起こす場合はありますでしょうか。 255byte程度の短い文字列に対してであればコリジョンが発生しないと聞いたのですが根拠となる情報があれば教えてください。
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く