渡した文字列を元にパスワードを生成してみる

元ネタ: 高反発マットレスの選び方 | アフィブログに騙されない為の高反発マットレス手記

use strict;
use warnings;

use Digest;
use MIME::Base64;

my $clip = $ARGV[0] =~ m{^[-/]clip$}i ? shift : undef;
$_ = $ARGV[0];

print $_ = encode_base64(Digest->new('SHA1')->add($_)->digest);

if ($^O eq 'MSWin32' and $clip) {
    eval 'require Win32::Clipboard';
    exit if $@;
    chomp;
    Win32::Clipboard->Set($_);
}

とりあえずWin32で第一引数が/clipみたいな感じならクリップボードにコピーするようにはしてあります。Digest->new->add('foo')->b64digestだとパディングしないようのでMIME::Base64を使ってます。なんかもっといい感じにかけそうだけど眠いからやめゆ。おやすみ。