Python M2Crypto和x27之间有什么区别;s从文件()中设置客户端列表并加载验证信息()以及何时使用它们?
的上有一些与CA相关的函数,但文档中不清楚何时使用某些函数以及为什么使用这些函数。事实上,几乎所有的文档都是“将CA证书加载到上下文中”,因此它们似乎都做了相同的事情 有两种方法使用Python M2Crypto和x27之间有什么区别;s从文件()中设置客户端列表并加载验证信息()以及何时使用它们?,python,m2crypto,Python,M2crypto,的上有一些与CA相关的函数,但文档中不清楚何时使用某些函数以及为什么使用这些函数。事实上,几乎所有的文档都是“将CA证书加载到上下文中”,因此它们似乎都做了相同的事情 有两种方法使用从文件()设置客户机CA列表()和加载验证信息(),但也有其他类似的功能,如加载客户机CA()和加载验证位置() 我正在编写客户端和服务器部分。我应该使用什么功能?为什么?他们具体做什么 编辑: 通过查看代码,我看到: # Deprecated. load_client_CA = load_client_ca = s
从文件()设置客户机CA列表()
和加载验证信息()
,但也有其他类似的功能,如加载客户机CA()
和加载验证位置()
我正在编写客户端和服务器部分。我应该使用什么功能?为什么?他们具体做什么
编辑:
通过查看代码,我看到:
# Deprecated.
load_client_CA = load_client_ca = set_client_CA_list_from_file
及
所以这有点帮助。这将我们归结为两个函数:
set\u client\u CA\u list\u from\u file()
和load\u verify\u locations()
。但是我仍然无法区分两者之间的区别。如果服务器要求客户端提供证书,它可以通过指定调用证书的颁发者来限制谁是客户端证书的有效颁发者。这实际上相当罕见
客户端通过调用指定谁是有效的服务器证书颁发者。几乎所有的客户都应该这样做
客户端和服务器都可以调用来设置自己的证书。服务器几乎应该总是这样做。只有当服务器要求客户端提供证书时,客户端才应该这样做
我建议您选择一份由John Viega、Matt Messier和Pravir Chandra编写的带有OpenSSL的网络安全,ISBN 059600270X,这应该会更详细地阐明这些问题
# Deprecated.
load_verify_info = load_verify_locations