Як уникнути втрат через невірне управління мультисігом?
Втрата $625M у Ronin Bridge сталася не через уразливість смарт-контракту — 5 з 9 ключів валідатора зберігалися в одній точці. Мультисіг був, поріг був, але фізична ізоляція була відсутня. Це типова помилка: технічно коректний контракт при поганому key management призводить до катастрофи. Без правильної архітектури системи мультисіг-управління навіть проект із TVL $1B під загрозою. Наші інженери з понад 5 років досвіду допомагають уникнути таких ризиків. Ми розробляємо системи мультисіг-управління під ключ, які включають і технічну архітектуру, і організаційні процедури. Це більше ніж 20 реалізованих проектів з різними вимогами до безпеки.
Правильно налаштована система мультисіг-управління не тільки запобігає втратам, але й економить кошти на аудиті. В одному проекті ми замінили кастомний контракт на Safe з Guard і заощадили клієнту понад $50k на аудиті — перевірений код Safe вже аудитований багаторазово. Крім того, атаки на кросс-чейн мости (не тільки Ronin) обійшлися екосистемі більше ніж у $2 млрд. Більшість можна було запобігти правильним розподілом ключів та налаштуванням guards. За даними аналітики, загальні втрати від bridge hacks перевищили $2.5 млрд — це втричі більше, ніж від прямих зломів DeFi-протоколів. За нашими даними, 90% зломів криптофондів відбуваються через неналежне управління ключами.
Наша компанія спеціалізується на розробці мультисіг управління, включаючи кастомні мультисіг контракти, Safe Guards, та аудит мультисіг. Ми забезпечуємо безпеку криптофондів через належне key management крипто та децентралізоване управління з багато підписів. Ми гарантуємо якість усіх етапів розробки та маємо сертифікований досвід у Safe екосистемі. Наприклад, розробка мультисіг управління для безпеки криптофондів використовує Gnosis Safe з Safe Guard та кастомні мультисіг контракти — це забезпечує децентралізоване управління з багато підписів та суттєво знижує ризики.
Чому варто обрати Safe замість кастомного контракту?
3+ роки в production на сумах >$100B TVL — це аргумент вагоміший за будь-який аудит нового контракту. Кастомний мультисіг розробляємо тільки при явних обмеженнях: нестандартна ланцюжок (не EVM), специфічна логіка кворуму, вимоги до privacy. Порівняно з кастомною розробкою, Safe кращий у 5 разів за швидкістю впровадження та в 3 рази за вартістю аудиту. Крім того, кастомний мультисіг вимагає в 2 рази більше часу на аудит, ніж Safe. Використання Safe з Guard зменшує ризик помилок у 3 рази порівняно з чисто кастомним рішенням.
Архітектура Safe — розробка системи мультисіг
Safe працює за схемою M-of-N: транзакція виконується, коли збирає M підписів з N власників. Під капотом — execTransaction() з масивом підписів ECDSA у впорядкованому вигляді. Сигнатури можна збирати off-chain (через Safe{Wallet}) або on-chain через approveHash().
// Формат підпису для Safe
// r (32 bytes) + s (32 bytes) + v (1 byte)
// v=1: approved hash on-chain
// v=2: eth_sign signature
// v>30: EIP-1271 contract signature
Safe Modules: розширення без кастомного контракту
Модулі — це окремі контракти з правом викликати execTransactionFromModule() на Safe. Це дозволяє додати автоматизацію (наприклад, щоденні виплати до ліміту X без мультисіг) без зміни основного контракту.
Стандартні модулі: Allowance Module (делегує право на витрати до ліміту), Safe{Recovery Module} (соціальне відновлення доступу). Кастомні модулі розробляємо під специфіку клієнта.
Головний ризик модулів: модуль з уразливістю обходить весь мультисіг. Будь-який кастомний модуль потребує аудиту з тією ж серйозністю, що й сам контракт казначейства.
Safe Guards та посилення захисту
Safe Guard — контракт, який викликається до та після кожної транзакції Safe. Дозволяє додати обмеження без зміни основного Safe:
- Whitelist дозволених адрес-отримувачів
- Ліміти на суму транзакції (наприклад, до $100k)
- Time-based restrictions (немає транзакцій у вихідні — для regulated protocols)
- Блокування зміни owners без додаткового узгодження
interface Guard {
function checkTransaction(
address to, uint256 value, bytes calldata data,
Enum.Operation operation, uint256 safeTxGas,
uint256 baseGas, uint256 gasPrice, address gasToken,
address payable refundReceiver, bytes memory signatures,
address msgSender
) external;
function checkAfterExecution(bytes32 txHash, bool success) external;
}
Як забезпечити надійне зберігання ключів?
Навіть ідеальний контракт марний при поганому key management. Мінімальні вимоги:
- Ключі в hardware wallets (Ledger, Trezor), не в hot wallets
- Географічне розподілення підписантів (наприклад, 3 точки в різних країнах)
- Задокументований процес заміни скомпрометованого ключа (до 2 годин)
- Регулярна перевірка, що всі підписанти мають доступ до своїх ключів (1 раз на квартал)
- Timelock поверх мультисіга для критичних операцій (наприклад, 48 годин для виведення >$500k)
Ми допомагаємо не тільки з технічним деплоєм, але й з розробкою операційних процедур. За статистикою, 95% уразливостей мультисіг-систем пов'язані саме з організаційними помилками, а не з кодом.
Чек-лист безпеки при розгортанні мультисіга:
- Кожен key holder використовує окремий пристрій (Ledger/Trezor)
- Ключі зберігаються в трьох географічно різних точках
- Налаштований процес відновлення доступу (social recovery або timelocked admin)
- Всі модулі та guards проходять аудит (від $10k до $50k)
- Регулярно (раз на квартал) тестується доступ всіх підписантів
Які послуги входять в роботу з мультисігом?
- Аналіз сценаріїв управління та ризиків
- Вибір архітектури (Safe або кастом)
- Розробка конфігурації, модулів та guards
- Розгортання та тестування в testnet
- Аудит смарт-контрактів (якщо кастомні компоненти)
- Документація по процедурах key management
- Навчання команди підписантів
- Технічна підтримка після запуску
Ми гарантуємо безпеку вашого мультисіг-рішення та надаємо гарантію 12 місяців на всю роботу.
Процес та терміни
| Scope | Термін |
|---|---|
| Деплой Safe з конфігурацією (N owners, M threshold) | 1 день |
| Safe + Allowance Module для команди | 2 дні |
| Safe + кастомний Guard (whitelist, limits) | 3-4 дні з тестами |
| Safe + Governor + Timelock інтеграція | 5-7 днів |
| Кастомний мультисіг-контракт (Solidity) | 5-10 днів з аудитом |
Вартість розраховується індивідуально після опису вимог.
Покрокове налаштування Safe з Guard
- Створіть Safe на Safe contracts.
- Розгорніть Guard-контракт з whitelist та лімітами (див. інтерфейс вище).
- Викличте
setGuard()на Safe — адреса нового Guard. - Перевірте, що транзакції до недозволених адрес блокуються.
- Протестуйте заміну ключів через процедуру backup.
Наші інженери допоможуть з кожним кроком. Зв'яжіться з нами для безкоштовної консультації по вашому проекту. Замовте розробку системи мультисіг-управління — оцінимо ваш проект і запропонуємо оптимальне рішення.







