DApp, или децентрализованное приложение, - это программа, которая позволяет пользователям взаимодействовать с сетью, подобной сети Ethereum.
Точнее, DApp - это пользовательский интерфейс, который позволяет пользователям взаимодействовать с "умными контрактами", хранящимися в "распределенной и децентрализованной" одноранговой сети на основе блокчейна, такой как сеть Ethereum.
Умные контракты: Смарт-контракт - это тип компьютерного скрипта, размещенного в сети Ethereum. Скрипт запрограммирован на выполнение определенных функций при соблюдении конкретных условий. Например, смарт-контракт распределяет токены, когда ETH отправляется на определенный адрес Ethereum.
Распределенный и децентрализованный: "Распределенный и децентрализованный" означает, что он размещен на многих компьютерах и не контролируется каким-либо одним субъектом.
Блокчейн: Блокчейн - это распределенная бухгалтерская книга, тип базы данных, хранящейся на многих компьютерах.
Ethereum: Сеть Ethereum - это криптовалютная сеть, использующая технологию блокчейн. Однако сеть Ethereum можно рассматривать как распределенную вычислительную систему, поскольку она может делать гораздо больше, чем просто работать с криптовалютными токенами.
Децентрализация и DApps
Несмотря на название, фронтенд DApps часто не является децентрализованным (он может быть таковым, но часто им не является).
Хотя DApp не может быть DApp, если бэкэнд не использует одноранговую распределенную сеть, такую как сеть Ethereum, фронтэнд DApp часто базируется на веб-технологиях, поэтому создается с использованием языков веб-программирования и хранится на центральном сервере.
Другими словами, название DApp можно использовать для описания приложений, которые на практике имеют разный уровень децентрализации.
Разница между приложениями и DApps
Между обычными приложениями и Dapps есть два основных отличия:
Вместо того чтобы пользовательский интерфейс взаимодействовал с традиционной программой, он взаимодействует со смарт-контрактами.
Вместо того чтобы бэкэнд приложения размещался на одном персональном компьютере или на централизованных серверах одной компании, DApps размещаются на многих компьютерах по всему миру через одноранговую сеть, а их данные записываются в публичный блокчейн.
Учитывая это, DApp может делать все, что может делать обычное приложение, но примечательно, что бэкэнд у него, по крайней мере, обладает качествами "распределенного и децентрализованного".
DApps могут быть в криптосети, но они не только для токенов
Биткойн, по сути, является децентрализованным приложением, которое можно использовать для заключения финансовых контрактов без доверия, не зависящих от прихоти одного субъекта.
Однако Ethereum и другие подобные платформы позволяют использовать не только финансовые приложения.
Теоретически потенциал DApps огромен, но технология все еще находится в зачаточном состоянии.
Посмотрите несколько примеров DApps, чтобы лучше понять, для чего эта технология используется сегодня и может быть использована в будущем.
СОВЕТ: DApps, как правило, используют токены этой сети для экономических транзакций. Так, если у вас есть DApp для коллекционирования в сети EThereum, вы, скорее всего, будете использовать Ethereum или другой токен на базе Ethereum для покупки этих коллекционных товаров.
СОВЕТ: Даже если DApp не имеют никакого отношения к криптовалюте, криптовалюта все равно необходима для работы системы. В Ethereum для запуска смарт-контрактов требуется совсем немного Ethereum, это называется "газ".
Что превращает DApp в DApp?
Развивая вышеизложенные основы, вот некоторые другие качества, которыми должны обладать DApps:
Чтобы быть DApp, внутренний код приложения должен быть размещен в "распределенной и децентрализованной" одноранговой сети. В случае с Ethereum это означает использование смарт-контрактов Ethereum для записи данных в блокчейн Ethereum. Таким образом, хотя для доступа к CryptoKitties DApp можно использовать веб-сайт CryptoKitties, само приложение и его данные находятся в сети Ethereum, а веб-сайт является лишь шлюзом для доступа к смарт-контрактам (например, для запуска контракта на покупку криптокотенка, в результате которого криптокотенку присваивается адрес в Ethereum, записанный в блокчейне).
В идеале внешний код (часть, которую человек может установить на свой телефон или компьютер или получить доступ через веб-сайт, часть, которая общается с бэкендом) может быть размещен на персональном компьютере или централизованном сервере... или он может быть децентрализован и распределен, размещаясь на децентрализованном сервере, таком как Swarm (один из ответов централизованным серверам на основе Ethereum).
В идеале DApp должен быть с открытым исходным кодом и не требовать централизованного управления (хотя на практике все, от токена BAT до CryptoKitties, имеет центральную команду, работающую над ним, и некоторые аспекты, которые не являются полностью автономными).
DApps могут иметь финансовый элемент или нет. Если у них есть финансовый элемент, они должны использовать криптографический токен, который работает в сети, в которой размещен DApp.
DApps обязательно защищены криптографией, поскольку сети, на которых они размещаются, защищены криптографией. Однако в идеале они должны быть полностью криптографическими, используя при передаче данных другие приложения, например, Whisper.
Во многих различных сетях работают DApps, включая, например, TRON и NEO.
Можно утверждать, что биткоин - это DApp, который использует смарт-контракты и блокчейн для урегулирования финансовых контрактов.
Итог: Любой интерфейс для смарт-контракта (под любым названием) является DApp, и любая сеть, использующая смарт-контракты (под любым названием), может иметь DApps. В идеале разработчики используют как можно больше распределенных и децентрализованных технологий, но в реальности DApps существуют в теории и на практике в широкой категории.
Точнее, DApp - это пользовательский интерфейс, который позволяет пользователям взаимодействовать с "умными контрактами", хранящимися в "распределенной и децентрализованной" одноранговой сети на основе блокчейна, такой как сеть Ethereum.
Умные контракты: Смарт-контракт - это тип компьютерного скрипта, размещенного в сети Ethereum. Скрипт запрограммирован на выполнение определенных функций при соблюдении конкретных условий. Например, смарт-контракт распределяет токены, когда ETH отправляется на определенный адрес Ethereum.
Распределенный и децентрализованный: "Распределенный и децентрализованный" означает, что он размещен на многих компьютерах и не контролируется каким-либо одним субъектом.
Блокчейн: Блокчейн - это распределенная бухгалтерская книга, тип базы данных, хранящейся на многих компьютерах.
Ethereum: Сеть Ethereum - это криптовалютная сеть, использующая технологию блокчейн. Однако сеть Ethereum можно рассматривать как распределенную вычислительную систему, поскольку она может делать гораздо больше, чем просто работать с криптовалютными токенами.
Децентрализация и DApps
Несмотря на название, фронтенд DApps часто не является децентрализованным (он может быть таковым, но часто им не является).
Хотя DApp не может быть DApp, если бэкэнд не использует одноранговую распределенную сеть, такую как сеть Ethereum, фронтэнд DApp часто базируется на веб-технологиях, поэтому создается с использованием языков веб-программирования и хранится на центральном сервере.
Другими словами, название DApp можно использовать для описания приложений, которые на практике имеют разный уровень децентрализации.
Разница между приложениями и DApps
Между обычными приложениями и Dapps есть два основных отличия:
Вместо того чтобы пользовательский интерфейс взаимодействовал с традиционной программой, он взаимодействует со смарт-контрактами.
Вместо того чтобы бэкэнд приложения размещался на одном персональном компьютере или на централизованных серверах одной компании, DApps размещаются на многих компьютерах по всему миру через одноранговую сеть, а их данные записываются в публичный блокчейн.
Учитывая это, DApp может делать все, что может делать обычное приложение, но примечательно, что бэкэнд у него, по крайней мере, обладает качествами "распределенного и децентрализованного".
DApps могут быть в криптосети, но они не только для токенов
Биткойн, по сути, является децентрализованным приложением, которое можно использовать для заключения финансовых контрактов без доверия, не зависящих от прихоти одного субъекта.
Однако Ethereum и другие подобные платформы позволяют использовать не только финансовые приложения.
Теоретически потенциал DApps огромен, но технология все еще находится в зачаточном состоянии.
Посмотрите несколько примеров DApps, чтобы лучше понять, для чего эта технология используется сегодня и может быть использована в будущем.
СОВЕТ: DApps, как правило, используют токены этой сети для экономических транзакций. Так, если у вас есть DApp для коллекционирования в сети EThereum, вы, скорее всего, будете использовать Ethereum или другой токен на базе Ethereum для покупки этих коллекционных товаров.
СОВЕТ: Даже если DApp не имеют никакого отношения к криптовалюте, криптовалюта все равно необходима для работы системы. В Ethereum для запуска смарт-контрактов требуется совсем немного Ethereum, это называется "газ".
Что превращает DApp в DApp?
Развивая вышеизложенные основы, вот некоторые другие качества, которыми должны обладать DApps:Чтобы быть DApp, внутренний код приложения должен быть размещен в "распределенной и децентрализованной" одноранговой сети. В случае с Ethereum это означает использование смарт-контрактов Ethereum для записи данных в блокчейн Ethereum. Таким образом, хотя для доступа к CryptoKitties DApp можно использовать веб-сайт CryptoKitties, само приложение и его данные находятся в сети Ethereum, а веб-сайт является лишь шлюзом для доступа к смарт-контрактам (например, для запуска контракта на покупку криптокотенка, в результате которого криптокотенку присваивается адрес в Ethereum, записанный в блокчейне).
В идеале внешний код (часть, которую человек может установить на свой телефон или компьютер или получить доступ через веб-сайт, часть, которая общается с бэкендом) может быть размещен на персональном компьютере или централизованном сервере... или он может быть децентрализован и распределен, размещаясь на децентрализованном сервере, таком как Swarm (один из ответов централизованным серверам на основе Ethereum).
В идеале DApp должен быть с открытым исходным кодом и не требовать централизованного управления (хотя на практике все, от токена BAT до CryptoKitties, имеет центральную команду, работающую над ним, и некоторые аспекты, которые не являются полностью автономными).
DApps могут иметь финансовый элемент или нет. Если у них есть финансовый элемент, они должны использовать криптографический токен, который работает в сети, в которой размещен DApp.
DApps обязательно защищены криптографией, поскольку сети, на которых они размещаются, защищены криптографией. Однако в идеале они должны быть полностью криптографическими, используя при передаче данных другие приложения, например, Whisper.
Во многих различных сетях работают DApps, включая, например, TRON и NEO.
Можно утверждать, что биткоин - это DApp, который использует смарт-контракты и блокчейн для урегулирования финансовых контрактов.
Итог: Любой интерфейс для смарт-контракта (под любым названием) является DApp, и любая сеть, использующая смарт-контракты (под любым названием), может иметь DApps. В идеале разработчики используют как можно больше распределенных и децентрализованных технологий, но в реальности DApps существуют в теории и на практике в широкой категории.