がるの健忘録

エンジニアでゲーマーで講師で占い師なおいちゃんのブログです。

パスワード暗号処理変更用 大雑把草案

昨今「MD5やばいよねぇ」的な話とかいろいろと出ておりまするが。
とりあえず「さっくりと変更させる手法」草案をのっけてみます。
…草案なんで、まだ全然洗練されてませんが。多分とりあえずこれである程度なんとかなるんじゃないかなぁと。
ってなわけで、毎度おなじみ「memo」でございます。


変更箇所は3箇所。


テーブルに対して
「new_password」とかいうノリのカラムを一つ追加しておく。
ALTER TABLE を使うことになるんだろうなぁと。…ちょっと怖いSQLなので、バックアップなどは万全に。


認証直後の処理


if (auth()) {
 if ("" eq new_password) {
  new_password(新しい暗号処理(入力したRAWパスワード)); // 新しいパスワードの設定
  password(""); // 古いパスワードの除去
 }
}
SQL等で認証をするプログラム部分
んっと。if文の順番は、ある時間軸で適当に前後を変更したほうが効率はよいです。
まぁ昨今「if文一つ分の処理コスト」にそこまで意識を払う必要があるんかい、って気もいたしますが。

if (password() eq "") {
 new_passwordカラムを使っての認証処理
} else {
 passwordカラムを使っての認証処理
}
とりあえず順番的には
・テーブル変更して
・認証部分のプログラム書いてテストして
・認証直後の追加処理入れて
の順番かな?
テストさえちゃんと出来てれば、ほぼシームレスに移行可能かと思われるです、はい。


ちなみに、プログラム部分は


if (password() eq "") {
 new_passwordカラムを使っての認証処理
} else {
 passwordカラムを使っての認証処理

 変更処理
 new_password(新しい暗号処理(入力したRAWパスワード)); // 新しいパスワードの設定
 password(""); // 古いパスワードの除去
}

でもいいと思うんだけど…こっちのほうが散らからなくていいのかな???
既存のソース次第なのかも。ちょっとお悩み。