Кошельки Биткойна

Bitcoin кошельки Биткойн

Введение в крипто кошельки

В прошлой статье мы с вами рассмотрели экосистему Биткойна. Посмотрели на неё немного с высоты. Вспоминаем, она состоит из четырех основных частей. В этой статье мы сосредоточимся на кошельках (wallets). Кошельки позволяют инициировать транзакции и публиковать их для дальнейшей верификации.

Главное предназначение кошельков — это хранение приватных и публичных ключей.

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

Взаимодействие с нодами

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

А уже потом отправить эту транзакцию с помощью ноды, к который привязан любой кошелёк. То есть, транзакция не только инициируется в кошельке, но и отправляется ноде, к которой привязан данный кошелёк. И уже нода распространяет транзакцию по сети.

Мы рассмотрели ситуацию, когда вы отправляете деньги. Когда вы принимаете деньги, кошелёк работает, только на считывание.

Кошелёк всегда привязан к Full Node.

Нода постоянно обменивается информацией о новых транзакциях. Например, если в сети появится новая транзакция, которая подвязана под ваш private key, то ваш кошелёк сделает оповещение о том, что у вас доступна новая транзакция.

Private and Public Keys

Биткойн адрес — что это?

Наши кошельки хранят public key, то есть публичный ключ. Он является, скажем так, самим адресом, то есть они идентификатором вашего кошелька в сети. На эти адреса вам могут отправлять деньги. Этот адрес открытый. А private key – это ваш «ключ» от кошелька, электронно-цифровая подпись, криптографической доказательства владения данным адресом.

Private key должен хранится в секрете! В самом спрятанном месте, в самом надежном, каким только может быть. Никому нельзя рассказывать или показывать данный код!

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

Один приватный ключ может иметь доступ к нескольким публичным адресам, public keys. Может быть вы замечали, для того чтобы принять деньги на ваш кошелёк, приложение каждый раз генерирует новые адреса, то есть новые public key. Но ваш private key остается одним и тем же.

Один private key может иметь бесконечное количество public keys. При этом каждый public key имеет только один private key.

Транзакция Биткойн — что это?

Блокчейн Биткоина хранит в себе транзакции.

Ваш кошелёк не хранит никаких Биткоинов! Если так разобраться, они нигде не хранятся.

Кошелёк управляет, только вашим private key от блокчейна Биткойна. Блокчейн Биткойна, в свою очередь хранит транзакции.

Фактически мы владеем не столько Биткойнами, сколько транзакциями. Потому что, сеть блокчейна Bitcoin, хранит транзакции. А кошелёк хранит private key для доступа к этим транзакциям. Но кошелёк не хранит никаких Биткойнов.

Транзакция могут быть просто, текстом.

Можно сделать Bitcoin транзакцию без самого Биткойна!

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

Нужно понимать, что нету никаких монет в кошельке. Наш кошелёк хранит только private key. Приватный ключ или цифровая подпись, которая разблокирует для в сети Биткойна доступ к транзакциям.

Какой Биткойн кошелёк выбрать?

Итак, давайте рассмотрим, какие кошельки у нас могут быть.

Full Node

Первый, и самый главный тип кошелька. Вы можете развернуть на своём компьютере полную, Full Node. Самое первое программное обеспечение, которое является кошельком Биткойна, это Bitcoin Core.

Он позволяет хранить полную историю транзакциий у себя на компьютере. Это нода с кошельком, который будет хранить ваш private key. Этот вариант хранения и управление своими средствами хорош тем, что вы храните всю историю транзакций на своём компьютере. Также, вы можете напрямую взаимодействовать с нодой.

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

Simple Payment Verification

SPV

Второй вариант кошельков – это SPV, Simple Payment Verification. Мы уже упоминали о нем в предыдущей статье. Самым популярным в этой категории является Mobile Wallet, мобильный кошелек.

SPV помогает нам реализовать коммуникацию, взаимодействие с блокчейном Bitcoin. Например, через мобильное устройство. Устройство, которое физически не может хранить в себе всю историю транзакций сети биткоина.

