首页
社区
课程
招聘
[原创]卫星互联网最难的不是加密,是几百万把钥匙怎么管(一)
发表于: 6天前 195

[原创]卫星互联网最难的不是加密,是几百万把钥匙怎么管(一)

6天前
195

冷战时期,美军保护卫星通信的办法之一,是派人把密钥送到每一个节点。这个办法很笨,但它成立——前提是节点只有几百个。

延伸阅读:RFC 5280(X.509 证书与撤销机制标准)|下篇会用到 OpenSSL 做实测

卫星互联网的安全短板不在算法,在密钥的生命周期。几千颗卫星在动、上千万台终端散在用户手里,密钥怎么生成、怎么分发、多久轮换一次、丢了多久能拉黑——这几个问题的答案,比"用了 AES 还是国密"更能说明一个星座到底安不安全。

这是上下两篇里的上篇,先把问题讲清楚:密码学到底在解决什么,冷战时那套办法为什么成立,以及它在低轨星座面前是怎么失效的。下篇进入具体的五个环节,并用 OpenSSL 把"撤销窗口"这类抽象说法量成真实数字。


先对齐三个词:加密、签名、哈希

后面会反复出现对称密钥、私钥、签名、根信任这些词。它们不难,但混着用容易糊,先花两分钟对齐。

一个常见的误解是把密码当成"暗语"——两个人约定"天气真好"表示"明天见面"。实际上密码是一套规则,而秘密不在规则里,在密钥里。

AES 怎么工作是公开的,RSA 的原理写在教科书上。全世界都知道算法长什么样,安全性依然成立,因为拿不到密钥就还原不出原文。所以一句话可以记住:算法可以公开,密钥不能。

密码学在通信里主要干三件不同的事,分别对付三种不同的坏事。

对称加密:解决"别人能看到"

同一把钥匙既上锁也开锁。像一个信封,锁和开用的是同一把钥匙。

优点是快,适合大流量。缺点很致命——双方得先有同一把钥匙,而"怎么把钥匙安全地交到对方手上"本身就是个难题。AES 是这一类里最常见的。

拿 OpenSSL 走一遍就很直观:

# 用一把口令加密(-a 表示输出成可打印的 Base64)
echo
"明天下午三点开会" | openssl enc -aes-256-cbc -pbkdf2 -a -pass pass:demo-key-123
# 输出类似:U2FsdGVkX1/JaXQOvPw2d9f7dg7MTQZPJBnQiyRXYTEXhpiRy5xWyc7GaYzd2jrH


# 换成 -d 解密,口令必须一模一样

echo
'U2FsdGVkX1/JaXQOvPw2d9f7dg7MTQZPJBnQiyRXYTEXhpiRy5xWyc7GaYzd2jrH' \
  | openssl enc -d -aes-256-cbc -pbkdf2 -a -pass pass:demo-key-123
# 还原出:明天下午三点开会

加密和解密用的是同一个 demo-key-123,这就是"对称"的意思。把口令改一个字符,解密就会失败——算法一直是公开的 AES,真正决定成败的是那把口令。

非对称加密:解决"钥匙怎么送过去"

两把钥匙成对出现:公钥可以随便给人,私钥自己死守。公钥加密的东西只有私钥能解开,反过来也成立。

像一个邮箱,谁都能往里投信(用公钥),只有你能打开取信(用私钥)。好处是不必事先交换秘密。代价是慢,不适合直接加密大量数据。

所以真实系统里两者是配合用的:用非对称的方式把一把对称密钥安全地交给对方,之后的正式通信全走对称加密。记住这个分工,第一节里冷战方案为什么"绕开协商"就好理解了。

反过来用私钥,就得到数字签名:我用私钥签一下,任何人都能用我的公钥验证这确实出自我手。它证明的不是"内容保密",而是"来源可信"。

哈希:解决"内容被人改过"

哈希函数把任意长的内容压成一个固定长度的指纹,而且是单向的——从指纹回推不出原文,内容改一个字节,指纹就完全变样。

这个可以直接在终端里试,只差一个零:

# 取前 16 位便于对比(macOS 用 shasum,Linux 用 sha256sum)
printf
'请转账 1000 元'  | shasum -a 256 | cut -c1-16
printf
'请转账 10000 元' | shasum -a 256 | cut -c1-16

输出:

f95a74da6a30cd65
a0876be4e3e8ba45

多一个零,指纹面目全非,两者没有任何相似之处。所以对方拿到内容和指纹一比,就知道路上有没有被人动过手。

哈希本身不保密任何东西,它保的是没被改。实际用法是和签名搭在一起:发送方对内容的哈希值签名,接收方验签,同时得到"确实是他发的"和"内容没被篡改"两个结论。

三件事对应三种坏事,缺一个都不行:

手段

防的是

典型算法

加密

被人看到

AES(对称)、RSA(非对称)

签名

被人冒充

RSA、椭圆曲线

哈希

被人篡改

SHA-256

