gpt4 book ai didi

security - 高级 SSL : Intermediate Certificate Authority and deploying embedded boxes

转载 作者:太空宇宙 更新时间:2023-11-03 12:43:32 25 4
gpt4 key购买 nike

好的,高级 SSL 女孩们 - 我将在两天后增加悬赏,因为我认为这是一个复杂的主题,值得深思熟虑的人给予奖励。

这里的一些假设很简单:假设,或者更准确地说是有希望的猜测。认为这是一个脑筋急转弯,简单地说“这是不可能的”没有捕获要点。

如果您做过“类似”的事情,欢迎使用替代和部分解决方案,个人经验。即使我的整个计划有缺陷,我也想从中学到一些东西。

这是场景:

我正在嵌入式 Linux 系统上进行开发,并希望其 Web 服务器能够提供开箱即用的无障碍 SSL。这是我的目标设计标准:

必备:

  • 我不能让用户将我自己开发的 CA 证书添加到他们的浏览器
  • 我不能让用户向他们的浏览器添加静态生成的(在制造时)自签名证书
  • 我不能让用户向他们的浏览器添加动态生成的(在启动时)自签名证书。
  • 我不能默认为 HTTP 并为 SSL 启用/禁用切换。它必须是 SSL。
  • 嵌入式盒子和网络浏览器客户端可能有也可能没有互联网访问权限,因此必须假设在没有互联网访问权限的情况下也能正常运行。我们唯一可以依赖的根 CA 是操作系统或浏览器附带的根 CA。让我们假设该列表在浏览器和操作系统之间“基本”相同 - 即,如果我们依赖它们,我们将有大约 90% 的成功率。
  • 我不能使用夜间操作,即“Fast Eddie 的 SSL 证书清算所——价格如此之低,我们的服务器必须被黑客入侵!”

  • 乐于助人:
  • 我不希望用户警告说证书的主机名与浏览器中的主机名不匹配。我认为这是一个很好的选择,因为它可能是不可能的。

  • 不想:
  • 我不想为每个盒子提供相同的静态 key 集。 “不能”列表暗示了这种情况,但我知道风险。

  • 是的,我知道..
  • 我可以并且确实为用户提供了一种机制来上传他们自己的证书/ key ,但我认为这种“高级模式”超出了这个问题的范围。如果用户足够先进,可以拥有自己的内部 CA 或购买 key ,那么他们很棒,我喜欢他们。

  • 思考帽时间

    我在 SSL 方面的经验是生成由“真实”root 签名的证书/ key ,以及通过制作我自己的内部 CA、分发内部“自签名”证书来加强我的游戏。我知道您可以链接证书,但我不确定操作顺序是什么。即浏览器是否“走上”链看到有效的根 CA 并将其视为有效证书 - 或者您是否需要在每个级别进行验证?

    我遇到了 intermediate certificate authority 的描述这让我开始思考潜在的解决方案。我可能已经从“简单的解决方案”变成了“噩梦模式”,但是否有可能:

    疯狂的想法 #1
  • 获取由“真实”CA 签名的中间证书颁发机构证书。 ( ICA-1 )
  • ROOT_CA -> ICA-1
  • 该证书将在制造时用于为每个盒子生成一个唯一的无密码子中间证书颁发机构对。
  • ICA-1 -> ICA-2
  • 使用 ICA-2 生成唯一的服务器证书/ key 。这里的警告是,您能否为 IP(而不是 DNS 名称?)生成 key /对?即一个潜在的用例是用户最初通过 http 连接到盒子,然后使用重定向 URL 中的 IP 将客户端重定向到 SSL 服务(这样浏览器不会提示不匹配)。这可能是使房子折叠的卡片。由于必须在任何重定向发生之前建立 SSL 连接,我可以看到这也是一个问题。但是,如果这一切都神奇地起作用
  • 然后我可以在盒子改变 IP 时使用 ICA-2 来生成新的证书/ key 对,这样当 Web 服务器恢复时,它总是有一个“有效”的 key 链。
  • ICA-2 -> SP-1

  • 好吧,你真聪明

    最有可能的是,我那令人费解的解决方案不起作用——但如果确实如此,那就太好了。你有过类似的问题吗?你做了什么?权衡是什么?

    最佳答案

    基本上,不,你不能按照你希望的方式做到这一点。

    您不是中级 SSL 授权机构,也无法成为一名中级授权机构。即使你是,你也绝对不会被允许向消费者分发为任何域创建新的有效证书所需的一切,默认情况下在所有浏览器中都受信任。如果这是可能的,整个系统就会崩溃(并不是说它还没有问题)。

    您通常无法让公共(public)机构签署颁发给 IP 地址的证书,尽管在技术上没有什么可以阻止它。

    请记住,如果您真的在除防篡改的安全加密模块之外的任何其他内容中分发私钥,那么您的设备并没有真正受到 SSL 的保护。任何拥有其中一台设备的人都可以提取私钥(尤其是在没有密码的情况下)并对您的所有设备进行有效的、签名的 MITM 攻击。您不鼓励随意窃听,但仅此而已。

    您最好的选择可能是获取并签署有效 Internet 子域的证书,然后让设备响应该子域。如果它是传出路径中的网络设备,您可能可以执行一些路由魔术来使其响应域,类似于有多少围墙花园系统工作。您可以为每个系统设置类似“system432397652.example.com”的内容,然后为与该子域对应的每个框生成一个 key 。将直接 IP 访问重定向到域,或者让盒子拦截请求,或者在互联网上做一些 DNS 欺骗,以便域为每个客户端解析到正确的内部 IP。为此使用单一用途的主机域,不要与您的其他商业网站共享。

    为证书支付更多费用并不会真正使它们或多或少变得合法。当一家公司成为根 CA 时,它远非一朝一夕的操作。你应该检查一下是否StartSSL适合您的需求,因为它们不按证书收费。

    关于security - 高级 SSL : Intermediate Certificate Authority and deploying embedded boxes,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7196728/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com