Skip to content
This repository has been archived by the owner on May 16, 2024. It is now read-only.
/ totp-lite Public archive

RFC 6238: TOTP: Time-Based One-Time Password Algorithm

Notifications You must be signed in to change notification settings

kekeimiku/totp-lite

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

totp-lite

totp-lite 是rust的一个轻量 TOTP 实现,支持 sha256/sha512

let secret = "AZKXE3W57Q53ESFUWY4TKEAXIGLC7STL".as_bytes();
// let secret: Vec<u8> = repeat_with(|| fastrand::u8(..)).take(20).collect();

let totp = TOTP::with_default(secret, "MY-PC", "user@localhost");
let timestamp = SystemTime::now().duration_since(UNIX_EPOCH).unwrap().as_secs();
let url = totp.get_url();
println!("{}", url);
println!("{}", totp.verify("input you code", timestamp));

// let qrcode = fast_qr::QRBuilder::new(url).build().unwrap();
// let _svg = SvgBuilder::default().shape(Shape::RoundedSquare).to_file(&qrcode, "out.svg");

旨在与其它crates配合使用,而不需要强制下载几十个根本用不上的crates

极简主义

最小设计,牢记UNIX 精神,做一件事,并将其做好。

About

RFC 6238: TOTP: Time-Based One-Time Password Algorithm

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages