16个版本

0.5.0 2024年4月28日
0.5.0-dev2023年10月31日
0.4.9 2022年11月16日
0.4.7 2022年9月25日
0.4.2-beta.42022年7月29日

#16 in #认证器

Download history 3272/week @ 2024-05-01 3332/week @ 2024-05-08 3236/week @ 2024-05-15 2977/week @ 2024-05-22 2187/week @ 2024-05-29 3325/week @ 2024-06-05 2536/week @ 2024-06-12 2237/week @ 2024-06-19 2274/week @ 2024-06-26 2581/week @ 2024-07-03 2833/week @ 2024-07-10 2479/week @ 2024-07-17 3128/week @ 2024-07-24 2479/week @ 2024-07-31 3101/week @ 2024-08-07 3654/week @ 2024-08-14

12,776 每月下载量
9 个crate中使用 (5直接使用)

MPL-2.0 许可证

555KB
8K SLoC

Webauthn Rust Core

Webauthn是一种基于硬件的认证的现代方法,由一个拥有认证设备、与设备交互的浏览器或客户端以及能够生成挑战并验证认证器有效性的服务器组成。

⚠️ 警告 ⚠️

此库实现了并公开了创建Webauthn依赖方的原始元素。许多这些组件都有许多锋利的边缘和混淆用户、意外允许安全绕过等能力。如果可能,您应该使用Webauthn-RS而不是此crate!

然而,如果您想要做真正自定义或特定的事情,并且理解风险,那么这个库适合您。

为什么是OpenSSL?

我预计会有一个问题:为什么是OpenSSL而不是其他纯Rust加密提供者。有两个主要理由。

第一个是,如果此库将在企业或大型部署中使用,那么可能需要进行加密审计。指向已经经过更多审查和审计的OpenSSL要比使用一系列Rust crates(虽然仍然很棒!)容易得多。

第二个理由是,OpenSSL是唯一一个允许我们从其X/Y点重建EC公钥或从其n/e重建RSA公钥以便用于签名验证的库。没有这个,我们无法解析认证器凭证以执行认证。

资源

依赖

~11MB
~229K SLoC