Rendez-vous sur Arrakis

Débuter avec duniter (Ğ1) puis héberger un nœud

J'avais déjà parlé des cryptomonnaies et je terminais par duniter. Cette dernière est pensée autour d'une philosophie captivante qui correspond davantage à mes valeurs que les autres. Cependant, et je me demande encore pourquoi, je me fourvoyais complètement sur la façon de l'utiliser, c'est pourquoi j'ai envie d'écrire ce petit guide. Entre la version desktop, la version server, le logiciel à utiliser pour échanger des sous, puis les inscriptions à faire alors que je croyais avoir un portefeuille… Bref, il est temps de poser ça à plat comme on dit. :)

Notez que je vais décrire la procédure sous OpenBSD. Avant de vous lancer dans les compilations, vérifiez si un binaire n'existe pas déjà.

1. Avant tout, il faut bien comprendre…
Contrairement aux autres cryptomonnaies, il y a une différence entre le logiciel et la monnaie.
duniter”, c'est le logiciel libre qui permet les transactions.
Ğ1” est une monnaie disponible via duniter. Il est possible d'utiliser d'autres monnaies, mais c'est cette dernière qui est actuellement la plus utilisée. De plus, c'est libre ! :)
Un troisième logiciel est nécessaire pour échanger de la monnaie. Ce dernier est spécifique à la monnaie utilisée. Ce sera dans l'exemple cesium, mais il en existe d'autres.

Cela peut paraître excessif, mais c'est en réalité toute la force du logiciel libre. Pour résumer :

2. Échanger des Ğ1
Téléchargez et décompressez l'archive de cesium qui est un logiciel nous permettant d'échanger de la monnaie. Je vous conseille la version “-web” qui ne nécessite qu'un navigateur pour s'en servir.

Décompressez l'archive .zip, puis ouvrez le fichier index.html dans un navigateur (Firefox ;) ).

Je vous conseille de suivre la visite guidée très bien faite pour découvrir cesium.

Lors du premier lancement, on vous propose de créer un compte. C'est nécessaire pour être inscrit dans le registre public du Ğ1. Cela vous crée un portefeuille. Si vous n'avez pas de compte, créez un compte “membre” pour pouvoir plus tard participer au dividende universel.
Si on ne vous propose rien, cliquez sur le lien “créer un compte”

Notez bien votre mot de passe, récupérez le certificat de révocation (on ne sait jamais), puis cliquez sur “mon compte” à gauche pour noter votre clé publique et modifier les informations vous concernant.

Vous voilà prêts à échanger des Ğ1 en cliquant sur le bouton “Virement” à gauche :

(bon, il faudra en recevoir avant… ;P )

Voir aussi l'excellent tutoriel suivant : http://www.le-sou.org/inscription-tuto/

3. Participer à l'utilisation des Ğ1 en étant un nœud

Vous pouvez héberger un noeud et participer aux calculs nécessaires aux échanges de Ğ1. Je reprends ici les explications pour OpenBSD (oh le fainéant). Tant qu'à faire, je vous propose une méthode pour, autant que possible, séparer les permissions et faire les choses proprement.
Je vais créer un utilisateur “_duniter” dont le seul rôle sera de faire tourner duniter, afin d'éviter de faire tourner le démon en tant que root.
Ensuite on installe node.
On s'identifie comme _duniter, puis on télécharge et compile duniter.

useradd -m -d /var/duniter
 pkg_add node
 npm install --global yarn
 ln -s /usr/local/bin/python2.7 /usr/local/bin/python
 su _duniter
 cd /var/duniter
 ftp -o duniter.tar.gz https://github.com/duniter/duniter/archive/v1.5.9.tar.gz
 tar xvzf duniter.tar.gz
 mv duniter-* duniter
 cd duniter
 yarn

On peut maintenant l'utiliser en suivant les recommandations situées ici.

On indique quelle clé utiliser : je me sert de la même clé que pour mon inscription précédente sous cesium par facilité.

./bin/duniter wizard key
 ? Modify you keypair? (y/N) y   
 ? Key's salt ********************************************   (clé publique précédente)
 ? Key's password *************************************************   (mot de passe du compte précédent)

Configurez ensuite le réseau. Dans le doute, laissez par défaut.

