Skip to main content

How to Generate Random OTP(One Time Passsword) in ASP.NET using C#

Here I will explain how to generate random one time password or otp in asp.net using c#.
In this we will generate otp using capital and small letters and numbers.

Default.aspx :

<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
    <title>Generate Random OTP in Asp.net(C#),Asp.net using C#</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <asp:Button ID="BtnGenerateOTP" Text="Generate" runat="server"           OnClick="BtnGenerateOTP_Click" /><br />
        <asp:Label ID="lblDisplayOTP" runat="server" />
    </div>
    </form>
</body>
</html>

Default.aspx.cs

  protected void BtnGenerateOTP_Click(object sender, EventArgs e)
 {
            // declare array string to generate random string with combination of small,capital letters and numbers
            char[] charArray = "abcdefghijklmnopqrstuvwxyz0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ".ToCharArray();
            string strrandom = string.Empty;
            Random objrandom = new Random();
            int noofcharacters = 7;//change OTP length as per your requirment like 1,2,3,4,5,6
            for (int i = 0; i < noofcharacters; i++)
            {
                //It will not allow Repetation of Characters
                int pos = objrandom.Next(1, charArray.Length);
                if (!strrandom.Contains(charArray.GetValue(pos).ToString()))
                    strrandom += charArray.GetValue(pos);
                else
                    i--;
            }
            lblDisplayOTP.Text = strrandom;
   }

Comments

Popular posts from this blog

How To Implement NLog With WebAPI In Asp.Net(C#).

What is NLog? NLog is a flexible and free logging platform for various .NET platforms, including .NET standard. NLog is easy to apply and it includes several targets (database, file, event viewer). Which platform support it? .NET Framework 3.5, 4, 4.5, 4.6 & 4.7 .NET Framework 4 client profile Xamarin Android Xamarin iOS Windows Phone 8 Silver light 4 and 5 Mono 4 ASP.NET 4 (NLog.Web package) ASP.NET Core (NLog.Web.AspNetCore package) .NET Core (NLog.Extensions.Logging package) .NET Standard 1.x - NLog 4.5 .NET Standard 2.x - NLog 4.5 UWP - NLog 4.5 There are several log levels. Fatal : Something terrible occurred; the application is going down  Error : Something fizzled; the application might possibly proceed Warn : Something surprising; the application will proceed  Info : Normal conduct like mail sent, client refreshed profile and so on.  Debug : For troubleshooting; the executed question, the client confirmed, ...

Generating serial numbers and keys in Asp.net(C#).

here we are using GUID for generate serial numbers and GUID is always unique. Example format: XXXX-XXXX-XXXX-XXXX-XXXX-XXXX-XXXX. Guid SerialKeyGuid = Guid.NewGuid(); string AccessKey = SerialKeyGuid.ToString("N"); string AccessKeyLength = AccessKey.Substring(0, 28).ToUpper(); char[] serialArray = AccessKeyLength.ToCharArray(); string SerialNumber = ""; int P = 0; for (int B = 0; B < 28; B++) {                 for (P = B; P < 4 + B; P++)                 {                     SerialNumber += serialArray[P];                 }                 if (P == 28)                 {                     break;                 }         ...