Expand description
统一随机源(全 workspace 唯一入口)
两类随机性严格分离:
random_u64/try_random_u64:CSPRNG(操作系统熵源),用于安全敏感场景 (TCP ISN、QUIC SCID、PATH_CHALLENGE、会话标识),禁止用伪随机替代pseudo_random_u64/Splitmix64:线程本地 splitmix64 伪随机(种子一次性 取自 CSPRNG),用于性能敏感但无安全要求的场景(负载均衡 P2C、退避 jitter)
设计约束:
- 热路径零系统调用:伪随机走线程本地状态,仅首次播种触达 OS 熵源
- fail-closed:CSPRNG 失败时
try_random_u64返回None,由调用方决策;random_u64的应急回退仍混入纳秒时间戳与原子计数(绝不退化为固定种子)
Structs§
- Splitmix64
- Splitmix64 伪随机生成器(值语义,零堆分配)
Functions§
- pseudo_
random_ bounded - 线程本地伪随机,输出
[0, bound)(bound 为 0 时返回 0) - pseudo_
random_ u64 - 线程本地伪随机(热路径零系统调用、零同步开销)
- random_
u64 - 从 OS 熵源获取密码学安全随机数
- try_
fill_ random - 填充密码学安全随机字节
- try_
random_ u64 - 从 OS 熵源读取 8 字节(CSPRNG)