perlでパスワードを保存してたのだけど
phpで作り直すことになりました。
どう書き直せばよいのでしょう?

sub encrypt {
local($inpw) = $_[0];
local(@SALT, $salt, $encrypt);

@SALT = ('a'..'z', 'A'..'Z', '0'..'9', '.', '/');
srand;
$salt = $SALT[int(rand(@SALT))] . $SALT[int(rand(@SALT))];
$encrypt = crypt($inpw, $salt) || crypt ($inpw, '$1$' . $salt);
return $encrypt;
}

sub decrypt {
local($inpw, $logpw) = @_;
local($salt, $key, $check);

$salt = $logpw =~ /^\$1\$(.*)\$/ && $1 || substr($logpw, 0, 2);
$check = "no";
if (crypt($inpw, $salt) eq $logpw || crypt($inpw, '$1$' . $salt) eq $logpw)
{ $check = "yes"; }
return $check;
}