Skip to content

This repository contains the details of the Ensicoin protocol.

License

Notifications You must be signed in to change notification settings

EnsicoinDevs/ensicoin

Repository files navigation

Ensicoin

Ensicoin est un projet à but éducatif. L’idée est de réaliser une crypto-monnaie simple, inspirée de Bitcoin, afin de mieux en comprendre le fonctionnement.

Ce dépôt contient les détails du protocole de l’Ensicoin. En théorie, les documents de ce dépôt devraient suffire pour créer un nœud capable d’interargir sans problèmes avec les autres nœuds.

Documents

Les règles de base du consensus sont lisibles ici : consensus.

Les messages échangés via le réseau sont décrits ici : messages.

Les règles de validation sont décrites ici : validation.

Finalement, les scripts sont détaillés ici : scripts.

Un protocole de découverte du réseau utilisant IRC est défini ici : découverte des nœuds.

Un guide d’implémentation : guide.

Le glossaire : glossaire.

État du projet

Nœuds

Voici un tableau récapitulant les fonctionnalités des implémentations connues :

Dépôt Handshake Synchronisation Validation gRPC Propagation d'adresses Bootstrap Matrix
eccd ✔️ ✔️ ✔️ ✔️
arcd ✔️ ✔️ ✔️ ✔️ ✔️
ensicoin-rust ✔️
ensicoin-python ✔️
ensicoin-swift
ensicoin-js

Contrôleurs (ctl)

Pour administrer les nœuds, il est possible d’utiliser un de ces contrôleurs à partir du moment où le nœud supporte gRPC.

Dépôt UI
arc-cli TUI
eccctl TUI

Mineurs

Les mineurs peuvent se connecter à un nœud afin de générer des blocs.

Dépôt Parallélisé gRPC
ensicoin-simon ✔️
cuda-miner ✔️

Wallets

Les wallets permettent d’échanger des ensicoins.

Dépôt Plate-forme
MaybeWallet Mobile

Utilitaires

Dépôt Fonction Description
ensicoin-explorer Explorer Explorateur de blocs

Par où commencer ?

Si vous souhaitez simplement utiliser l’Ensicoin, vous pouvez choisir un nœud ou un wallet dans les tableaux ci-dessus.

Si vous souhaitez participer au projet, n’hésitez pas à contacter l’un des développeurs.