./bin/duniter wizard network
 ? IPv4 interface trunk0 192.168.1.64  (interface réseau à utiliser)
 ? IPv6 interface None
 ? Port 10901
 ? Remote IPv4 Enter new one
 ? Remote IPv4 109.190.193.124 (ici, c'est votre [IP publique|http://ipecho.net])
 ? Remote port 10901
 ? Does this server has a DNS name? n (répondez "y" si vous voulez héberger le noeud sur un serveur disponible avec un nom de domaine)
 

Enfin, lancez la synchronisation :

./bin/duniter sync g1.duniter.org 443

Vous pouvez maintenant lancer duniter et participer aux calculs :

./bin/duniter direct_start

ou pour qu'il tourne en arrière plan :

./bin/duniter start

Si vous faîtes tourner ce noeud sur un serveur, veillez à bien ouvrir les ports 10901. De plus, créer un CNAME pour un nom de domaine dédié à duniter sera sans doute pratique.

Afin d'avoir un service à lancer au démarrage sous OpenBSD, vous pouvez créer le fichier /etc/rc.d/duniter_daemon pour gérer le démon avec rcctl.

#!/bin/sh
 #
 # $OpenBSD: duniter.rc,v 1.0 2017/11/08 17:58:46 Thuban$
 
 daemon="/var/duniter/duniter/bin/duniter"
 daemon_user="_duniter"
 
 . /etc/rc.d/rc.subr
 
 rc_start() {
         ${rcexec} "${daemon} ${daemon_flags} start"
 }
 
 rc_stop() {
         ${rcexec} "${daemon} ${daemon_flags} stop"
 }
 
 
 pexp="node: duniter.*"
 rc_reload=NO
 
 rc_cmd $1
 
 

La suite, c'est comme n'importe quel service sous OpenBSD :

Pour avoir des infos sur duniter, vous pouvez lancer :

su -l _duniter -c "/var/duniter/duniter/bin/duniter logs"

N'est-ce point merveilleux ? :

2017-11-09T19:00:19+01:00 - info: Pulling blocks from the network...
 2017-11-09T19:00:22+01:00 - info: Block resolution: 0 potential blocks after current#67928...
 2017-11-09T19:00:22+01:00 - info: Will pull blocks from the network in 0 min 20 sec
 2017-11-09T19:00:26+01:00 - info: ⬇ PEER LFoG1wup
 2017-11-09T19:00:26+01:00 - info: ✔ PEER LFoG1wup
 2017-11-09T19:00:26+01:00 - info: POST Peer LFoG1wupku#67905
 2017-11-09T19:00:26+01:00 - info: ⬇ PEER LFoG1wup
 2017-11-09T19:00:26+01:00 - info: ✘ PEER LFoG1wup
 2017-11-09T19:00:26+01:00 - error:  httpCode=400, ucode=2023, message=Peer document already known
 2017-11-09T19:00:26+01:00 - warn: Could not reach duniter.fiat-tux.fr:10901
 2017-11-09T19:00:26+01:00 - info: ⬇ PEER LFoG1wup
 2017-11-09T19:00:27+01:00 - info: ✘ PEER LFoG1wup
 

Voir aussi la documentation d'installation

Vous pouvez activer l'interface web ainsi.

./bin/duniter plug duniter-ui@1.4.x 
 sed -i "s/duniter\//..\/..\/..\/..\//g" node_modules/duniter-ui/server/controller/webmin.js

Cependant, j'ai tenté de modifier le fichier /etc/rc.d/duniter_daemon pour mettre “webstart” au lieu de “start”, mais il ne semble pas trouver le module duniter-ui dans ce cas, donc ça ne fonctionne pas. Une histoire de chemin d'accès je suppose :/
Mais vous pouvez toujours lancer le noeud duniter et son interface web après vous être connecté avec le compte _duniter.
Si vous avez activé l'interface web, au lieu d'ouvrir et rediriger des ports sur votre serveur, créez un tunnel ssh ainsi à partir de votre ordinateur de bureau :

ssh -L 9999:127.0.0.1:9220 utilisateur@votreserveur.com

Ensuite, sur votre ordinateur, ouvrez un navigateur à l'adresse http://localhost:9999 pour voir l'interface de duniter :

Une fois le serveur configuré, je vous conseille de désactiver les connexions vers le compte _duniter

# usermod -s /sbin/nologin _duniter

Conclusion
Plus je m'y intéresse, plus je trouve cette alternative intéressante. Le seul, (mais vraiment le seul) point sur lequel je m'interroge, c'est le côté public de toutes les transactions. Je n'ai pas envie de savoir ce que vous achetez, ni de publier publiquement à qui je donne des sous. Par contre, côté vitesse de calcul, rendement énergétique et toute la théorie du Dividende Universel, je suis conquis. Et vous? :)

le 10/11/2017 à 10:55:19, citizenz7 a dit :

