6.2 查身份发通行证:认证、密钥与信誉


6.2 查身份发通行证:认证、密钥与信誉

认证与密钥管理解决"你是谁、钥匙从哪来"——对称预分发、门限分布式认证、身份基加密三种方案对应三种信任假设;信誉机制解决"你干得怎么样"——用 watchdog 式逐跳观察积累历史,用 Beta 模型把观察折算成信任分。前者管入场资格,后者管日常考核。

蜂窝网络安全靠的是"出生证":SIM 卡由运营商发、核心网背书、归属数据库仲裁。自组织网络没有发证机关,两件事变得困难:新节点加入时怎么确认身份(认证),确认之后怎么安全地拿到通信钥匙(密钥管理)。而且第三件事在传统网络里常被忽略、在这里却性命攸关:即便入场时是好人,中途也可能变坏或被控制——所以还需要持续的行为考核。这一节就按这三件事的顺序展开。

三种钥匙从哪来的方案

方案一:对称密钥预分发。部署前,管理员给每对节点预置一把共享密钥(或每节点存一把与网关的主密钥,由网关中转派生)。优点是计算最轻、适合弱节点;缺点是扩展性差——N 个节点两两预置要管理约 N 平方半把钥匙,新节点入场要人工配钥,内部被俘一台就泄一片。适合规模固定、可预规划的封闭网络(厂区、单任务行动队)。

方案二:门限分布式认证。借鉴公钥体系但拆掉单点:全网私钥被拆成 n 份分发给 n 个服务节点,任意 t 份合作可以签发证书,少于 t 份谁也伪造不了。新节点入场时向邻居里的服务节点申请,凑够 t 个签名即获得通行证。优点是没有单点可打(攻陷 t 台之前体系安全)、入场可自助;缺点是签名聚合的通信与计算成本高,弱节点跑不动,且"t 的选择"是安全与可用性的拔河——t 太小易合谋攻破,太大则节点频繁离线时凑不齐。适合几十到几百节点、算力尚可的网络。

方案三:身份基加密。节点的公钥就是它的地址(或由地址直接算出),私钥由一个离线的"密钥生成中心"在入场时派发。好处是彻底摆脱证书交换(你知道对方地址就等于知道对方公钥,非常适合报文一次一验的 Mesh 环境);代价是密钥生成中心必须绝对安全且在线可达(离线托管模式会拖慢新节点入场),以及数学计算开销在前两者中最高。三种方案的对比:

方案 信任假设 扩展性 计算负担 适用
对称预分发 部署方可信 差,人工配钥 最低 固定规模封闭网
门限分布式 任 t 台服务节点不被同时攻陷 好,自助入场 中等算力网络
身份基加密 密钥生成中心可信 最高 算力充足节点

选型的第一问不是"哪个更安全",而是"我的威胁模型是什么":防外部闯入者,预分发够用;要容忍内部被俘节点,必须上门限或信誉体系;若对手有能力长期潜伏并合谋,还要叠加 6.3 的路由层防御。

信誉:把行为折算成分数

入场凭证管不了中途变节,行为考核才是日常安全的骨架。考核的数据来自 watchdog 式观察:无线信道的广播特性是天然的监督员——节点 A 把报文交给 B 转发后,B 的转发会被 A 的网卡"顺耳听到"(混杂模式监听)。听到了,记一笔成功;该听到没听到,记一笔失败。观察汇总用 Beta 信誉模型折算:信任分就用成功次数加一除以成功加失败再加二——本质是贝塔分布的期望值,观测越多越笃定,零观测时取中庸的零点五。

def beta_trust(alpha, beta): # alpha: 观察到的成功转发次数; beta: 失败次数 return (alpha + 1) / (alpha + beta + 2) # 直接观察 200 次里失败 4 次 vs 20 次里失败 1 次 print(f"节点甲信任分 {beta_trust(196, 4):.3f}") # 0.975 print(f"节点乙信任分 {beta_trust(19, 1):.3f}") # 0.952 # 同样失败率约百分之五,样本少的乙分数更低且更不稳定

分数怎么用有两派。路由权重派把信任分当路由度量的一部分,信任低的少走、零信任的不走——温和、平滑,但反应慢。隔离派设硬阈值,低于即拉黑并广播警告——反应快,但要警惕两种误伤:watchdog 的观察本身有假阴性(B 转发了但 A 没听到,常因信道竞争与位置关系),攒着假阴性拉黑好人会造成"冤案级"分区;以及诬告风险——恶意节点给好人报差评。所以成熟的信誉系统都要加两条:观察权重衰减(旧的观察随时间打折,给"改过自新"留门,也让分数能跟上节点状态变化)与推荐交叉验证(邻居的推荐只作小权重参考,且推荐者自身的信誉决定其推荐的可信度)。

图:一次信誉更新的完整流程

图:一次信誉更新的完整流程

一次诬告攻防的案例

背景:试验床部署信誉系统,运行两周后三个诚实节点先后被误拉黑。操作:调取这三个节点的观察记录,失败计数集中在同一个观察者节点 W。进一步比对物理位置:W 与被误伤节点之间隔了一堵承重墙,W"听不到"它们的转发是信道问题而非对方偷懒——典型的 watchdog 假阴性。处置:给观察记录加"信道质量标注"(观察者与被观察者之间链路差时,该笔失败降权甚至不计);同时把拉黑从单方判决改为"两名独立观察者都低于阈值才生效"。结果:误拉黑消失,代价是真正攻击者的隔离时间平均延后约一个观察周期。解读:考核系统的最大敌人不是恶意者,而是裁判自己的误判——宁可放慢反应,也要先把假阳性压住;安全工程里"冤案"的代价(网络被自己撕碎)通常高于"漏判"。变式:把观察者换成与被观察者链路质量最好的邻居来担任(动态选裁判),假阴性进一步下降——这又一次回到 3.3 的信道质量话题,安全机制从来不是孤岛。

还有一个工程细节常被漏掉:信誉数据的冷启动。新节点入场时没有历史,Beta 分数是中庸的零点五——既不被信任也不被怀疑。这段时间它只能接少量流量"实习",观察够了才转正。冷启动窗口期的长度要平衡两件事:太短,攻击者反复换身份(配合女巫)就能一直享受新人待遇;太长,新节点长期没活干(不参与转发)反而拿不到观察样本。常见的折中是把"新人实习流量"设计成显式机制——只给它低价值流量,观察成本可控,转正条件公开透明。

台词摘录

  • 三问三制:你是谁(认证)、钥匙哪来(密钥管理)、干得如何(信誉考核)。
  • 选型看威胁:防外敌预分发够用,防内奸上门限与信誉,防合谋加路由层防御。
  • Beta 折算:成功加一除以总数加二,样本越多越笃定,零观测取中庸。
  • 观察会撒谎:watchdog 假阴性是信誉系统的头号冤案来源,信道标注加双裁判。
  • 冤案贵过漏判:先压假阳性再谈反应速度,拉黑机制必须留缓冲带与复核。

作者与出处
原作者: 灏天文库
来源:灏天文库
整理: 灏天文库整理
由灏天文库平台收录,内容或由平台用户上传,仅供学习交流
发布者: 作者: 灏天文库 转发
评论区 (0)
U