Принцип генерации красивого адреса TRON: случайные приватные ключи и поиск коллизий

Принцип генерации красивого адреса TRON: случайные приватные ключи и поиск коллизий

Как вычисляется адрес TRON

Красивый адрес TRON — это не результат изменения платформой, а обычный адрес TRON, который при генерации случайно совпал с нужным префиксом или суффиксом. Чтобы понять это, посмотрим на процесс появления адреса TRON.

  1. С помощью безопасного генератора случайных чисел создаётся 32-байтовый приватный ключ, обычно записываемый как 64 шестнадцатеричных символа.
  2. По приватному ключу с помощью эллиптической кривой secp256k1 вычисляется публичный ключ.
  3. К публичному ключу применяется хеш Keccak-256, берутся последние 20 байт.
  4. Перед этими 20 байтами добавляется 0x41 как идентификатор типа адреса TRON.
  5. Полные 21 байт кодируются через Base58Check, получается адрес из 34 символов, начинающийся с T.

В конце Base58Check добавляется 4-байтовая контрольная сумма, полученная двойным SHA-256 хешем, чтобы защитить от ошибок при переписывании и вводе. Весь процесс определяет взаимно однозначное соответствие между приватным ключом и адресом; именно приватный ключ реально означает контроль над активами.

Красивый адрес получается перебором, вероятность ниже, чем кажется

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

Вероятность можно посчитать по таблице Base58. В Base58 всего 58 символов, первый символ адреса всегда T, вероятность совпадения одного указанного символа — 1/58; совпадение двух подряд символов на заданных позициях — примерно 1/3364; для шести подряд указанных символов в среднем нужно сгенерировать около 38 миллиардов адресов. Если устройство способно выводить 100 тысяч адресов в секунду, для одного совпадения потребуется более ста часов непрерывной работы; точное время зависит от конкретной комбинации символов и целевого формата.

Поэтому основная стоимость красивого адреса — это вычислительные мощности и электроэнергия, а не алгоритмические ухищрения. Если кто-то утверждает, что может «технически» напрямую указать нужный адрес, скорее всего, он просто не понимает процесс генерации адресов.

И инструменты генерации, и покупка с доставкой таят ловушки

Если вы пишете собственный скрипт для генерации, приватный ключ не покидает ваше устройство, и риск относительно контролируем. С онлайн-генераторами всё наоборот. Они могут исправно генерировать красивые адреса и одновременно незаметно отправлять приватный ключ на сервер. Определить, безопасен ли инструмент, можно по следующим пунктам:

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

То же самое при покупке готового красивого адреса. Собеседник может показать скриншот адреса, но лучше после получения приватного ключа самостоятельно импортировать его в TronLink в офлайн-среде и проверить. Скриншот доказывает лишь, что адрес когда-то существовал, но не то, что имеющийся у вас ключ соответствует этому адресу.

Если не хотите сами настраивать среду и запускать перебор, можно выбрать готовый адрес в рынке красивых адресов TRON от Akali (oxc.us). Способы генерации, передачи и гарантии подробно описаны на соответствующих страницах сайта.

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

Хотите незабываемый красивый TRON-адрес?

В маркет→