Найти в Дзене
Bit Bro

3.6 Блокчейн и деньги: Публичный и приватный ключ 💰

Публичный и приватный ключ 🔑 Вспомним картинку с Алисой и Бобом, показывающую упрощённую схему ассиметричного шифрования: Боб хочет передать сообщение Алисе и пишет: "Привет, Алиса." Но Боб стесняется и хочет зашифровать это сообщение от посторонних глаз. Он делает это с помощью публичного (открытого) ключа Алисы. Затем он отправляет сообщение, а Алиса расшифровывает его с помощью своего приватного (личного) ключа. Вы можете подумать, что же это, чёрт побери, за открытые и закрытые ключи? Что это вообще такое? В криптографии открытые и закрытые ключи — это просто такие методы шифровки и расшифровки информации. Это, конечно, может сейчас звучать немного не доходчиво, но, если мы вернемся назад, и вспомним те механизмы, которые использовали римляне (Скитала или Сциталла), или вспомним тот шифр, который использовали немцы в машине "Энигма", то поймём, что всё это являлось симметричной криптографией. Почему? Потому что у обеих сторон был один и тот же ключ к разгадке шифра! В 70-х годах и
Перевод лекций о блокчейне и криптовалютах пост председателя Комиссии по ценным бумагам и биржам США (SEC) Гари Генслера в университете MIT осенью 2018 г.
Перевод лекций о блокчейне и криптовалютах пост председателя Комиссии по ценным бумагам и биржам США (SEC) Гари Генслера в университете MIT осенью 2018 г.

Публичный и приватный ключ 🔑

Вспомним картинку с Алисой и Бобом, показывающую упрощённую схему ассиметричного шифрования:

Упрощённая схема ассиметричного шифрования
Упрощённая схема ассиметричного шифрования

Боб хочет передать сообщение Алисе и пишет: "Привет, Алиса." Но Боб стесняется и хочет зашифровать это сообщение от посторонних глаз. Он делает это с помощью публичного (открытого) ключа Алисы. Затем он отправляет сообщение, а Алиса расшифровывает его с помощью своего приватного (личного) ключа.

Вы можете подумать, что же это, чёрт побери, за открытые и закрытые ключи? Что это вообще такое?
Открытые и закрытые ключи — это методы шифровки и расшифровки информации
Открытые и закрытые ключи — это методы шифровки и расшифровки информации

В криптографии открытые и закрытые ключи — это просто такие методы шифровки и расшифровки информации. Это, конечно, может сейчас звучать немного не доходчиво, но, если мы вернемся назад, и вспомним те механизмы, которые использовали римляне (Скитала или Сциталла), или вспомним тот шифр, который использовали немцы в машине "Энигма", то поймём, что всё это являлось симметричной криптографией. Почему? Потому что у обеих сторон был один и тот же ключ к разгадке шифра!

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

Когда создаётся пара ключей, то создаётся два ключа: Public Key (публичный ключ) и Private Key (приватный ключ). Создаются они на основе одного и того же рандомного числа в одно и то же время. У биткоин сети не очень хорошо с генерацией рандомных чисел, поэтому даже было несколько единичных случаев, когда кошелёк взламывали.

Бумажный Биткоин-кошелёк с приватным ключом
Бумажный Биткоин-кошелёк с приватным ключом

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

Если создание случайных чисел для приватного и публичного ключа такой важный процесс, то делает ли его какая-то третья сторона с каким-то специальным ПО или нет?

Ответ: "Да, это делает третья сторона со своим ПО". Одни программы очень плохо с этим справляются. Если есть более производительное оборудование, то лучше.

Например, Биткоин для генерации случайных чисел использует так называемый "Алгоритм Цифровой Подписи на Эллиптической Кривой" — ECDSA (Elliptic Curve Digital Signature Algorithm).

График функции "Алгоритм Цифровой Подписи на Эллиптической Кривой" — ECDSA (Elliptic Curve Digital Signature Algorithm)
График функции "Алгоритм Цифровой Подписи на Эллиптической Кривой" — ECDSA (Elliptic Curve Digital Signature Algorithm)

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

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

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

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

Подписывайтесь и оставляйте комментарии!)

Присоединяйся и становись ещё успешнее!
Присоединяйся и становись ещё успешнее!

Теги: #bitcoin #crypto #blockchain #money #технологии #криптовалюта #блокчейн #финансы #деньги #сатоши