Относно делата на сегрегирания свидетел за bitcoin

Suspense: Donovan's Brain (Юли 2019).

Anonim

Segregated Witness е бил центърът на дълготраен дебат за скалирането на Bitcoin, тъй като беше представен за пръв път от основателя на блокрунд и разработчика на Bitcoin Core Dr. Pieter Wuille преди два месеца.

Изключителен метод за преместване на данните от типичните транзакции в "допълнителни блокове". Segregated Witness е настроен да подобри протокола Bitcoin по няколко начина. Освен това решението може да се превърне в мека вилка, което означава, че само миньорите трябва да обновят своя софтуер; всички други възли могат да го направят, ако и когато искат.

Иновацията е позиционирана като първа стъпка от "пътната карта" за скалируемост, както е посочено от Bitcoin Core, и се поддържа от голям сегмент от общността за развитие на Bitcoin.

Но сегрегираният Свидетел не е спорен. Вместо скоростната серия на Segregated Witness, наскоро стартираното алтернативно Bitcoin изпълнение Bitcoin Classic планира да увеличи ограничението за размера на блока на Bitcoin до 2 мегабайта чрез твърда вилица, което означава, че всички пълни възли в мрежата трябва да се модернизират синхронно.

Това са аргументите срещу мека вилица на сегрегирания свидетел - и техните противоположности.

Необходим е "грозен" кодекс

Един пуристки аргумент срещу предложението на Уили е, че мека вилица на сегрегирания свидетел представлява "грозно" заобиколно решение. Най-важното е, че използва части от минодобива, генерирана от монети, за целите, за които първоначално не са били предназначени. Добавената сложност може потенциално да предизвика нови проблеми, тъй като протоколът продължава да се развива.

Докато повечето разработчици са единодушни, че твърдата вилка е по-чисто решение, това не означава непременно, че мека вилица за сегрегирани свидетели не е безопасна. Екипът за разработка на Bitcoin Core е пуснал няколко подобни меки вилици в миналото и твърди, че това няма да носи повече риск.

Междувременно една твърда вилица прави всички съществуващи пълни софтуерни възли несъвместими с по-нов софтуер с пълни възли, който, разбира се, не е много изящен.

Той разработчици на товари прекалено много

Отделянето на сегрегирани свидетели за меки вилици налага допълнително бреме за разработчиците - както сега, така и в бъдеще. Това важи особено за библиотеките Bitcoin и разработчиците на портфейли, тъй като те ще трябва да приспособят софтуера си към интегрирането на сегрегирания свидетел. Това ще изисква повече усилия, отколкото увеличаването на големия размер на блоковете на вилката.

Паралелният маркер

Повечето текущи разработчици на библиотеки и портфейли изглежда не смятат, че допълнителната тежест е голям проблем. Много от тях са дори доста развълнувани от иновациите и те обикновено разглеждат допълнителните предимства, които струват усилия.

