Биткойн – деньги для всех - [10]

Шрифт
Интервал

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


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


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

Давайте рассмотрим наш изначальный пример с чековой книжкой более подробно, поскольку теперь мы понимаем идею открытого ключа. У меня есть 50 биткойнов на моем мобильном телефоне, и я хотел бы отправить их на мобильный телефон моего друга Джо. Сперва Джо нажимает кнопку на своем телефоне, чтобы сгенерировать новый биткойн-адрес. Хотя, на самом деле, он создает пару асимметричных ключей. Закрытый ключ хранится на телефоне Джо, а производная от открытого ключа (биткойн-адрес) отображается на экране и затем пересылается мне. Используя биткойн-адрес Джо, я начинаю транзакцию на своем телефоне, указывая сумму, которую хочу отправить ему. Затем я подписываю эту транзакцию цифровой подписью, используя мой закрытый ключ, и отправляю транзакцию в интернет. Помните, мы говорили, что выписать чек – это то же самое, что написать в банк письмо, разрешающее банку выделить средства с моего счета указанному человеку. В случае с биткойном, транзакция, в сущности, является публичным объявлением о передаче контроля над XBT 50, зарегистрированными на мой адрес, биткойн-адресу, который я указываю. Только мой закрытый ключ позволяет мне разрешить передачу биткойнов на адрес Джо, и я даю это разрешение, когда подписываю транзакцию цифровой подписью.

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


Рис. 3. Адам посылает Джо биткойны через биткойн-сеть

Глава 7. Хеширование

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

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

Решение этой задачи включает в себя криптографический хеш. Процесс хеширования получает нечто на вход, например, пароль, и пропускает эти входные данные через алгоритм, который выводит большое число, называемое «хеш». Хеш определяют две отличительные особенности. Во-первых, для одних и тех же входных данных процесс хеширования всегда возвращает одинаковый результат. Например, если вы вводите пароль, который пропускается через алгоритм хеширования, генерирующий определенное число, то каждый раз будет генерироваться одно и то же число. Во-вторых, хеширование – это однонаправленный процесс. Невозможно взять значение хеша и при помощи обратной разработки раскрыть, что было на входе. Эти два свойства и определяют криптографический хеш. Если бы процесс был обратим, он назывался бы не хешированием, а старым добрым шифрованием/дешифрованием, и это совершенно другая тема.

Оказывается, процесс хеширования значений имеет множество полезных особенностей в приложении к компьютерным наукам. Одной из задач, которые мы предлагали выше, была задача о безопасном хранении пользовательских паролей в системе. Вместо того, чтобы хранить пароль пользователя, мы сперва хешируем его пароль[8] и храним значение хеша. Когда пользователь пытается в следующий раз войти в систему при помощи пароля, нам не нужно знать, каким был его пароль, мы только должны знать, что пароль совпадает с тем, что был введен в прошлый раз. Другими словами, если хеш введенного пароля совпадает с хешем, хранящимся в базе данных, мы знаем, что пользователь ввел правильный пароль – хотя мы не знаем, и не хотим знать, что это был за пароль. Если позже наша система будет скомпрометирована, атакующий получит только список хешей паролей, необратимых и не имеющих никакой ценности.


Рекомендуем почитать
Доходное инвестирование

Что я могу ответить? Я такой же как вы, только начал инвестировать на несколько лет раньше (с 2002 года). Я начинал с "маленьких денег", но уже живу вместе со своей семьей на доходы со своего инвестиционного капитала. Я люблю докапываться до сути вещей и эта моя страсть может быть кому-нибудь полезна кроме меня. А я люблю быть полезным, потому что люблю людей и люблю пользу. Я люблю писать – поэтому я все это и пишу. Если быть кратким: я не собираюсь ни в этой рубрике, ни в целом на вокруг да около, ни в своих консультациях кого-то чему-то учить.


Инвестор за выходные. Руководство по созданию пассивного дохода

Вокруг инвестиций много мифов. Одни говорят, что это слишком сложно и 90 % инвесторов теряют деньги. Другие убеждают в обратном: инвестировать можно безопасно, никакие знания не нужны, а начать стоило еще вчера. Правда, как всегда, посередине: чтобы не прогореть в самом начале, стоит познакомиться с основными правилами в мире инвестиций. Но это действительно несложно – вы справитесь за несколько дней. Автор книги «Инвестор за выходные» Семён Кибало к 30 годам добился полной финансовой независимости благодаря пассивному инвестированию.


Фондовый рынок. Курс для начинающих

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


Стартап. Как начать с нуля и изменить мир

Александр Горный отобрал 300 самых показательных бизнесов со всего мира, проанализировал успехи и провалы, которые станут незаменимым учебником и источником вдохновения для предпринимателей и инвесторов. Экспертная оценка Александра разовьет в вас бизнес-чутье, которое поможет сориентироваться в потоке идей и проектов.


Игра Люцифера. Как один человек раскрыл «глобальный заговор», вышел из тюрьмы и стал миллионером

Брэдли Биркенфельд — тот самый человек, который первым раскрыл всю подноготную «черного» швейцарского банковского бизнеса. Книга «Игра Люцифера» рассказывает историю этого великого разоблачения.Показания Брэдли Биркенфельда привели к широкомасштабному расследованию деятельности швейцарского банка UBS и других банков, которые способствовали сокрытию от американского правительства огромных сумм налогов. Благодаря Биркенфельду казначейство США смогло вернуть в страну более 12 миллиардов долларов в виде налогов, штрафов и прочих санкций, наложенных на американских налоговых мошенников, — но сам он, как бывший сотрудник банка UBS, был осужден на 40 месяцев тюремного заключения, из которых отбыл 31 месяц.


Безопасность карточного бизнеса

В книге дано подробное описание политики безопасности на всех этапах жизненного цикла банковской карты — от цеха, где производится пластиковая заготовка будущей карты, до торговой и сервисной сферы, где карта принимается к оплате. Отдельно рассмотрены международные стандарты PSI DSS и практика их применения. Дана классификация карточных рисков, изложена методика оценки рисков эмитента с использованием мониторинга карточных транзакций. Подробно описаны виды карточного мошенничества и методы его профилактики.