Что такое контрольная сумма Ethereum-адреса?
Контрольная сумма Ethereum-адреса — это смешанный регистр, определённый в EIP-55: 40 hex-символов хешируются Keccak-256, и каждая буква переводится в верхний регистр, если соответствующий полубайт хеша равен 8 или больше. Сам адрес не меняется; схема регистра позволяет любому кошельку обнаружить опечатку без обращения к блокчейну.
Как работает EIP-55
- Возьмите 40 hex-символов адреса без 0x в нижнем регистре.
- Вычислите Keccak-256 от этих 40 ASCII-символов (не от байтов).
- Для каждой позиции: если символ — буква и соответствующая hex-цифра хеша равна 8 или больше, сделайте её заглавной.
Пример: 0xfb6916095ca1df60bb79ce92ce3ea74c37c5d359 превращается в 0xfB6916095ca1df60bB79Ce92cE3Ea74c37c5d359. Поскольку заглавные буквы зависят от хеша всей строки, изменение любой цифры меняет набор заглавных букв, и одиночная опечатка обнаруживается.
Когда нужна форма с контрольной суммой
- Инструменты для смарт-контрактов и SDK, такие как ethers.js и web3.py, отклоняют адреса в смешанном регистре с неверной контрольной суммой, а некоторые требуют ввод именно с контрольной суммой.
- Белые списки и таблицы выплат. Нормализация каждого адреса к EIP-55 убирает дубликаты, отличающиеся только регистром, и делает ошибочные записи очевидными.
- Публикация адреса для пожертвований или депозита. Форма с контрольной суммой позволяет кошелькам ваших посетителей обнаруживать ошибки при переписывании.
Пакетный режим
Вставляйте по одному адресу в строке. Таблица показывает каждый ввод, его форму с контрольной суммой и статус: контрольная сумма верна, без контрольной суммы (один регистр) или контрольная сумма не совпадает. Кнопка копирования внизу позволяет забрать все преобразованные адреса сразу.
Адрес уже проверен? Создайте платёжный код в генераторе QR-кода Ethereum или генераторе QR-кода USDT ERC-20.