Certificats des non-membres


#1

Bonjour,
en rassemblant quelques lectures autour de duniter et d’autres connaissances plus livresques j’ai compris que (merci de me démentir le cas échéant) :
“lorsque j’ai reçu mes 5 certifications le système a établi un certificat qui fait le lien entre moi et ma clef publique. Ce certificat n’est pas signé par un tiers de confiance mais il est auto-signé à l’aide des clefs privées de mes 5 certifiants.”

Ma question est donc la suivante : les non-membres, qui ont cependant le droit d’effectuer des transactions, ont-ils un certificat pour les identifier ?
Si oui, comment est-il établi ?
Si non comment faire avec certitude le lien avec leur clef publique ?

Voilà, s’en est fini de mes questions de Noob pour l’instant.
Cordialement,
JMV.


#2

non

Le compte non-membre est la clé publique.
La clé publique sert de RIB.


#3

Et donc il n’est pas exclu que quelqu’un puisse s’intercaler entre mon association préférée et moi, usurper l’identité de celle-ci et recevoir mes dons à sa place ?


#4

Seule la clé publique fait foi, et c’est elle qu’il faut transmettre aux donateurs, c’est comme le RIB pour la monnaie non-libre. Le “nom” seul ne fait pas foi.


#5

En d’autres termes, quand tu fais un virement, utilise uniquement la clé publique de ta destination et non d’autres informations (comme l’identifiant cesium+ par exemple) sur lesquelles des esprits malveillants pourront toujours faire de l’hameçonnage…


#6

Il me semble qu’une structure suffisamment puissante, qui aurait par exemple la main sur les dispositifs de routage du réseau pourrait prendre la place de “l’homme du milieu”.


#7

Je ne vois pas vraiment où tu veux en venir. Peux-tu développer ton idée ? D’après tes messages précédents, il me semble que tu crois que lorsque tu fais un transfert monétaire, celui-ci se « transporte » physiquement sur le réseau entre toi et ton destinataire, mais ce n’est pas du tout comme ça que ça fonctionne. Si tu nous en dis plus, on pourra probablement mieux t’aiguiller. :wink:


#8

Je ne veux en venir nulle part, je m’interroge juste sur la robustesse du système. Je ne suis pas développeur mais je m’intéresse au sujet. J’ai lu quelque-part qu’un système de chiffrage à clefs privée/publique était vulnérable (seulement ?) à des attaques du type “homme du milieu”.
C’est à dire que dans une communication entre A et B, l’homme du milieu M, s’il a la main-mise sur le réseau peut s’intercaler entre A et B, dire à A : “je suis B, voilà ma clef publique (en donnant celle de B)” et dire à B : “Je suis A, voilà ma clef publique (en donnant celle de A)” et donc polluer la communication.
C’est la raison d’être des certificats, ils permettent de s’assurer de l’identité associée à une clef publique. Évidemment, ce genre d’attaque n’est pas à la portée du premier quidam venu, mais pour une structure puissante, disons par exemple un état, il est possible de rediriger une communication vers un faux site web. Voilà pourquoi je suis préoccupé par l’absence de certificat pour les comptes porte-feuille. Les réponses faites jusqu’alors présupposaient l’intégrité du réseau, et si le réseau n’était pas intègre ?

Mais je ne souhaite qu’une chose : me tromper.
Cordialement,
JMV.


#9

Oui, il faut bel et bien t’assurer que la clé publique que l’association t’a transmise est bien celle qu’elle possède.

Éventuellement, l’association peut effectuer des transactions sur la blockchain prouvant qu’elle possède la clé. Ainsi il n’y a pas d’attaque type MITM pour le paiement.


#10

ĞRienCompris !
Si le réseau n’est pas intègre, comment tu fais sans certificat pour t’assurer de l’identité de ton interlocuteur ?

JMV.


#11

Tu passes par un noeud de confiance en HTTPS par exemple ? Qui répond des informations vérifiables en blockchain.


#12

Encore une fois, je pense que tu n’as pas la bonne vision de la manière dont se passe les choses au sein d’un réseau pair-à-pair.
Je vais essayer de simplifier. Tu veux envoyer de la monnaie de ton adresse « Ssss » vers l’adresse de ton destinataire « Dddd ». Le destinataire en question n’a peut-être pas de nœud qui tourne. Peut-être même qu’il ne s’est jamais réellement connecté sur son adresse (cas des portefeuilles papier, qu’on appelle aussi « cold wallet » dans le monde crypto).
Pour concrétiser ton envoi, tu crées localement un document sur ta machine qui dit « L’adresse Ssss envoie Xxxx Ğ1 vers Dddd » et tu signes ce document à l’aide de ta clé privée. Ensuite, tu publies ce document sur le réseau, sur n’importe quel nœud du réseau en fait. Et comme ce document est signé, il ne peut pas être contrefait par qui que ce soit. Une fois que ce document est connu, s’il est conforme au format des documents attendus par les nœuds et que tu as assez de Ğ1 sur le compte source pour effectuer la transaction, alors ce document est validé par les nœuds et intégré dans la blockchain. Et voila, à aucun moment ton destinataire n’est intervenu, il ne peut donc pas y avoir de « man in the middle ».
J’espère que c’est plus clair pour toi… ou pas ! :slight_smile:


#13

Tu m’as convaincu.
Voilà ce que j’en retiens : toutes les transactions sont réalisées dans le sous-réseau de la TDC constitué des nœuds duniter qui, eux, ont tous un certificat.


#14

Tu touches tout de même là un point important : les nœuds doivent être au maximum en SSL (quel que soit le protocole utilisé) et avec un certificat pour garantir qu’une entité ne vient pas se mettre à la place des nœuds existants. Au lancement de la monnaie il y a 1 an, ce n’était pas forcément le cas, mais aujourd’hui il me semble que la plupart des nœuds ont bien basculé en mode SSL. Il faudrait quand même vérifier ce qui se passe lorsque le certificat d’un nœud expire ou change, je ne suis pas sûr que ça déclenche vraiment des alertes pour les autres nœuds à l’heure actuelle.


#15

Tu notera que pour ce système de transaction la TDC n’est pas nécéssaire vu que le Bitcoin, Litecoin ou autres fonctionnent sans, mais au prix d’une grande consommation electrique.

La TDC elle permet de limiter la course à la puissance en définissant un nombre fini de personnes qui peuvent écrire dans la blockchain, et qui équilibre le système pour que les membre avec un ordinateur puissant aient le même “pouvoir de vote” que quelqu’un avec un pc moins puissante.