Стандарты смарт-контрактов для выпуска стейблкоинов в Гонконге: Соответствие, безопасность и лучшие практики

Руководство по реализации смарт-контрактов для выпускников стейблкоинов в Гонконге

Первая часть Инфраструктура и стратегии соблюдения норм

1. Выбор базового распределенного реестра

Руководство по реализации

  • Приоритет на зрелые публичные цепочки: Рекомендуется в первую очередь использовать такие зрелые и высокобезопасные публичные блокчейны, как Ethereum, Arbitrum и др. Эти сети благодаря своей проверенной устойчивости, обширной сети валидаторов и постоянному общественному контролю обладают естественными преимуществами. Их высокие затраты на атаки могут напрямую ответить на обеспокоенность регуляторов по поводу защиты от атак 51% и обеспечения окончательности транзакций.

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

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

Техническое руководство: Руководство по внедрению смарт-контрактов для эмитентов стейблкоинов в Гонконге

2. Стандарт основного токена и расширение функций регулирования

Руководство по реализации

  • Базовый стандарт: использование ERC-20 в качестве базового стандарта для обеспечения однородности токенов и их взаимозависимости в более широких экосистемах.

  • Расширение функционала: необходимо интегрировать следующие функциональные модули для выполнения требований регулирования:

    • Pausable:используется для реализации глобальной приостановки и восстановления всех токенов, что является основным инструментом для реагирования на серьезные события безопасности.

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

    • Сжигаемые: предоставляет функцию уничтожения токенов. В конкретной реализации эта функция будет строго контролироваться, а не разрешать любому пользователю уничтожать токены по своему усмотрению.

    • Freezable: используется для приостановки функции перевода токенов на определенные аккаунты ( в случае подозрительных сделок ).

    • Whitelist:для реализации дополнительных мер безопасности, только адреса, прошедшие дью-дилидженс и одобренные, могут участвовать в основных операциях (, таких как получение новых токенов ).

    • Чёрный список: используется для реализации торговых запретов на адреса, связанные с незаконной деятельностью (, такой как отмывание денег, мошенничество ), запрещая им отправлять/получать токены. Управление чёрным списком должно быть интегрировано с системой AML/CFT, обеспечивая мониторинг подозрительных транзакций в режиме реального времени.

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

3. Основные модели соблюдения: выбор черного и белого списков

Руководство по реализации

  • Режим черного списка ( по умолчанию рекомендуемое решение ):

    • Преимущества: обладает высокой практичностью, может бесшовно взаимодействовать с обширной децентрализованной финансовой (DeFi) экосистемой, предоставляя пользователям более низкий порог входа и более плавный опыт.

    • Недостатки: соответствие требованиям в значительной степени зависит от мощных,实时链下监控分析能力, чтобы及时发现并封堵非法地址.

    • Способ реализации: в функции перевода смарт-контрактов добавить логическую проверку, чтобы убедиться, что адреса отправителя (from) и получателя (to) не занесены в черный список.

  • Режим белого списка

    • Преимущества: предоставляет высший уровень контроля AML/CFT, реализует профилактику до, а не восстановление после.

    • Недостатки: значительно ограничивает универсальность и уровень принятия стейблкоина, создает огромные операционные затраты на управление белым списком, что может затруднить его превращение в широко принимаемое средство обмена.

    • Способ реализации: в функции перевода смарт-контрактов добавить логическую проверку, требующую, чтобы адреса отправителя (from) и получателя (to) обязательно находились в белом списке. Рекомендуется разработать специализированную веб-систему для пользователей для упрощения операций.

Вторая часть реализация смарт-контрактов

1. Проектирование детализированной системы контроля доступа

Руководство по реализации

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

  • MINTER_ROLE: отвечает за обработку стейблкоинов (mint) операций, включая создание единиц токенов после получения действительного запроса на выпуск и обеспечение соответствия увеличения эмиссии и резервного активного пула.

  • BURNER_ROLE: отвечает за обработку уничтожения стейблкоинов (burn), включая уничтожение токенов после получения действительного запроса на выкуп.

  • PAUSER_ROLE: отвечает за приостановку (pause) операций со стейблкоином, например, временно останавливая переводы, выпуск токенов или выкуп при обнаружении аномальных событий (, таких как угроза безопасности ).

  • RESUME_ROLE:отвечает за восстановление операции (resume) стейблкоина, например, повторное включение переводов, выпуска или выкупа после решения ситуации с приостановкой.

  • FREEZER_ROLE: отвечает за заморозку ( freeze ) и разблокировку ( remove freeze ) определенных кошельков или токенов, например, временное замораживание активов при обнаружении подозрительной активности (, такой как риск отмывания денег ).

  • WHITELISTER_ROLE: отвечает за управление белым списком (whitelist), включая добавление или удаление разрешенных адресов кошельков, например, ограничение выпуска токенов только на адреса из белого списка.

  • BLACKLISTER_ROLE: отвечает за управление черным списком (blacklist) и удаление из черного списка (remove blacklist), например, добавление подозрительных кошельков в черный список для предотвращения переводов.

  • UPGRADER_ROLE: Если используется модель с возможностью обновления, отвечает за обновление (upgrade) смарт-контрактов, например, обновление кода контракта для исправления уязвимостей или добавления функциональности.

