Блог починаючого Лінуксоїда :)

Детальніше про Bitcoin, транзакції й гаманці

btc_icon

Перше й найголовніше, що треба знати: біткойн — це рахункова одиниця, так само як літр — одиниця обсягу, а грам — одиниця маси. Але ви не можете взяти біткойн в руки і потримати, як доларову банкноту. І це НОРМАЛЬНО, тому що важливо зовсім інше, а саме:

  • Біткоїном можна володіти
  • Біткоїни можна переводити
  • Біткойни неможливо підробити

В сукупності, ці 3 якості дозволяють біткоїну ефективно функціонувати в системі розподілу матеріальних цінностей. І, одночасно з тим, саме ці  3 якості наділяють біткойн корисністю, або внутрішньою вартістю.

Давайте подумаємо, чому доллари зручні для розподілу матеріальних благ ? Завдяки тим  самим трьом якостям. Будучи власником доларової банкноти, ви можете покласти її в кишеню або кому-небудь передати її. До того ж, долари досить складно підробити (хоча і не так складно, як біткойни). Тому готівкові купюри — це один із способів розподілу цінностей, а bitcoin — інший.

Оскільки bitcoin не є фізичними об’єктами, а лише умовними одиницями на вашому рахунку, для них потрібен інший спосіб ведення обліку.Спосіб бухгалтерського обліку, передбачений в системі bitcoin  — це новітнє і незвичайно здорове рішення цієї проблеми.

 

Чому bitcoin — це децентралізована мережа?

Ви, напевно, вже чули, що в bitcoin не існує центрального сервера, який вів би облік всіх транзакцій. Але це не означає, що інформація про транзакції не зберігається ні на яких серверах зовсім. Якраз навпаки, тисячі різних серверів фіксують переміщення bitcoin. Кожен такий сервер в системі біткойнів називається повним вузлом.

Повний вузол — це автоматичний електронний бухгалтер, який хто завгодно може його встановити і використовувати. Кожен вузол зберігає повну копію відкритого реєстру — запис всіх біткоїн-транзакцій, здійснених коли-небудь, починаючи з моменту появи bitcoin. На сьогоднішній день відкритий реєстр містить в собі 30 мільйонів транзакцій і запитів, для його установки потрібно 13Гб+  дискового простору.

Для того, щоб використовувати біткоїни, вам необхідно мати біткоїн-гаманець.  Як гаманець можна використовувати додаток на комп’ютері або мобільному телефоні;послугу «хмарного гаманця» надають багато веб-сайтів. Ваш гаманець може додати транзакцію у відкритий реєстр, відправивши дані на один з вузлів біткоїн-мережі. Цей вузел передасть інформацію про транзакції інших вузлів і так далі — схожим чином працює BitTorrent. Інформація про транзакції поширюється по всій мережі в середньому за 7 секунд.

Як відбувається транзакція?

Тепер ви вже знаєте, що коли ви відправляєте комусь біткоїни, насправді ви нічого не пересилаєте! Замість цього ваш гаманець переписує вказану вами кількість біткоїнв з вашого рахунку на рахунок іншого власника, додавши цю транзакцію у відкритий реєстр. Як приклад, нижче наведені записи 3-х транзакцій, здійснених в грудні минулого року.

public-ledger

Як ви бачите, кожні транзакції відповідають своїм входам і виходам.Входи позначають ті біткоїни, які ви збираєтеся витратити, а виходи переписують їх на нового власника.

Кожен вхід — це цифрове відсилання до попереднього висновку від іншої транзакції.Відносно висновків діє одне дуже просте правило:будь-який вихід може бути використаний в якості входу в подальшій транзакції, але лише один раз! Якщо цей вихід використаний в подальшій транзакції, його називають витраченим і подальші операції з ним неможливі. Якщо ви намагаєтеся використовувати один і той же вихід у двох транзакціях (фактично, хочете розплатитися одними і тими ж грошима двічі), біткоїн -мережа відкине другу транзакцію,адже вихід уже витрачено. Саме тому біткойни неможливо підробити.

Кожен невитрачений вихід відповідає певній кількості біткоїнів на чиємусь рахунку.Якщо скласти докупи всі невитрачені виходи, зафіксовані в відкритому реєстрі, ви отримаєте загальне число існуючих біткойнов. Отже, можна сказати, що невитрачені виходи — це і є біткойни.

Майте на увазі, що ніякі реальні імена не використовуються в жодній транзакції. Через це  біткойни іноді називають анонімною мережею. Замість реальних імен, в bitcoin використовуються адреси гаманців, такі як 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa  Вitcoin-адреса — це те саме, що і номер банківського рахунку, ось тільки його набагато простіше відкрити — будь-хто  може сам собі створити його в одну мить. Окрім того, будь-який користувач може мати необмежену кількість адрес.

Звідки беруться bitcoin-адреси?

Якщо ви хочете отримувати bitcoin, вам необхідна bitcoin-адреса.Ваша програма-гаманець може  в будь-який момент згенерувати вам нову адресу. Вона виглядає ось так:

999