Блокчейн Биткойна, на сегодняшний день, занимает почти 400 гигобайт! И постоянно увеличивается. Хранить её на своём телефоне, просто глупо.

По сути, SVP – это front-end, клиентская часть, которая хранит ваши private key. Для того чтобы отправлять и принимать транзакции в сети Bitcoin, вы должны хранить всю историю. А если вы её не храните как в случае с SPV, вы должны взаимодействовать, а значит доверять какой-то ноде.

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

Paper Wallet

Третий тип кошельков, может быть вы слышали, это так называемые «бумажные кошельки» (Paper Wallets).

Суть заключается в том, что вы записываете private key на кусок бумаги и всё. Смысл бумажного кошелька заключается в том, чтобы оградить ваш private key от интернета.

Если у вас развернута Full Node, то вы должны быть постоянно в сети. Даже, если вы выключите компьютер, когда вы его снова включите будет подгружена вся история транзакций.

Если ваши private keys хранятся на компьютере, где есть Full Node, который подключен к интернету, то есть вероятность кражи ваших приватных ключей.

Можно «подцепить» malware или вирус, который может получить удалённый доступ над вашим устройством и захватить управление private key. И в результате, захватить управление вашим адресом.

Именно поэтому, наиболее «шифронутые» ребята используют Paper Wallets. То есть, они создают кошелёк записывают его private key на бумагу и всё. Туда отправили свои средства и всё. Вы больше не трогаете этот адрес. Средства хранятся на этом адресе. Приватный ключ этого адреса хранится на бумажке.

Только, надеюсь, эту бумажку «не унесёт ветром». И вы её не потеряете. Потому что, в этом случае, вы потеряете все свои средства!

Таким образом, вы огораживаете свой private key от возможности взлома или кражи. Также, теперь он не зависит от компьютера. Потому что, компьютер тоже может сломаться, если не сделаете резервную копию.

Для того, чтобы в будущем провести транзакцию, вам нужно будет вести это 64-значное число private key в SPV или в Full Node.

В этот момент, все-равно произошла коммуникация с интернетом. Но, можно обезопасить себя. После того, как вы сделали какую-то одну транзакцию, вы создаёте новый private key, переводите деньги на него и снова записываете на бумагу. Вот так каждый раз, придется создавать новые кошельки. Для того, чтобы приватные ключь не хранился нигде. Только, в бумажном варианте.

Hardware Wallets

Следующий вариант кошельков – это Hardware Wallets или холодные кошельки. Примером таких кошельков являются Trezor и Ledger. В основном они выглядят, как USB-флешка, которая хранит в себе ваши private key.

Hardware Wallets

Эта «USB-флешка» подключается к вашему компьютеру. Таким образом, у вас есть отдельное устройство, которое не подключено к интернету, и на котором хранятся ваши private key. Который свою очередь, я напоминаю, являются правом владения транзакциями в каких-то адресах. Вы инициируете и верифицируете транзакции внутри кошелька, а потом, используя программное обеспечение, вы отправляете данную транзакцию в сеть блокчейна Биткойн.

Hosted Wallets

Последний вариант кошельков, который мы сегодня рассмотрим, называется Hosted Wallets, хостинговые кошельки. Но, чаще употребляется название горячие кошельки или Hot Wallets. Как правило, это биржевые кошельки.

В чём заключается смысл? Например, у вас есть кошелек Binance. Смысл в том, что сайт, в который вы вошли под своим аккаунтом, обращается к серверу на бирже.

И на этих серверах биржи есть, в том числе, и Full node Биткойна. Который в дальнейшем уже взаимодействует с сетью Биткойна.

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

Всё что у вас есть — это доступ на сайт биржи через базу данных, в которой хранятся User ID пользователя, пароль и ваши остатки на счетах.

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

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

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

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

Кошельки. Заключение

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

Поделиться с друзьями
Андрей
Оцените автора
( Пока оценок нет )
Crypto Analys
Добавить комментарий