Уважаемые пользователи Голос!
Сайт доступен в режиме «чтение» до сентября 2020 года. Операции с токенами Golos, Cyber можно проводить, используя альтернативные клиенты или через эксплорер Cyberway. Подробности здесь: https://golos.io/@goloscore/operacii-s-tokenami-golos-cyber-1594822432061
С уважением, команда “Голос”
GOLOS
RU
EN
UA
dark.sun
7 лет назад

Школа блокчейн. Level 1. Транзакции, адреса, кошельки.

Предыдущие встречи школы блокчейн Level 1:

  1. Блокчейн как коллективный бухгалтер
  2. Что такое хэш-функция и зачем она нужна

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

Кратко повторим материал прошлых встреч.

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

Транзакции - это передача прав владения биткоином от одного человека, к другому. Для совершения транзакции, вы должны “прокричать” в сеть бухгалтеров сообщение, вроде такого:

Я, Dark.Sun, у меня есть 1 биткоин и я передаю его Иисусу, вот его адрес: 1KuWLoZuoJgz3N6sLoAwGth9XGm8YuFTGt, моя подпись: Pub, Priv.

Что такое цифровая подпись?

Когда вы заводите кошелек биткоин (устанавливаете программу), у вас на компьютере создается файл, в котором хранится две записи: ключ приватный (PRIV) и ключ публичный (PUB).

Приватный ключ генерируется абсолютно случайным образом, публичный ключ, в свою очередь, создается путем получения хэш-суммы от приватного =>

PUB = SHA256(PRIV)


Мое творчество ;-)

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


Google дал

Адрес.

Так а что такое адрес, на который перечисляются биткоины? На основе публичного ключа вновь вычисляется хэш-сумма (т.е. второй раз от приватного):
Address = SHA256(PUB), и получается что-то вроде этого:

1KuWLoZuoJgz3N6sLoAwGth9XGm8YuFTGt.

(это упрощенный процесс, на самом деле все чуточку сложнее)

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

Передача биткоин-адреса другому человеку - абсолютно безопасна, поскольку свойства хэш-суммы таковы, что невозможно из адреса получить публичный ключ:
Pub = 261c1eb21fc4708c6acbe1cfc6d4565652e9e768b620782898936b93000a6c02

И тем более, приватный:
Priv= 04678afdb0fe5548271967f1a67130b7105cd6a828e03909a67962e0ea1f61deb649f6bc3f4cef38c4f35504e51ec112de5c384df7ba0b8d578a4c702b6bf11d5f

(ключи представлены для примера, там биткоинов нет ;-)

Проверка транзакции.

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

После получения подобного сообщения, коллективный бухгалтер начинает проверку:

  • А действительно-ли вы получали этот конкретный биткоин (есть ли запись получения в книге учета).
  • Проверяет целостность адреса получателя (в случае опечатки, транзакция будет отменена).
  • Проверяет цифровую подпись, предоставленную текущим хозяином биткоина. Только если ключ (Priv) совпадает с замком (Pub) - осуществляется запись в книгу учета.

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

Так а что же такое кошелек?

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


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

Задание:

  • Найдите способ импортировать указанный приватный ключ в любой кошелек и проверить, а действительно ли на представленных ключах нет биткоинов? А вдруг они там есть? ;-)))
23
40.788 GOLOS
На Golos с October 2016
Комментарии (12)
Сортировать по:
Сначала старые