DocSpace-client/thirdparty/Google.Authenticator/Google.Authenticator.WinTest/Form1.cs

61 lines
2.1 KiB
C#

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.IO;
using System.Linq;
using System.Net;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace Google.Authenticator.WinTest
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
this.txtAccountTitle.Text = "QRTestAccount";
this.txtSecretKey.Text = "f68f1fe894d548a1bbc66165c46e61eb"; //Guid.NewGuid().ToString().Replace("-", "");
}
private void btnSetup_Click(object sender, EventArgs e)
{
TwoFactorAuthenticator tfA = new TwoFactorAuthenticator();
var setupCode = tfA.GenerateSetupCode(this.txtAccountTitle.Text, this.txtAccountTitle.Text, this.txtSecretKey.Text, false, 3);
//WebClient wc = new WebClient();
using (MemoryStream ms = new MemoryStream(Convert.FromBase64String(setupCode.QrCodeSetupImageUrl.Replace("data:image/png;base64,", ""))))
this.pbQR.Image = Image.FromStream(ms);
this.txtSetupCode.Text = "Account: " + setupCode.Account + System.Environment.NewLine +
"Secret Key: " + this.txtSecretKey.Text + System.Environment.NewLine +
"Encoded Key: " + setupCode.ManualEntryKey;
}
private void btnTest_Click(object sender, EventArgs e)
{
TwoFactorAuthenticator tfA = new TwoFactorAuthenticator();
var result = tfA.ValidateTwoFactorPIN(txtSecretKey.Text, this.txtCode.Text);
MessageBox.Show(result ? "Validated!" : "Incorrect", "Result");
}
private void btnGetCurrentCode_Click(object sender, EventArgs e)
{
this.txtCurrentCodes.Text = string.Join(System.Environment.NewLine, new TwoFactorAuthenticator().GetCurrentPINs(this.txtSecretKey.Text));
}
private void btnDebugTest_Click(object sender, EventArgs e)
{
}
}
}