Ikakonbu 2 years ago Misskeyの連携とかフィルタリングサービス欲してる人はこれ見ればだいたい解決するやつ Misskeyに関する偉業なサードパーティサービスまとめ Misskey.ioMisskeyに関する偉業なサードパーティサービスまとめMisskeyに関連する偉業なサービスをまとめてみました
Ikakonbu 2 years ago わたしなりの解釈でまとめた:sitteokou: 「なんでパスワードにはソルトが必要なの?」 ------------------- :neko_dakara_wakannyai2:人のために優しく言葉を言い換えているので、完全に正確な文章ではありません。 ------------------- :misskey2022:もそうですが、インターネットのサービスでは ID と パスワード で:dare:なのか見分けます。しかし、:warui_otona:がハッキングしてサーバーのデータを盗んだら、他人のアカウントログインし放題...!?:resonyance::resonyance::resonyance: これを防ぐために、:tensai:たちはある方法を考えました。それは、パスワードを「暗号化:tyasumohaxaawa:」して保存してしまう方法です。 この暗号化を「ハッシュ化」といいます。 最初に登録するときに暗号化をしてサーバーに保存して、次のログインからは、ユーザーが入れたパスワードを暗号化したものと、サーバーに置いてある暗号文と比較して、同じだったら通してあげます。 暗号にするのは簡単だけど、暗号からもともとのデータに戻すことができない(めちゃくちゃ時間かかる)ので、もし:warui_otona:にサーバーのデータを盗まれても、パスワードが暗号化されていればそのまま読めないので、ログインすることはできません。 これで:zenbu::kaiketsu:!! とはいきません。ハッシュ化には特定の関数を使いますが、そのしくみは:minna_kokoniiru::mieru:ものなので、同じ暗号機を他人が:tukutta:こともできます。 もしこれを使って、事前に「文章」からどんな「暗号文」が出てくるか調べておけば....元の文 | 暗号化結果 0000 | ds646s6 0001 | 85ghf3s 0002 | 3ht6jk4e ... | ...:a:そうです。 ハッシュ化するだけだと、ユーザーが事前に暗号化結果をいろんな文章で作って「辞書」を作ったら、一致してしまうかもしれません。 また、複数のユーザーがみんな「1234」というパスワードを使っていると、ハッシュ化した結果がみんな同じなので、一人バレると同じパスワードを持っている他のみんなも:moutasukaranaizo: そこで:tensai:はさらに考えました「:sio_ga_tannnexeyo:」 :thinkhappy: これはどういうことかというと、パスワードの他に「ソルト」というランダムな文字列をさらに付け加えて暗号化するというものです。 もしパスワードを0000...~9999...まで全通り試そうとすると、パスワードの文字数が多ければ多いほど:zikan_wo_tokasu:のは:sorehasou:だよね。 なので、ある程度長ーい文章とセットで暗号化することで、暗号化辞書を作るのにものすごく時間がかかる長さの文章にしちゃうんだ。( 例: 1234 + hj34H9FH06_7g+ )さらに、「ソルト」をユーザーごとに違うものにすることで、みんなが「1234」というパスワードを使っていても、ユーザーごとに暗号文がバラバラになるんだ! :kidai_no_tensai::hentai_daxa__i: こうすることで、:warui_otona:がサーバーの情報を盗んでも、パスワードがわからないようにしつつ、ユーザーの認証もバッチリ!!!!なんだ! 便利だね、 じゃ!