Merci pour ces infos.
Je viens de tester, mais sous Ubuntu, et pour le moment ça fonctionne au poil. Mon “nœud” est en route et je peux même me connecter à distance sur l'interface web. Pratique.
Je ne comprends pas encore tous les “tenants et aboutissants” car je découvre complètement Duniter mais quelques articles, dont le votre, ont éveillé ma curiosité.
A suivre.

le 10/11/2017 à 14:59:22, PengouinPdt a dit :

Autant je suis d'accord concernant l'éthique de cette crypto-monnaie “June”…
Autant dans la pratique, il y a plusieurs choses qui me dérangent plus ou moins profondément :
- s'inscrire, avoir un compte, miner, ce n'est pas un problème… en soit !
- là où pour moi, ça le devient, est en rapport avec les certifications, en effet, pour au moins deux raisons : la santé et la région de vie. Quand tu habites dans un pays de campagne, difficile de rencontrer d'autres intéressés… quand tu as des problèmes de santé chronique, délicat de se déplacer.
Sachant que :

Pour rester membre il faut renouveler son accord régulièrement avec sa clé privée (tous les 12 mois) et s'assurer d'avoir toujours au moins 5 certifications valides au delà des 2 ans.

Pour certaines personnes, et j'estime en faire partie, ce n'est pas gagné du tout… résultat, si tu n'as pas de certifiants/certifications, plus de compte… donc bye-bye l'esprit collaboratif, communautaire du Libre au revoir !
Et, là, perso, je tique très sérieusement !!!
Je suis désolé, mais ce n'est pas du tout incitatif à collaborer… du coup, j'hésite très sérieusement à ouvrir un compte, car je n'ai pas du tout envie de m'investir dans un projet, même au doux idéaux libristes qu'il puisse (réellement ?) être, si c'est pour me faire éjecter quand cela “chante”… Bref, pas envie de déchanter avant le chant d'agonie ! :p

le 10/11/2017 à 16:14:13, inso a dit :

@PengouinPdt : tu n'es pas le seul pour qui l'accessibilité est une difficulté à rentrer dans le réseau humain. Pour le moment, il n'y a que 400 membres. C'est donc effectivement plus complexe pour rentrer dans le réseau que lorsqu'il y en aura 10000 ou 1000000.

Ensuite, si tu ne peux aller à la rencontre des membres, rien ne t'interdit de demander aux membres de venir te rencontrer. C'est ce qu'a fait @fdubrigny, qui n'a pas les moyens de se déplacer aux rencontres. Il a proposé à @pafzedog de passer chez lui pour se rencontrer. :)

le 10/11/2017 à 16:26:22, cgeek a dit :

@thuban : concernant le soucis de chemins d'accès pour duniter-ui, ça vient de la version 1.5 de Duniter (et de la version compatible de duniter-ui). La 1.6 de Duniter corrige ce point, mais on n'en est pas encore à la release.

@PengouinPdt : tout comme Bitcoin, tu peux utiliser la Ğ1 sans te faire certifier. C'est si tu veux produire des Ğ1 que tu as besoin de créer une identité et certifications. Et même dans ce dernier cas, tu n'as pas besoin de rencontrer des personnes au hasard : tu peux te faire certifier par tes proches, des amis ou des collègues qui te connaissent et qui sont membres certifiés eux-mêmes. Et bien sûr, cette difficulté n'est pas la même selon que nous sommes 400 que 10.000. Alors plus la toile grandit, et plus cette contrainte disparaît.

le 10/11/2017 à 16:46:22, PengouinPdt a dit :

Sincèrement, j'y crois moyen à vos arguments. Ne vous méprenez pas, je suppose très fortement que vous êtes sincère, mais depuis que j'ai arrêté mes activités locales de libristes - IRL (association locale GUL), je ne vois plus personne, ne suis plus en contact avec personne (attention, je ne fais aucun reproche à personne, assurément). À ce jour, mes actifs dans l'esprit “Libre” n'a que de dimension numérique (ce qui en soit me convient bien)… elles restent plus ou moins significatives (cela dépend du regard des uns, des autres.. quoique) :D

Pour ce qui est de faire venir quelqu'un, c'est gentil… mais j'avoue que cela me dérange un tant soit peu, pour différentes raisons, d'autant que je peux me déplacer..
Bref, avant que je puisse être certifié dans le contexte du 47… va falloir de l'eau sous les ponts qui coulent très sérieusement. :p

le 12/11/2017 à 08:42:04, mamygeek a dit :

@PengouinPdt :

Argument et crainte infondés, à moins de vivre dans une grotte et ne jamais rencontrer personne.

