6个稳定版本

2.1.1 2022年8月20日
2.1.0 2022年8月6日
1.0.4 2022年6月21日

#715 in 认证

GPL-3.0-or-later

24KB
446

Uniauth

易于使用的认证抽象。

工作原理

  1. 应用程序告诉服务器请求的操作(例如,登录)并请求一个nonce。
  2. 服务器颁发一个将永远不会再次使用的nonce。
  3. 应用程序告诉用户的本地uniauth守护进程使用nonce、服务名称和用户名来签署挑战。
  4. 用户认证/授权操作。
  5. 守护进程签署挑战,并将响应从应用程序发送到服务器。
  6. 服务器验证挑战与用户的密钥。

服务器

服务器只存储公钥,如果/当服务器被入侵时,攻击者无法利用这些密钥做任何事情。

守护进程

Uniauth守护进程可以做任何事情,从完全自主到使用硬件认证器。

签名算法

应用程序-守护进程协议支持任何小于65516字节的签名和密钥的算法。

目前支持 Ed25519CRYSTALS-Dilithium3,Ed25519具有微小的签名和密钥,但Dilithium3是量子安全的。

依赖项

~3–17MB
~236K SLoC