@Jim
Da nadodam vezano uz motivaciju za fork, htio bi ga napraviti ako npr. želiš double spendati novčiće. Dakle ako npr. ti pošalješ Ani neke pare, ona tebi da proizvod, i onda ako uspiješ napraviti fork gdje ignoriraš tu transakciju i napraviš transakciju tih novčića negdje drugdje (npr. sebi), onda će se prihvatiti tvoja transakcija ako je u duljem lancu, a kad ona za Anu u oprhaned bloku dođe na obradu bit će odbačena jer su ti novčići već potrošeni. Time si samo popušio proviziju za obradu transakcije.
To ti je ujedno i motivacija zašto želiš čekati 6+ blokova potvrde prije nego što smatraš transakciju provedenom - bilo koji fork koji je dulji od duljine vrha lanca do bloka u kojem je tvoja transakcija ti potencijalno zblokira tu transakciju pokušajem double spendinga.
A za ono kontriranje usporavanja rudarenja radi forkova vrijedi ovo:
Dakle ajmo reći da postoji neki željeni fork i sad konstantno nastaju forkovi zbog nekompatibilnosti softvera za rudarenje. Ono što će se dogoditi je da će se potencijalno rudariti obje grane podjednako ako dođe do Nashovog ekvilibrija - i onda si u problemu jer ako je sustav dovoljno stabilan će se naizmjence stvarati ti manji forkovi. Potencijalno si podijelio cijeli community rudara na 2 grupe, i prepolovio brzinu rudarenja. Ako to potraje oko 2 tjedna (a to uopće nije vjerojatno!) onda će se smanjiti difficulty mreže, jer ona nastoji kopati blok svakih 10 minuta prosječno.
E sad, treba još jednom reći da da se ovo dogodi treba stvarno luda sreća. Praktički nemoguće jer bi se trebalo dogoditi to da kad se jednom odbaci jedna grana blokova se majneri s te grane prebace na drugu (ne žele gubiti vrijeme i resurse na grani na kojoj su upravo odbačeni blokovi). Ali, kad bi se ipak dogodila ravnoteža i Nashov ekvilibrij, onda bi vjerojatno bilo u interesu majnerima raditi to, smanjiti difficulty, i onda odjednom all-innati na jednu granu. Treba primijetiti da u takvom slučaju koordiniranosti za 2 grane lakše bi bilo jednostavno hijackati cijelu mrežu (jer za takav dogovor imaš barem 25% sa svake strane koji se brinu da se podjednako majna, a to je 50%, više nego dovoljno za malverzacije) 🙂
Vjerujem da ne bi bilo teško pokazati da vjerojatnost za ovakvim scenarijom raste što imaš više grananja. Dakle uz 2 grane, mislim da je i meni i tebi jasno koliko je nevjerojatno da 2 tjedna svi majnaju otprilike jednako na tim granama. Ali recimo da imamo 100000 grana, bez obzira na to koliko su međusobno neujednačene, majnanje će biti jako sporo na svim granama, ali je isto činjenica da uz tako veliko raspršenje će manji postotak grana actually raditi, u slučaju jedne kriptovalute, pa Nashov ekvilibrij generalno neće vrijediti dugo jer će postojati puno veća inicijativa majnati na toj grani gdje se priznaju blokovi umjesto potencijalno 99999 grana niskog difficultyja bez profita. No opet, onda se u početcima tog scenarija majneri s većinom resursa u grani samo mogu spojiti na drugu granu i sjebati ostale, samo sad im možda ni ne treba 50%, uz 100000 grana i uniformnu raspodijeljenost bi im trebalo 0.001%. Tako da više grana = smrt kriptovalute. I zato imamo pravila, da ne možeš proizvoljno forkati nešto i tako sjebavati ljude, nego da te ta pravila drže u jednoj grani, tj. originalnom lancu, a da se ti pokušaju soft forka odbace kao neispravni blokovi.