Petites questions d'un novice
-
Bonjour,
Je suis en école d’ingénieur en informatique ( I.S.E.P ) et je m’intéresse à la technologie Blockchain par curiosité. Merci de vos réponses, si vous avez des liens répondant comme il faut ( en français ou en anglais ) c’est très bien aussi !
Il y a quelques questions auxquelles je n’arrive pas à trouver de réponse :
Pour le bitcoin précisément :
A1) Comment s’assurer d’un remboursement en cas de prêt sachant qu’on a pas d’assurance sur l’identité de la personne. Les prêts sont donc impossibles?
A2) Que ce passe t’il si un block n’est pas validé ? Il est tout simplement mis de coté ou des mesures sont faites sur l’auteur de la transaction frauduleuse ?
Pour la blockchain en général :
B1) J’ai compris en partie comment ça marchait mais je ne comprends pas l’utilité majeure face à une base de données normale. Car question de visibilité, la blockchain est de toute façon visible. Question suppression de données, un simple back-up est suffisant non?
B2) Dans le cas ou deu blocs sont validés en même temps certains vont travailler sur la chaîne A, d’autre sur la B mais on est pas sur qu’une chaine prenne “l’avantage” sur l’autre rapidement, donc on peut se retrouver avec beaucoup de travail inutile non ?
B3) Dans le cas d’un fork, les blocs validés doivent être revalidés dans la nouvelle chaîne ou on les considèrent validés ?
B4) Pourquoi le système de “proof of work”, un système avec une attente n’aurait pas fait mieux le travail avec moins d’effort ? Je pensais à : Quand une transaction arrive certains mineurs la valident par rapport aux validations passées et en attente, elle est mise en attente pendant 3 minutes, toutes les trois minutes on vérifie avec les autres en attente et celles validées. A la fin il est validée.
B5) Quelle est la différence exactement entre décentralisée et distribuée ?
-
Bienvenue @th.deudon. Tu as déjà essayé de participer à un meetup sur Paris ? (il y en a plusieurs sur bitcoin/blockchain)
Sinon, pour tes questions :
A1) Comment s’assurer d’un remboursement en cas de prêt sachant qu’on a pas d’assurance sur l’identité de la personne. Les prêts sont donc impossibles?
Via le réseau il n’y a aucun moyen d’être sûr de se faire rembourser. Il faudrait faire des contrats et des systèmes de réputation décentralisé pour ce genre de choses.
Par contre des services comme btcjam.com permette de prêter en bitcoins, mais c’est un service centralisé qui va vérifier les identités.
A2) Que ce passe t’il si un block n’est pas validé ? Il est tout simplement mis de coté ou des mesures sont faites sur l’auteur de la transaction frauduleuse ?
Que veux-tu dire par “un block n’est pas validé” ?
B1) J’ai compris en partie comment ça marchait mais je ne comprends pas l’utilité majeure face à une base de données normale. Car question de visibilité, la blockchain est de toute façon visible. Question suppression de données, un simple back-up est suffisant non?
La différence avec une “base de donnée” normale, c’est l’incorruptibilité (tu es sûr à 100% que les données de la blockchain ayant une certaine ancienneté ne changeront plus jamais)
nb: pour le moment ce n’est vrai que sur Bitcoin, les autres réseaux ne sont pas suffisamment sécurisé pour vérifier cette propriété
B2) Dans le cas ou deux blocs sont validés en même temps certains vont travailler sur la chaîne A, d’autre sur la B mais on est pas sur qu’une chaîne prenne “l’avantage” sur l’autre rapidement, donc on peut se retrouver avec beaucoup de travail inutile non ?
Je ne vois pas le problème ?
B3) Dans le cas d’un fork, les blocs validés doivent être revalidés dans la nouvelle chaîne ou on les considèrent validés ?
ils n’ont pas été validés dans la “vraie” chaîne, ils n’existent donc pas dans cette chaîne là. https://blockchain.info/fr/orphaned-blocks
B4) Pourquoi le système de “proof of work”, un système avec une attente n’aurait pas fait mieux le travail avec moins d’effort ? Je pensais à : Quand une transaction arrive certains mineurs la valident par rapport aux validations passées et en attente, elle est mise en attente pendant 3 minutes, toutes les trois minutes on vérifie avec les autres en attente et celles validées. A la fin il est validée.
Je ne comprends pas ?
Dans le système POW, les mineurs ajoutent les nouvelles transactions considérées comme valides dans un bloc (de transactions), si ce mineur trouve le bon hash, le bloc est validé.
B5) Quelle est la différence exactement entre décentralisée et distribuée ?
Je cite :
Distributed means not all the processing of the transactions is done in the same place. This does not mean that those distributed processors aren’t under the control of a single entity. (Think of gas stations, there are Shell stations all over yet all are Shell)
Decentralized means that not one single entity has control over all the processing. By nature, this implies that it is distributed among various parties.
https://www.quora.com/Whats-the-difference-between-distributed-and-decentralized-in-Bitcoin-land
-
Merci beaucoup @ffmad pour toutes ces réponses et le temps que tu as pris !
Pour A2) Les blocs sont donnés aux mineurs il me semble ( ce n’est pas eux qui peuvent choisir de miner ce qu’ils veulent. Donc si un mineur se retrouve avec un bloc ayant une transaction frauduleuse, quelles sont ses actions ?
A3) D’ailleurs la validation/dévalidation d’un bloc se fait avant ou après avoir trouvé le nonce ?
A4) Les blocs sont formés de façon aléatoire avec les transactions ou ce sont des paquets par ordre d’arrivage ?
B2) Le travail inutile est un frais qui est par définition inutile non ? Ca va moins donner envie de miner aux mineurs si un bloc validé peut être annulé
B4) Le POW est une solution pour éviter les transactions non voulues dans le réseau. Mais je trouve cette solution très coûteuse par rapport à d’autre comme celle proposée.
-
ffmad Bitcoiner Lightning Network AssoCryptoFR Admina répondu à th.deudon le dernière édition par ffmad
@th.deudon a dit :
Merci beaucoup @ffmad pour toutes ces réponses et le temps que tu as pris !
de rien
Pour A2) Les blocs sont donnés aux mineurs il me semble ( ce n’est pas eux qui peuvent choisir de miner ce qu’ils veulent. Donc si un mineur se retrouve avec un bloc ayant une transaction frauduleuse, quelles sont ses actions ?
les blocs sont façonnés par les mineurs. Ils composent un “bloc” de transaction en ajoutant les nouvelles transactions qui vérifient leur critère de fee (>5000 sats par exemple) et qui sont valides par rapport à la blockchain
A3) D’ailleurs la validation/dévalidation d’un bloc se fait avant ou après avoir trouvé le nonce ?
trouver le nonce = bloc validé
A4) Les blocs sont formés de façon aléatoire avec les transactions ou ce sont des paquets par ordre d’arrivage ?
Ordre d’arrivage sur le noeud en question (des noeuds à différents endroits du globe ne vont pas recevoir les mêmes transactions en même temps), sélection aléatoire voire sélection tout court dans le mempool (BTCC veut par exemple valider d’abord les transactions vers et depuis BTCC)
B2) Le travail inutile est un frais qui est par définition inutile non ? Ca va moins donner envie de miner aux mineurs si un bloc validé peut être annulé
Les mineurs fournissent du travail inutile tant qu’ils ne trouvent pas un bloc de toutes façons …
B4) Le POW est une solution pour éviter les transactions non voulues dans le réseau. Mais je trouve cette solution très coûteuse par rapport à d’autre comme celle proposée.
je ne vois pas en quoi ‘ta solution’ diffère du POW ^^
-
Et bien ma solution ne fait pas en sorte que beaucoup de mineurs cherchent des nonces, il n’y a pas besoin de prouvé un temps passé au travail. Il demande une opération de validation de transaction * X ( plus X est grand moins il y a de chance de se faire avoir par un pirate ) 3 fois.
Et bien merci, du coup je n’ai plus de question je pense avoir compris les bases.
-
@th.deudon as-tu lu Mastering Bitcoin ? Pour bien comprendre Bitcoin, il n’y a pas mieux
-
Alors désolé d’avoir mis autant de temps mais j’ai préféré relire les passages sur le mining mais je ne trouve toujours pas une réponse à une question : un bloc de la blockchain est revalidé par les mineurs ou non? Un bloc miné par un fraudeur laissant deux transactions utilisant le même output sera découvert par quelle façon? Je pense qu’il est reverifié s’il a une profondeur de moins de 6 mais je ne suis pas sur.
-
“un bloc de la blockchain” est pas revalidé par les mineurs mais par tout le monde, si t’a un bloc avec un mauvais nonce et dont le hash est corrompu ne sera pas réexpédié, voila.
je n’ai pas compris ta question sur les deux transactions avec même output, tu peux envoyer autant de transactions par bloc que tu veux à la même adresse.Pour l’histoire des 6 confirmations, je ne comprends pas non plus. Un bloc que tu reçoit, tu le vérifie, peu importe son ancienneté.
-
@th.deudon a dit :
un bloc de la blockchain est revalidé par les mineurs ou non? Un bloc miné par un fraudeur laissant deux transactions utilisant le même output sera découvert par quelle façon?
comme le dit @slashbin, il sera validé par tout le monde
Si les nodes (même non mineurs) ne l’accepte pas, il se retrouvera rapidement dans une blockchain moins longue que les autres, et sera donc dans un fork mort