C-land OpenSSL을 사용하여 X509 인증서의 도메인을 확인해야합니다.OpenSSL에서 인증서 도메인 확인
나의 이해는 라이브러리가 나는 대략 다음과 같은 알고리즘을 구현해야한다는 나를 위해이 작업을 수행하지 않는다는 것입니다다음 subjectAlternativeName 확장의 dnsName 필드가 존재하는 경우
- 을 그에게
name
설정 값. - 그렇지 않으면
name
을 제목의 CN 필드로 설정하십시오. name
을 요청한 호스트 이름과 비교하여 각 별표가 [A-Za-z0-9 _] +와 일치하지만 '도트'(.)는 허용하지 않습니다.
나는이 일을하기 위해 많은 코드가 있어야한다고 생각하지만 어떤 것도 발견하지 못했습니다.
누구든지이 예제를 찾을 수 있습니까? 아니면 내 알고리즘을 정상적으로 점검 할 수 있습니까?
편집 : 이것은 내가 생각해 낸 것입니다 : https://gist.github.com/2821083. OpenSSL이이 코드를 호출 코드로 남겨 두는 것이 이상하게 보입니다.
cert에서 찾은 값을 기반으로 값을 "설정"하는 대신 다른 방법으로해야합니다. 예상되는 SAN DNS 항목이 일치하는지 확인하십시오. SAN 확장에 여러 개의 DNS 항목이있을 수 있기 때문입니다. (RFC 6125의 와일드 카드 매칭에 대한보다 정확한 규칙이 있습니다, btw.) – Bruno