Toon bijdragen

Deze sectie stelt je in staat om alle bijdragen van dit lid te bekijken. Je kunt alleen de bijdragen zien waar je op dit moment toegang toe hebt.


Berichten - AmazingDreams

Pagina's: 1 ... 6 7 8 [9] 10 11 12 ... 15
121
Ontwikkeling en technische discussie / Re: Lichte wallet
« Gepost op: 21 oktober 2014, 15:36:04 »
Hmm ja lastige. Op dit moment vereist bitcoin geen enkel vertrouwen (behalve dan het vertrouwen in de code, die iedereen kan zien).

Als je de informatie van je blokken en transacties ergens anders vandaan haalt. Vereist dat vertrouwen.
Zelfs als je deze informatie uit X punten haalt en met elkaar vergelijkt, vertrouw je er alsnog op dat al deze X punten niet op dezelfde manier corrupt zijn.

Hoe los je dit op?

122
e-Gulden discussie / Re: IRC kanaal #egulden
« Gepost op: 20 oktober 2014, 10:42:19 »
Is daar een link van?

http://webchat.freenode.net/?channels=%23egulden&uio=d4

Als je het prettiger vind om via een GUI te werken kun je ook een client downloaden, hier een willekeurig lijstje: http://www.makeuseof.com/tag/top-7-free-irc-clients-windows-7/

Zelf gebruik ik xchat: http://xchat.org/download/

123
e-Gulden discussie / Re: EFL weg bij Litebit?
« Gepost op: 15 oktober 2014, 20:44:44 »
Weet niet wat er bij Litebit aan de hand is dacht van hun nieuwe markt service gebruik te kunnen maken, en deze ochtend netjes wat coins naar ze verstuurd (geen efl) maar zie die verkoop nergens meer terug en ze reageren ook niet op verschillende mails die ik ze vandaag verstuurd heb?
Weet iemand of ze telefonische te bereiken zijn kan nergens een tel vinden?

Ik heb ze een mailtje gestuurd, halfuurtje later zag ik het op de website staan. T is nu wel buiten kantoor uren dus. :)

124
Valuta Markt / Re: Litebit
« Gepost op: 15 oktober 2014, 14:48:53 »
NB: iets aanbieden op hun markt kost 50 cent (wat je betaald via je verkoop).

Hoelang duurde het voordat je te koop gezette e guldens op litebit stonden?

Dat duurde tot vlak nadat ik een mailtje had gestuurd. Zou het dus niet weten. Ik neem aan dat er bij mij iets mis ging.

125
e-Gulden discussie / Re: EFL weg bij Litebit?
« Gepost op: 15 oktober 2014, 11:18:08 »
De 500 EFL is inmiddels op hun markt te vinden :)

En verkocht, hehe

126
e-Gulden discussie / Re: EFL weg bij Litebit?
« Gepost op: 15 oktober 2014, 11:09:14 »
Het is vrij duidelijk dat LiteBit een voorkeur uitdraagt naar NLG. Zie het leeuwtje en de onmogelijkheid om EFL te verkopen. Ik heb gisteren geprobeerd iets te verkopen op hun EFL markt maar nog niets gezien. Ik heb hen dit mailtje gestuurd.

Citaat
Gisteren heb ik 500 EFL overgemaakt naar uw adres LZ9gDzB6X6ntSu3cNGDBBY3fajLd4YTs1H. Deze 500 EFL zouden nu beschikbaar kunnen zijn op de markt, echter heb ik nog niets gezien. Ook kan ik niets vinden over een pending transactie of iets dergelijks.
Overigens heb ik de pagina gesloten voordat ik dit bedrag heb overgemaakt.

Ik verwacht u hiermee voldoende geïnformeerd te hebben.

De 500 EFL is inmiddels op hun markt te vinden :)

127
Valuta Markt / Re: Litebit
« Gepost op: 15 oktober 2014, 11:06:16 »
NB: iets aanbieden op hun markt kost 50 cent (wat je betaald via je verkoop).

128
e-Gulden discussie / Re: EFL weg bij Litebit?
« Gepost op: 15 oktober 2014, 10:14:47 »
Het is vrij duidelijk dat LiteBit een voorkeur uitdraagt naar NLG. Zie het leeuwtje en de onmogelijkheid om EFL te verkopen. Ik heb gisteren geprobeerd iets te verkopen op hun EFL markt maar nog niets gezien. Ik heb hen dit mailtje gestuurd.