Щоб створити адресу, ваш гаманець спочатку генерує особистий ключ (секретний ключ). Особистий ключ — це не що інше як багатозначне число в інтервалі від 1 до 2 256 ..Щоб скоротити це число, можна його закодувати , перетворивши в символьну послідовність.

Потім ваш гаманець перетворює особистий ключ в БІТКОІН-адрессу, використовуючи добревідому функцію , яку сучасні комп’ютери легко реалізують. Якби хтось дізнався ваш особистий ключ, він зміг би також злегкістю дізнатися вашу bitcoin-адресу.
Багато bitcoin-гаманців мають функцію, що дозволяє імпортувати приватні ключі.

btc-address-gen-2Суть в тому, що дана операція є односторонньою. Надзвичайно легко отримати з секретного ключа адресу.  А от провернути зворотну операцію надзвичайноважкоЯкщо кому-небудь відома тільки ваша bitcoin-адреса,то обчислити ваш особистий bitcoin-ключ технічно не є можливим.

btc-address-gen-3Саме тому абсолютно безпечно повідомляти вашу адресу іншим, але надзвичайно важливо зберігати особистий ключ у таємниці. Як правило, гаманці зберігають записи особистих ключів в зашифрованих файлах в самому гаманці, або на жорсткому диску вашого комп’ютера чи на сервері в інтернеті. Ви також можете зберігати їх в будь-якому іншому місці, яке вважаєте більш безпечним.

Як підтверджуються транзакції?

Тут ми повернемося до питання, чому так важливо зберігати в таємниці особисті ключі? Ваш особистий ключ дає можливість витрачати ваші bitcoin. Щоб побачити, яким чином це відбувається, ознайомтесь з другою транзакцією.

Тут на допомогу приходить цифровий підпис. У мережі bitcoin саме валідний цифровий підпис є доказом того, що транзакція підтверджена власником bitcoin-адреси. Цей захід є запорукою безпеки: як для генерації bitcoin-адреси був необхідний особистий ключ, той самий ключ потрібний для генерації валідного цифрового підпису транзакції.

signature-generate

Транзакція визнається мережею дійсною лише в тому випадку, якщо в ній присутня вірна bitcoin-адреса, дані попереднього виходу і правильний цифровий підпис власника гаманця. Як ви вже здогадалися, кожен раз, коли вузол bitcoin отримує дані про нову транзакції, мережа перевіряє справжність цифрових підписів. Вузол не отримує даних про те, який саме особистий ключ використовувався для генерації підпису, але ці дані йому не потрібні. Досить упевнитися в тому, що підпис правильний.

signature-verify (1)

В основі концепції цифрових підписів лежить стара технологія:криптографія з відкритим ключем . Біткоїн — це не перша кріптовалютна технологія, де застосовується такий спосіб шифрування, але саме в біткоїн даний метод вперше стали застосовувати без прив’язки до єдиного, центрального серверу. Це, безумовно, прорив!

Види гаманців

На даний момент вже існує досить багато різних гаманців, але в більшості випадків функції цих інструментів приблизно однакові:

  • Зберігання особистих ключів.
  • Здійснення біткоїн-транзакцій.
  • Генерація біткоїн-адреси для отримання bitcoin від інших користувачів.
  • Доступ до історії транзакцій та інформації про поточний баланс.

local-walletДесктопний гаманець — це додаток для Windows, MacOS або Linux.Як приклади, можна навести Electrum ,Multibit або Bitcoin Core .Особисті ключі зберігаються в локальному файлі десь на жорсткому диску під назвою, наприклад, wallet.dat, а безпека ваших bitcoin безпосередньо залежить від збереження цього файлу. Винятком є ​​лише BitcoinQT, який перетворює комп’ютер в bitcoin-вузол, а значить, вимагає більше дискового простору і використовує ресурси інтернет з’єднання, чим і відрізняється від інших додатків.

web-walletІснує інший різновид гаманців: веб-гаманці,наприклад, Coinbase або гаманець Blockchain.info .Якщо ви користуєтеся веб-гаманцем, ваші особисті ключі зберігаються, зазвичай, в зашифрованому вигляді на серверах сайту, а не на вашому жорсткому диску. Деякі веб-гаманці одночасно є обмінними bitcoin-сервісами, наприклад, Bitstamp абоVirtex, де ви можете обміняти bitcoin на долари або інші валюти.

mobile-walletМобільний гаманець — це програма, яка встановлюється на смартфон або планшет. Багато мобільних гаманців, по суті, є інтерфейсом веб-гаманця, а це означає, що ваші особисті ключі, при використанні подібних програм, також будуть зберігатися на сервері сайту. Єдиний, але важливий виняток — BitcoinWallet для Android, який зберігає ключі, безпосередньо, на мобільному пристрої.

