#signature #hmac

nobsign

一个简单而有效的签名库,用 Rust 编写

2 个不稳定版本

使用旧的 Rust 2015

0.2.0 2019年1月16日
0.1.0 2016年8月16日

#1399 in 加密学

21 每月下载量

BSD-3-Clause

11KB
173

nobsign

Build Status

一个简单而有效的签名库,用 Rust 编写。

nobi 转移,而它自身又是从 itsdangerous 转移而来。

文档

在线文档.

可能的用例

  • 为用户创建激活链接
  • 创建密码重置链接

基本示例

use nobsign::Signer;
let signer = Signer::new(b"my secret");

// Let's say the user's ID is 101
let signed = signer.sign("101");

// You can now email this url to your users!
let url = format!("http://yoursite.com/activate/?key={}", signed);

// Later check the signature and get the value back
let unsigned = signer.unsign(&signed).unwrap();

带时间戳签名的示例

use nobsign::TimestampSigner;
let signer = TimestampSigner::new(b"my secret");

// Let's say the user's ID is 101
let signed = signer.sign("101");

// You can now email this url to your users!
let url = format!("http://yoursite.com/activate/?key={}", signed);

// In your code, you can verify the expiration:
signer.unsign(&signed, 86400).unwrap(); // 1 day expiration

依赖关系

~6.5MB
~206K SLoC