Please visit the TRISA website for more information and the TRISA documentation for developer docs and integration.
Looking to contribute to the TRISA open source project?
If you're a developer whose organization is using (or planning to adopt) the TRISA protocol, this section is for you!
This repository contains a gRPC implementation of the TRISA protocol as described by the white paper, which leverages protocol buffers and Golang.
The proto folder contains the core RPC definitions, including:
trisa subfolder also contains generic message types for transactions that are intended to provide maximum flexibility for a wide range of TRISA use cases.The pkg folder contains the reference implementation code, including compiled code generated from the protocol buffer definitions in the proto folder[^1].
iso3166 folder contains language codes.ivms101 folder extends the generated protobuf code with JSON loading utilities, validation helpers, short constants, etc.trisa folder contains structs and methods for a range of TRISA-related tasks, such as performing cryptography and making mTLS connections.The lib folder is intended to showcase utility code similar to that in the pkg folder, but for languages other than Go. If you work in a language other than go, this would be a great place to start your contribution!
[^1]: Note that these compiled files are compiled for Golang; but this is certainly not the only option. Those interested in building implementation code in a different language should look to the lib folder, which currently contains placeholder folders but is intended to showcase such other implementations (including compiled protocol buffer code for these other languages).
Another integral part of the TRISA protocol is the Global Directory Service, which serves as a look-up tool for TRISA members to identify peers with which they wish to exchange information. For RPC definitions and implementation code related to the Global Directory Service, visit the companion directory repository. To learn more about how to become a member of the directory, visit trisa.directory.
Translations of the documentation on trisa.dev are done periodically by human translators, and may become out-of-sync with the English text or reflect errors. If you notice an error, please open a bug report to notify us.