1 个不稳定版本
0.0.1 | 2024年3月30日 |
---|
#12 in #非加密
50KB
766 行
一种非加密的“担保”系统
该 raffle
库提供类似于公钥签名功能,但没有任何加密强度的假象。它不生成签名,而是生成 Voucher
,虽然故意伪造 Voucher
并不难,但 意外 伪造似乎是不可能的。
TL;DR:使用真正的加密来防御有动机的恶意行为者。考虑使用 raffle
来检测无辜的 API 使用和有缺陷的代码。
raffle
库允许我们向模块传递 CheckingParameters
,以便它们可以检查一个值是否看起来是由具有访问相应 VouchingParameters
的代码生成的,同时使得这些检查模块意外地生成针对任意值的有效 Voucher
几乎是不可能的。
并不难推断出满足给定 CheckingParameters
集合的 VouchingParameters
。然而,库中没有代码来完成这项工作,我也不认为会意外地键入:转换代码需要几个大整数常量,这些常量不太可能自然出现。
换句话说,库的接口允许我们传递用于凭证“检查”功能的参数,而无需授予“担保”功能(能够担保意味着能够检查凭证),并且代码意外地从凭证检查参数中恢复担保功能是不太可能的。
参数空间也足够大,以至于意外碰撞(即 CheckingParameters
接受错误 VouchingParameters
的 Voucher
)更有可能是硬件问题或故意行为的迹象,而不是纯粹的运气或无辜的错误。
依赖项
~210KB