Go to file
2022-01-13 01:23:11 -06:00
.circleci fix ci 2022-01-11 17:07:10 +03:00
.github Fix CI recipes (#27) 2021-11-12 17:00:37 +03:00
admin Update READMEs, example, fix bug in aqua api (#32) 2021-12-06 20:17:45 +03:00
aqua pr fix 2022-01-11 17:01:15 +03:00
builtin-package Trust Graph: implement WASM built-in (#18) 2021-11-12 16:19:16 +03:00
example pr fix 2022-01-11 17:01:15 +03:00
keypair Fix revocations logic (#34) 2021-12-13 19:40:16 +03:00
local-network update fluence node version 2022-01-13 01:23:11 -06:00
service add hl-api, add example with trusted computation 2021-12-30 03:52:16 +03:00
src Fix revocations logic (#34) 2021-12-13 19:40:16 +03:00
.gitignore Trust Graph: implement WASM built-in (#18) 2021-11-12 16:19:16 +03:00
Cargo.lock Fix revocations logic (#34) 2021-12-13 19:40:16 +03:00
Cargo.toml Fix revocations logic (#34) 2021-12-13 19:40:16 +03:00
README.md Update READMEs, example, fix bug in aqua api (#32) 2021-12-06 20:17:45 +03:00
rust-toolchain.toml Trust Graph: implement WASM built-in (#18) 2021-11-12 16:19:16 +03:00

Trust Graph

Trust Graph is network-wide peer relationship layer. It's designed to be used to prioritize resources and control permissions in open networks. Being a decentralized graph of relationships, basically a Web of Trust, Trust Graph is distributed among all network peers.

Specifically, Trust Graph is used is used to prioritize connections from known peers to counteract Sybil attacks while still keeping network open by reserving resources for unknown peers.

At the same time, Trust Graph can be used at the application level in various ways such as prioritization of service execution on authorized peers or to define an interconnected subnetwork among peers of a single protocol.

How to Use it in TypeScript

See example:

API

Low-level API is defined in the trust-graph-api.aqua module.

Directory structure

  • src is the main project with all trust graph logic

  • keypair directory is an abstracted cryptographical layer (key pairs, public keys, signatures, etc.)

  • service is a package that provides marine API and could be compiled to a Wasm file. It is uses SQLite as storage.

  • example is a js script that shows how to issue, sign trusts/revocations, export certificates and distinguish Fluence nodes

  • builtin-package contains blueprint, configs and scripts for generation builtin package locally or via CI

  • admin is a js script used to generate builtin-package/on_start.json which contains certificates for Fluence Labs nodes

Learn Aqua