从 python 中的文件中提取所有证书
Extract all the certificates from a file in python
我是 python 的新手。我有一个包含可信 CA 证书的文件。文件可以有任意数量的这种格式的证书:
-----BEGIN CERTIFICATE----- sfsdfsfdsafs
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE----- MCUwIwYIKwYBBQUHA
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE----- OmyeEZm0CK6ZZZpAp
-----END CERTIFICATE-----
我想读取所有的证书并将其存储在我的数据库中。
读取此文件并获取所有证书的最有效方法是什么?
如果要在给定字符串中查找子字符串,请使用 "re" 模块。
import re
start = '-----BEGIN CERTIFICATE-----'
end = '-----END CERTIFICATE-----'
contents = open(FILENAME).read()
certificates = re.findall(f'{start}(.*?){end}',contents,re.DOTALL)
DOTALL 表示搜索换行符,而不是单独处理每一行。
我应该注意,您不应该像这样手动操作证书文件。如果您希望它们采用不同的格式或其他格式,您真的应该使用 openssl。
我是 python 的新手。我有一个包含可信 CA 证书的文件。文件可以有任意数量的这种格式的证书:
-----BEGIN CERTIFICATE----- sfsdfsfdsafs -----END CERTIFICATE-----
-----BEGIN CERTIFICATE----- MCUwIwYIKwYBBQUHA -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- OmyeEZm0CK6ZZZpAp -----END CERTIFICATE-----
我想读取所有的证书并将其存储在我的数据库中。 读取此文件并获取所有证书的最有效方法是什么?
如果要在给定字符串中查找子字符串,请使用 "re" 模块。
import re
start = '-----BEGIN CERTIFICATE-----'
end = '-----END CERTIFICATE-----'
contents = open(FILENAME).read()
certificates = re.findall(f'{start}(.*?){end}',contents,re.DOTALL)
DOTALL 表示搜索换行符,而不是单独处理每一行。
我应该注意,您不应该像这样手动操作证书文件。如果您希望它们采用不同的格式或其他格式,您真的应该使用 openssl。