Il suffit:
1 - d'être motivé pour utiliser G1. La monnaie est choisie et non imposée.
2 - de connaitre au minimum 10 personnes pour renouveler les certifications sur 2 ans…
3 - De renouveler son adhésion tous les ans.

Des enfants de moins de 4 ans sont déjà membres. Comment un adulte pourrait-il faire moins?
Par ailleurs, personne ne peut “virer” un membre d'une monnaie libre sans s'en être exclu lui-même…

le 12/11/2017 à 09:00:04, citizenz a dit :

Duniter me semble basé une excellente idée… A mon humble avis, comme le sous-entend mamygeek, l'aspect “social” inclus dans le processus de “certification” est un réel + à mes yeux.
Bon, ça fait à peine 24h que je suis inscrit avec une “adhésion envoyée”. Évidemment, pas encore de certification… Mais j'avoue que suis très intrigué (positivement).
A suivre…
Mes nœuds tournent “confortablement”, c'est déjà ça :)

le 12/11/2017 à 09:14:24, PengouinPdt a dit :

@MammyGeek: argument infondé ? en quoi votre honneur ?
Je suis désolé, je ne connais pas 10 personnes, comme il est nécessaire de les connaître vraiment !

Même @citizenz - alias @mumbly, si je ne me trompe pas - qui me “connaît” depuis plusieurs années, ne me connaît pas du tout.
Et, ce n'est pas @thuban, avec qui je collabore depuis quelques mois, qui aura la pertinence d'affirmer qu'il me connaît réellement.
Au fait @citizenz : bien joué l'expérience ;)

De vouloir m'en remontrer avec des histoires de gosses de -4 ans qui se la pêtent déjà, à en être… n'est vraiment pas de bon aloi !
Déjà est-ce légal cela d'avoir de si jeunes membres qui ne comprennent rien à la “roue” ? alors, comprendre les tenants et aboutissants d'une crypto-monnaie, et de la différence intrinséque de Duniter, de “June”, j'en doute très fortement… sans parler que plus d'un adulte n'arrive pas à appréhender correctement le concept de crypto-monnaie, et je ne parle même pas de les gérer.

Bref, dans l'immédiat, je ne connaît personne réellement qui soit certifié et qui puisse certifier correctement. Point barre à la ligne. Et, avant d'argumenter, c'est exactement le même problème que la certification pour les clés GPG/SSH, etc…

Personne ne peut virer ? C'est sûr, mais relis donc le contrat… c'est très vite fait de perdre sa qualité de membre. dixit ce que j'ai mis en exergue comme citation dans mon premier post.

Bon, je vais arrêter et ma prose, et mes interventions à ce propos, d'autant que je suis entrain de perdre et patience, et contenance. Faut que je prenne du recul, vraiment !

Bonne journée à tous, et bon courage.

le 26/01/2018 à 23:57:59, John Doen a dit :

Je suis très en accord avec ce que dit PengouinPdt. D'ailleurs j'avais commencé a m'interressé à Duniter pendant là periode de test et si je ne me trompe pas à ce moment les condition de certification était beaucoup plus en phases avec les technologies utilisés (internet, blockchain…) puisqu'il était question de justifié d'une identité active sur different reseaux internets.
Moi non plus je n'ai pas envie de rencontrer des gens en vrai ni de les faire venir chez moi. Je suis sur internet justement pour tenir mon identité physique hpors de tou ça. On a inventé tor, des centaines de systèmes de chiffrements, des systèmes de fichiers partagés et decentralisé pour justement garder son identité phisique hors de tout ça finalement non. Retours a la bonne vieille poignée de même, ils faut montrer patte blanche sinon ciao.
Mais le crypto de cryptomonaie il n'est pas la parce qu'on a des clef public et privé? utilisons les! signons nos mails, signons nos commit, signons nos biographie mastodon, nos post de blogs. Faisons vivre ces identités numeriques, et le reseau pourra l'identifier. Le seul réseau qui compte. Et les gens qui suivent avec suffisemment d'attention les va et viens numériques de cette identité pourront voir dans cette activité la marque d'une façon de faire, reconnaitre une pensée, un être unique et pourront si il le souhaite, certifier l'exister et l'interéter de cette identité. Vraiment, j'ai beau tourner et retourner dans ma tête le pourquoi ce serait bien de physiquement “valider” une personne, je vois pas. Et venez pas dire que c'est trop facile d'etre n'importe qui sur internet, je vous mets au defis de maintenir une identité stable, reconnaissable et qui evolue dans le temps sur internet, ce n'est possible qu'en étant vraiment cette personne.