Movable Type 6.0 (mt_author テーブル author_password カラム) で使用する暗号化されたパスワードを作成するため、ソースファイルを参考にスクリプト化しました。
ソースファイルを展開したディレクトリを /home/tools/appli/mt.60/ とし、文末に添付したスクリプトを mkhash.pl として保存した場合、引数に文字列を指定することで、管理画面での操作と同様に暗号化されたパスワードが出力されます。
perl mkhash.pl raw_password
MT/Author.pm set_password() を参考に必要な個所のみ切り出しています。Movable Type 5.0 では Perl 標準の crypt() で処理出来ましたが、MT/Auth/MT.pm is_valid_password() を参照する限り、3 タイプの暗号化方式に対応しています。
添付したスクリプトでは、標準で採用されている方式を参考にしました。
#!/usr/bin/perl -w use strict; use lib qw ( /home/tools/appli/mt.60/lib /home/tools/appli/mt.60/extlib ); use MT::Util; my $pass = $ARGV[0]; my @alpha = ( 'a' .. 'z', 'A' .. 'Z', 0 .. 9 ); my $salt = join '', map $alpha[ rand @alpha ], 1 .. 16; print '{SHA}' . $salt . '$' . MT::Util::perl_sha1_digest_hex($salt . $pass);
- パスワード暗号化 (WordPress 4.1)
- パスワード暗号化 (Movable Type 6.0)
- パスワード暗号化 (Movable Type 6.1)
- パスワード暗号化 (EC-CUBE 2.11)