👨🏽💻Команда DOUBLETOP подготовила для вас краткий обзор Hinkal Protocol - проекта, который стал одним из 12 финалистов акселерационной программы «Most Valuable Builder Season 6» от Binance Labs, а также гайд, как воспользоваться протоколом. Приятного чтения!
▫️Hinkal Protocol — приватный кошелек для Ethereum экосистемы (EVM chains) с zero-knowledge: смарт-контракт, который принимает депозиты в токенах ETH/ERC-20, чтобы депонированная сумма могла быть позже снята, переведена или свапнута без отображения первоначальной транзакции.
После депозита в смарт-контракт генерируется приватный адрес, который кроме вас никто не знает. Далее, с этого адресa, вы можете реализовывать приватые инвестиционные стратегии, переводить средства на другие адреса и анонимизировать связь между кошельками.
Hinkal — это как отдельный self-service продукт, так и компонуемый SDK, который может быть интегрирован с любым EVM dApp или кошельком, обеспечивая конфигурации конфиденциальности, такие как:
• Private to Private. Переводы между адресами без публичного отслеживания активов и кошельков;
• Public to Private. Данные получателя остаются неизвестными (как адрес кошелька, так и данные транзакции);
• Private to Public. Данные отправителя остаются неизвестными (как адрес кошелька, так и данные транзакции).
👾Каждая учетная запись в Hinkal Protocol состоит из двух основных частей: account (private/public key pair) и signers (подписывающие лица).
Счет связан с ключом просмотра, который может быть использован для расшифровки уточнений о стоимости активов на Hinkal.
Подписывающие лица, связанные с spending keys или signing keys, могут быть использованы для отправки информации со связанного счета.
▫️Account key — это закрытый ключ, связанный с учетной записью Hinkal. Этот ключ используется для расшифровки информации, связанной с учетной записью. Spending Key — это конкретный закрытый ключ, зарегистрированный на учетную запись с разрешением тратить активы от имени этой учетной записи.
▫️Учетные записи Hinkal генерируются с использованием учетных записей Ethereum, когда пользователь подписывает разрешение и получает ключи Hinkal из подписанного разрешения. Это гарантирует, что до тех пор, пока кто-то имеет доступ к своей учетной записи Ethereum, он сможет получить доступ к своей учетной записи Hinkal через подписанное разрешение. Разные разрешения используются для генерации разных ключей (ключ расшифровки учетной записи и ключ расход).
▫️Basic account — это первая учетная запись, которая создается для пользователя Hinkal - простая пара закрытого/открытого ключа. Закрытый ключ, связанный с этой учетной записью, может использоваться для расшифровки заметок. Закрытый ключ также можно использовать для регистрации многих различных ключей расходов. Это позволяет абстрагировать учетную запись, создавая разделение между ключом, необходимым для расшифровки, и ключом, необходимым для расходования.
Пока вы контролируете свою первоначальную учетную запись Ethereum, вы можете повторно получить ключи своей учетной записи Hinkal.
Смарт-контракты Hinkal
▫️Hinkal Pool — смарт-контракт, который содержит важнейшие функции протокола: ввод, перевод, вывод средств и свап (также стейкинг). Это основной контракт для протокола и интерфейс Hinkal напрямую взаимодействует с ним. Кроме того, Операторы (Relayers) взаимодействуют с Hinkal Pool над выводов средств от имени адреса целевого кошелька.
▫️MerkleTree — смарт-контракт, который хранит обязательства (если простыми словами, то в этом случае обязательство — это репрезентация количества разных токенов на вашем кошельке), когда пользователи депозитят, переводят и вынимают средства. Структура Merkle Tree оптимальна для проверки того, хранит ли пользователь средства в протоколе.
▫️AccessToken. Перед выполнением операции по вводу или выводу средств Hinkal Pool проверяет, прошел ли пользователь проверку каким-либо из их поставщиков KYC. Он отправляет запросы в смарт-контракты AccessToken, требующие информации о проверках KYC/AML. В настоящее время Hinkal Protocol поддерживают проверку aiPrise и принимают Binance BAB Token.
▫️RelayStore — еще один смарт-контракт, который хранит учетные данные и рейтинги Операторов. Рейтинги определяют вероятность выбора того или иного оператора для транзакции. На данный момент только Hinkal Protocol могут добавлять Операторов в RelayStore, но в конечном итоге процесс добавления новых Операторов будет регулироваться Hinkal DAO. Список всех Операторов можно найти на RelayStore с помощью функции getRelayList.
KYC
👾Чтобы гарантировать, что никакие незаконные стороны не смогут получить доступ к протоколу, Hinkal Protocol защищен на уровне KYC, сохраняющего конфиденциальность.
▫️Перед использованием Hinkal, все пользователи должны получить ‘Access Token’. В настоящее время пользователи должны минтить по одному ‘Access Token’ на каждый чейн.
▫️Если пользователь уже минтил ‘Access Token’ через одного из партнеров KYC, дополнительная проверка KYC не требуется — пользователь может использовать Hinkal в обычном режиме.
▫️Если в кошельке пользователя не обнаружено ни одного ‘Access Token’, то единственная доступная кнопка — это минт токена путем прохождения процесса верификации, предоставляемого KYC-партнерами Hinkal. Этот процесс происходит следующим образом:
Процесс верификации
▫️Hinkal проверяет, есть ли у пользователя токен Binance Account Bound Token (BABt) в подключенном кошельке. В ближайшее время протокол добавит новые интеграции с KYC решениями, чтобы обеспечить пользователям широкий выбор, например — Galxe Passport.
▫️Если BABt обнаружен, пользователю не нужно снова проходить KYC, он может напрямую сминтить ’Access Token’.
▫️Если у пользователя нет BABt, ему необходимо выбрать предпочитаемого KYC провайдера из поддерживаемых вариантов (в настоящее время это Binance и AiPrise) и пройти верификацию. Процесс верификации KYC занимает <1 минуты. После его завершения пользователь может сминтить свой ’Access Token’.
Как воспользоваться протоколом?
▪️Подключение к Hinkal
Для начала пользователям необходимо подключить свой кошелек к Hinkal dApp, выбрав одну из поддерживаемых сетей. Hinkal в настоящее время развернут на BNB Chain, Arbitrum и Polygon.
Пользователи могут подключаться к своим кошелькам Metamask, Coinbase Wallet и Wallet Connect V1 (для Metamask Mobile) иa Wllet Connect V2.
В случае, если пользователь подключается к неподдерживаемой сети, ему будет предложено выбрать одну из поддерживаемых.
▪️Минт "Access Token"
Hinkal предназначен для предотвращения использования протокола незаконными сторонами. Для достижения этой цели пользователи (физические лица и организации) должны получить "Access Token".
Если у вас есть учетная запись Binance и вы использовали BAB Token для верификации, вам не нужно снова проходить KYC, вы можете напрямую минтить токен.
Если у вас нет учетной записи Binance, вы можете сминтить токен доступа после прохождения проверки KYC, которая занимает <1 минуты. Информация KYC хранится фрагментарно, без связи между кошельком и PII. Самый простой и надежный вариант — это конечно же сминтить BAB Token от Binance.
В настоящее время Hinkal поддерживают Binance и aiPrise в качестве поставщиков KYC.
Получаем подтверждение о том, что KYC успешно пройден и минтим “Access Token“. После этого можем начать пользоваться продуктом.
▪️Просмотр вашего защищенного адреса и баланса
Кликнув на ваш адрес в правом верхнем углу Hinkal, вы сможете просмотреть свой приватный адрес и депонированные активы в любое время.
Ваш защищенный адрес отличается от вашего публичного адреса. Все активы, показанные здесь, защищены и не трекаются он-чейн.
▪️Депозиты
Пользователи могут выбрать любое количество поддерживаемых токенов (в зависимости от сети, к которой они подключены).
Депозиты преобразуются публично доступные ERC токены в токены обязательства, которые имеет ту же ценность, что и исходный токен, и открытый ключ Hinkal предполагаемого владельца обязательства. Токен обязательства хранится в смарт-контракте MerkleTree в виде листьев (базовая нода древа смарт-контракта), если сумма успешно депонирована.
▪️Свапы
Hinkal Swaps позволяет пользователям обмениваться поддерживаемыми ERC-20 токенами приватно. Для достижения конфиденциальности Hinkal использует релееры и API от Odos и Uniswap.
Вначале пользователь выбирает токены "Swap From" и "Swap to", как и в любом DEX.
Затем Hinkal извлекает цены из Odos и Uniswap и вычисляет лучшую стоимость. Пользователи могут видеть, сколько они экономят.
У пользователей по-прежнему есть возможность вручную изменить провайдера (на данный момент — Odos или Uniswap) на предпочтительный.
Когда пользователь обменивается активами, он генерирует zk-proof того, что он имеет право обменять заданную сумму первого актива в обмен на входящее количество второго актива.
Поскольку протокол реализует модель обязательств и нуллификаторов на основе UTXO, сумма свапов должна быть известна во время генерации zk-proof. На момент отправки своп-транзакции неизвестно, сколько других своп-операций будет представлено в текущем блоке.
Этот фактор генерирует непредсказуемое проскальзывание с точки зрения пользователя. Чтобы уменьшить фактор неопределенности, риск проскальзывания смещается на релеера. В маловероятном случае, если relayer не может покрыть расходы на проскальзывание, транзакция может быть возвращена.
▪️Трансферы
Трансферы позволяют пользователям отправлять активы между защищенными адресами Hinkal.
Выберите токен, который хотите передать
Введите адрес получателя (это должен быть зашифрованный адрес Hinkal, который пользователи видят у себя на экране)
Внимание: Публичные адреса не принимаются как "Адрес получателя".
▪️Вывод средств
Вывод средств аналогичен операции Transfer, но вместо того, чтобы передавать активы между зашифрованными адресами, пользователи могут вывести свои защищенные активы на свой публичный адрес:
Выберите токен, который хотите вывести
Введите адрес получателя (он должен быть публичным адресом, к примеру — адрес вашего Metamask кошелька)
Основное отличие от трансферов заключается в том, что пользователи могут вручную выбрать более 2 видов вывода средств:
Вывод средств самостоятельно: пользователи должны подписать сообщение и оплатить сбор за газ с подключенного адреса кошелька.
Вывод средств с помощью Оператора: предположим, что адрес кошелька был создан недавно и не имеет необходимой суммы средств для покрытия сборов за газ, связанных с транзакцией по выводу средств. Как и в первом варианте, пользователь должен предоставить адрес получателя, но предварительный баланс по этому адресу не требуется, так как Оператор берет на себя ответственность за оплату газа. Разумеется, в этом случае, оплата за газ будет вычтена из
Инвесторы
Hinkal Protocol пока не анонсировали ничего касаемо фандрейза, однако являются частью Binance акселератора, заручились поддержкой Draper Associates и Stanford Blockchain. Кроме этих, среди имен на их вебсайте есть также Binance Labs, No Limits Capital, Galxe, NGC Ventures и многие другие. Будем следить за анонсами об этом в твиттере проекта.
Команда проекта
В команде Hinkal Protocol можно выделить их CEO/соучредителя Georgi Koreli и CTO Nika Koreli — выпускники университета Stanford с web2 и web3 опытом опытом. Georgi имеет опыт инвестиций в различные предприятия, включая предприятия в США и Украине. Nika имеет 12-летний опыт программирования, участвовал в разработке 2 блокчейн приложений, а также обладает экспертизой взаимодействия с zk-snark.
Итог
В условиях жесткого давления регуляции, Hinkal Protocol пытается найти решение сразу для двух сторон:
- для пользователей, которые пришли в крипту ради приватности и отчаянно нуждаются в ней;
- для регуляторов, которые привыкли все контролировать и не оставлять без внимания ни один финансовый поток.
Кстати говоря, примите во внимание, что Hinkal Protocol находятся и официально работают в США, где ситуация с регуляторами на данный момент очень накаленная.
Как любое компромиссное решение — Hinkal Protocol не идеален и вызовет много вопросов у консервативных представителей криптоиндустрии. Тем не менее, для пользователей, которые не хотят светить свои токены/транзакции и хотят это делать легально, такое полу-приватное решение более чем жизнеспособно.
Если же вы пытаетесь уйти от слежки надзорных органов или являетесь оппозиционером в тоталитарной стране, вам стоит поискать более децентрализованное решение.
В будущем же мы увидим еще более тотальное внедрение SBT и различного вида паспортов. Это более надежное и интересное решение, чем верификация или вход через социальные сети, хоть и не избавляет от участия дополнительных контрагентов в цепочке и не гарантирует конфиденциальность и отсутствие утечки персональных данных.
Изначально децентрализованные решения на блокчейне создавались как свободная и, в какой-то степени, анархичная альтернатива государственной системе и финансовым институтам. Но было наивно полагать, что этим двум, столь разным мирам, позволят существовать параллельно и независимо. Поэтому ты либо борешься с системой, либо ищешь компромисс.
И как мы понимаем, большинство проектов и людей не готовы рисковать своим успехом и свободой ради иллюзии приватности.
Соцсети проекта: