Ethereum: Побудова криптовалют і децентралізованої платформи додатків




За минулий рік більше та більше дискусій переоцінили навколо так званих протоколів «Bitcoin 2.0» – альтернативні криптографічні мережі, які надихнули Біткойн, але мають намір використовувати базову технологію для цілей значно ширше, ніж просто валюти.

Спочатку деякі з цих ідей були реалізовані на основі вилок Біткойн-коду, а також називають альтcoins. Найдавніша реалізація була Neimcoin, біткойн-подібна валюта, створена в 2010 році, призначена для децентралізованої реєстрації доменного імені. Нещодавно ми побачили виникнення кольорових монет, які дозволяють користувачам створювати власні валюти як доповнення до існуючого протоколу Bitcoin, так і більш просунутих протоколів, таких як Mastercoin, Bitshares і Counterparty, які призначені для забезпечення функцій, таких як похідні, заощадження гаманців і децентралізований обмін.

Тим не менш, всі протоколи, які були винайдені, були вузькоспеціалізовані, пропонуючи конкретні набори функцій, спрямованих на конкретні галузі або програми, як правило, фінансового характеру. Тепер команда розробників представляє проект на основі різного підходу: криптовалютна мережа, яка планується зробити максимально універсальною, і що дозволить кожному створювати спеціалізовані програми на вершині себе, які відповідають практично будь-яким призначенням. Це проект Ethereum.

Cryptoграфічні протоколи як цибулю
Однією з поширених функцій філософії дизайну багатьох протоколів криптовалют 2.0 є ідея, яка, як з Інтернетом, криптодизайн буде працювати краще, якщо протоколи розщеплюються на різні шари. Відповідно до цієї думки, Біткойн розуміється як щось, як TCP / IP для крипто екосистеми, а також інші протоколи наступного покоління можуть бути побудовані на вершині Біткойн таким же чином, як це було з SMTP для електронної пошти, HTTP для веб-сторінок та XMPP для чатів – все побудовано на вершині TCP як загальний базовий шар.

На даний момент три основні типи протоколів, які слідували за цією моделлю, були кольорові монети, майстертон і Counterparty. Принцип протоколумонета Дуже просто. Для того, щоб створити кольорові монети, користувач відзначає спеціальні біткоїни, як мають особливий зміст, наприклад, якщо Боб є магазином золота, він може позначати певну сукупність біткоїнів і сказати, що кожен атлас представляє 0,1 грам золота, щоб бути оплаченим (у золоті) на його складі. Після цього протоколу слідкувати за цими біткоїнами через блокчейн, і, таким чином, завжди можна визначити, хто володіє ними в даний час.

Mastercoin і Counterparty є більш абстрактними. Використовуйте біткойн-канал для зберігання даних, і, таким чином, Mastercoin або Counterparty транзакцій є біткойн-транзакція, але протоколи інтерпретують транзакції абсолютно різними способами. Ви можете провести два транзакції Mastercoin, один шляхом відправлення 1 MSC та іншого з 100,000 MSC, але з точки зору користувача мережі Bitcoin, який не знає, як працює протокол Mastercoin, обидва будуть виглядати як мікротрансфери на 0.0006 BTC кожного; конкретні метадані Mastercoin закодовані у виході транзакції. Для визначення поточного балансу MSC клієнт повинен здійснювати пошук операцій Mastercoin через біткойн.

Я був у контакті з багатьма розробниками кольорових монет і протоколу Mastercoin, і активно брав участь у обох проектах. Але після двох місяців роботи разом і дослідження я прийшов до висновку, що в той час як сама ідея побудови високорівневих протоколів на вершині існуючої, є фундаментальні недоліки реалізації, які можуть довести, що може бути основною перешкодою для зростання цих проектів.

І це не те, що основні ідеї погані, ідеї є відмінними, і реакція Біткойн-спільноти є ідеальним доказом, що вони намагаються зробити, є дуже затребуваними. Скоріше, причина полягає в тому, що основний протокол, на якому вони намагаються побудувати свої протоколи, просто не призначені для цього. Це не означає, що Біткойн погано або революційний. В якості пересувної та накопичувачної установки, відмінна. Тим не менш, як низький рівень протоколу, Біткойн значно менш ефективний і не порівняний з протоколом TCP, поверх якого можна побудувати HTTP. Скоріше, схоже на SMTP, що добре підходить для його вузького завдання, але не призначений для використання в якості основи для будь-якого іншого.