qr-posЗавдяки тому, що практично всі смартфони обладнані вбудованою камерою, QR коди перетворилися в поширений метод біткоїн-комунікації.Ви можете відправити комусь біткоїни, просто відсканувавши QR-код адресата за допомогою свого мобільного гаманця.QR-коди можна з легкістю генерувати, до того ж, вони можуть включати в себе додаткову інформацію, наприклад, кількість bitcoin, яку адресат очікує отримати. Це дозволяє мобільним гаманцях функціонувати в якості пристроїв, що здійснюють процес купівлі-продажу.

btc-paper-walletІснує навіть такий різновид як паперовий гаманець.  Паперовий гаманець може служити тільки для зберігання особистих ключів.

Деякі з вищеописаних гаманців можуть роздрукувати ваші особисті ключі. Ви також можете згенерувати новий особистий ключ і адресу без реальноіснуючого гаманця. Наприклад, Bitaddress.org пропонує подібний сервіс: коли ваші ключі роздруковані, ви можете зберігати їх в банківському сейфі і стерти зі свого комп’ютера. Такий спосіб захисту називають холодним зберіганням.

Протокол біткойнів абсолютно відкритий,  він дозволяє застосовувати будь-які програми та пристрої, сумісні з біткоїном. Фактично, вся система складається з залучених активів. Дана концепція вже надихнула безліч інновацій: існує набагато більше біткоїн-гаманців і пристроїв для здійснення купівлі-продажу, ніж вищезгадані і,безсумнівно, з’явиться ще нових.

На жаль, відкрита структура мережі створює певні можливості для шахраїв. З цієї причини потрібно уважно підійти до вибору гаманця. Слід вивчити кілька джерел перед тим, як прийти до висновку, що провайдер гаманця заслуговує довіри. У разі, якщо ви віддасте перевагу веб-гаманцям, бажано вибрати довірений сайт, перш ніж доручити йому зберігання ваших біткоїнів. Це як  вибір банку, перед тим як зробити внесок. Десктопний гаманець дає можливість самостійно управляти власним рахунком, але і тут слід упевнитися, що гаманець працює, як заявлено провайдером.Найкраще вибрати гаманець з відкритим кодом, написаний на тому ж коді і який має хороші відгуки на таких форумах як Bitcoinsubreddit і bitcointalk.org .

У зв’язку з тим, що проблеми захисту біткойнов від хакерів останнім часом набули значного поширення, багато біткоїн-компанії намагаються різними способами допомогти користувачам захистити свої цифрові монетки. В результаті, з’явилися різні варіанти гібридних гаманців . Зараз особливо перспективними в цьому  є підходи з використанням декількох підписів .

Безпека понад усе!

Якби мене запитали, чим захищені біткойни, я б сказав: «особистими ключами».  Звичайно, кожна частка мережі біткойн підкріплена іншими її частками. І якщо на будь-яку адресу було відправлено біткойни, відповідний їй особистий ключ набуває великої цінності. Візьмемо наступну біткойн- адресу:1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa. За цією адресою на даний момент знаходиться66.18011597 BTC. На момент написання статті ця сума $ 27,199.37Якби ви володіли особистим ключем від цього гаманця, ви могли б розпоряджатися цими $ 27,199.37 як своєю власністю.

rich-keyАле у вас його немає.  Ніхто немає цього особистого ключа, крім його власника.  А щоб підібрати цей ключ, потрібно, як ми знаємо, весь період існування Всесвіту і ще трішки.

Однак це не припинить спроб вкрасти такі ключі. Шахраї нишпорять по всьому світу в пошуках особистих ключів, застосовуючи найрізноманітніші методи. Вже існує цілий ряд шкідливих вірусів для розкрадання біткойн-гаманців . Як убезпечити ваш гаманець — це важлива тема  потребує багато часу для пояснення. Тому скажу лише одне — ніколи не забувайте пароль до свого електронного гаманця і періодично перевіряйте комп’ютер на наявність шкідливих вірусів, щоб переконатися, що ніяке шпигунське обладнання і віруси не отримали доступ до вашого біткоїн-гаманцю.

Висновки:

 

Отже, якщо ви володієте біткоїнами, ви володієте ексклюзивною можливістю додавати транзакції до публічного реєстру. Ваші біткоїни існують у вигляді невикористаних ВИХОДІВ,  зарахованих на біткоїн-адресу, яку ви згенерували вашим гаманцем — там вони чекають вашої наступної транзакції. Тільки ваш власний гаманець має можливість підписати наступні входи, тому що він зберігає ключ,  який більше ніхто не знає, окрім вас.

Повний публічний реєстр зберігається у вигляді численних копій на тисячах вузлів, розподілених по всьому світу. Саме тому біткойни неможливо заборонити або «зарегулювати».

symbolic-bitcoinНе варто сліпо довіряти надмірно спрощеним схемам і поясненням, які ви напевно зустрінете в інтернеті.  У популяризаторських статтях про bitcoin часто використовують фотографії та зображення реальних монет з логотипом bitcoin. Але тепер ви, мабуть, розумієте наскільки умовні такі ілюстрації. Вони зображують недостовірну інформацію, так як в дійсності біткоїни зберігаються і пересилаються.Втім, деякі матеріальні втілення біткойнів все ж існують, але їх функція збігається з функцією паперових гаманців.