Тестирование символьного анализатора для блокчейна TON
-
-
40 мин
Купил новый токен на кучу денег, а потом не смог продать; переслал деньги другу на кошелек, а они посередине испарились — типичные истории пользователей криптовалюты. Они не задумываются, что под капотом скама — смарт-контракты, которые умело маскируются под честные кошельки. Кто протестирует их надежность, кто проверит наличие уязвимостей и возможности потерять деньги?
Современный тренд в тестировании — автоматизация. Большинство упомянет LLM, кто-то вспомнит про фаззинг. В научной среде любят формальные методы, и мы не исключение; наш выбор — символьное исполнение. Но как тестировать такой анализатор?
Простые юнит-тесты здесь не помогут. Мы пишем искусственные контракты для проверки уязвимостей и гоняемся на реальных для проверки работоспособности. Но давайте честно: изобретать это сложно, на реальных контрактах надо оптимизировать работу, а дебажить всё это просто ад.
В докладе расскажем о взлётах и падениях в создании и тестировании символьного анализатора для блокчейна TON.