Растежът на добавеното пространство ще бъде бавен Както предлаганата твърда вилка на Bitcoin Classic, Segregated Witness теоретично предлага до [ Bitcoin Magazine 1 мегабайт добавено блок пространство, общо за 2 мегабайта.Но този оптимален добавен капацитет се основава на транзакции с множество марки, тъй като те получават счетоводна "отстъпка". "Повечето транзакции в момента не са транзакции с множество марки. Ето защо по-реалистично увеличение на капацитета би могло да бъде по-близо до. 6 мегабайта добавено пространство, за общо 1,6 мегабайта.

Освен това, това допълнително място може да не бъде напълно използвано веднага. Той може да се използва само след като портфейлите и други приложения са надстроени. В действителност може да отнеме известно време, преди да достигнат дори 1,6 мегабайта.

И докато меката вилка на сегрегирания свидетел е насрочена за април, остава да се види дали това може да бъде постигнато. Решението изисква много кодиране и тестване, преди да може да бъде пусната, както и одобрение от миньори.

Контрааргументите

Публична версия на Segregated Witness - SegNet - вече е налична за експериментиране. Това показва, че развитието е в график.

Освен това много разработчици на библиотеки и портфейли смятат, че ще отнеме от няколко дни до няколко седмици, за да интегрират сегрегирания свидетел. Следователно, издаването през април трябва да осигури достатъчно време за по-голямата част от софтуера на портфейла и приложението за надстройване.

Веднага след активирането на сегрегирания свидетел, всеки софтуер за портфейли и приложения може да използва незабавно предимствата - като по-ниски такси. Дали други потребители използват допълнително пространство, както и няма значение за тях. (И ако не се използва допълнително място за блокиране, може просто да се предположи, че необходимостта от допълнително блок пространство никога не е била толкова голяма на първо място.)

Трябва да се отбележи също, развитието на протокола Bitcoin напредва, защото добавените слоеве в горната част на Bitcoin - като платежните канали и Lightning Network - обикновено използват такива транзакции. Следователно ефективният капацитет може да се доближи до 2 мегабайта по-късно.

И докато екипът на Bitcoin Classic твърди, че една твърда вилица може да бъде пусната преди април, това се смята за открито агресивно и напълно рисковано от много хора в общността за развитие. Необходимостта всички оператори на пълен възел да преглеждат и да приемат ъпгрейда, според тях, изискват най-малко шест месеца до една година.

Скорости

Премахването на подписите от оригиналните блокове от 1 мегабайт може ефективно да увеличи размера на блока на Bitcoin. Но сегрегираният свидетел въвежда нов тип максимален размер на блока. Приблизително: блок

без

свидетелят, плюс едно четвърт от размера на свидетеля, не трябва да надвишава 1 мегабайт. По този начин възстановените възли ще видят блокове, които надвишават 1 мегабайт, тъй като размерът на сегрегирания свидетел е по-голям от тримесечието . Това означава, че многостранните транзакции, които включват повече данни за подпис, получават по-голяма отстъпка. И тъй като многостранните транзакции се използват за създаване на слоеве над Bitcoin, Segregated Witness изкуствено подклажда стимули към тези добавени слоеве. Дългосрочните последици от тези слоеве - като ефекта върху минните такси - са противоречиви. Контрааргументите

Данните за отстъпките при подписването са начинът, по който сегрегираният свидетел позволява допълнително пространство, без да изисква твърда вилица. Макар че това наистина е осъществено чрез счетоводна мярка, то е полезно.

Освен това данните за свидетели могат да се считат за разходни след определен период от време, намалявайки необходимостта от пълни възли, за да се съхранява вечно. Следователно, тя има по-ниски разходи за мрежата, което прави разумно да начислява по-ниска такса.

Освен това, Bitcoin може да достигне до милиони потребители, но също така да остане децентрализирана, сигурна и цензурирана, чрез използването на допълнителни слоеве. Увеличаването на развитието и използването на тези добавени слоеве не е лошо нещо.

Не се държи добре при противоречиви условия

Един аргумент в полза на ограничението на размера на блока засяга размножаването на блока и латентността. Накратко: По-големите блокове са склонни да увеличават сирачетата, тъй като повече миньори изграждат стари блокове, докато по-нови блокове все още се пренасят през мрежата. Това, от своя страна, благоприятства по-големите миньори (или басейни): Намират повече сами блокове и започват да се основават на тези веднага, което означава, че използват по-малко ресурси.

Това също означава, че големите миньори биха могли да имат стимул да създават изкуствено големи блокове, специално предназначени да увеличат сирачеството на конкурентите.

Настоящото предложение за сегрегирано свидетелство позволява блокове до около 2 мегабайта - макар и малко по-малко вероятно е. Но поради специфичната счетоводна мярка, която ще се използва, така наречените "егоистични миньори" могат да създадат синтетични транзакции, предназначени да натрупат до 4 мегабайта данни в един блок. Като такива, големите миньори могат да "атакуват" конкуренти с валидни блокове от 4 мегабайта.

Затова сегрегираният свидетел изисква миньорите и пълните възли да разполагат с хардуер с 4 мегабайта височина за безопасност, като в замяна получават значително по-малко реален капацитет на транзакциите. И ако първоначалното ограничение на размера на блока се увеличи чрез твърда вилка в някакъв момент в бъдеще, вероятно този мултиплициращ риск вероятно ще остане.

Ако

4 мегабайта е наистина достатъчно голям, за да успее да отстрани атака - което не е ясно - тази атака ще изисква от атакуващия миньор да отхвърли всички реални транзакции. Получената загуба на такси служи като лек пречка за извършването на такава атака и за останалата част от мрежата би било очевидно, че се случва атака.

И докато рисковият множител вероятно ще остане дори ако някоя твърда вилица бъде пусната по-късно, може да бъде намалена и чрез мека вилка.

Деградира сигурността на невъзстановените възли Петият проблем е, че меката вилица на сегрегирания свидетел би нарушила сигурността на всички неправилно обновени възли. Тези възли все още могат да приемат транзакции от сегрегирани свидетели или транзакции, които зависят от предишна транзакция от сегрегирани свидетели, но не могат да проверят дали данните за подписа са валидни.Като такива, те ще трябва да разчитат на валидирането от миньорите.

Непотвърдените транзакции за сегрегирани свидетели следователно биха били несигурни, тъй като те все още не са потвърдени от миньорите изобщо.

Но дори потвърдените транзакции със сегрегирани свидетели биха били по-малко сигурни, тъй като миньорите биха могли да намерят невалидни сделки на блокове с намерението двойно да прекарват невъзстановени възли. Невъзстановеният възел ще повярва, че тези блокове са валидни, докато миньорите не превключат своята хеш-сила към валидната верига. Ако неподстроеният възел приема транзакции от невалидните блокове, той може да е загубил пари.

Разходите за такова двойно харчене биха приличали на цената на всяка друга атака от 51 процента, но с допълнителен ливъридж. Атакуващите миньори потенциално биха могли да използват хеш мощност от "SPV-миньорите", които не биха знаели какво се случват, тъй като те също не потвърждават сделките. И нападателят би могъл да използва средствата, за да се харчат два пъти, тъй като той може да използва всяка битка, защитена от сегрегирани свидетели, която никога не му принадлежеше.

Контрааргументите

Мека вилица за сегрегирани свидетели ще бъдат обявени публично много по-рано и прозрачно ще бъдат гласувани от миньори. По този начин всеки потребител, изпълняващ пълен възел, ще има достатъчно време, за да вземе необходимите предпазни мерки.

Потребителите, изпълняващи ненадеждна възлова точка, не трябва да се доверяват на транзакциите с нулево потвърждение. Но сделките с нулево потвърждение винаги са били опасни. Всеки, който иска да изтегли атака с двойно похарчени средства с неконтролирани транзакции, може да го направи със или без сегрегиран свидетел.

Допълнителният риск от потвърдени транзакции междувременно може да бъде компенсиран, като се чака допълнителен брой потвърждения. (За точни стойности на добавените рискове, вижте тези изчисления от разработчика на Bitcoin Олег Андреев.)

Потребител, който не иска да надникне до най-новия пълен възел, освен това, би могъл да закърпи своя ненадежден пълен възел с софтуер, който подсказва подозрителни транзакции - и евентуално дори да ги отхвърли напълно.

Накрая, трябва да се отбележи, че твърдите вилици представляват много по-голям риск от сделки с двойни разходи. Всеки немодифициран възел може, в случай на твърда вилица, да получи напълно невалидни транзакции, докато евентуално изобщо не го осъзнава.

Тя ще бъде разположена без изрично съгласие на потребителя

Макар и да е малко малка, деградацията на сигурността, както е описано по-горе, съществува. И това, което може би е по-важно: Това разрушаване на сигурността ще бъде изпълнено без изричното съгласие на потребителите. Дори ако потребителите силно се противопоставят на Segregated Witness и предпочитат да не се надстройват, мнозинството от миньорите могат да прокарат промяната независимо.

Това е в противоречие с обещанието на Биткоин за лична автономия; идеята, че операторите на пълен възел винаги трябва да имат възможността да се откажат от всяка промяна.

Не могат да бъдат предотвратени контрааргументи

Меки вилици. Миньорите, контролиращи по-голямата част от хеш мощта, винаги могат да решат да наложат нови правила, стига да не нарушават съществуващите консенсусни правила.Това е присъщо на протокола Bitcoin и ще бъде възможно и след твърда вилица.

Като такива потребителите, изпълняващи пълен възел, винаги трябва да носят отговорност. Отговорността за надграждане до най-новата версия на софтуера или отговорността за изчакване на допълнителен брой потвърждения или може би дори отговорността да не се приемат никакви транзакции след откриване на мека вилка е било отговорно.

И докато е технически вярно, че потребителите

не се нуждаят от

да променят софтуера си след твърда вилица и могат да изберат да останат "назад" в оригиналната мрежа, бъдете възможност на практика. Освен риска от атаки с двойно потребление, намалената хеш мощност може да гарантира, че транзакциите никога не потвърждават - или потвърждават много бавно.

Алтернативен сценарий е, че веригата на малцинствата чрез хеш мощност въвежда своя собствена твърда вилка, за да промени алгоритъма за доказателство за работа. Bitcoin ще се раздели на две отделни мрежи и всички потребители ще трябва да надстроят своя софтуер, за да поддържат една от опциите - или и двете. Благодарение на Джонатан Томим и изпълнителния директор на Ciphrex, Bitcoin Core и разработчика на Segregated Witness Ерик Ломброзо за корекция и добавена обратна връзка. За повече информация относно сегрегирания свидетел вижте

поредицата Bitcoin Magazine

по темата или част 1, част 2, част 3, част 4, част 5, част 6, част 7 и част 8 от

Списание за развитие на Bitcoin Magazine .