m2crypto의 set_client_ca_list_from_file ()와 load_verify_info ()의 차이점은 무엇이며 언제 각각을 사용 하시겠습니까?

StackOverflow https://stackoverflow.com/questions/1848160

  •  13-09-2019
  •  | 
  •  

문제

그만큼 M2Crypto 라이브러리 그것에 몇 가지 CA 관련 기능이 있습니다 ssl.context 객체, 그러나 문서는 특정 기능을 언제 사용할 것인지와 그 이유에 대해 매우 불분명합니다. 실제로, 거의 모든 사람들의 문서는 "컨텍스트에 적재 된"이므로 모두 똑같은 일을 할 가능성이 있습니다.

거기 있습니다 몇몇의 둘 다 사용합니다 set_client_CA_list_from_file() 그리고 load_verify_info(), 그러나 다른 유사한 기능도 있습니다 load_client_ca() 그리고 load_verify_locations().

클라이언트와 서버 조각을 모두 작성하고 있습니다. 어떤 기능을 사용해야하며 그 이유는 무엇입니까? 구체적으로 그들은 무엇을합니까?

편집하다:

내가 보는 코드를 살펴보십시오.

# Deprecated.
load_client_CA = load_client_ca = set_client_CA_list_from_file

그리고

# Deprecated.
load_verify_info = load_verify_locations

그래서 그것은 조금 도움이됩니다. 이것은 우리를 두 가지 기능으로 이끌어줍니다. set_client_CA_list_from_file() 그리고 load_verify_locations(). 그러나 나는 여전히 둘 사이의 차이를 말할 수 없습니다.

도움이 되었습니까?

해결책

서버가 클라이언트가 인증서를 제시하도록 요구하는 경우 발행자 전화를 지정하여 고객 인증서의 유효한 발행자 인 사람을 제한 할 수 있습니다. set_client_ca_list_from_file. 이것은 실제로 꽤 드 rare니다.

클라이언트는 load_verify_locations. 거의 모든 고객이이를 수행해야합니다.

클라이언트와 서버 모두 호출 할 수 있습니다 load_cert 자체 인증서를 설정합니다. 서버는 거의 항상이 작업을 수행해야합니다. 클라이언트는 서버가 클라이언트가 인증서를 제시하도록 요구하는 경우에만이 작업을 수행해야 할 것입니다.

사본을 선택하는 것이 좋습니다 OpenSSL을 통한 네트워크 보안 John Viega, Matt Messier 및 Pravir Chandra, ISBN 059600270X, 이러한 문제를보다 자세히 설명해야합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top