use strict; use warnings; my $szUser = 'any_user'; my $szPassword = 'for_me_to_know'; my ($szOther, $szEncryptedPwd) = getpwnam($szUser); my $bValid = (crypt($szPassword, $szEncryptedPwd) eq $szEncryptedPwd); print $bValid ? 'Yes' : 'No'; print "\n";