Pyopenssl Python OpenSSL:如何创建X509Name对象

Pyopenssl Python OpenSSL:如何创建X509Name对象,pyopenssl,Pyopenssl,我需要按颁发者过滤传入的X509证书,为此我使用Pyhton的OpenSSL.crypto。但是,我没有找到如何创建一个X509Name对象作为常量,我需要将它与我从cert.get_issuer()获得的值进行比较。我能想到的最好的办法是,创建一个新的X509Name就是使用 name = crypto.X509Name(crypto.X509().get_subject()) 然后通过 name.__setattr__(att_name, attr_value) 但是,仅为了进行比较,

我需要按颁发者过滤传入的X509证书,为此我使用Pyhton的OpenSSL.crypto。但是,我没有找到如何创建一个X509Name对象作为常量,我需要将它与我从cert.get_issuer()获得的值进行比较。

我能想到的最好的办法是,创建一个新的X509Name就是使用

name = crypto.X509Name(crypto.X509().get_subject()) 
然后通过

name.__setattr__(att_name, attr_value)

但是,仅为了进行比较,最好使用类的hash()内置函数,该函数返回整个名称的哈希值,或者进行每个属性的比较,以不同的方式表达问题:在X509Name对象上进行字符串比较安全吗?我记得在LDAP中,DNs上的字符串呈现在某些情况下可能依赖于实现。