Читать онлайн «Адам Теппер. Биткойн – деньги для всех (ЛП)». Страница 6

Автор Теппер Адам

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

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

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

Часть II. Как работает биткойн

Глава шестая. Асимметричные ключи

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

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

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

Если мы хотим понять биткойн на более глубоком, чем аналогия, уровне, то мы должны уяснить идею асимметричного шифрования (также известного как шифрование с открытым ключом). Асимметричное шифрование – это ключевой элемент биткойна, и без него биткойн не мог бы существовать. Идея асимметричного шифрования не нова, и фактически оно является составной частью безопасности многих программных систем. Мы используем асимметричное шифрование каждый раз, когда посещаем безопасный (SSL) сайт, например, сайт интернет-банка.

Прежде чем я объясню, что такое асимметричное шифрование, давайте представим такую задачу. Скажем, Алиса в Австралии хочет отправить письмо Бобу в Англию. Содержимое письма – большой секрет. Как Алисе послать письмо Бобу без риска, что по дороге кто-нибудь прочитает это письмо? Без асимметричной криптографии достичь этого можно только единственным способом, когда Алиса и Боб изначально понимают, как закодировать письмо. Тогда письмо будет зашифровано, и Боб будет знать, как его расшифровать, когда он его получит. Но что если у Алисы и Боба нет заранее подготовленного ключа для шифра; что если Боб никогда до этого не встречал Алису? В таких обстоятельствах без асимметричного шифрования Алиса не сможет безопасно отослать письмо Бобу.

Таким образом, это приводит нас к асимметричной криптографии и тому способу, которым она решает эту задачу. Некоторое время назад несколько талантливых математиков разработали способ, при помощи которого можно генерировать пары ключей, математически связанных друг с другом. В этом контексте можно представлять ключ как очень большое число – число с несколькими сотнями цифр {6}. Эти ключи называются «открытый ключ» и «закрытый ключ», или вместе — асимметричные ключи. Оказывается, у этих ключей есть несколько очень полезных свойств!

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

Вы используете технологию асимметричной криптографии каждый день, когда используете Wi-Fi, Bluetooth или безопасные вебсайты, где данные зашифрованы, чтобы предотвратить то, что называется атакой «человек посередине». Другими словами, асимметричная криптография используется, чтобы предотвратить перехват вашей беседы, письма или транзакции кем-либо еще.

Итак, теперь мы знаем, как Алиса может безопасно послать письмо Бобу, но, когда Боб получит письмо, как он может быть уверен, что письмо отправила Алиса, а не кто-нибудь другой? Оказывается, асимметричные ключи могут решить и эту проблему. Алиса также генерирует пару ключей: открытый и закрытый ключ. Как и Боб, Алиса раскрывает свой открытый ключ всему миру. Алиса может подписать содержимое письма «цифровой подписью», используя свой закрытый ключ. Затем, используя открытый ключ Алисы, Боб может определить, что письмо действительно было подписано Алисой, поскольку никто другой не может подписать письмо без доступа к закрытому ключу Алисы. Таким образом, письмо Алисы может прочитать только Боб, и Боб может удостовериться, что письмо написала именно Алиса.

Это очень полезная и мощная идея – она до сих пор впечатляет меня сегодня, несмотря на повседневное ее использование. Вы можете оценить ее полезность для военных коммуникаций, и, на самом деле, многие годы Соединенные Штаты пытались остановить экспорт программ, которые используют сильную асимметричную криптографию.

Адам Теппер. Биткойн – деньги для всех (ЛП) - img_2.png

Рис. 2. Асимметричное шифрование. Алиса посылает подписанное зашифрованное сообщение Бобу.

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