- Back to menu
- Back to menuMga presyo
- Back to menuPananaliksik
- Back to menuPinagkasunduan
- Back to menu
- Back to menu
- Back to menu
- Back to menu
- Back to menuMga Webinars at Events
Ang Blacklist Debate: Kailan OK na Makialam sa Code ng Bitcoin?
Ang isang developer na nag-blacklist sa mga website ng pagsusugal gamit ang custom Bitcoin code ay nagpapataas ng galit, at ilang mga interesanteng tanong.
Ang isang row na sumiklab online ngayong buwan ay nagtaas ng isang mahalagang tanong tungkol sa Bitcoin: dapat bang pahintulutan ang mga tao na i-code ang kanilang sariling mga panuntunan, at maging ang mga opinyon, sa sarili nilang mga bersyon ng software na nagpapatakbo ng network?
Nagsimula ang debate sa mga user ng Gentoo – isang variant ng Linux operating system na ipinagmamalaki ang sarili sa pagiging lubos na nako-configure upang umangkop sa iba't ibang pangangailangan ng user – kapag isang user nag-ulat ng isang isyu sa Gentoo bug forum noong ika-5 ng Oktubre.
Ang bersyon ng bitcoind (ang opisyal na reference client para sa pakikipag-ugnayan sa Bitcoin network) na ibinahagi sa Gentoo ay humaharang sa mga partikular na address ng Bitcoin , sabi ng ulat, ibig sabihin ay T gagana ang mga transaksyon sa kanila.
Ipinakita ng pag-post ang output ng Gentoo na humaharang sa isang transaksyon na may a SatoshiDice address, na na-blacklist.
“PEBCAK,” sagot ni Luke_Jr (ibig sabihin ay 'May Problema sa Pagitan ng Upuan At Keyboard'). "Walang sign na nasira talaga dito. LOOKS troll lang. Status: INVALID or WORKSFORME?"
At kaya nagsimula ang firestorm.
'Spamming' ang block chain
Si Luke_Jr ay Luke Dashjr, isang developer na nagpapatakbo ng sarili niyang mining pool at mayroon nanindigan para sa halalan sa Bitcoin Foundation board. Siya rin ay nagpapanatili ng mga software package para sa Gentoo at nag-aambag sa Bitcoin CORE development team.
Nagsulat si Dashjr ng patch para sa bersyon ng bitcoind ng Gentoo na partikular na nag-blacklist ng mga address ng Bitcoin na ginagamit ng ilang site, ang karamihan sa mga ito ay mga site ng pagsusugal:SatoshiDice, BitcoinDice, Satoshibones, at Luckybit. Hinarangan din nito ang mga address na pinapatakbo ni Mastercoin, at Counterparty. At tinalakay ang address dito bilang isang pag-atake ng spam sa network ay nasa blacklist din.
May makikitang listahan ng code para sa patch dito.
Nagtalo si Dashjr na na-hardcode niya ang blacklist sa kanyang patch dahil ginagamit ng mga site tulad ng SatoshiDice ang block chain ng bitcoin sa isang nakakapinsalang paraan. SatoshiDice at ilang iba pang site ng pagsusugal gamitin ang block chain upang ibalik ang resulta ng isang taya. Lumilikha iyon ng malaking bilang ng maliliit na transaksyon sa network, na maaaring maglagay dito sa ilalim ng strain.
Sa kasunod na talakayan sa forum ng bug, tinawag ni Dashjr ang modelong ito na "Pag-atake ng DDoS sa network ng Bitcoin". Ang mga site na nagpapatakbo sa ganitong paraan ay ginagawang mas mahal ang pagpapatakbo ng Bitcoin node sa pamamagitan ng paglikha ng mga transaksyon nang hindi epektibo hangga't maaari, sinabi niya sa CoinDesk. Kaya isinama niya ang blacklist sa isang patch na idinisenyo upang harangan ang 'spam' ng chain.
Ipinaliwanag ni Dashjr:
"Bagama't wala pa kaming wastong pag-aayos para sa isyung ito, karamihan sa mga ito ay maaaring matukoy sa pamamagitan ng muling paggamit ng mga partikular na address, kaya't nagsama-sama ako ng isang QUICK na pag-hack upang i-filter ang mga ito sa pamantayang iyon. Malinaw na ang hack na ito ay hindi naaangkop para sa reference code, ngunit ito ay isang simpleng paraan upang mapabuti ang spam filter sa produksyon hanggang sa maipatupad ang isang mas mahusay na pag-aayos (na maaaring imungkahi bilang isang Request sa pagsasanib at sa paglaon ay inilabas kasama ang reference code)."
Pagbubunyag ng mga pagbabago
Ang pagbabago ni Dashjr ay isang third-party na pagpapatupad ng Bitcoin CORE code. Ito ay kaibahan sa isang 'upstream' na pagbabago sa opisyal na reference na bersyon ng code, na maaari lamang maaprubahan ng ilang miyembro ng Bitcoin CORE development community. Gayunpaman, nagdulot ito ng magkahalong tugon.
Bahagi ng problema, gaya ng iminungkahi ng Bitcoin CORE developer na si Mike Hearn sa isang Bitcoin developer IRC chat, ay hindi sapat na Disclosure. Ang patch ay naka-on bilang default sa pinakabagong update sa software.
Sinabi ni Hearn:
"Kung gusto nilang ipamahagi ang isang bitcoind na may mga patch tulad ng kay Luke (na nagbabago ng pag-uugali sa ilang mga pangunahing paraan), dapat silang gumawa ng tamang upstream fork na may bagong pangalan, para lagi kang sigurado kung ano ang iyong nakukuha."
Inamin ni Dashjr na maaari sana siyang magbigay ng mas mahusay na dokumentasyon kung ano ang ginawa ng patch. Kapag na-update ng mga user ang kanilang Gentoo software, makikita nila ang isang mensahe na nagsasaad na ang isang patch sa bitcoind ay ini-install, aniya, idinagdag:
"Sa kasamaang palad, lumilitaw na hindi lahat ng mga gumagamit ay napansin ito, at ang ilan ay nakaramdam pa ng panlilinlang. Bukod pa rito, napabayaan kong maayos na idokumento ang opsyon, kaya hindi alam ng ibang mga gumagamit na pinalawig nito ang pag-filter ng spam na may pagtutugma ng address (sa katunayan, noong idinagdag ko ang patch sa pakete ng Gentoo, nakalimutan ko na talaga ang ginawa ko).
Sa hinaharap, susubukan kong pagbutihin ang dokumentasyon at kamalayan ng mga user upang makuha ang kanilang inaasahan."
Nag-post si Dashjr ng pampublikong paghingi ng tawad at in-off ang patch bilang default, bilang karagdagan sa paghihiwalay sa bahagi ng pamamahala ng spam bilang isang hiwalay na patch. Para sa ilang mga nagagalit na user, maayos na naman ang lahat sa lupain ng Gentoo.
Mas malalim na mga tanong
Gayunpaman, ang talakayan ay nagbangon ng ilang kawili-wiling mga katanungan. Ang ilan sa Gentoo bug discussion forum ay nag-isip na ang coding ng blacklist ng mga address sa isang pagpapatupad ng Bitcoin ay bumubuo ng censorship, at nagtanong kung saan iyon titigil, at sino ang magpapasya kung ano ang naka-blacklist o hindi.
Tama bang subukan at i-code ang sarili mong mga panuntunan tungkol sa kung paano gagana ang isang bagay sa isang bersyon ng Bitcoin software?
Depende iyon, sabi ni Gregory Maxwell, isang miyembro ng Bitcoin CORE development team, na nagpapaliwanag:
"Ang ilang bahagi ng Bitcoin ay dapat magkasundo nang eksakto, BIT - BIT, sa lahat ng node ng network o T gumagana ang system. Tinatawag namin itong 'consensus rules', at sinasaklaw nila ang mga bagay tulad ng 'valid ba ang block na ito o hindi? Ito ay teknikal na mapanganib sa system na magkaroon ng anumang hindi pagkakasundo o pagkakaiba-iba sa mga panuntunan ng pinagkasunduan."
Ang iba pang mga bagay ay mas mahusay kung sila ay kilala at halos uniporme, dagdag niya, ngunit T sila dapat sumang-ayon. Kabilang dito ang mga bagay tulad ng kung anong mga transaksyon ang ire-relay ng isang node.
Tinutukoy ni Maxwell ang mga bagay na ito bilang ' Policy'. Ang ilang pagkakaiba-iba ay nakakatulong sa antas na ito, aniya, dahil mapoprotektahan nito ang network mula sa malawakang pag-atake. Kung masyadong maraming pagkakaiba-iba ang nangyari, maaari itong makabawas sa karanasan ng mga gumagamit ng Bitcoin . "Ngunit ang pagkakaiba-iba dito ay T maaaring masira ang sistema," idiniin niya.
Kahit na personal na T sumang-ayon si Maxwell sa patch ni Dashjr, sinabi niyang Opinyon niya lang iyon. Ang mga tao ay dapat na makapagpatakbo ng kung ano ang gusto nila sa kanilang mga Bitcoin node. Pagkatapos ng lahat, ang bitcoind ay ipinamamahagi sa ilalim ng isang MIT na libreng software na lisensya na nagbibigay sa mga developer ng ganoong kakayahan.
Inaasahan
Sa hinaharap, gusto ng Dashjr na makakita ng variable na naka-encode sa Gentoo na nagpapahintulot sa iba't ibang patch na may iba't ibang patakaran na mai-install sa operating system.
Sabi niya:
"Ang mga naturang patakaran ay mananatiling mga patch at hindi direktang mai-encode sa reference code (na magiging isang opsyon sa Policy 'vanilla')."
Gumagawa din ang Dashjr ng extension sa Bitcoin CORE na maglilipat sa lahat ng desisyon sa Policy sa isang bagong 'klase'. Sa kasamang online na talakayan para sa tinidor na ito, pinagtatalunan niya ang pagkakaroon ng mga Bitcoin node na may maraming patakaran.
Si Mike Hearn ay kumuha ng mas mahirap na linya sa pagpapatakbo ng custom na code na nagpapatunay ng mga transaksyon sa Bitcoin sa sarili nitong paraan, na nangangatwiran na dahil lamang sa pinapayagan ka ng lisensya na gumawa ng isang bagay ay T nangangahulugan na dapat mong:
"Itinulak ni Lucas ang ideyang ito ng ' Policy', ngunit maaaring walang Policy sa pamamahala ng transaksyon sa Bitcoin . Kung ang mga minero o mangangalakal ay maghihiwalay, ang resulta ay pandaraya sa pagbabayad. Hindi iyon katanggap-tanggap na resulta, dahil ang buong layunin ng Bitcoin ay hadlangan ang dobleng paggasta."
Ipinapangatuwiran ni Dashjr na maaaring mapanganib kung babaguhin o muling ipapatupad ng mga tao ang Bitcoin consensus code, at magbibigaylibbitcoin at btcdbilang mga halimbawa. T niya iniisip na ang mga eksperimento na may consensus code ay dapat itigil, hangga't alam ng mga tao ang mga panganib.
T niya tinitingnan na mapanganib ang mga eksperimento na may mga pagbabago sa Policy , sa halip ay nangangatuwiran na ang mga ito ay kapaki-pakinabang.
"Ang mga pagbabago sa Policy sa partikular ay inaasahan sa mga node, lalo na sa mga minero, at ang reference code para sa Policy ay sadyang pinananatiling medyo konserbatibo at hindi nilayon para sa paggamit kung ano talaga," aniya.
Kapag masama ang pag-recycle
Marahil ay kailangan nilang sumang-ayon upang hindi sumang-ayon, ngunit may isa pang isyu na nakataya: muling ginamit na Bitcoin address.
Maraming mga site na nagdaragdag ng materyal sa block chain, tulad ng SatoshiDice, muling gumamit ng Bitcoin address, at maraming developer, kasama sina Dashjr at Maxwell, isaalang-alang ito bilang isang masamang bagay. Pagkatapos ng lahat, ang mga ginamit na address ay ang nagbigay-daan sa Dashjr na mag-block ng ilang partikular na site.
Kung patuloy na muling ginagamit ng isang organisasyon o indibidwal ang isang Bitcoin address, ginagawa nitong mas madaling matukoy ang mga ito sa network, at ginagawang mas madaling makilala ang mga taong nakikipagtransaksyon sa kanila.
Iyon ay maaaring humantong sa lahat ng uri ng problema, babala ni Maxwell, kabilang ang censorship. Pagkatapos ng lahat, iyon ay kung paano natukoy ni Dashjr ang mga site na i-blacklist sa unang lugar.
Kung ang muling paggamit ng address ay lumaganap sa mga bitcoiner, kung gayon ang pag-censor sa pamamagitan ng mga patch tulad ng Dashjr ay ang pinakamaliit sa kanilang mga alalahanin, babala ni Maxwell.
Ipinaliwanag niya:
"Kung ang mga tao ay gumagamit ng Bitcoin sa isang tamad, madaling censorable na paraan kung saan sila ay muling gumagamit ng mga address - na palaging nilayon na maging isang beses sa disenyo ng system - pagkatapos ay lumilikha ito ng isang malubhang sistematikong panganib na maaaring subukan ng isang tao na mag-order ng mga node, developer, at/o mga minero upang i-censor ang system."
Ang pagtuturo sa mga tao at paglikha ng mas mahusay na mga tool ay ONE paraan upang pagaanin ang isyu, iminungkahi ni Maxwell. Ngunit paano ang patch blacklist ng Dashjr?
"Maaari kong makiramay ang ilan sa lohika ng pagkuha ng mga tao na ayusin ang kanilang mahina na paggamit sa pamamagitan ng pag-atake sa kanila," pagtatapos niya. "Siguro magiging epektibo ito, ngunit ang pag-atake sa mga tao ay T isang bagay na maaari kong suportahan."
Blacklist larawan sa pamamagitan ng Shutterstock
Danny Bradbury
Si Danny Bradbury ay isang propesyonal na manunulat mula noong 1989, at nagtrabaho ng freelance mula noong 1994. Sinasaklaw niya ang Technology para sa mga publikasyon tulad ng Guardian.
