【问题标题】:create DER certificate in os x在 os x 中创建 DER 证书
【发布时间】:2016-06-09 12:00:38
【问题描述】:

这个问题很简单。如何仅使用 SecurityFramework API 在 osx 中创建 x509 证书。我想用我用 SecKeyGeneratePair 生成的公钥创建证书。

到目前为止,我只在文档中找到了 SecCertificateCreateWithData 方法,但这已经需要 x509 证书作为参数,所以这对我来说不起作用。我找不到任何可以从头开始创建证书的方法。我对这个话题也不是很有经验,所以我很可能在这里遗漏了一些东西。非常感谢任何帮助。

我的项目也不能选择使用 openSSL 或任何已弃用的 API。

我已经遇到过这个问题Creating x509 certificates programmatically in Objective-C using the Security Framework,但是由于这已经一岁了,我想知道现在是否有可能这样做,

【问题讨论】:

    标签: objective-c macos security-framework


    【解决方案1】:

    我认为使用安全框架实际上是不可能的。 AFAICT,在 iOS/OSX 上执行此操作的唯一方法是使用(已弃用)CDSA 库或(已弃用)OpenSSL 库。

    https://github.com/snej/MYCrypto 有一个库可以做到这一点,但它使用了一些(已弃用的)CDSA/CSSA 调用,并且依赖于同一作者的许多实用程序/库函数,我发现这些函数没有帮助.

    我建议您在 bugreporter.apple.com 上提交一个错误,以表达您希望能够生成 x.509 证书的愿望。我有!

    编辑:MYCrypto 作者 (snej) 还有一个简化版本 MYAnonymousIdentity,它采用预先创建的 x.509 自签名证书,并使用最少的 SDK 调用将新的 RSA 密钥/签名注入现有证书.它还使用了他的一些实用程序/库的东西,但我已经为我自己的项目剥离了所有这些内容,你可以找到修改后的代码、我用来生成预装证书的脚本(以及一个包含所有修改的偏移量)在:https://github.com/Hammerspoon/hammerspoon/tree/master/extensions/httpserver

    发件人:
    Creating x509 certificates programmatically in Objective-C using the Security Framework

    【讨论】:

    • 感谢您的回答,但这似乎不是我要搜索的内容,因为我不想导入特定密钥,而是使用从 SecKeyGeneratePair 创建的密钥创建证书,这已经提供了一个 SecKeyRef 对象。用公钥或私钥加密的东西也不是我面临的问题。
    • 其他一些可能有帮助的问题:stackoverflow.com/questions/29296657/… 以另一种方式举例:stackoverflow.com/questions/7715426/… 希望对您有所帮助...
    猜你喜欢
    • 2011-10-18
    • 2016-05-03
    • 1970-01-01
    • 2013-12-25
    • 1970-01-01
    • 2021-02-12
    • 2014-02-24
    • 2019-02-12
    • 2021-04-17
    相关资源
    最近更新 更多