有朋友觉得FMO只是一个云平台。

为此,我在这里写下FMO的信任链。这是一个有趣的设计,我相信大家也可以通过这个思路,去开发自己的有趣的无线电玩具。

先直接回答那个质疑

如果你理解的“云平台”是:

  • 设备依赖云端才能工作
  • 服务器关了设备就变砖
  • 用户数据被厂商攥在手里
  • 厂商随时可以背后搞鬼

那FMO不是这种云平台。

如果你理解的“云平台”是:

  • 需要一个地方完成初始验证
  • 之后FMO设备独立运行,和云端再无瓜葛
  • 厂商跑路了FMO照用

那FMO是这种云平台

虽然听起来有点矛盾,但读完下面的信任链,你就明白为什么了。

在讲信任链之前,有一件事必须先说清楚:信任不是无条件的。它建立在“你提供的注册材料是真实的”这个前提上。 当你绑定FMO时。 我们需要你提供:

  • CRAC操作证信息(通过官方接口验证)
  • 身份信息和手机号

我们默认这些材料是真实的。为什么?

因为:

  • 身份信息和手机号,背后是运营商的实名认证体系
  • CRAC操作证信息,背后是国家无线电管理机构的数据

我们不生产信任,我们只是把这些现成的信任串联起来

如果有人用假材料骗过了验证——比如盗用他人身份信息、伪造操作证——那FMO的信任链在第一环就断了。这不是FMO设计的问题,这是现实世界任何系统都绕不开的底线:系统只能验证材料,不能验证人心。

信任链设计

第一层:国家确认

我们不自己判断“谁是爱好者”。我们没有这个权力,也没有这个能力。绑定FMO设备时,我们直接调用CRAC官方接口验证你的电子操作证。这是国家级验证,造不了假。CRAC系统返回“通过”,流程才能往下走。这一层依赖你的材料是真实的。

第二层:授权

CRAC验证通过后,开发者给你生成一张授权凭证,里面是你的呼号和你的FMO设备ID。用只有FMO知道的印章盖上去。这张凭证是用来告诉你的FMO:“这个人认证过。”这一层依赖第一层的结果是真实的。

第三层:FMO的信任

每台FMO设备出厂时,都内置了开发者的印章样本。当你把盖了章的凭证交给FMO,它会自己核对:

  • 这个章是不是开发者盖的(印章样本对得上)
  • 凭证上写的设备ID是不是我自己

核对通过,FMO就把你的签名存下来。从此以后,你每次开机,都是用的自己的认证身份。这一层依赖前两层传递下来的信任是真实的。

信任链长这样

你的真实材料 → CRAC接口验证 → 开发者盖章 → FMO设备存你的签名 → 你永久拥有这台FMO

每一步都依赖上一步:

  • CRAC接口依赖你提供的材料是真实的
  • 开发者依赖CRAC的验证结果是真实的
  • FMO设备依赖开发盖章的凭证是真实的
  • 你依赖FMO设备只认你的签名

如果材料是假的呢?

如果有人用假材料通过了验证,会发生什么?

  • CRAC接口会返回“通过”吗?不会,因为假操作证过不了官方接口。
  • 但身份信息和手机号有可能被冒用(比如盗用他人身份)。

如果出现这种情况,FMO系统本身是无能为力的——没有系统能100%防住现实世界的欺诈。 我们能做的是

  • 严格对接官方接口,不自行判断
  • 记录每一次绑定的材料来源,留痕备查
  • 配合监管机构处理纠纷

但我们从一开始就没打算充当“终极裁判”。我们不掌握终极真相,我们只是把各个权威来源的信任串联起来。

那OTA升级呢?

有人会问:你们不是还提供OTA升级吗?这不还是依赖云端?

是的,我们提供OTA升级。但这里有个关键区别:OTA升级是一个服务,不是一个控制权

就像你的手机可以升级系统,但升级之前它能用,升级之后它也能用。你不升级,它照样能用一辈子。

FMO的OTA升级也是这样:

  • 你可以选择升级,也可以选择不升

  • 升级与否,不影响你对FMO的拥有权

  • 即使我们关闭服务器,你的FMO依然能正常工作——只是收不到新版本而已

我们提供升级,不代表我们控制你的设备。 这就像卖给你一辆车,顺便问你要不要来店里做保养。你不来保养,车照样开;我们店关门了,车照样开。

所以开发者角色在这个信任中到底是什么?

开发者在这个链条里的角色只有两个:

    1. 信任的翻译官: 把CRAC的“这个人有证”,翻译成FMO设备能读懂的“这个人可以用我”。
    1. 信任的快递员: 在FMO设备出厂时把印章放进去,在绑定成功时把你的签名存进去。

翻译完、快递完,开发者的核心工作就结束了。

至于OTA升级、技术支持、社区运营——这些都是附加服务,不是FMO设备赖以生存的命脉。没有这些,FMO依然是你的FMO。

如果FMO明天不再服务了:

  • 已绑定的FMO设备不受任何影响
  • 你的授权还在FMO设备里
  • 你照常使用FMO,和今天没区别
  • OTA升级没了,但FMO设备本身一切正常
  • 唯一的变化是:新用户没法绑定了(因为翻译官下班了)

这不是“云平台跑路设备变砖”的故事,这是“快递员送完货就消失,4S店关门但车照开”的故事。 你的FMO设备从一开始就没打算天天联网找我们汇报。它只在开机的时候看看你是谁,这不需要我们帮忙。 开发者不是设备的“daddy”,FMO设备也不是租给你的。FMO不是一个云服务,而是一种设备自治网络。每一台设备都拥有自己的身份、信任和连接能力。开发者只是在设备和用户第一次见面时做了介绍人,介绍完之后,设备就归用户自己了。FMO从一开始就是你的。

至于信任的前提?那是现实世界的规则,开发者和你一样,都在规则之下。