Citaat
Gisteren heb ik 500 EFL overgemaakt naar uw adres LZ9gDzB6X6ntSu3cNGDBBY3fajLd4YTs1H. Deze 500 EFL zouden nu beschikbaar kunnen zijn op de markt, echter heb ik nog niets gezien. Ook kan ik niets vinden over een pending transactie of iets dergelijks.
Overigens heb ik de pagina gesloten voordat ik dit bedrag heb overgemaakt.

Ik verwacht u hiermee voldoende geïnformeerd te hebben.

129
Ontwikkeling en technische discussie / Re: Bitcoin Upstream Merge
« Gepost op: 14 oktober 2014, 15:42:50 »
Als jij denkt dat ik van toegevoegde waarde kan zijn hoor ik het graag.

Dat denk ik niet, maar we hebben uiteraard altijd wel vertaalwerkzaamheden en dergelijke.

130
Ontwikkeling en technische discussie / Re: Bitcoin Upstream Merge
« Gepost op: 14 oktober 2014, 15:42:23 »
Even een update;

De core bitcoin library lijkt correct te compilen. Dat betekend nog niets, dat betekend alleen dat ik alle syntax dingen eruit heb gehaald en al het 'oude' naar het 'nieuwe' heb veranderd (en dat is nogal wat).

Ingebakken in de makefile die bitcoin standaard genereert zitten allerlei tests die nu uiteraard falen. Deze tests bestaan bijvoorbeeld (ik roep maar wat) uit het controleren of de miner wel een correcte sha256 hash kan maken (wat uiteraard niet zo is, want scrypt). NB: ik heb nog geen idee of de miner uberhaupt wel werkt.

Ik vind het nu wel weer mooi geweest voor vandaag. :)
Morgen de rest van de rotzooi van de git merge eruit halen in de qt's en de tests. Dan hopen dat ik in ieder geval een binary kan krijgen.

131
Hulp / Re: Hoe werkt de e-Gulden?
« Gepost op: 14 oktober 2014, 15:37:43 »
---- KNIP ----

Ik ga kijken of ik dit verhaal nog enigszins in kan korten, eerst moet ik het nog zelf goed begrijpen.

132
Hulp / Re: Hoe werkt de e-Gulden?
« Gepost op: 14 oktober 2014, 15:36:53 »
Citaat
De naam keuze is wel erg Nederlands, misschien een idee op een van de personen Achmed te noemen? (of iig iets meer diversiteit in de namen, als is het maar om aan te tonen dat we er mee bezig zijn)

Het zijn maar namen

Citaat
Bij puntje 3.3 in het begin geef ik zelf altijd het voorbeeld van een sudoku, makkelijk te controleren en moeilijk om te maken en hoe beter je bent in het oplossen van een sudoku, hoe minder getalletjes er in het begin bekend zijn, zodat de oplostijd gelijk blijft.

Ik denk dat de vergelijking met een sudoku niet helemaal correct is. Het principe is wel hetzelfde maar het verschil is dat je met honderdduizenden tegelijk een sudoku aan het maken bent. Deze honderdduizenden mensen (hashing power) staan gelijk aan je 'ervaring' in het oplossen van sudoku.
De difficulty is dan analoog met de hoeveelheid getallen die je krijgt. Maar dit staat niet meer als er een bepaalde difficulty is bereikt. Of misschien wel, want stel je krijgt maar 1 getal, en er is maar 1 oplossing. Dan moet je gaan gokken , hoewel dan alle oplossingen correct zijn is er maar 1 die 'de krant' wil zien.

Citaat
Puntje 3.4 klinkt nu erg gevaarlijk en alsof het aan de orde van de dag is, misschien even een kanttekening plaatsen dat dit eerder uitzondering dan regel?

Of het eerder uitzondering is dan regel is aan de totale kracht van de 'good guys' op het netwerk.

133
Ontwikkeling en technische discussie / Bitcoin Upstream Merge
« Gepost op: 14 oktober 2014, 11:06:21 »
Ik ben bezig met een merge van bitcoin upstream. Nu nog alle merge conflicten fixen en al het 'laaghangende fruit' aan het oprapen.

