Как работает криптография в Биткойне

Вы впервые услышали о биткойне, какие ваши мысли? Биткойн это афера, пирамида, МММ, недоверие, мошенничество?
Представьте, если взять яблоко в руку, вытянуть руку вперед и отпустить яблоко — что произойдет? У вас есть сомнения, недоверие по поводу событий, которые произойдут с яблоком? Вы уверены, что яблоко упадет на землю, вы имеете опыт, знания законов природы. Знания дают уверенность.
Так же и с биткойном. Доверие и уверенность в безопасности системы Биткойн возникают тогда, когда знаешь как она работает, какими свойствами и полезными функциями обладает система Биткойн.

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

Андреас Антонопулос отвечает на вопрос Как работает криптография (шифрование) в системе Биткойн.

Подписывайтесь на youtube канал Школи Биткойн

Вопрос Антонопулосу: «Могли бы Вы, более подробно объяснить криптографические решения цифровых подписей в системе Биткойн?»
Хорошо. Постараюсь объяснить как можно лучше.
Криптография, используемая в Биткойн, и почти во всех других криптографических валютах основана на разделе математики, который называется «эллиптическая криптография», и этот раздел был выбран для решения данной задачи, поскольку в области арифметики эллиптическая кривая работает почти так же, как арифметика в действительных числах или целых числах с важной особенностью. Сложения и умножения точно такие же, как и в простой арифметике, но здесь нет вычитания и деления, поэтому, если вы умножите два числа вместе, вы можете легко получить результат, но если вы попробуете разделить результат на одно из чисел, у вас ничего не получится, и единственный способ найти исходные числа — перебрать все возможные комбинации. Перебор вариантов — основа криптографии, которая работает на эллиптических кривых. Таким образом, это эффективная односторонняя функция, и этот метод криптографии используется во многих способах шифрования.

Теперь вы можете подумать: «Как можно создать одностороннюю функцию?» Думаю, что лучший пример, который я видел, и вы также можете найти это видео в YouTube — это пример смешивания красок. Допустим: я беру синий и желтый цвета. Легко смешать эти два цвета вместе? Очень легко. Я могу смешать их вместе, и получу оттенок зеленого. Теперь, если я покажу вам этот оттенок зеленого, вы сможете точно сказать, какие два оттенка синего и желтого я использовал? Не сможете. Если бы вы покрасили свой дом и придя в магазин сказали, чтобы вам подобрали такие же цвета которыми окрашены стены, то людям сложно это сделать, потому что они не знают, какие краски вы смешивали, чтобы получить ваш цвет.

Эллиптическая кривая работает подобным образом. Цифровые подписи используют некоторые хитрости сложения и умножения, зная, что деление невозможно, чтобы доказать, что человек, который создал цифровую подпись является владельцем приватного ключа, но не раскрывает его. Вы создаете трехзначную подпись, которая генерирует число и это число является результатом умножения и добавления случайных чисел, а ваш приватный ключ создает новый номер, который мы можем проверить, сравнив его с публичным ключом, который был создан на основе приватного ключа, но мы не сможем узнать приватный ключ.
Цифровая подпись позволяет доказать, что вы знаете секретный ключ, и любой, у кого есть ваш публичный ключ, может проверить подпись, связанную с этим ключом, чтобы знать, что подпись сделана вашим приватным ключом, но невозможно узнать, какой ваш приватный ключ. Таким образом, смысл цифровых подписей — это доказательство подписи приватным ключом не раскрывая его. Алгоритм, который называется ECDSA, или алгоритм цифровой подписи эллиптической кривой, подробно описан во многих материалах, вы также можете найти его в 6 главе книги «Освоение Биткойна.» Например, в github, если вы посмотрите раздел для математики ECDSA, вы найдете краткое описание формулы.
Для того, чтобы создать цифровую подпись, нужно создать случайный номер, и мы используем этот номер, который называется «эфемерный закрытый ключ» для создания точки на эллиптической кривой путем умножения его с точкой которая генерируется. Затем мы берем значение Х этой точки, добавляем к нему наш известный приватный ключ и умножаем его на наш известный приватный ключ, а затем добавляем результат к хешу сообщения, создается определенное значение, которое мы используем как часть нашей подписи.

Если вы не разбираетесь в уравнениях — ничего страшного. Важно понимать следующее: приватный ключ — это число, публичный ключ — это точка на эллиптической кривой, которая создается путем умножения приватного ключа на определенную другую точку, которая называется «точкой генератора». И пока вы знаете приватный ключ, вы можете создать публичный ключ. Если вы знаете публичный ключ, вы не сможете получить приватный ключ. На этом и основана безопасность системы Биткойн.

Как работает криптография в Биткойне обновлено: 9 сентября, 2018 автором: SchBit