Можно ли уничтожить биткойн?

Это гипотетическое будущее, и BTC2 разрабатывается. Все любят BTC2, и никому больше не нужен старый BTC1.

Люди, у которых есть BTC1, были бы раздражены тем, что их активы внезапно стали намного дешевле, потому что на их BTC1 больше нет спроса, поэтому разработчики BTC2 хотят включить простой способ конвертировать свои BTC1 в BTC2.

Чтобы это сработало, миру BTC1 потребуется способ вывести монеты из использования в мире BTC1 таким образом, чтобы каждый мог быть достаточно уверен, что никто больше не сможет использовать испарившиеся активы BTC1.

Существует ли такой механизм? Если нет, можно/нужно ли добавить?

Хороший вопрос... Мало того, что двойная трата, это также вызывает призрак личности: чтобы потребовать средства через эти границы, вам нужно будет доказать, что вы являетесь владельцем счета BTC1, чтобы быть зачисленным на новая валюта.
Доказательство простое, как подписание с закрытым ключом. Новой сети просто нужно знать об открытых ключах BTC. Чтобы уменьшить количество транзакций передачи, ее можно сделать необратимой и односторонней. После того, как значение передано из BTC1 в BTC2, его нельзя отменить, и открытый/закрытый ключ BTC1 больше не имеет никакой ценности.
Всем, кто хочет уничтожить биткойны, я предлагаю отправить их по следующему адресу: 1BitcoinEaterAddressDontSendf59kuE (firstbits: 1Bitcoin)
заголовок не обязательно соответствует содержанию вопроса. может быть много способов, которыми биткойны могут быть «уничтожены», и содержание вопроса описывает только один из них (т. е. новая версия протокола/сиквел, построенный/выпущенный), предвзятые ответы и т. д., хотя общий вопрос может быть слишком широким.

Ответы (6)

Извините, Алекс, но вы ошиблись в заданном вопросе. Тривиально поставить биткойны «вне использования», чтобы их больше нельзя было потратить. Все, что вам нужно сделать, это отправить биткойны на вымышленный адрес, к которому ни у кого не будет ключа. Это уже было сделано, поскольку монеты были отправлены на адреса, которые почти наверняка никому не принадлежат (например, наименьший возможный хеш, который является действительным адресом).

Так что конкретно в вашей ситуации люди с BTC2 могут использовать общедоступный метод создания адреса, закрытые ключи которого никому не принадлежат, а затем разработать свою систему для кредитования людей, которые отправляют биткойны BTC1 на этот адрес. Одной из причин, по которой кто-то может захотеть сделать это, несмотря на природу Биткойна с открытым исходным кодом, будет создание нового, несовместимого протокола, который захватит часть пользовательской базы BTC1, не заставляя никого уходить, позволяя этим двум сосуществовать и вполне честно конкурировать.

В качестве примечания, есть ли у кого-нибудь ссылка на транзакцию, о которой я говорил (наименьший возможный хэш)? Я думал, что смогу найти его с помощью какого-нибудь блок-эксплорера, но за 10 минут, которые мне пришлось потратить на это, он оказался пустым. Хорошо бы ссылку.

Вы можете отправить свой BTC1 на любой неизвестный или недействительный адрес BTC1. (Хотя не со стандартным биткойн-клиентом.) С включенным скриптом было бы еще больше возможностей отправить ваши биткойны в никуда. Это позволит протоколу BTC2 принимать выходные данные транзакций BTC1, не подлежащие расходованию, в качестве основы для транзакций BTC2. Чтобы быть уверенным, что выходы из BTC1 больше нельзя тратить, достаточно применить какой-то специальный формат сценария или кодировку адреса, несовместимую с расходами BTC1.

Настоящая проблема заключается в том, что полная логика BTC1 должна быть частью протокола BTC2. Кроме того, трансляции блоков BTC1 должны быть доступны майнерам BTC2 (или как они там называются), чтобы они могли проверять достоверность транзакций BTC1. Это вообще не кажется хорошей идеей…

Мои личные размышления на эту тему приводят к этому вопросу Децентрализованные транзакции между двумя децентрализованными валютами , что может описать гораздо более плавный подход к «апгрейдам» валюты (и не только это). Но все еще жду ответов там!

У вас там все слишком сложно. Все, что BTC2 должен понять и импортировать, — это цепочка блоков BTC1 и закрытые ключи от BTC1. Когда он импортирует закрытые ключи, а также видит, что эти ключи отправили биткойны в назначенную черную дыру, он зачисляет закрытые ключи в новую систему. Это не так сложно реализовать.
Извините, я думал, что вставка данных BTC2 в цепочку блоков BTC1 была очевидным способом. Но, по вашему мнению, было бы лучше вставить данные BTC1 в цепочку блоков BTC2?
BTC2 — это те, кто так заинтересован в объединении двух валют, верно?
Они также заботятся о том, чтобы их протоколы и внутренности были как можно более чистыми. Какой смысл в апгрейде, если у вас останутся все недостатки и проклятия предыдущей системы?
Здесь я немного отклоняюсь от темы и углубляюсь в теоретическую ситуацию.

Решение на самом деле будет простым. В протокол BTC1 может быть добавлена ​​конкретная транзакция, означающая «перевести эти монеты в цепочку BTC2». Те, кто добывает BTC2, также должны будут следовать хэш-цепочке BTC1 и разрешать транзакции, которые импортируют биткойны из цепочки BTC1, при условии, что они подписаны ключом, в который были экспортированы биткойны.

Технические проблемы довольно незначительны, и все они имеют довольно простые решения. Блок BTC2, который незаконно импортировал монеты, будет недействителен и отклонен другими майнерами. Необходимо большое количество подтверждений в цепочке BTC1 для защиты от атак двойного расходования на цепочку BTC1, в результате чего монеты дублируются в обеих цепочках.

