Обложка канала

CRYPTOLOID

NFT | Криптовалюты | обзоры | инвестиции

CRYPTOLOID

3 года назад
Открыть в
#рефлексия Про то как работает сид-фраза подробно мы еще будем обсуждать в видео. Но давайте максимально кратко. Доступ к управлению средствами в блокчейне осуществляется с помощью транзакций, которые мы подписываем с помощью секретного ключа (не кому его не показываем). Откуда берется секретный ключ? Секретный ключ для каждой монеты (например счет Bitcoin) выводится из единого мастер ключа по правилам построения путей деривации (алгоритм BIP44). По этим правилам мы всегда разворачиваем одно и тоже дерево счетов. То есть достаточно иметь один мастер ключ и по правилам BIP44 можно создавать/восстанавливать бесконечное множество секретных ключей (счетов) в любой монете. Из каждого секретного ключа можно вывести публичный ключ, а публичный ключ можно преобразовать в адрес счета. Ну а на адрес счета или адрес кошелька можно переводить средства. Либо можно взаимодействовать с децентрализованными приложениями (бесконечным их разнообразием), создавая бесконечное количество учетных записей/аккаунтов. Это как помнить данные одной кредитной карты и можно из этих данных восстанавливать неограниченное количество карт неограниченного числа банков, неограниченного числа счетов. Как получить мастер ключ? Это длинное число, выводится по алгоритму BIP39 из сид фразы (например из 12 слов). Сид-фразу также называют мнемонической (простой для запоминания). Вот мастер ключ (512 битное число):
xprv9zoTJPtmnCStghfg2nCw1yDQv1zeuMJtzP6rBdAyWBfdSR2G8QBqM5hUXtf7GkTwVUKwwptrz3kJiNLqr7ZQwxXLc2NpMTGj9Um9kS6XkBW

Ну как? Легко его запомнить? А теперь прогоним его через BIP39:
income ridge thrive sphere goat lyrics trouble sort indoor wise invest often

Причем словарь состоит всего из 2048 слов. Достаточно запомнить эти 12 слов и мы получаем доступ к бесконечному количеству наших счетов во всех монетах. А как получить эти 12 слов? С самого начала алгоритм BIP39 генерирует энтропию (случайное число). В зависимости от требуемого количества слов генерируется число заданной длинны. Например для 12 слов число будет длинной в 128 бит + 4 бит контрольной суммы. Что такое бит и при чем тут число? В цифровом мире любое число представлено в виде 0 или 1, есть ток или нет - это и есть бит информации. 128 битное число состоит из 128 - 0 и 1: 010111101101010001...000111010101010 Энтропия это случайность, чем выше энтропия тем более безопасный ключ. Пример плохой энтропии: 000111000111000111...000111000111000 Такую энтропию можно предсказать, а значит подобрать мастер ключ к чужим счетам. А зачем нужна контрольная сумма? Это чтобы не допустить ошибки в словах, без контрольной суммы и ее проверки, любое слово можно перепутать при восстановлении счетов. И математически это допустимо, так как это будет просто другой мастер ключ и другой дерево счетов. Но не хотелось бы проверять, те это счета или нет, а вдруг не те, а вдруг каждый раз ошибаемся в слове и монеты переводим всегда в разные кошельки? Для этого и нужна проверка по контрольной сумме. Она не даст нам неверно ввести слова и при этом сохраняется энтропия - это гениально.