稍微解释一下情况:
我正在构建一个使用的iOS应用程序 SSL固定 。我创建了一个自签名证书颁发机构,它向我的Web服务器颁发SSL证书,并且CA的证书与应用程序捆绑在一起进行验证。我想用 letsencrypt 为Web服务器创建SSL证书,以便Web浏览器隐式信任它们,但是我的CA不会签署它们的证书,因此这在应用程序中不起作用。 (值得注意的是,letsencrypt颁发的证书非常短暂,因此不能直接用于SSL固定)。
所以我想使用letsencrypt生成证书,然后与我的CA交叉签名。这可能吗?
1
这个 威力 更好 security.stackexchange.com
—
Raystafarian
不捆绑根CA证书,捆绑最终证书。只需使用常规的,商业的,2年期的证书,每年发布新版本的应用程序,捆绑2个重叠证书。您的证书固定客户端很容易接受多个证书中的一个。或者让您的www由letsencrycpt签名,但在子域上签名API并进行自签名。您的应用访问WWW或用户通过浏览器访问API没有任何意义,所以我真的没有感觉到您的问题。
—
Agent_L
正如@Agent_L建议的那样,我建议为app api使用单独的(子)域。
—
zelanix
@Agent_L这个问题纯属我自己。我不 需要 要做到这一点,只会让我更高兴知道这是一个 有效 SSL证书,但仍然固定。这个问题只是我问“这可以做到吗?”,并不一定说我不能继续这样做。
—
Ell Neal
@Agent_L:“有效”本身在这里有各种含义 - 例如,在OpenPGP圈子中(通常也涉及X.509),它与格式/语法有效性无关,但与信任有关证书带有的签名。自签名的X.509证书不会格式错误,但仍然可能无效,因为没有信任锚来验证它...
—
grawity