Спеціалізована проблема Bitcoin в одному місці: масштабованість. Разом з тим, Біткойн може вважатися масштабною криптовалютою, навіть якщо її блокчейн перевищує terabyte, оскільки він містить протокол «спрощеної перевірки платежів», описаний в оригінальній статті Сатоші. Це дозволяє створювати «легкі клієнти» невеликого розміру, що дозволяє надійно визначати проходження операції навіть з невеликим пропускним ходом каналу. З кольоровими монетами і майстром, ця можливість зникне. Причина полягає в тому, щоб визначити, який колір монети є, протокол SPV недостатньо і потрібно простежувати весь шлях назад до його генезу. Іноді сканування спини є доцільним, і з протоколами метану немає ніякого способу, щоб дізнатися що-небудь без повного зворотного збирання кожної торгівлі.

І саме те, що Ethereum планує виправити. Не плануєте стати як швейцарським ножем з сотнями функцій, щоб задовольнити всі потреби. Натомість Ethereum планує стати фундаментальним протоколом, що дозволяє іншим збудувати децентралізовані додатки на вершині себе. Для роботи з та забезпечення всіх переваг масштабності та ефективності використання Ethereum.

Контракти є основою всіх
У той час як Ethereum був розроблений, тема фінансових контрактів на основі криптовалют була великим інтересом; основний тип контракту був «підряд для різниці» (CFD). У угоді про різницю дві сторони погоджуються внести певну суму грошей, а потім вивести кошти в пропорції, яка залежить від вартості основного майна. Наприклад, Аліса інвестує $1,000, Боб також інвестує $1,000, а потім через 30 днів блокчейн автоматично повертає Аліса $1,000 плюс $100 за кожен долар, що ціна LTC / USD збільшена в цей період, і Боб отримує решту суми. Ці контракти дозволяють людям спекулювати на активи, використовуючи високий важіль, або навпаки, захистити себе від криптовалютної летності, захопити їх позицію без централізованого обміну.

У цій точці, однак, зрозуміло, що контракти на різницю є тільки особливим випадок значно більш загальної концепції: формулові контракти. Замість того, щоб бути контрактом, де X$ Аліса, Боб Y$, і X$ Аліса повертається плюс додатковий $ за кожен $ актив вирощений, контракт повинен мати можливість відновити кошти на основі будь-якої математичної формули і, таким чином, дозволити створення контрактів довільної складності.

Якщо формула дозволяє випадкові значення як вводи, ці узагальнені контракти для різниці можуть бути використані навіть для реалізації P2P азартні ігрий





Ethereum приймає цю ідею ще далі. Щодо угоди між двома сторонами, які мають початок і кінець, контракт Ethereum є своєрідним автономним агентом, що моделюється на блокчейн. У будь-який час, коли угода надсилається до цього договору, кожен з них має власний внутрішній код програми. Мова скрипта має доступ до кількості транзакцій, відправника та додаткових полів даних, а також блокування даних та власної внутрішньої пам'яті як вхідних даних, а також може надсилати транзакції самостійно. Щоб створити контракт для різниці, Аліса повинна створити контракт і відправити суму $1,000 угод до нього, а потім чекати від Боба прийняти контракт, відправивши операцію, яка також містить $1,000. Після 30 днів Аліса або Боб зможе зробити символічну операцію для цього контракту, щоб активувати його знову і розблокувати кошти.

Крім цього, в офіційному документі Ethereum описано багато інших видів угод, які стануть можливими за допомогою скриптової мови Ethereum, деякі з яких включають:
  • мультипідпис Ескорт Довільна служба в дусі Біткойн, але з більш складними правилами. Наприклад, не потрібно реєструвати частково підписані угоди вручну, люди можуть авторизувати асинхронне виведення, а операція буде завершена автоматично в момент затвердження всіх учасників.
  • Збереження рахунків Один цікавий монтаж працює наступним чином. Але не хоче ризикувати все, якщо її приватний ключ загублений або вкрадений. Вона входить до договору з Бобом (як не дуже надійний банк), з наступними правилами: Аліса дозволяє відкликати до 1% на добу, з затвердженням Боба, вона може відкликати будь-яку суму, а сам Боб може відкликати до 0,5% на добу. Аліса зазвичай вимагає невеликої кількості часу, і якщо вона потребує більше, вона має можливість довести свою ідентичність Бобу і зробити висновок. Якщо приватний ключ Аліси вкрадений, вона перетворюється на Боб і пересуває кошти в інший контракт перед тим, як тиф зникне з більш ніж 1% свого депозиту. Якщо Аліса втратила свій приватний ключ, Боб з часом зможе відновити свої кошти. А якщо Боб виходить, щоб бути шахраєм, Аліса може вивести свої власні кошти двадцять разів швидше, ніж він може. Так, коротко, це найкраще традиційне банківське право, але воно не базується на довірі, на основі технології.
  • P2P азартні ігри Будь-який тип протоколу P2P може бути реалізований на основі Ethereum. Дуже простий випадок є контрактом для різниці на основі випадкових даних, таких як блок.
  • Створення власної валюти Використовуючи внутрішню пам'ять Ethereum, ви можете створити повноцінну валюту всередині Ethereum. Ці нові валюти зможуть взаємодіяти один з одним і мати гідний обмін і багато інших розширених функцій.

