1个不稳定版本

0.0.1 2022年8月25日

#79 in #signer


用于 3 crates

自定义许可证

14KB
142

VADE签署者

crates.io Documentation Apache-2 licensed

关于

一个小的助手模块,用于支持VADE插件中的签名。

配置VADE项目的签署者

一些Vade插件需要签署者才能签名消息。签署者通常由构造函数创建并传递给插件,例如,用于使用本地签署者

use vade_evan_substrate::resolver::{ResolverConfig, VadeEvanSubstrate};
use vade_signer::{LocalSigner, Signer},
let signer: Box<dyn Signer> = Box::new(LocalSigner::new());
let resolver = VadeEvanSubstrate::new(ResolverConfig {
    signer,
    target: "127.0.0.1".to_string(),
});

远程签名时,signing_url将使用POST请求调用。应签署的消息以及如下键的引用将传递到服务器

{
    "key": "some-key-id",
    "type": "some-key-type",
    "message": "sign me please"
}

支持两种类型的响应。成功的签名结果如下格式给出

{
  "messageHash": "0x52091d1299031b18c1099620a1786363855d9fcd91a7686c866ad64f83de13ff",
  "signature": "0xc465a9499b75eed6fc4f658d1764168d63578b05ae15305ceedc94872bda793f74cb850c0683287b245b4da523851fbbe37738116635ebdb08e80b867c0b4aea1b",
  "signerAddress": "0x3daa2c354dba8d51fdabc30cf9219b251c74eb56"
}

错误可以以这种方式发出信号

{
    "error": "key not found"
}

依赖关系

~6–23MB
~326K SLoC