
Hat
译者
⚠️ 注意
如果您发现了错误,欢迎 参与贡献。
MAC 模块为 BIRD 中所有路由协议的认证需求提供统一的加密哈希接口。
| 算法系列 | 具体算法 |
|---|---|
| HMAC | MD5, SHA1, SHA224, SHA256, SHA384, SHA512 |
| Blake2 | Blake2s-128, Blake2s-256, Blake2b-256, Blake2b-512 |
| CMAC | AES-128 |
| 协议 | 认证方式 | 使用算法 |
|---|---|---|
| Babel | MAC 认证 (RFC 8967) | HMAC-, Blake2- |
| BFD | Keyed MD5/SHA1 认证 | Keyed MD5, SHA1 |
| OSPFv2 | 加密认证 | Keyed MD5 (默认), HMAC-SHA-* |
| OSPFv3 | 认证尾部 (RFC 7166) | HMAC-SHA256 (默认) |
| RIP | 加密认证 (RFC 4822) | HMAC-SHA-* |
| BGP | TCP-AO (RFC 5925) | HMAC-*, CMAC-AES128 |
💡 译者注
BIRD 的 MAC 模块体现了 BIRD 架构中"关注点分离"的原则。与其让每个协议各自实现加密操作(这会导致代码重复和安全风险),BIRD 将所有的哈希和 MAC 计算集中到一个模块中。这不仅减少了代码量,也使得安全审计者只需审查一个模块就能确认所有协议的认证实现是否正确。

译者
原文作者: <Ondrej Filip>, <Martin Mares>, <Maria Matejka>, <Ondrej Zajicek> 原文链接: https://bird.network.cz/?get_doc&v=20&f=prog-7.html#ss7.4 原文标题: 7.4 Message authentication codes
遵循协议: CC BY-NC-SA 4.0 / 译者: hat / 翻译时间: 2026-05-01 / 本文链接: https://bird.xmsl.dev/docs/developer-guide/7-4-mac.html