Als je wil helpen, laat het aub weten.

134
Hulp / Re: Wat is de e-Gulden?
« Gepost op: 13 oktober 2014, 11:45:49 »
Misschien dat iemand anders nog iets kan vertellen over hoe het ondertekenen van transacties precies werkt.

135
Hulp / Hoe werkt de e-Gulden?
« Gepost op: 13 oktober 2014, 11:27:42 »
Dit stuk is opgedeeld in 3 delen:

  • Algemene inleiding
  • Niet technisch verhaal
  • Technisch verhaal

Ik zou echter zeggen dat je alles moet lezen :) Mocht iemand fouten of verbeterpunten zien, laat het aub weten.

1. Algemene inleiding
Bitcoin is de eerste cryptovaluta, ontwikkeld door de persoon - of team - Satoshi. Bitcoin is een munt die decentraal uitgegeven wordt. Zonder vooroordelen en zonder arbitraire ideeen of beslissingen van enkele personen.
De e-Gulden is hiervan afgeleid. Het onderstaande verhaal is een poging duidelijk te maken hoe een cryptomunt werkt.

2. Niet technisch verhaal
2.1 Lokale kopie
Iedereen houdt zijn eigen lokale kopie bij van de transacties die gemaakt zijn. Een soort scoreboard waar per adres staat hoeveel dat adres ontvangen en verstuurd heeft en dus hoeveel dat adres in bezit heeft.

2.2 Transacties
Op het moment dat bijvoorbeeld Jan een transactie maakt moet hij de transacties noemen die samen de waarde van zijn nieuwe transactie hebben. Deze informatie stuurt hij de wereld in, iedereen controleert of Jan wel echt die transactie kan maken, of hij wel genoeg geld heeft. Dit gebeurt allemaal softwarematig, niets in dit verhaal wordt met de hand gedaan. Hij heeft bijvoorbeeld een keer 2 en een keer 3 EFL ontvangen en wil 5 versturen. Zijn software noemt dan deze transacties (input) van 2 en 3 EFL met de output van 5 EFL. Iedere 'input' transactie kan maar 1 keer gebruikt worden.

Nu kan het zijn dat Jan meerdere keren refereert naar dezelfde input transactie. Deze transacties zijn dus niet geldig, ze zijn immers al gebruikt! Jan is echter heel erg slim bezig (denkt 'ie) en probeert met hetzelfde geld meerdere rekeningen te betalen. 1 bij de groenteboer en 1 bij de bakker. Hij stuurt de informatie over de ene transactie eerst naar de bakker en een andere transactie eerst naar de groenteboer. De groenteboer en de bakker zien allebei het geld binnenkomen van Jan (wat dus niet klopt!). Overigens is dit in de praktijk erg lastig.

Na een tijdje komt de informatie binnen over de andere transacties bij de bakker en de groenteboer, deze zullen door de software van de groenteboer en de bakker geweigerd worden. Want Jan had al aangegeven die inputs gebruikt heeft om te betalen. Jan is blij, hij heeft twee rekeningen betaald met hetzelfde geld! De transactie naar de groenteboer wordt niet geaccepteerd door de software van de bakker en de transactie naar de bakker wordt niet geaccepteerd door de software van de groenteboer. Zij zien dit dus niet!

2.3 Mining
Wat nu? Wat doen we om dit soort synchronisatieproblemen te voorkomen? We minen! We hebben afgesproken dat, eenmaal in de zoveel tijd, de huidige status van het netwerk wordt gebruikt van een enkele miner, als je je niet aan deze afspraak houdt kun je niet meedraaien met het netwerk. We zullen later ingaan op de details, maar eerst op de grote lijnen en wat het betekend voor het netwerk.
Piet was aan het minen en had het geluk om het volgende blok te vinden. Toevallig kreeg hij de transactie naar de groenteboer eerder binnen, de transactie naar de bakker werd dus niet geaccepteerd en staat niet in zijn lokale scoreboard. Op het moment dat het blok gevonden wordt, wordt zijn scoreboard verpakt in een blok en uitgezonden naar het netwerk.
De groenteboer is blij; hij ziet dat de transactie inmiddels een bevestiging heeft! De bakker is niet blij: Jan is duidelijk niet te vertrouwen, hij heeft hem geprobeerd op te lichten. Maar weet ook dat hij geen vals geld heeft gekregen waardoor hij later zelf in de problemen zou komen.

2.4 Incentief om te minen
Het incentief om te minen bestaat in feite uit 3 delen.

Ik wil m'n geld!
De bakker en de groenteboer hebben beide motivatie om te minen, zij willen immers hun geld krijgen/kunnen uitgeven. Dit kan alleen als de transacties worden bevestigd door middel van een blok.

Ik wil meer geld! #1
Als je een blok vind krijg je een beloning, deze beloning bestaat op dit moment uit 25 EFL en wordt iedere 210.000 blokken gehalveerd.

Ik wil meer geld! #2
Bovenop de normale blokbeloning krijg je transactie fees die betaald worden door degenen die een transactie hebben gemaakt. Dit is per transactie een klein bedrag maar wordt opgestapeld toch redelijk wat geld. 1000 transacties met allemaal een 0.001 EFL aan fees is samen toch weer 1 EFL.

3. Technisch verhaal
3.1 Hashes
Een hash is een bepaalde manier om data te bewerken die niet om te keren is. Het is praktisch onmogelijk om de oorspronkelijke data uit de hash te halen. Belangrijk om te weten is dat een kleine verandering aan de input waarde een grote verandering in de output hash geeft. Enkele voorbeelden met een sha256 hash:

waarde: egulden
hash:   f6ce2516edc4a2465c45435a2e6aad5ef2814ef6aac1b08031a52a2bc6cd3d8a
waarde: e-gulden
hash:   0b4cdfa4a13708690db7b19b55b8ce5a5261f0956f322e4fabf5b869eecee95a

De enige manier om te achterhalen wat de oorspronkelijke data was is door een 'brute force' aanval te doen op de hash. Een brute force aanval is een 'domme' aanval die gewoon net zo lang de waarde veranderd tot de hash hetzelfde is:

waarde: a
hash:   ca978112ca1bbdcafac231b39a23dc4da786eff8147c4e72b9807785afee48bb
waarde: ab
hash:   fb8e20fc2e4c3f248c60c39bd652f3c1347298bb977b8b4d5903b85055620603
waarde: abc
hash:   ba7816bf8f01cfea414140de5dae2223b00361a396177a9cb410ff61f20015ad
enzovoort.

Deze hashes worden veelvuldig gebruikt door cryptocurrencies. Maar ook bijvoorbeeld bij het opslaan van wachtwoorden.

3.2 Transacties, gedetailleerd(er)
Zoals hierboven genoemd houd iedereen een eigen kopie bij van de status van het netwerk (het scoreboard). Dit scoreboard is niet 'hard', in de zin dat het wordt opgebouwd door de som van alle transacties van en naar een adres. Zo heeft een adres bijvoorbeeld tweemaal 5 e-Gulden gekregen en 2 gestuurd, hij heeft dus 8 e-Gulden in totaal. Als je in je wallet ziet dat je 8 EFL hebt, heeft je wallet deze berekening dus gemaakt. Letterlijk gezien is het dus niet zo dat je dat 'hebt', maar dat de som van alle transacties op dat getal uit komt. En dat dit het bedrag is wat je kan uitgeven.
Stel dat je nu deze van deze 8 EFL er 4 gebruikt om iets te kopen. Je wallet zoekt naar de meest efficiënte manier om dit te doen. In dit geval maakt de wallet twee transacties aan: de wallet refereert naar een transactie van 5 EFL en zegt dat 4 hiervan verstuurd worden naar adres A, en 1 naar een eigen adres B. Dit moet gebeuren om te zorgen dat het transactionele systeem klopt. Want je balans wordt 'opgebouwd', en is niet 'hard' maar liquide. Zonder de transactie van 1 EFL naar adres B ben je deze EFL kwijt.

De hash van een transactie:
waarde: hoeveelheid:4,van:adresA,naar:adresB
hash:   af436033bf9d9ce539b4a13ad38729de93abc1f72a48c5fa938c321adb20dae5

Om te bewijzen dat degene die de adresA bezig daadwerkelijk de eigenaar is van de 4 EFL's, wordt de transactie ondertekend met behulp van de private keydie bij dat adres hoort. Er is een wiskundige verbinding tussen de public key (adresA) en de private key, die geheim moet blijven.

Stel dat de eigenaar van adresB meer wil hebben, hij past de transactie aan zodat er staat dat er 10 verstuurd moet worden en zendt deze uit naar het netwerk.
waarde: hoeveelheid:10,van:adresA,naar:adresB
hash:   27107823a23bd5330ade6a9d1dd6a566fc2d1b2e1cea1f4b9c48816d9019f960
De hash is nu anders! De handtekening klopt niet met de transactie! Deze is dus ongeldig.

Limbo
Als een transactie wordt gemaakt is deze in 'limbo' (niemand kan nog bij de coins) tot deze in een blok is opgenomen.

3.3 Mining, gedetailleerd(er)
Minen is het proces van het oplossen van zeer ingewikkelde problemen. Deze problemen zijn moeilijk op te lossen, maar makkelijk te bewijzen dat ze correct zijn opgelost. De moeilijkheidsgraad van deze problemen varieert, we willen dat er iedere 2 minuten zo'n probleem wordt opgelost. Als er relatief veel oplossingen gevonden worden zal de moeilijkheidsgraad omhoog gaan, als er relatief weinig oplossingen worden gevonden zal de moeilijkheidsgraad omlaag gaan.

Een blok bestaat uit de waardes van alle transacties die op dat moment in limbo zijn, plus de hash van het vorige blok. Hier moet alleen nog een hash op geplakt worden die past bij de huidige moeilijkheidsgraad. Om dit te realiseren moet er een variabele zijn in het blok. De zogenaamde nonce. Deze nonce bestaat uit 4 bytes (karakters) en is de enige variabele in een blok. Miners berekenen deze nonce zodat de hash van alles bij elkaar past bij de huidge moeilijkheidsgraad.

Een blok moet het vorige blok vermelden, waar dit blok op is gebouwd
Om te voorkomen dat iemand van te voren een aantal blokken kan maken en op een willekeurig moment aan het netwerk kan geven moet een blok altijd de hash van het vorige blok bevatten. Zoals ik hierboven heb laten zien veranderd de hash aanzienlijk bij zelfs een kleine verandering in de data. Je kunt dus niet vast een paar blokken maken en hier later de hashes in passen. Alle blokken die gemaakt zijn bevatten dus het resultaat van de vorige berekening. Iedere keer dat er een nieuw blok wordt gevonden begint het berekenen opnieuw.

Een blok moet gegenereerd zijn met een bepaalde moeilijkheidsgraad
We willen niet te snel blokken achter elkaar, en ook niet te weinig, de hash/nonce moet passen bij de moeilijkheidsgraad. Deze nonce wordt verpakt bij het blok en is dus bekend voor eenieder die het blok ontvangt. De ontvanger gooit alles nogmaals bij elkaar en kijkt of de hash klopt met de moeilijkheidsgraad, als dit zo is wordt het blok geaccepteerd.

3.4 Wat als er een 'fork' is?
De situatie die geschetst werd bij de simpele uitleg van de transactie kan ook gebeuren bij blokken. Het kan zijn dat er twee blokken op ongeveer hetzelfde moment gevonden worden en deze beide naar delen van het netwerk worden gestuurd. Wat nu?
De langste keten wint: sommige miners zullen op blok A gaan bouwen en anderen op blok B. Op het moment dat er eerder een blok C wordt gevonden op blok A wordt deze het netwerk in gestuurd en zullen de clients blok B niet meer zien als een geaccepteerd blok. De transacties in dat blok zullen teruggaan in de limbo totdat ze weer verpakt worden in een blok.

Dit proces kan zich onbeperkt herhalen. Een ding is dat als een bepaalde miner maar genoeg kracht heeft hij sneller blokken kan bouwen dan de rest van het netwerk en bijvoorbeeld een chain maakt van 20 blokken in de tijd dat de rest van het netwerk er maar 10 heeft gemaakt. Deze 20 blokken laat hij pas later los. Die blokken zijn dus de langste keten en de overige 10 worden vergeten. Zo kan het dus voorkomen dat een transactie met meer dan 6 bevestigingen (wat de norm is voor acceptatie) toch niet geldig is. Om deze reden is het belangrijk zoveel mogelijk te minen, zodat kwaadwillenden mee moeite moeten doen om dit te kunnen bereiken.

Pagina's: 1 ... 6 7 8 [9] 10 11 12 ... 15