Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用iOS API从X.509证书中提取DN(可分辨名称)_Ios_Objective C_Security_X509 - Fatal编程技术网

使用iOS API从X.509证书中提取DN(可分辨名称)

使用iOS API从X.509证书中提取DN(可分辨名称),ios,objective-c,security,x509,Ios,Objective C,Security,X509,我需要使用iOS本机API从X.509证书中提取DN(可分辨名称)。不使用任何第三方库,如OpenSSL 我需要按照X.509标准的定义,将其提取为以下格式的字符串: CN=John Smith, OU=Test, O=IBM, C=GB 根据签名,我发现它似乎返回了我想要的东西: CFDataRef SecCertificateCopyNormalizedSubjectSequence(SecCertificateRef certificate); 此方法返回DER编码的序列。方法标题注释

我需要使用iOS本机API从X.509证书中提取DN(可分辨名称)。不使用任何第三方库,如OpenSSL

我需要按照X.509标准的定义,将其提取为以下格式的字符串:

CN=John Smith, OU=Test, O=IBM, C=GB
根据签名,我发现它似乎返回了我想要的东西:

CFDataRef SecCertificateCopyNormalizedSubjectSequence(SecCertificateRef certificate);
此方法返回DER编码的序列。方法标题注释说明:

主题是SecItemCopyMatching使用的格式的序列。 返回的内容是DER编码的X.509可分辨名称。暂时 显示主题的版本,调用SecCertificateCopyValues

问题是,SecCertificateCopyValues方法仅适用于macOS

是否有其他方法可以使用iOS可用API从返回的数据中提取DER编码值的字符串表示形式