【FlutterFlow】ハッシュ関数SHA-1って何だ!?Google認証に必要な予備知識を徹底解説
※追記:この「Google認証」シリーズは、最終的に完了しませんでした。申し訳ないですが、ご了承の上、読み進めてください。
はい、こんにちは~。FlutterFlowの使い方を覚えようと日々研鑽しております。
前回までは、メール認証に取り組んできました。一応、基本的な使い方(サンアップ→認証リンク→ログアウト→パスワードリセット)を実装できました。これでもっとも基本的な認証方法はクリアです。
今回は、Google認証に取り組みます。うん、難しそうだ!分かってますよ~。でも、
とりあえずやってみる
うまくいかないなら、課題を分割して取り組む
でも、うまくいかないなら、いったん保留する
という方針です。きっと困難がありそうですが、チャレンジします!こちらの公式ドキュメントを参考にします。
ということで、Google認証行ってみよ~。
事前準備!SHA-1キーの生成
では、公式ドキュメントに沿って、進めます。まず最初に、「SHA-1キー」を生成する必要があります。
何それ?最初から壁にぶち当たりました…。キーは何かはさておき、SHA-1の解説からいきましょうか…。
ハッシュ関数SHA-1とは!?
※専門家ではないので、次の解説は「2割引き」くらいの感覚で読んてくださいね。詳しくは専門書等でご確認ください。
SHA-1は、任意の大きさのデータを入力して、固定長のハッシュ値(160ビット)を出力するハッシュ関数です。大きいデータでも、固有のハッシュ値を、たった!160ビットで返してくれます。だから、ハッシュ値は、「メッセージダイジェスト」なんて呼ばれたりします。
出力値から入力値を計算するのがとても難しい性質を利用して、パスワードを保存したり、ディジタル署名に使います。
ところが、別の入力値に対して、出力値が同じになる(衝突)ことがないことになっているのですが、SHA-1については、Googleが!衝突を発見しました(※)。これによって、SHA-1は、段階的に廃止されていく方向で、現在はSHA-2やSHA-3などを使うことが多くなっています。
Googleが衝突を発見したSHA-1を、Google認証で使うんですね…。急に置き換えられないこともありましょう…。
まずは、SHA-1とは何か、なんとなく分かったことにしましょう。
はい、本日はここまで。あまりに難しいので、これくらいにしないと私の頭がパンクします。
次回は、どうしてSHA-1キーが必要か、見ていくことにしましょう!
この記事が気に入ったらサポートをしてみませんか?