Karakter Password dalam C# Console

0
22

Adakalanya ketika kita membuat aplikasi berbasis console di C#, kita ingin menerapkan inputan username dan password. Nah, jamaknya penulisan password, tentunya karakternya tidak dimunculkan sebagaimana aslinya atau biasanya hanya tampil dalam bentuk karakter seperti (*). Hal demikian diistilahkan dengan character masking.

Lalu, bagaimana kita membuatnya dalam C# console ? Cukup mudah ternyata kawan. Tinggal amati dan uji coba source code di bawah ini. Bagi kawan yang terbiasa main programming, pasti sangat paham dengan melihat alurnya saja. Sebagai catatan, untuk uji coba code ini, kami menggunakan Visual Studio 2012.

static void Main(string[] args)
{
Console.WriteLine("################################################################");
Console.WriteLine(" CONTOH INPUT PASSWORD DENGAN MASKING ");
Console.WriteLine("################################################################");
Console.Write("Masukkan username: ");
string username = Console.ReadLine();
string password = "";
Console.Write("Masukkan password: ");
ConsoleKeyInfo keyInfo;

do
{
keyInfo = Console.ReadKey(true);
// Skip bila yang ditekan adalah Backspace atau Enter
if (keyInfo.Key != ConsoleKey.Backspace && keyInfo.Key != ConsoleKey.Enter)
{
password += keyInfo.KeyChar;
Console.Write("*");
}
else
{
if (keyInfo.Key == ConsoleKey.Backspace && password.Length > 0)
{
// Hapus karakter terakhir bila Backspace ditekan
password = password.Substring(0, (password.Length - 1));
Console.Write("\b \b");
}
}
}
// Stop pembacaan password bila tombol ENTER ditekan
while (keyInfo.Key != ConsoleKey.Enter);
Console.WriteLine();
Console.WriteLine("----------------------------------------------------------------");
Console.WriteLine("Selamat datang, " + username.ToUpper() + "!");
Console.WriteLine("Password anda : " + password);

Console.ReadKey();
}

LEAVE A REPLY

Please enter your comment!
Please enter your name here