php 편집기 Strawberry에서는 X509v3 인증 키 식별자에 DirName과 일련 번호를 추가하는 방법을 소개합니다. 네트워크 통신에서 인증 키 식별자(X509v3)는 통신 당사자의 신원을 확인하는 데 사용되는 디지털 인증서입니다. DirName은 인증서 보유자의 이름을 나타내고, 일련번호는 인증서를 고유하게 식별하는 데 사용되는 번호입니다. DirName과 일련번호를 추가함으로써 인증서의 가독성과 고유성을 높이고, 통신의 보안성과 신뢰성을 향상시킬 수 있습니다. 다음으로 이를 수행하는 방법을 자세히 설명하겠습니다.
openssl과 go 코드를 사용하여 클라이언트 인증서를 생성하려고 합니다. 필요한 확장이 포함된 인증서를 생성하는 openssl 스크립트가 있고 go 코드를 사용하여 동일한 결과를 얻고 싶습니다.
openssl에서 사용하는 options.ext 파일에는 다음 확장자가 포함되어 있습니다.
으아아아현재 가지고 있는 openssl 스크립트는 다음과 같습니다.
으아아아인증서를 생성한 후 다음 명령을 사용하여 세부 정보를 볼 수 있습니다.
으아아아생성된 인증서의 구조는 다음과 같습니다.
으아아아다음과 같아야 합니다:
으아아아내 Go 코드에서는 x509 패키지를 사용하여 인증서를 생성합니다. 하지만 x509v3 인증 키 식별자 확장을 설정하는 방법을 잘 모르겠습니다. 내 Go 코드의 관련 부분은 다음과 같습니다.
으아아아x509v3 인증 키 식별자에 디렉터리 이름과 일련 번호를 어떻게 추가하나요?
내가 이것을 시도할 때:
으아아아결과는 다음과 같습니다.
basicconstraints=ca:false authoritykeyidentifier=keyid,issuer subjectkeyidentifier=hash keyusage=digitalsignature extendedkeyusage=clientauth
authoritykeyidentifiervalue
可以使用 asn1.marshal 生成。下面的演示根据 rfc 5280定义了 struct authkeyid
> 이 구조를 사용하여 값을 생성합니다.
16진수 인코딩 값은 다음과 같습니다.
으아아아16진수 문자열은 asn.1 :
과 같은 자바스크립트 디코더를 사용하여 생성할 수 있습니다.다음 C# 데모는 동일한 결과를 제공합니다.
으아아아업데이트:
이것은 이메일 주소가 포함된 gen
의 업데이트된 버전입니다:
oid는 더 이상 사용되지 않습니다(http://oid-info.com/get/1.2.840.113549.1.9.1 참조). .net에도 포함되지 않습니다.
위 내용은 X509v3 인증 키 식별자에 DirName 및 일련 번호를 추가하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!