Хранение скрипты (смарт-контракты) вне блокчейна

Я после "освоения Биткойн" от Андреас Антонопулос для того, чтобы understande биткоин реализации.

В главе о сделках, он указывает на некоторые преимущества P2SH операций:

  1. Сложные скрипты заменяются более короткими отпечатков в выходном сделки, оформление сделки меньше.
  2. Сценарии могут быть закодированы как адрес, так и отправителя, и отправитель кошелек не нужны сложные инженерные реализовать P2SH.
  3. P2SH перекладывает бремя построения сценария к получателю, а не отправителю.
  4. P2SH перекладывает бремя на хранение данных в течение длительного скрипт от выходного (которое в наборе UTXO) к входу (хранится на блокчейн).
  5. P2SH перекладывает бремя на хранение данных в течение длительного скрипт от настоящего времени (оплате) в будущем (когда это потрачено).
  6. P2SH сдвигает плата за сделку ценой долгих скрипт от отправителя к получателю, который должен содержать длинные активировать скрипт тратить.

Про пункт 4, он по-прежнему выглядит неоптимальным для меня.

Представьте себе, что у меня есть фирма, где для того, чтобы провести оплату от покупателей, я также должны получить подписи как минимум 1 из 2 других партнеров. Мой скрипт будет выглядеть:

2 <Моя умолчанию> <партнер по умолчанию 1> <2 партнер по умолчанию> 3 OP_CHECKMULTISIG

Так, для каждого входящего платежи, которые я хочу потратить, мой scriptSig должна быть раздутой со скриптом выше плюс 2 подписи <sig1> <sig2>.

Представьте, что я буду иметь тысячи таких операций, это может быть вздутие живота блокчейн, вероятно, снижается производительность сети.

Мне было интересно: есть ли способ сохраняя эти сценарии, как "счета" в "кошельки сценария", а не хранить ее внутри блокчейна?

При необходимости, для проверки, я мог бы просто получить этот сценарий Форма "кошелек" и регистрация сделки.

Как бы это было возможно?

+946
Fariz Luqman 1 июн. 2019 г., 11:11:43
24 ответов

Отказ от ответственности: я один из тех 7 человек.

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

Тем не менее:

  • Ядра биткоин-это не только программное обеспечение, взаимодействующих с сетью Bitcoin. Есть другой узел и реализации бумажник.
  • Вы можете запустить модифицированную версию, или вы можете скопировать код и сохранить ветку сами, если есть особенности или изменения вы хотите видеть.
  • Даже с Bitcoin основного питания большинства полных узлов в сети, ее разработчики не могут напрямую изменить основные правила протокола. Если изменение носит противоречивый характер, люди могут (и должны) отказаться от обновления. В конечном счете, это люди, решив запустить Bitcoin узел, который косвенно устанавливают требования к сети.
  • Шахтеры не устанавливать правила. Это распространенное заблуждение, Многие думают, самой длинной цепи, созданной шахтеров получает приняты в сети. Это не правильно: это самый длинный действующий цепь, которая выигрывает. Каждый полный узел - в том числе не-шахтеров - проверка сделок в цепочке и будет просто игнорировать цепочку с перебоями.
+947
Ann Hussey 03 февр. '09 в 4:24

Есть ряд приложений. Биткоин используется, например, для

Вы можете найти более полный обзор на вопрос , где я могу найти список продавцов, которые принимают биткоины?

+941
Lam Do 26 окт. 2015 г., 15:45:05

Вы можете включить ведение журнала критериев для проверки блока. Если добавить отладка=скамейка на ваш Bitcoin.файл conf, время, которое потребовалось, чтобы убедиться, что каждый блок записывается на отладку.лог-файл, и вы можете посмотреть там.

Нет никаких критериев для отдельных время проверки сделок.

+933
Harshh Kumar 19 сент. 2015 г., 20:34:29

Конечно. Платежи в традиционных валютах, обманным путем и/или обманным путем отменил все время. Это фактически воровство этой валюты от биржи.

+908
Mahidhar Nyayapati 17 дек. 2012 г., 21:03:16

Для человека, который имеет различное количество разных криптовалют, это на самом деле раздражает используют многие клиенты. Сейчас только биткоин данных составляет более 15 ГБ, лайткоин 1,5 ГБ и так далее.

Есть ли кошелек, который включает в себя многие кошельки? Возможно ли это?

+861
Rushyo 24 сент. 2011 г., 14:57:19

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

Если это правда, то, что средний объем данных за месяц время загрузки, так что я могу использовать Bitcoin.

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

+827
joshvermaire 28 мар. 2016 г., 23:46:15

