> 백엔드 개발 > C++ > .NET 4.7.2 이상을 사용하여 C#에서 자체 서명된 인증서를 어떻게 쉽게 만들 수 있습니까?

.NET 4.7.2 이상을 사용하여 C#에서 자체 서명된 인증서를 어떻게 쉽게 만들 수 있습니까?

Barbara Streisand
풀어 주다: 2025-01-13 09:10:44
원래의
245명이 탐색했습니다.

How Can I Easily Create Self-Signed Certificates in C# Using .NET 4.7.2 and Above?

C#에서 자체 서명 인증서 만들기

C#에서 자체 서명된 인증서를 생성하는 것은 로컬 암호화 및 기타 비통신 목적을 위한 편리한 솔루션입니다. 일반적으로 Crypt32.dll과 관련된 P/Invoke 방법이 사용되지만 이 게시물에서는 System.Security.Cryptography.X509Certificates 네임스페이스(.NET 4.7.2 이상에서 사용 가능)를 사용하는 더 간단한 방법을 살펴봅니다.

P/Invoke 사용 방지

P/Invoke에 의존하는 대신 CertificateRequest 클래스를 사용하여 인증서를 생성할 수 있습니다. 이 접근 방식은 프로세스를 단순화하고 복잡한 매개변수의 필요성을 줄이며 보다 간단한 솔루션을 보장합니다.

인증서 생성

자체 서명 인증서를 만들려면 다음 단계를 따르세요.

  1. ECDsa.Create()를 사용하여 비대칭 키 쌍을 생성합니다.
  2. 필수 일반 이름(CN), 키 쌍 및 해시 알고리즘을 사용하여 요청을 초기화하려면 CertificateRequest 객체를 사용하세요.
  3. CreateSelfSigned를 호출하여 지정된 유효 기간이 있는 인증서를 생성합니다.

수출증명서

인증서가 생성되면 다양한 형식으로 내보낼 수 있습니다.

  • PFX(PKCS #12): 공개 키와 개인 키가 포함되어 있습니다.

    <code class="language-csharp">  File.WriteAllBytes("c:\temp\mycert.pfx", cert.Export(X509ContentType.Pfx, "P@55w0rd"));</code>
    로그인 후 복사
  • CER(공개 키만): 개인 키가 포함되지 않은 Base64 인코딩 인증서입니다.

    <code class="language-csharp">  File.WriteAllText("c:\temp\mycert.cer", Convert.ToBase64String(cert.Export(X509ContentType.Cert), Base64FormattingOptions.InsertLineBreaks) + "\r\n-----END CERTIFICATE-----");</code>
    로그인 후 복사

위 내용은 .NET 4.7.2 이상을 사용하여 C#에서 자체 서명된 인증서를 어떻게 쉽게 만들 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