Title: Различия в криптографии у разных БЧ Post by: Maximion on August 30, 2023, 01:37:43 PM я заметил что у разных БЧ и вообще БФТ протоколов используется часто свои особенные форматы адресов аккаунтов и форматы подписей
почему они не использовали просто криптографию биткоина? в чем различия? почему например в эфире адрес это 20 байт, если публичный ключ - 32, если 20 байт достаточно, то почему и именно 20, а не 16 к примеру? Title: Re: Различия в криптографии у разных БЧ Post by: csync on August 30, 2023, 01:58:33 PM Если коротко - потому, что так решили разрабы отображать массив байтов в виде строки.
Mы сейчас стандартизировали для своего проекта универсальный формат декларативной записи адресов: https://github.com/censync/go-mhda. Ибо BIP-44/84 и других недостаточно. В основном используется криптография на эллиптических кривых, и выбираются наиболее популярные кривые: secp256k1, ed25519, sr25519 (Polkadot), secp256r1 (Sui). Тут хорошая статья об этом: https://habr.com/ru/articles/335906/ На адрес может не влиять выбор эллиптической кривой, так как он является человекопонятным представлением адреса - части публичного ключа, который бывает полным (координаты X,Y), или укороченным (X координата и знак для Y координаты), представленным в бинарном формате. Поэтому разработчики могут добавлять префиксы, фиксировать длину, использовать различные алгоритмы сериализации массива байтов в строку. Title: Re: Различия в криптографии у разных БЧ Post by: Maximion on August 30, 2023, 03:21:41 PM Если коротко - потому, что так решили разрабы отображать массив байтов в виде строки. Mы сейчас стандартизировали для своего проекта универсальный формат декларативной записи адресов: https://github.com/censync/go-mhda. Ибо BIP-44/84 и других недостаточно. а как такие адреса используются? а то не могу понять зачем это Title: Re: Различия в криптографии у разных БЧ Post by: csync on August 30, 2023, 03:33:51 PM а как такие адреса используются? а то не могу понять зачем это Это необходимо для возможности универсального описания инструкций как к иерархической генерации ключей, так и для адресов, которые не используют иерархию. Пока что внутри нашего протокола, а также у партнеров. Как обкатаем, будем EIP формировать. Title: Re: Различия в криптографии у разных БЧ Post by: Maximion on August 30, 2023, 03:36:21 PM а как такие адреса используются? а то не могу понять зачем это Это необходимо для возможности универсального описания инструкций как к иерархической генерации ключей, так и для адресов, которые не используют иерархию. Пока что внутри нашего протокола, а также у партнеров. Как обкатаем, будем EIP формировать. а зачем иехахрическая генерация? для кросс-чейнов? Title: Re: Различия в криптографии у разных БЧ Post by: csync on August 30, 2023, 06:56:45 PM а как такие адреса используются? а то не могу понять зачем это Это необходимо для возможности универсального описания инструкций как к иерархической генерации ключей, так и для адресов, которые не используют иерархию. Пока что внутри нашего протокола, а также у партнеров. Как обкатаем, будем EIP формировать. а зачем иехахрическая генерация? для кросс-чейнов? Да, пишем кроссчейн кошелек с AirGap, и еще для некоторых подобных задач. Title: Re: Различия в криптографии у разных БЧ Post by: witcher_sense on August 30, 2023, 07:10:38 PM я заметил что у разных БЧ и вообще БФТ протоколов используется часто свои особенные форматы адресов аккаунтов и форматы подписей Для чего в адресе n-ое количество байт объяснить не сложно: адреса должны служить уникальными идентификаторами для участников транзакций, а чем меньше в адресе байт, то тем сложнее эту уникальность обеспечить. А вообще, сами адреса являются удобным представлением публичных ключей, для их "генерации" можно использовать любые хэш функции и алгоритмы декодирования. Для чего разные блокчейны используют разные эллиптические кривые тоже объяснить не сложно: криптовалютная индустрия является огромной площадкой для проведения экспериментов, то есть другие блокчейны используют различные технологии в попытке исправить недостатки первой криптовалюты. Если же использовать все то же самое, то исправить что-либо практически невозможно или просто экономически нерентабельно.почему они не использовали просто криптографию биткоина? в чем различия? почему например в эфире адрес это 20 байт, если публичный ключ - 32, если 20 байт достаточно, то почему и именно 20, а не 16 к примеру? Title: Re: Различия в криптографии у разных БЧ Post by: ~DefaultTrust on August 31, 2023, 01:01:45 PM я заметил что у разных БЧ и вообще БФТ протоколов используется часто свои особенные форматы адресов аккаунтов и форматы подписей 1. Далеко не все уверены, что криптография биткоина лучше других криптографий. Поэтому создатели блокчейнов склонны экспериментировать, искать более лучшие алгоритмы. почему они не использовали просто криптографию биткоина? в чем различия? почему например в эфире адрес это 20 байт, если публичный ключ - 32, если 20 байт достаточно, то почему и именно 20, а не 16 к примеру? 2. Публичный (приватный) ключ длиннее чем адрес, по той же самой причине, из-за которой двоичное число длиннее десятичного. Как правило, ключи записывают в шестнадцатиричном виде, а адреса в base64 или типа того. Хотя, кое-где, например в монеро, не заморачиваются, всё в хексах только кодируют. Title: Re: Различия в криптографии у разных БЧ Post by: A-Bolt on September 01, 2023, 08:37:30 AM почему например в эфире адрес это 20 байт, если публичный ключ - 32, Не только в Эфире, но и в Биткойне и, вообще, в большинстве криптовалют адрес - это 20 байт, которые являются результатом хеширования публичного ключа. Перед кодированием в формат Base58 или Bech32 к этим 20 байтам добавляются служебные байты, сигнализирующие о типе адреса, и байты контрольной суммы. Есть, правда, особые адреса - P2WSH, которые хранят 32 байта хеша скрипта, они кодируются в формате Bech32 и выглядят длиннее, чем адреса P2WPKH. если 20 байт достаточно, то почему и именно 20, а не 16 к примеру? Адрес Эфира - это 20 байт в виде шестнадцатеричной строки, в которой контрольная сумма может (но не обязана) кодироваться изменением регистра символов. А вот на вопрос почему именно 20 байт ответить сложнее. Можно было бы использовать все 32 байта хеша публичного ключа, но эти 32 байта пришлось бы хранить в каждой транзакции. Поэтому, для экономии места в транзакциях Накамото решил использовать для адресов более короткий 20-байтный хеш RIPEMD-160. С тех пор так и повелось: 32 байта - слишком много, 16 байт - слишком мало, а 20 байт - в самый раз. |