(jed2 в Ирке) abrkn: 50 сообщества. Не важно, что предложение. Он очищается, когда предложение отменяется (или выполнены).

+823
Yarovoy 4 мар. 2018 г., 1:56:43

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

Это не значит, что вы можете легко однако связывать проводки к людям. Все видят, что адрес передал биткоины в адрес Б., Но это не очевидно, как определить, кто владеет адресами A или B.

+759
Stewart Moreland 24 авг. 2015 г., 16:40:25

Расширенный публичный или приватный ключ, всегда 78 байт данных. Когда Base58 проверить закодирован, это приводит в строку, которая составляет до 112 символов в размер.

Формат данных определяется в бип 32.

+729
Santosh Chakraborty 19 мая 2011 г., 20:29:45

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

Есть журналы ошибок, которые вы смотрели и они подтверждают, что облако Flare-это не проблема? Похоже, изводит всех, используя их API для основных функций.

+721
samsamuel 5 февр. 2012 г., 6:52:26

С вероятностью, он обычно легче найти негативные дела и вычесть из 1.

Так каковы шансы кубиков быть уникальным?

Один рулон уникален:
1

Один рулон по меньшей мере одно столкновение:
1 - 1 = 0

Два рулона уникальный:
1 * 5/6 (только 5 номеров)

Два рулона как минимум одно столкновение:
1 - 1 * 5/6

Три рулона уникальный:
1 * 5/6 * 4/6

Три рулона по крайней мере одно столкновение:
1 - 1 * 5/6 * 4/6

Так для 32-битных специальные слова:

1 - 1
1 - 1 * (2^32 - 1)/2^32
1 - 1 * (2^32 - 1)/2^32 * (2^32 - 2)/2^32

Так что за 500к в 2^32 я написал это:

ВАР uniqueChance = 1.метод todouble()
вал Макс: двойной = 4_294_967_296.метод todouble()
Для (я в 1..500000) {
 uniqueChance *= (Макс - я) / Макс.
}
код println("шанс уникальный uniqueChance")
код println("шанс, по крайней мере один дубликат ${1 - uniqueChance}")

Что дает:

Шанс уникальный 2.2900830840065387 е-13
Шанс по крайней мере один дубликат 0.999999999999771
+720
Crockett 24 мар. 2014 г., 21:12:36

таким образом, вопрос о BTC закрытый ключ восстановления . Есть ли способ, чтобы восстановить и повторно вычислить закрытый ключ, используя эти реквизиты :

Ша-256 Функция ripemd-160 открытый ключ публичный адрес РСЗ подписей ( неидентичных Р ) scriptsig АСМ & шестигранной ...

+585
Steve Teece 6 янв. 2012 г., 4:14:53

Хэши транзакций использует и SHA256, поэтому они являются 32 байт. Если у меня в магазине очень большая база хэшей транзакций, только для проверки существования в дальнейшем, стоит ли хранить все 32 байта? Если я в магазине только 20 последних байт и я сравниваю операции, используя только эти последние 20 байт, бы ребята крипто злиться?

+585
user272878 14 дек. 2018 г., 13:47:24

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

Ваш анализ может быть мой анализ и я смогу отделить от IBM с Google..

Вы не можете разделить их, если вы их не знаете. Но в мире криптографии ничего невозможного, я уверен, что кто-то с "большой" чашка кофе будет в состоянии сделать это. Но я говорю о структуре блокчейн не навыков программирования.

+446
Bret Linford 23 мая 2018 г., 3:13:15

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

Адреса 64-битная, которая, вероятно, займет несколько лет, чтобы взломать грубой силой. В публичных и частных ключей 256 бит.

+392
Surfbutler 4 окт. 2013 г., 7:32:59

Электрум 2.0 и использует BIP0032 внутренне. Я хочу написать код, который генерирует те же адреса. Я не могу найти никакой информации об этом в сети.

Что BIP32 пути он использует для генерации адресов?

+373
Chasiti Musick 6 мар. 2016 г., 1:58:06

Я просто хотел спросить, есть ли в этом смысл, если я хочу, чтобы распечатать мой кошелек.DAT, чтобы кодировать его в base64?

Я тоже читала, что резервная копия стала бы бесполезной, если я получаю любой receivements или делать депозиты и мне придется распечатать бумажник.снова дат?

Я хотел бы закодировать свой бумажник.DAT с помощью base64, распечатать его и спрятать его в сейф.

когда мой ноутбук сломается и другие мои резервные копии также поврежден (почему все), я могу проверить мой конверт.DAT с ОРЗ, декодировать в base64 и просто загрузить его в нормальный биткоин-клиента?