打个比方:加密是把信装进信封,签名是在信上落款,哈希是加盖火漆——三件事互不替代。这一点在文章后面还会再撞上一次。

至于本文的主角,是这套体系里最不起眼的一环:上面所有手段都建立在"密钥没出事"这个前提上。而密钥会不会出事,不由算法决定。


1960 年代的笨办法

1960 年代,美国国防部需要和分布在全球的力量保持通信:欧洲的北约部队、太平洋的舰队、地下的导弹发射基地。内容是最高级别的机密。

之前用电话线和报文,缺陷很直接——线可以被搭,报文可以被截。卫星通信解决了覆盖问题,却带来一个更难受的性质:信号是无线的,无线意味着任何地方都能收

对手不需要接触你的线路,一个接收机就够了。更糟的是你不知道对方在哪里收、什么时候开始收,甚至不知道自己已经被截获。

所以加密是必须的。但当时的工程师撞上一个很实际的障碍。

地球同步轨道高度约 36000 公里,光速每秒 30 万公里,信号一个往返大约 0.24 秒

这 0.24 秒意味着,任何需要多轮往返的密钥协商都变得昂贵。想在通信开始前先协商一把临时密钥,那几轮握手的时间成本,放在一条本来就不稳、还容易丢包的信道上,不划算。

于是方案反过来了:不在信道上协商密钥,提前把密钥放好。

  • • 通信两端各放一台密码设备,负责加密和解密

  • • 密钥事先通过物理安全的渠道同步到两端,不在开放信道上交换

  • • 用对称加密,因为速度快,符合实时性要求

  • • 密钥是长周期的,提前分配而非临时生成

  • • 加上签名验证和纠错,因为卫星信号会被干扰、会丢包

每一条都对应一个具体约束,没有一条是为了好看。

对照前面那个分工就能看出这套方案的特别之处:它把"用非对称加密交换对称密钥"这一步整个删掉了,改用人腿代替。押运密钥,本质上是用物理世界的安全,换掉了数学世界的那一次握手。

它很笨,但它对。

这套方案的四个隐含前提

押运密钥能成立,靠的不是密码学,而是四个当时理所当然的前提:

  • 节点数量少——几百个通信点,派人跑一趟是可接受的成本

  • 位置固定——基地、舰队指挥所、地面站,都有明确的物理地址

  • 可物理触达——需要换密钥时,人能到现场

  • 生命周期长——一套设备服役十几年,密钥换得不频繁也能接受

低轨星座把这四条全部打破了。

节点数量不再是几百。OneWeb 规划的是 6372 颗 LEO 卫星加 GEO 混合组网。用户侧规模更大——截至 2025 年底,中国支持卫星直连的手机累计出货已超过 2500 万台(这组数据的完整背景在本号 2026-05-29 那篇里)。押运的对象从几百个机房,变成了上千万个消费者的口袋。

位置固定也不成立了。低轨卫星每 90 分钟左右绕地球一圈,终端跟着用户走。没有"现场"可以去。

可物理触达这一条甚至反了过来。冷战时它的隐含意思是"只有我们能碰到设备"。现在是设备就在用户手里,也可能装在海上的浮标里、无人机上——攻击者拿到实物的门槛,比运营方派人去维护还低。

生命周期被大幅压缩。消费级终端两三年一换,固件几周就可能更新一次。

所以结论不是"老算法不安全了"。AES 该有的强度一点没少。过时的是分发和轮换的假设。

左边是冷战的办法,右边是今天的办法。真正被替换掉的不是算法,而是"怎么把信任送到对面"这件事——从一个人提着箱子跑一趟,变成一份根信任加一条签名链。

人工押运与证书体系的对比:几百个固定节点,对上千万台移动终端

上篇小结

三句话可以带走:

  • 算法可以公开,密钥不能。加密、签名、哈希分别对付"被看到""被冒充""被篡改",三件事互不替代,而它们全都建立在"密钥没出事"这个前提上

  • 冷战的押运方案不是落后,是当时的最优解。它用物理世界的安全,换掉了高延迟信道上那次昂贵的握手

  • 它依赖四个前提:节点少、位置固定、可物理触达、生命周期长。低轨星座把这四条同时打破了,所以过时的不是算法,是分发和轮换的假设

留一个问题给下篇:当密钥从"押运几百把"变成"管理几百万把",具体是哪几个环节会断?

下篇会把密钥管理拆成生成、存储、分发、轮换、撤销五个环节,指出难点集中在最后两环,并用 OpenSSL 实际量一次"一张被盗证书最长能被滥用多久"——那个数字比想象的大。


参考资料

  • • RFC 5280:X.509 证书与 CRL profile

  • • 本号相关文章:2026-05-29(卫星互联网四条路线)、2026-08-21(Starlink IoT 的加密与身份认证)

 

原文链接


冰与火的战歌:Windows内核攻防实战高级班!从零到实战,融合AI与Windows内核攻防全技术栈,打造具备自动化能力的内核开发高手。

收藏
点赞 0
打赏
分享
最新回复 (0)
游客
登录 | 注册 方可回帖
返回