php Editor Strawberry x509 인증서에서 주체 이름을 문자열 형식으로 생성하는 것은 개발자가 인증서에서 주요 정보를 추출하는 데 도움이 될 수 있는 중요한 작업입니다. x509 인증서를 문자열 형식으로 구문 분석하면 발급자, 유효 기간, 공개 키 및 인증서의 기타 정보를 포함하여 인증서의 주체 이름을 얻을 수 있습니다. 이 프로세스는 보안 네트워크 통신을 구축하고, 인증서의 적법성을 확인하고, 사용자 개인 정보를 보호하는 데 중요합니다. PHP에서는 OpenSSL 확장이 제공하는 기능을 사용하여 이 기능을 구현하고 x509 인증서를 간단하고 효율적으로 처리할 수 있습니다.
x509.certificate에서 고유 이름을 생성하려고 합니다.
내가 예상하는 형식은 다음과 같습니다.
으아아아(일부 값을 라벨로 대체했습니다)
내 코드에서는 다음과 같이 dnqualifier 부분 없이 예상되는 문자열을 얻습니다.
으아아아여기, 2.5.4.46은 "dnqualifier"의 asn.1 개체 ID입니다. 참조: 링크 값은 16진수 문자열처럼 보입니다.
고유 이름을 예상 형식으로 가져오는 표준 방법(또는 간단한 해결 방법)이 있습니까? 즉, objectidentifier 대신 "dnqualifier"라는 텍스트가 나타나야 하며 16진수 대신 실제 문자열 값이 나타나야 합니다.
내 코드는 다음과 같습니다:
으아아아이 코드의 출력certificate.subject.string()
은 다음과 같습니다.
cn=<common_name>,ou=<org_unit>,o=<org>,2.5.4.46=#131c537771614a5531514c2449444e4846373755547a1f5749653955303d"
게다가
으아아아그리고
으아아아어느 쪽도 도움이 되지 않습니다.
표준 라이브러리는 제한된 속성 목록만 제공합니다.
으아아아다른 속성의 경우 개체 식별자를 이름으로 사용하고 가능한 경우 값을 16진수 문자열로 인코딩합니다((rdnsequence).string 참조).
으아아아맞춤형 스트링을 얻을 수 있는 손잡이는 제공되지 않습니다. 그래서 우리는 그것을 스스로 해야 합니다.
원하는 속성을 나열하고 certificate.subject.tordnsequence().string()
에서 반환된 문자열에 추가하는 것이 좋습니다. 이렇게:
출력:
으아아아위 내용은 문자열 형식으로 x509 인증서에서 주체 이름 생성의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!