Единственное реальное требование состоит в том, чтобы по крайней мере большинство майнеров цепочки BTC2 также отслеживали цепочку BTC1 для проверки «импортных» транзакций.

Все, что требуется в системе BTC1, — это наличие транзакции, которая делает монеты не подлежащими трате внутри цепочки BTC1 и имеет место для кодирования ключа, который может потребовать монеты в цепочке BTC2.

Хорошая это идея или нет, это уже другая история.

Более или менее тот же ответ, что и мой, но написанный на гораздо лучшем английском :-) И мне было лень говорить о проблемах с «подтверждениями», поэтому +1, потому что вы это сделали.

Крайне маловероятно, что у всех возникнет реальная потребность в создании «Биткойн 2.0». Сеть Биткойн может быть изменена с течением времени для включения новых функций и улучшений. Эта развивающаяся модель программного обеспечения делает маловероятным необходимость «чистого прорыва». Точно так же, хотя Интернет развивался далеко за пределы своей первоначальной концепции, мы никогда не отключали «старый Интернет» и не запускали «новый Интернет».

Чтобы ответить на вопрос, я предполагаю, что необходима новая цепочка блоков. Существует способ сделать чистое переключение с минимальными унаследованными запутанностями.

1) Сообщество биткойнов должно определить новый протокол биткойнов (BTC2) и в то же время достичь консенсуса или, по крайней мере, абсолютного большинства в отношении того, когда текущий биткойн должен закончиться (BTC1). Можно было бы изменить текущий протокол биткойнов, чтобы позволить заинтересованным сторонам голосовать в зависимости от количества биткойнов, которыми они владеют на момент подачи предложения. Любое предложение о новой цепочке блоков должно иметь широкую поддержку, чтобы избежать сценария, в котором оно фрагментирует экономику Биткойн.

2) Омега-блок (последний блок) будет объявлен после обсуждения и голосования. Любые биткойны, полученные после этого блока, не смогут перейти в новую цепочку блоков. Пользователи должны позаботиться о том, чтобы не принимать биткойны после омега-блока. Чтобы избежать хаоса и сбоев, об этом следует объявить заблаговременно, возможно выпуск новых клиентов, которые предупреждают пользователей и даже сообщают о транзакциях после омеги как о плохих (без ценности).

3) После того, как омега-блок будет подписан, он будет уменьшен. Единственные данные, относящиеся к новой цепочке, — это текущее местоположение каждого биткойна. Это означает сохранение всех активных общедоступных адресов и их текущего значения из существующей цепочки блоков. Это приведет к значительному сокращению размера цепочки блоков, поскольку история монет больше не имеет значения, важно только их конечное местоположение. Точно так же любой публичный адрес со значением 0 BTC не нужно сохранять.

4) Либо включите сокращенную цепочку блоков, либо криптографический хэш в блок генезиса. Это обеспечивает мост между старой сетью и новой.

5) Новая цепочка блоков теперь имеет всю необходимую информацию для переноса монет по мере необходимости их владельцам. Поскольку сеть BTC2 не будет «знать» о транзакциях после блокировки Omega, любые монеты, переданные после этого, не будут иметь ценности в новой сети и, следовательно, не будут иметь ценности в старой сети. Невозможно заставить BTC1 остановиться, так как это P2P-сеть, но маловероятно, что будет большой спрос на неофициальные пост-омега «осиротевшие» транзакции BTC1.

6) Чтобы избежать усложнения протокола BTC2, будет возможна единственная транзакция с адресами/монетами BTC1 под названием «ПЕРЕВОД». Транзакция TRANSFER использует публичный адрес BTC1 и публичный адрес BTC2, и транзакция будет подписана закрытым ключом BTC1. Таким образом, «владелец» любой монеты на момент омега-блока будет единственным, кто сможет перевести ее в новую сеть.

7) Как только монеты будут переведены в сеть BTC2 через транзакцию TRANSFER, открытый/закрытый ключ BTC1 и кошелек не имеют ценности или использования и могут быть удалены владельцем.

8) Во время перехода кошелькам необходимо будет иметь копию сокращенной цепочки омега-блоков BTC1, чтобы они «знали» о BTC1 и протоколе TRANSFER. Однако после переноса пользователю никогда не понадобится «миграционный» кошелек, поэтому в конечном итоге будут выпущены версии, которые отказываются от всей устаревшей поддержки (протокол TRANSFER и омега-блокчейн).

9) Узлы могут в любое время выбрать «без устаревших» и будут игнорировать транзакции TRANSFER, и, вероятно, со временем многие узлы перестанут принимать эти устаревшие транзакции, поскольку объем передаваемых монет будет постоянно уменьшаться. Пока один узел поддерживает устаревшие адреса и транзакции TRANSFER, в конечном итоге можно будет подтвердить эти транзакции, хотя и со значительно увеличенным временем подтверждения.

Биткойн или «btc1» уже имеет встроенный механизм для предотвращения этого; это бесплатное программное обеспечение с открытым исходным кодом.

Гораздо разумнее (для большинства людей) улучшить Биткойн, чем создавать новый блокчейн.

Чтобы ответить на ваш вопрос, механизм, о котором вы говорите, не существует в основном коде Биткойн. И я не думаю, что он должен существовать в настоящее время.

Люди, делающие btc2, обычно делают это по схеме быстрого обогащения, которая выгодна им самим. Объединение этих альтернатив вместо изменения ядра Биткойн с открытым исходным кодом просто снижает ценность BTC. Сообществу BTC нет смысла мигрировать по этим причинам...

Найдите «Доказательство сжигания». В этой статье много полезного: https://en.bitcoin.it/wiki/Proof_of_burn