2 个稳定版本
1.0.1 | 2023 年 7 月 14 日 |
---|
#7 in #verse
21KB
436 行
verse-session-id
具有签名/验证功能的 ID。
用作 @VerseEngine/verse-core 中的会话 ID。
用法
签名验证
use verse_session_id::*;
...
pub fn verify_string(session_id: &str, signature: &str, data: &str) -> bool {
let Ok(sid) = session_id.parse::<SessionId>() else {
return false;
};
let Ok(ss) = signature.parse::<SignatureSet>() else {
return false;
};
sid.verify(vec![data.as_bytes()], &ss).is_ok()
}
生成 ID
let id_pair = new_session_id_pair()?;
let session_id = id_pair.get_id();
// to string
let s = format!("{}", session_id);
创建签名
pub fn sign_string(&self, data: &str) -> Result<String> {
let id_pair = ...;
Ok(id_pair
.sign(vec![data.as_bytes()])?
.to_string())
}
依赖项
~2.7–4MB
~77K SLoC