2. выпуск ( токенов ) механизм

Руководство по реализации

Предварительная проверка: перед выполнением выпуска токена функция должна проверить, находится ли целевой адрес to в черном списке или в замороженном состоянии.

Операционный процесс:

  • Оффлайн дью дилидженс: Клиент завершает все необходимые оффлайн процедуры идентификации личности (KYC) и дью дилидженс (CDD). Кроме того, в соответствии с требованиями AML/CFT, для установления деловых отношений или проведения случайных транзакций свыше установленного порога (, например, 8,000 гонконгских долларов ), необходимо выполнить CDD.
  • Получение средств: Клиент переводит эквивалентные средства в фиатной валюте на банковский счет, указанный эмитентом.
  • Внутренняя проверка: внутренние системы эмитента подтверждают получение средств и соответственно обновляют бухгалтерские записи резервных активов.
  • Исполнение на блокчейне: Операционная команда создает и подписывает многофункциональную транзакцию, вызывая функцию выпуска токенов смарт-контрактов, отправляя новые выпущенные стейблкоины на кошелек клиента, предварительно зарегистрированный и проверенный.

3. Выкуп ( механизм уничтожения )

Руководство по реализации

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

Операционный процесс:

  • Внецепочечный запрос: Пользователь подает запрос на выкуп вне цепи через платформу эмитента. Перед обработкой запроса эмитент должен провести надлежащую проверку клиентов (CDD).
  • Системная проверка: система эмитента проверяет действительность запроса на верификацию и проверяет, завершил ли пользователь соответствующие операции по переводу токенов в блокчейне.
  • Фиатные платежи: Эмитент переводит эквивалентную сумму фиатной валюты на банковский счет, зарегистрированный и проверенный пользователем.
  • Уничтожение на блокчейне: после подтверждения успешного перевода фиатной валюты многоподписной кошелек с правами BURNER_ROLE вызывает функцию уничтожения, чтобы уничтожить соответствующее количество токенов из указанного адреса.

4. Введение экстренного контроля: приостановление и заморозка

Руководство по реализации

Приостановка функции: доступна только для многоподписного кошелька, обладающего PAUSER_ROLE, для глобальной приостановки функций смарт-контрактов. Условия срабатывания включают в себя обнаружение аномальных событий (, таких как атака на сеть или несоответствие резервных активов ), необходимо одобрение совета директоров или высшего руководства. Восстановление функции осуществляется независимой RESUME_ROLE для обеспечения разделения обязанностей.

Функция заморозки: вызывается многоподписным кошельком с ролью FREEZER_ROLE, используется для ограничения переводов для определенных адресов. Условия срабатывания включают подозрительную активность (, такую как уведомление AML или судебный приказ ), необходимо выполнить оффлайн-проверку. Размораживание обрабатывается той же ролью, но требуется дополнительная проверка аудита, публикация соответствующих уведомлений, чтобы предотвратить злоупотребления.

5. Фильтрация адресов и механизм черного списка

Руководство по реализации

  • Реализация функции: функция для добавления и удаления из черного списка, которая может вызываться только мультиподписным кошельком, обладающим BLACKLISTER_ROLE.
  • Ограничение перевода: запрещено передавать/получать токены с адресов, внесённых в чёрный список.
  • Процесс операции: инструмент анализа выдает сигнал тревоги, запускает внутреннюю проверку соответствия, после подтверждения командой по соблюдению норм, транзакция на добавление в черный список инициируется мультиподписным кошельком BLACKLISTER_ROLE.

6. Смарт-контракты: возможность обновления

