Hyperledger Iroha
March 18, 2026 · View on GitHub
Hyperledger Iroha est une plateforme blockchain déterministe pour des déploiements permissionnés et de consortium. Elle fournit la gestion des comptes et des actifs, des permissions on-chain et des smart contracts via l’Iroha Virtual Machine (IVM).
L’état du workspace et les changements récents sont suivis dans
status.md.
Lignes de release
Ce dépôt publie deux lignes de déploiement à partir de la même base de code :
- Iroha 2 : réseaux permissionnés/de consortium auto-hébergés.
- Iroha 3 (SORA Nexus) : ligne orientée Nexus reposant sur les mêmes crates cœur.
Les deux lignes partagent les mêmes composants principaux, notamment la sérialisation Norito, le consensus Sumeragi et la chaîne d’outils Kotodama -> IVM.
Structure du dépôt
crates/: crates Rust principales (iroha,irohad,iroha_cli,iroha_core,ivm,norito, etc.).integration_tests/: tests d’intégration et de réseau inter-composants.IrohaSwift/: package SDK Swift.java/iroha_android/: package SDK Android.docs/: documentation utilisateur, opérateur et développeur.
Démarrage rapide
Prérequis
- Rust stable
- Optionnel : Docker + Docker Compose pour des exécutions multi-peers en local
Build et tests (workspace)
cargo build --workspace
cargo test --workspace
cargo clippy --workspace --all-targets -- -D warnings
cargo fmt --all
Notes :
- Un build workspace complet peut prendre environ 20 minutes.
- Les tests workspace complets peuvent prendre plusieurs heures.
- Le workspace cible
std(les builds WASM/no-std ne sont pas pris en charge).
Commandes de test ciblées
cargo test -p <crate>
cargo test -p <crate> <test_name> -- --nocapture
Commandes de test SDK
cd IrohaSwift
swift test
cd java/iroha_android
JAVA_HOME=$(/usr/libexec/java_home -v 21) \
ANDROID_HOME=~/Library/Android/sdk \
ANDROID_SDK_ROOT=~/Library/Android/sdk \
./gradlew test
Lancer un réseau local
Démarrez le réseau Docker Compose fourni :
docker compose -f defaults/docker-compose.yml up
Utilisez la CLI avec la configuration client par défaut :
cargo run --bin iroha -- --config ./defaults/client.toml --help
Pour les étapes de déploiement natif du daemon, voir crates/irohad/README.md.
API et observabilité
Torii expose des API Norito et JSON. Endpoints opérateur courants :
GET /statusGET /metricsGET /v1/parametersGET /v1/events/sse
Référence complète des endpoints :
Crates principales
crates/iroha: bibliothèque cliente.crates/irohad: binaires daemon peer.crates/iroha_cli: CLI de référence.crates/iroha_core: moteur d’exécution et cœur du ledger.crates/iroha_config: modèle de configuration typé.crates/iroha_data_model: modèle de données canonique.crates/iroha_crypto: primitives cryptographiques.crates/norito: codec de sérialisation déterministe.crates/ivm: Iroha Virtual Machine.crates/iroha_kagami: outillage clés/genesis/config.
Carte de la documentation
- Index principal :
docs/README.md - Genesis :
docs/genesis.md - Consensus (Sumeragi) :
docs/source/sumeragi.md - Pipeline de transactions :
docs/source/pipeline.md - Internals P2P :
docs/source/p2p.md - Syscalls IVM :
docs/source/ivm_syscalls.md - Grammaire Kotodama :
docs/source/kotodama_grammar.md - Format wire Norito :
norito.md - Suivi de l’avancement :
status.md,roadmap.md
Traductions
Vue d’ensemble en japonais : README.ja.md
Autres vues d’ensemble :
README.he.md, README.es.md, README.pt.md, README.fr.md, README.ru.md, README.ar.md, README.ur.md
Workflow de traduction : docs/i18n/README.md
Contribution et aide
- Guide de contribution :
CONTRIBUTING.md - Canaux communauté/support :
CONTRIBUTING.md#contact
Licence
Iroha est distribué sous licence Apache-2.0. Voir LICENSE.
La documentation est distribuée sous licence CC-BY-4.0 : http://creativecommons.org/licenses/by/4.0/