1 个不稳定版本

0.1.1 2020年7月17日
0.1.0 2020年7月17日

#68#permissions

每月30次下载
用于 安装器

MIT 许可证

31KB
666

Artifice 管理器

用途

此包为 Artifice 提供集中式功能,例如权限请求/授权以及配置检索和维护。之所以有单独的包来提供这些可能只使用一次或两次的功能,是为了通过暴露动态安全可配置性来扩展 Artifice API。

使用库

为了使用 Artifice 网络的工具,必须首先安装网络。为此,请参阅

示例用法

验证对等方

use manager::{ArtificeDB, Manager};
use manager::database::Database;
use networking::peers::ArtificePeer;
use networking::ArtificeHost;
fn main(){
    let database = ArtificeDB::default();
    let manager = Manager::load(database, b"example password").unwrap();
    let host = ArtificeHost::from_host_data(manager.config()).unwrap();
    for netstream in host {
        let stream = netstream.unwrap();
        if manager.authenticate(stream.peer()).unwrap() {
            println!("peer authenticated");
        }
    }
}

连接

use manager::{ArtificeDB, Manager};
use manager::database::Database;
use networking::peers::ArtificePeer;
use networking::ArtificeHost;

fn main(){
    let database = ArtificeDB::default();
    let manager = Manager::load(database, b"example_password").unwrap();
    let host = ArtificeHost::from_host_data(manager.config()).unwrap();
    let peer = manager.get_peer("global_peer_hash").unwrap();
    let host = ArtificeHost::from_host_data(manager.config()).unwrap();
    let stream = host.connect(peer).unwrap();
}

依赖项

~20–31MB
~491K SLoC