C#에서 임의의 암호 생성

Fil Zjazel Romaeus Villegas 2023년10월12일
C#에서 임의의 암호 생성

이 자습서에서는 System.Web.Security를 사용하여 C#에서 임의의 암호를 생성하는 방법을 보여줍니다.

C#System.Web.Security 방법을 사용하여 임의 암호 생성

.NET Framework는 GeneratePasswords 기능을 사용하여 특정 수의 영숫자가 아닌 문자를 포함하고 지정한 길이만큼 암호를 생성하는 데 사용할 수 있는 기능을 제공합니다. 이를 활용하려면 먼저 System.Web에 대한 참조를 추가했는지 확인해야 합니다. 이 참조를 추가하려면 다음 단계를 따르세요.

  • 솔루션 탐색기로 이동
  • 참조를 마우스 오른쪽 버튼으로 클릭
  • 참조 추가를 클릭합니다.
  • 왼쪽의 Assemblies 탭을 클릭합니다.
  • System.Web.dll 파일을 찾아 “확인"을 클릭합니다.

참조를 성공적으로 추가한 후 코드에서 using 문을 사용할 수 있습니다.

using System.Web.Security;

GeneratePassword 기능은 두 개의 입력을 허용합니다. 첫 번째, 생성할 비밀번호에 필요한 문자 수입니다. 두 번째 입력은 필요한 영숫자가 아닌 문자의 수를 나타냅니다. 생성된 암호는 그런 다음 코드에서 사용할 수 있는 문자열 변수로 반환됩니다.

예시:

using System;
using System.Web.Security;

namespace GeneratePassword_Example {
  class Program {
    static void Main(string[] args) {
      // Create a for loop to run the code 10 times
      for (int i = 0; i < 10; i++) {
        // Store the password generated into a string variable
        // The password will have a length of 8 characters and 3 non alphanumeric characters
        string generated_pass = Membership.GeneratePassword(8, 3);
        // Print the newly generated password to the console
        Console.WriteLine("Password " + (i + 1).ToString() + ": " + generated_pass);
      }

      Console.ReadLine();
    }
  }
}

위의 예에서 루프 내에서 GeneratePassword 기능을 10번 실행하여 생성된 모든 비밀번호가 어떻게 다른지 보여주고 입력 매개변수에 의해 설정된 요구 사항을 충족합니다.

출력:

Password 1: *X!2OL%8
Password 2: _0=[qjFq
Password 3: &zGiOR=#
Password 4: *Is8&]2j
Password 5: Dv-${$Pt
Password 6: *Gkr-B4.
Password 7: )e==gu3O
Password 8: X$+LRe(e
Password 9: *2Y[.gpJ
Password 10: .W=y1zF&

관련 문장 - Csharp Random