это звучит правильно? или есть какие-то вещи, которые я упускаю?

Я не хочу полагаться на другое программное обеспечение, другие веб-приложения или ключ/генераторы паролей...

+322
Coutts 13 окт. 2011 г., 0:53:16

Я думаю, что стимулом является добыча и сборов по сделке. Система спроектирована таким образом, это более выгодно добывать и регулярно получают комиссионные, чем попробовать массированную атаку против 51% всей сети Bitcoin для того, чтобы переписать часть блокчейна

+322
Lyudmik2501 20 янв. 2013 г., 10:38:56

Адрес БТЦ вы перевели монеты, он принадлежит вам или binance? Если это твое, то вы можете быть в состоянии восстановить его без необходимости binance.

+248
Bittenus 10 мар. 2016 г., 5:11:57

Я не знаю ни одного такого списка пока нет, но мы можем начать делать одна. :) Остальные должны не стесняйтесь добавлять свои находки через редактирование.

+220
Charlie boy 2 янв. 2012 г., 3:04:00

Видимо, чтобы получить ЭКП команда removeprivkey вам понадобится построить биткойн-клиент, который включает в себя тяги #220 (который был включен в основную). Последняя версия (на данный момент версии v0.12.1) содержит эту функцию.

Здесь представлены инструкции, чтобы сделать это:

Шаг 1. Резервное копирование вашего кошелька. Вы выполняете операцию бумажник здесь, ... и делать вещи, которые вы, возможно, не хотел.

Запустить биткойн в качестве сервера, например,

$ ./биткоин-qт -сервер

Тогда

Если ты зашифровал свой кошелек, вам потребуется открыть его для RPC

$ ./bitcoind walletpassphrase [фраза] 1000

Тогда

$ ./bitcoind dumpprivkey [биткоин адрес]

Затем скопируйте и вставьте секретный ключ, которые она предоставляет. Тогда

$ ./bitcoind removeprivkey [приватный ключ]

Затем закрыть биткоин-на Qt.

После этого

$ ./bitcoind -пересканировать

+163
mstrom 4 июл. 2017 г., 11:34:30

Я не могу сделать узел-биткоин модуля ЭКП работает правильно в моем чего-то не хватает... либо я получаю соединение сброшено ошибка или я получаю неверные параметры -32602

Вот небольшой фрагмент кода из моего app.js файл. Может кто-нибудь помочь мне о том, что я делаю неправильно здесь. К вашему сведению, у меня есть порт 8332 8333 и открыть на nginx

/******* Это дает мне неверные параметры из -32602 ******/
УАК чистая = требуют('нет');
ВАР сервер = чистая.createServer(функция(с) {слушателя //'связи' 
консоль.журнала('сервера');
});
сервер.слушать(8332, функция () {слушателя // "слушает" 
консоль.журнала('привязан сервер');
});

ВАР bitcoinClient = новый биткоин.Клиент({
хост: localhost в,
порт: 8332,
пользователь: 'имя пользователя',
пароль: "пароль"
});

bitcoinClient.getInfo(функция(е, информация){
если(е){ возвращение консоли.журнал(е);}
});
/****************************************************************/

/******* ЭТО ДАЕТ МНЕ ОТКАЗ В СОЕДИНЕНИИ ******/

ВАР bitcoinClient = новый биткоин.Клиент({
хост: localhost в,
порт: 8332,
пользователь: 'имя пользователя',
пароль: "пароль"
});

bitcoinClient.getInfo(функция(е, информация){
если(е){ возвращение консоли.журнал(е);}
});
/****
+58
Wafa Kamel 24 апр. 2015 г., 3:05:40

Там наверняка некую опасность для него. По этой книге http://www.totalbitcoinsecurity.com/ есть два простых способа улучшить свою безопасность:

  1. Зачем класть все деньги в одну бумагу-адрес? Вы можете разбить его и положить его в несколько бумажных адреса. Это делает каждый адрес менее привлекательной мишенью.

  2. Вы можете использовать BIP38 для шифрования закрытого ключа. Если кто-то украдет ваши зашифрованные закрытым ключом, он все равно нужно знать пароль. Это немного связано с двухфакторная аутентификация: для доступа к кошельку, вам нужен закрытый ключ (обычно хранится в бумажном) и пароль, который можно запомнить или записать куда-нибудь.

Отказ от ответственности: я не имею отношения к цитируемой книги. Я просто читал его на прошлой неделе.

+43
apod 18 сент. 2012 г., 13:05:37

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

+14
Yaman KJ 18 окт. 2016 г., 9:36:51

Показать вопросы с тегом