Це перевага коду Ethereum: оскільки мова скриптів призначена для того, щоб не було обмежень, крім системної комісії, по суті, будь-який тип правила можна зашифрувати всередині нього. Ви навіть можете керувати збереженням всіх компаній на блокчейні, за договором, який говорить, наприклад, 60% поточних акціонерів компанії повинні затвердження про переміщення будь-яких його коштів (і, можливо, 30% акціонерів може розпоряджатися максимальною 1% коштів на добу). Можливі інші структури, менш традиційні в капіталістичному світі, наприклад, ідея для демократичних організацій полягає в тому, що дві третини членів групи повинні погодитися запросити нового учасника.

Фінанси
Фінансові програми, однак, є дуже невеликою частиною того, що Ethereum і криптографічні протоколи, побудовані зверху, можуть зробити. У той час як фінансові додатки Ethereum є те, що багато в криптоспільноті спочатку милуватися, довгострокове питання є те, як Ethereum може працювати разом з іншими односторонніми нефінансовими протоколами. Однією з основних проблем, які нефінансові протоколи P2P є відсутність стимулювання – тобто на відміну від централізованих некомерційних платформ, вони не мають фінансової причини для участі. У деяких випадках, коли участь в певному сенсі, це з цієї причини, що люди продовжують писати програмне забезпечення відкритим вихідним кодом, сприяють Вікіпедії, роблять коментарі на форумах, а також записувати записи блогів. У контексті протоколів P2P, однак, участь часто не розважається в кожному розумінні слова, потрібно вкладати велику кількість ресурсів, що дозволяють, наприклад, завдання для запуску в фоновому споживанні часу процесора і живлення батареї на постійній основі.

За тривалий час протоколи даних, такі як Freenet, змогли надати кожному з нецензурованих статичного контенту; на практиці, однак, Freenet дуже повільно і мало дезотомних ресурсів. Всі протоколи, що містяться у файлі, страждають від тієї ж проблеми: в той час як altruism зазвичай достатньо для поширення популярних блогерів, вона помітно зменшується, коли мова йде про щось менш популярне. Парадоксально природа спільного доступу до файлів може фактично сприяти центральній локалізації розважально-інформаційного виробництва без його подолання. Усі ці проблеми, проте, можливо, можуть бути вирішені, якщо ми додаємо мотивацію – можливість людям будувати не тільки некомерційні бічні проекти, але й прибуткові бізнеси за допомогою онлайн-конференції.
  • Збереження даних Іншими словами, децентралізована Dropbox. Ідея полягає в тому, що якщо користувач хоче зберігати 1 Гб інформації в мережі, структура даних, відома як дерево Мерло буде побудована для цього. Потім корінь дерева разом з 10 монет буде укладений в контракті і файл буде завантажений в іншу спеціалізовану мережу, яка буде слухатися вузлами, які бажають орендувати простір на жорстких дисках. З кожним днем контракт буде автоматично вибрати випадкове відділення (ліво -> праворуч -> зліва -> ліворуч -> ліворуч -> ліворуч), закінчуючи замком файлів, і виписуємо 0.01 монети в першу вершину цієї гілки. Ноди зберігатимуть весь файл, щоб максимізувати шанс виграти винагороду.
  • BitMessage і Тор Bitmessage є протоколом електронної пошти наступного покоління, який є одночасно децентралізованою і зашифрованою, що дозволяє безпечно надсилати повідомлення будь-яким іншим користувачам Bitmessage без релінгів на третій стороні, крім самої мережі. Тим не менш, Bitmessage має один великий недолік зручності: замість відправки повідомлень на адресу електронної пошти з нормальною адресою зворотного зв'язку, такі як "bob@gmail.com", програма працює складними адресами Bitmessage, що складаються з 34 символів (наприклад, "BM-BcbRqcFFSQUMXFKsPJgVQPSiFA3Xash). Угода про Ethereum пропонує рішення: люди можуть реєструвати свої імена за допомогою спеціального договору Ethereum, і клієнти Bitmessage можуть запросити блокчейн Ethereum, щоб отримати 34-character Bitmessage адресу анонімно прив'язану до будь-якого імені. Інтернет-анонімайзер Tor страждає від тих же проблем і, таким чином, може також скористатися цим рішенням.
  • Системи ідентифікації та репутації Після того, як ви зареєструєте свою назву на блокчейн, наступний крок логічно очевидний: побудувати систему WOT (Web of Trust) на основі блокчейну. Довірчі мережі - це ключова частина ефективної інфраструктури зв'язку одностороннього зв'язку: вам не потрібно особисто познайомитися з людиною, до якої ведеться цей публічний ключ, ви просто не подбаєте - ви зацікавлені в тому, чи може ця людина довіритися. Вирішити це використовувати соціальні медіа: якщо ви довіряєте A, довіри B і B, і в свою чергу довіряє B, то є висока ймовірність, що ви можете довіряти B, принаймні до певних обмежень. Ефіріум може служити шаром даних для повністю децентралізованої системи репутації, а потенційно в кінцевому підсумку стане повноцінним ринок.

