TGStat
TGStat
Введите текст для поиска
Расширенный поиск каналов
  • flag Russian
    Язык сайта
    flag Russian flag English flag Uzbek
  • Вход на сайт
  • Каталог
    Каталог каналов и чатов Региональные подборки Тематические подборки Платные каналы Поиск каналов
    Добавить канал/чат
  • Рейтинги
    Рейтинг каналов Рейтинг чатов Рейтинг публикаций
    Рейтинги брендов и персон
  • Аналитика
  • Поиск по публикациям
  • Мониторинг Telegram
  • Продвижение
    Реклама через Яндекс Бизнес Реклама в каналах через TGStat Agency Реклама на сайте TGStat.ru
Большая история крипты

23 Aug, 14:51

Открыть в Telegram Поделиться Пожаловаться

Зачем каждой транзакции нужен свой номер
Допустим, ты подписал перевод и отправил его в сеть.
Что помешает кому-нибудь взять ту же самую подписанную транзакцию и отправить её ещё десять раз?
Если система видит корректную подпись, разве она не должна каждый раз выполнять команду?
Именно здесь появляется маленькое поле под названием nonce.
Если совсем просто, nonce — это последовательный номер операции конкретного аккаунта.
Первая транзакция получает один номер, следующая — следующий и так далее.
Представь обычную чековую книжку.
Ты выписал чек №25 на определённую сумму. Банк видит, что этот чек уже использован. Если кто-то принесёт его ещё раз, система не должна списать деньги повторно.
Примерно ту же проблему решает nonce.
Для аккаунта Ethereum сеть хранит счётчик. Транзакция должна иметь правильный следующий номер. Когда она выполняется, счётчик меняется.
Поэтому одну и ту же старую подписанную команду нельзя бесконечно повторять как новую операцию.
Но nonce делает ещё кое-что важное — создаёт порядок.
Допустим, аккаунт последовательно отправил транзакции №40, №41 и №42.
Сеть не может сначала нормально выполнить №42, забыв про №40 и №41. Состояние аккаунта должно меняться последовательно.
Представь очередь талонов в государственном учреждении.
На табло сейчас номер 40. Человек с талоном 42 уже пришёл и сидит в зале, но сначала система должна разобраться с предыдущими номерами.
Из-за этого иногда возникает странная ситуация: одна зависшая операция способна задержать следующие транзакции того же аккаунта.
Сами следующие операции могут быть вполне корректными. Проблема в том, что перед ними отсутствует нужное звено последовательности.
И здесь становится видно, зачем nonce вообще встроен на уровень аккаунта.
Блокчейн должен решить сразу две задачи:
— не позволять повторно исполнять старую подписанную транзакцию;
— точно понимать порядок изменений одного аккаунта.
Одна маленькая цифра помогает делать и то и другое.
Причём nonce — это хороший пример того, как блокчейн обеспечивает безопасность не одной гигантской системой защиты, а множеством небольших правил.
Подпись отвечает на вопрос:
«Действительно ли владелец ключа разрешил операцию?»
Nonce добавляет второй:
«А действительно ли именно эта операция сейчас следующая?»
Вместе они превращают набор цифровых команд в последовательную историю.
#nonce #транзакции #Ethereum #блокчейн #большаяисториякрипты

6.4k 0 0
Каталог
Каталог каналов и чатов Подборки каналов Поиск каналов Добавить канал/чат
Рейтинги
Рейтинг каналов Telegram Рейтинг чатов Telegram Рейтинг публикаций Рейтинги брендов и персон
API
API статистики API поиска публикаций API Callback
Наши каналы
@TGStat @TGStat_Chat @telepulse @TGStatAPI
Почитать
Академия TGStat Исследование Telegram 2019 Исследование Telegram 2021 Исследование Telegram 2023
Контакты
Справочный центр Поддержка Почта Вакансии
Всякая всячина
Пользовательское соглашение Политика конфиденциальности Публичная оферта
Наши боты
@TGStat_Bot @SearcheeBot @TGAlertsBot @tg_analytics_bot @TGStatChatBot