Руководство по реализации

  • Модель прокси: для смарт-контрактов типа EVM можно использовать зрелую модель прокси ERC-1967 для достижения возможности обновления.
  • Контроль доступа: функция обновления должна вызываться только многофункциональным кошельком, обладающим ROLE_UPGRADER.
  • Процесс управления изменениями: в соответствии с требованиями регулирования, перед предложением любых обновлений необходимо завершить строгий процесс управления изменениями, который включает в себя полную независимую проверку безопасности новых логических смарт-контрактов третьей стороной.

7. Журнал событий в блокчейне для анализа и отчетности

Руководство по реализации

Помимо требований стандарта ERC-20 к переводу (Transfer) и одобрению (Approval), контракт должен определить и выпустить пользовательские события для всех управленческих действий и изменений состояния:

  • Выпуск/Сжигание ( Minted/Burned ) событие
  • Приостановка/Восстановление(Paused/Resume)событие
  • Добавление/удаление из черного списка ( BlacklistAdded/BlacklistRemoved ) событие
  • Добавление/удаление из белого списка ( WhitelistAdded/WhitelistRemoved ) событие
  • Заморозка/разморозка адреса (AddressFrozen/AddressUnfrozen) событие
  • Изменение привилегий (RoleGranted/RoleRevoked) событие
  • обновление смарт-контрактов (Upgraded) событие

Третья часть Операционная безопасность и управление жизненным циклом

1. Архитектура управления безопасными ключами

Руководство по реализации

  • Генерация ключей: должна быть завершена через "ритуал ключей" (key ceremony), который документально зафиксирован, в физически безопасной среде с полным изолированием от внешних сетей.
  • Хранение ключей: Все управленческие роли должны контролироваться мультиподписными кошельками. Приватные ключи, используемые подписчиками этих мультиподписных кошельков, должны храниться в HSM или других безопасных аппаратных кошельках. Ключи, соответствующие наиболее критическим ролям, должны храниться в системе с воздушным зазором, физически изолированной от любых онлайн-сред.
  • Использование ключей: необходимо строго соблюдать политику многофакторной подписи. Для подписания транзакций, связанных с "важными закрытыми ключами", может потребоваться личное присутствие соответствующих лиц.
  • Резервное копирование и восстановление: резервное копирование ключевых шардов или мнемонических фраз должно храниться в нескольких безопасных и географически распределенных местах на территории Гонконга ( или в местах, одобренных регулирующими органами ), и должно быть упаковано с защитой от несанкционированного доступа.

2. Полный процесс развертывания и мониторинг во время выполнения

Руководство по реализации

Перед официальным развертыванием необходимо составить и строго соблюдать "список проверок перед развертыванием":

  • Полное тестирование: обеспечить покрытие юнит-тестов более 95%, покрытие основного кода 100%, обеспечить вывод отчета о покрытии юнит-тестов.
  • Независимый аудит: завершите независимый аудит безопасности, предоставленный по крайней мере одной, лучше двумя авторитетными аудиторскими компаниями.
  • Заморозка кода: после завершения аудита код замораживается до запуска, никаких изменений в коде больше не вносится.
  • Регрессионное тестирование: перед официальным развертыванием выполните модульные тесты и проведите регрессионное тестирование.
  • Коммерческое согласование: получение официального согласования внутренней команды по соблюдению правил, подтверждение того, что логика контракта соответствует всем соответствующим требованиям регулирования.
  • Деплоймент: подготовьте подробный скрипт развертывания и протестируйте его в тестовой сети, полностью идентичной основной сети.
Посмотреть Оригинал
На этой странице может содержаться сторонний контент, который предоставляется исключительно в информационных целях (не в качестве заявлений/гарантий) и не должен рассматриваться как поддержка взглядов компании Gate или как финансовый или профессиональный совет. Подробности смотрите в разделе «Отказ от ответственности» .
  • Награда
  • 5
  • Поделиться
комментарий
0/400
consensus_whisperervip
· 9ч назад
Черт, что интересного в Блокчейн консорциума?
Посмотреть ОригиналОтветить0
NewPumpamentalsvip
· 9ч назад
Не говори так много, просто сделай это.
Посмотреть ОригиналОтветить0
FUDwatchervip
· 9ч назад
Выбирайте публичные блокчейны, это просто.
Посмотреть ОригиналОтветить0
AllTalkLongTradervip
· 9ч назад
Играй, но не мешай, не устраивай беспорядок.
Посмотреть ОригиналОтветить0
SnapshotDayLaborervip
· 10ч назад
Никто не говорит о рисках краха стейблкоинов?
Посмотреть ОригиналОтветить0
  • Закрепить