Багато вищевказаних додатків складаються з реальних протоколів P2P і проектів, які вже добре розвинені – в цих випадках ми маємо намір співпрацювати з багатьма цими проектами максимально і допомогти їм з фінансуванням в обмін на їх внесок в екосистему Ethereum. Ми хочемо, щоб допомогти не тільки криптографічній громаді, але вся спільнота P2P в цілому, включаючи обмін файлами, завантаження торрент-файлів, зберігання даних та мереж зв'язку сітки. Ми знаємо, що є багато проектів, особливо в нефінансовому секторі, які мають потенціал, щоб принести велику цінність громаді, але розвиток яких не отримує достатньо фінансової підтримки, тому що вони не мають можливості ефективно представити свою фінансову складову, і, можливо, Ethereum зможе вирішити цю проблему.

Чому можна побудувати всі ці програми на вершині Ethereum? Відповідь полягає в внутрішній мові програмування криптовалюти. Тут можна зробити аналогію з Інтернетом. У 1996 році на веб-сторінці було створено лише один HTML, а всі люди могли б створити статичні веб-сторінки на сайтах, таких як Geocities. Так люди вирішили додати можливість подання форм до HTML, і так вони додали форми до HTML. Для веб-провайдерів, намагаючись вирішити конкретну проблему, вони роблять її на основі слабкого протоколу, ігноруючи велику картину. Винайдено, однак, Javascript, мова програмування всередині веб-браузера. І це був Javascript, який вирішив цю проблему: Javascript універсальний. В якості мови програмування, можна використовувати для створення додатків довільної складності. Gmail, Facebook і навіть біткойн-гаманці створюються в цій мові. І це не так, що Javascript розробники хотіли дати людям Gmail, Facebook і біткойн-гаманці, вони просто створили мову програмування. Ми можемо самі зателефонувати одержувачу. І це дух, який ми хочемо принести до Ethereum. Ефір не має наміру покласти кінець на криптовалютні інновації, він планує стати їх початком.

