1个不稳定版本

0.1.0 2021年5月31日

#721 in 认证

无许可证

9KB
117

SUC

(简单)安全用户凭证

SUC提供了一件事:快速保存和散列用户凭证的方法。

SUC是为谁设计的?

如果你的项目...

  • 用户数量很少
  • 可以承受数据丢失(文件损坏)
  • 是个人项目

...那么SUC就是适合你的东西!

功能

  • 轻松打开/创建一个新的SucFile
  • 使用一个方法保存和散列用户名和密码
  • 自动生成盐
  • 使用一个方法检查用户是否存在并检查密码是否正确

为什么使用SUC?

  • 简单
  • 快速实现
  • 不需要数据库等
  • 相对较小的文件大小
  • 不需要考虑散列和盐

为什么不使用SUC?

  • 开发者是爱好者
  • 没有实际安全的保证
  • 文件中的一个错误位有可能破坏所有数据,并可能导致程序崩溃
  • 文件完全加载到内存中,因此不推荐大量用户

散列细节

使用默认选项的argon2 Rust crate进行散列。散列以PHC格式保存到文件中。盐使用OsRng生成。

示例

use suc::sucfile::SucFile;

fn main() {
    let mut sf = SucFile::open("test.suc").unwrap();
    sf.add("Alexander", "4312541").unwrap();
    println!("{}", sf.check("Alexander", "4312541").unwrap());
    sf.remove("Alexander").unwrap();
}

依赖关系

~1MB
~18K SLoC