use Win32::Console ; $cons = new Win32::Console(STD_INPUT_HANDLE) || die "Can't open new console\n"; $oldMode = $cons->Mode ; $cons->Mode(~(ENABLE_LINE_INPUT|ENABLE_ECHO_INPUT) & $oldMode ); while (1) { $char = $cons->InputChar(1) ; last if ord $char == 13 ; print '*' ; $password .= $char ; } print "\nPassword was $password\n" ; $cons->Mode($oldMode) ;