Інновації
Разом з основною особливістю партерської повноти, універсальна сценарна мова Ethereum також має ряд інших поліпшень за існуючими криптовалютами:
  • Вартість У зв'язку з тим, що у випадку, якщо у вас виникли проблеми, то це передбачено, що таке «з’їжджувачі» та нескінченні сценарії петля, запроваджуючи комісійний внесок у кожну обчислювальну стадію виконання сценаріїв. Більш дорогі операції, такі як доступ до сховища та криптографічні операції, мають вищу плату, а також буде окрема комісія для кожного елемента зберігання, що робить договір. Для того, щоб користувачі мали стимул видалити контракти самостійно, якщо, наприклад, угода знижує кількість пам'яті, додатковий, «негативний» плата стягується. Існує спеціальний варіант «СУІЦИДИ», який дозволяє скасувати контракт і відправити всі заощадження, а також всі негативні збори, що повертаються власнику.
  • алгоритми Існує великий інтерес у створенні криптовалют, видобуток якого стійкий до використання спеціалізованого обладнання (АСК), що дозволить звичайним людям використовувати обладнання без капітальних інвестицій і тим самим допомогти уникнути централізованості. Дотепер головний антидот був Scrypt, алгоритм видобутку, який, однак, вимагає дуже великої кількості обчислювальної потужності і пам'яті, і це все ще недостатньо, і вже є компанії, які виробляють відповідні спеціалізовані пристрої для цього алгоритму. Ми пропонуємо новий варіант видобутку: Dagger, прототип алгоритму вистоювання (при більших вимог до пам'яті, ніж Scrypt), а також прототипу алгоритму ставок, таких як Slasher, який може вирішити проблему видобутку повністю. В кінцевому підсумку, ми маємо намір провести конкурс, схожий на тих, хто встановлює стандарти AES та SHA3, до яких ми запрошуємо дослідницькі команди з університетів по всьому світу, щоб розробити найкращі ергономічні апаратні засоби для видобутку.
  • Привид Це новий протокол розподілу блоків, що був розроблений Aviv Zohar і Yonatan Sompolinski. Дозволяє працювати з набагато швидше часу підтвердження блоку, ідеально в діапазоні 3-30 секунд, без проблем з централізованістю і високою пропорцією «іделевої роботи» – звичні проблеми вилок з швидкими блоками підтвердження. Ethereum буде першою основною валютою для інтеграції спрощеної однорівневої версії GHOST в рамках її протоколу.

Наш план.
Компанія Ethereum є потенційно великим і великим доступним підприємством, і буде проводитися протягом декількох місяців. З огляду на це, валюта буде видана на декількох стадіях. Перший етап – випуск офіційної документації – вже відбувся, проект має вікі та блог, де кожен може піти, створити обліковий запис та залишити коментар на форумі.

25 січня на конференції в Майамі було заплановано запустити фандрайзер, під час якого кожен зможе придбати ефір, внутрішню валюту Ethereum, в тому числі біткоїни, схожу на фандрайзер Mastercoin; однак, цей фандрейзинг не відбувся і в даний момент метод початкової покупки монет (якщо ні) не визначений.

До того, як ви вирішили інвестувати в ефір, слід зазначити, що є важлива відмінність порівняно з Bitcoin і більшість інших криптовалют: їх випуск необмежений. Модель «перманентна лінійна інфляція» призначена для того, щоб зробити Ether безкоштовно інфляційних або дефляційних процесів; відсутність вихідного ліміту призначено для зменшення спекулятивних тенденцій та доброї нерівності – ефектів, які супроводжують існуючі криптовалюти – але водночас лінійна, а не традиційно доцільна, інфляційна модель означатиме, що ефективний рівень інфляції буде нижчим за час. Крім того, з моменту початкового випуску валюти не буде починатися з нуля, збільшення видачі валюти в перші вісім років буде фактично виникати більш повільно, ніж він був з біткоїном, що дає можливість повторно перезавантажити суттєві переваги в середньостроковому терміні.

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

Шукаємо майбутнє
Оскільки Ethereum включає в себе обчислювальну універсальну мову, можна математично довести, що це може зробити, по суті, що-небудь потенційно можливо для блокчейну біткоїну криптовалюту. Але ще виникають проблеми, які протокол у своїй поточній формі листя нерозчинені. Наприклад, Ethereum не пропонує рішення для фундаментальної задачі масштабування для всіх криптовалют на основі блокчейну - а саме, що кожен повний вузол повинен зберігати весь баланс і перевіряти кожну торгівлю. Концепції окремого «державного дерева» в Ефіріумі та «переказу» запозичені з Ріплса в деякій мірі пом'якшують це (стата речей), але, тим не менш, ми не маємо ніяких фундаментальних проривів в цій області. Це вимагає технології, таких як Безпечна сумісність та конфіденційність (SCIP), яка в даний час перебуває під розвитком.

Крім того, Ethereum не пропонує будь-яких поліпшень в галузі традиційної «безпечної роботи» видобутку з усіма її недоліками, або як і раніше непідтверджена і не повністю розроблена «безпека від досконалості» в стилі Ріпл. Якщо виявиться, що «безпека ставки» або інший алгоритм є найкращим рішенням, то майбутні криптовалюти зможуть використовувати його замість поточного – наприклад, алгоритми, такі як MC2 і Slasher. Якщо Ethereum 2.0 буде приходити разом, ці області будуть покращені. Ми можемо самі зателефонувати одержувачу і узгодити зручний час і місце вручення квітів і місце вручення квітів, а якщо необхідно, то збережемо сюрприз. Наша платформа девіз: Ви обмежені тільки своєю фантазією.

Джерело: habrahabr.ru/post/214305/