Способы подтверждения платежеспособности — Бинкор
При оформлении любого кредитного договора, особенно если речь идет о многомиллионных займах, кредитор зачастую хочет иметь твердые гарантии, что у клиента есть доход, и его достаточно, чтобы гасить долг ежемесячно. Банк хочет быть уверен в платежеспособности клиента, чтобы не потерять деньги, ведь кредитование – это обоюдовыгодная сделка. Если нет возможности принести в банк справку 2-НДФЛ, можно использовать и другие способы подтверждения платежеспособности.
Основной и самый востребованный документ для любой кредитной организации — форма 2-НДФЛ. Это справка о налоге на доходы физических лиц, в которой учтены и отражены все сведения о работнике и его доходах за год. В форме 2-НДФЛ есть и все сведения о работодателе, и заверена она печатями и подписями. Еще несколько лет назад без этого основного документа, подтверждающего платежеспособность, ни в одном банке невозможно было поучить заем, особенно если речь шла об ипотечном займе на крупную сумму. Кроме того, именно этот документ всегда требовался при оформлении договор на покупку авто.
Но если смотреть реальности в лицо, окажется, что далеко не все клиенты в доказательство платежеспособности могут принести кредитору заветную справку. В нашей стране все еще распространена практика «серых» заработных плат, и тогда уровень дохода, отраженный в форме 2-НДФЛ, будет недостаточным для подтверждения высокой платежеспособности. Придется искать другие способы доказать наличие доходов, которые получены «в конверте». Кроме того, сейчас очень востребована занятость по типу фриланса, то есть свободная трудовая деятельность из любой точки мира, которая не подразумевает ни контрактов, ни официального оформления. Да и человек, работающий по контракту или трудовому договору, не имеет возможности подтверждения платежеспособности посредством этой бухгалтерской отчетности.
Есть ли способы доказать платежеспособность и получить ссуду, если нет ни официальной работы, ни официальной фиксированной зарплаты? Да, они есть, и банки, осознавая ситуацию с трудоустройством и новые тенденции на рынке труда, принимают альтернативные доказательства.
Если клиент работает по контракту или трудовому договору, ему подойдет следующий способ подтверждения платежеспособности. Вместо формы 2-НДФЛ он может принести справку по форме организации, в которой трудится с информацией о должности, сроке работы на предприятии и заработной плате за определенный период. Эту справку составляет работодатель, подписывает и ставит печать. Так же возможно заполнение справки по форме банка.
Косвенные способы подтверждения платежеспособности
Для тех граждан, которые не имеют постоянного места работы или для фрилансеров, которые не могут предоставить никакие документы с места работы, существуют косвенные способы подтверждения платежеспособности для получения кредита:
документы о владении недвижимостью, автотранспортом, драгоценностями и прочим имуществом;
выписки из банка о движении денег на счету или наличии депозита;
информация из именного аттестованного электронного кошелька о поступлениях денег;
справка по форме 3-НДФЛ, которая заполняется при оплате налогов или арендной платы.
На подобных вариантах стоит остановиться подробнее. Люди, которые имеют неофициальные заработки, платежеспособность могут подтвердить с помощью банковских выписок о наличии депозитного счета на крупную сумму, сопоставимую с размером необходимого кредита, либо о движении средств на текущем банковском счету, если доходы и поступления на счет регулярны.
Также можно предоставить банку залоговое обеспечение в виде ликвидной недвижимости, но в этом случае банковские учреждения по программе залогового кредита не потребуют справку с подтверждением дохода, только если клиент пришел от аккредитованного партнера, так как самого факта владения и документов на право собственности на квартиру, дом или автомобиль будет недостаточна, чтобы дать банку понять, что платежеспособность клиента на необходимом уровне.
Еще один работающий способ подтверждения платежеспособности – предоставление действующего договора о найме жилья, принадлежащего заемщику. Это дает гарантию банку, что каждый месяц клиент будет получать доход от своей недвижимости.
При этом желательно, чтобы сроки аренды недвижимости и кредитования были сопоставимы.
Некоторые банки готовы рисковать, но пойти навстречу клиентам, не имеющим возможности предоставить официальное подтверждение доходов. Банк финансовых решений «Бинкор» имеет множество кредитных программ без справок о доходах.
Нужно сказать, что такая лояльность со стороны кредиторов является редким явлением, хотя и позволяет оформить кредитование широкому кругу лиц, не имеющих другого способа подтверждения своей платежеспособности. Связаться с сотрудником Бинкор
Подтверждение платежеспособности для постоянного проживания в Казахстане
В соответствии со статьей 4 Закона «О правовом положении иностранцев» обязательным условием предоставления разрешения на постоянное проживание в Республике Казахстан является подтверждение платежеспособности лицом, претендующим на получение такого разрешения.
Иностранцы и лица без гражданства подтверждают свою платежеспособность при обращении с ходатайством о получении разрешения на право постоянного проживания в Республике Казахстан.
Для подтверждения своей платежеспособности в период пребывания в Республике Казахстан, иностранцы и лица без гражданства представляют в органы внутренних дел документ банка-резидента Республики Казахстан (справку), подписанный председателем правления банка или уполномоченным лицом банка, о наличии денег на банковском счете (счетах) в сумме:
- равной или превышающей эквивалент
1320-кратного минимального расчетного показателя установленного на дату подачи ходатайства об оставлении на постоянное проживание; - достаточной для покупки жилища, из расчета 15 квадратных метров на одного члена семьи в населенном пункте, где ходатайствующий намерен проживать.
Размер суммы определяется в соответствии со средней рыночной стоимостью жилья в данном населенном пункте на основании документа, выданного соответствующим уполномоченным органом, осуществляющим регистрацию прав на недвижимое имущество.
При наличии договора с физическим или юридическим лицом о предоставлении ходатайствующему жилища, документа банка о наличии денег для покупки жилища не требуется.
Представленные документы, подтверждающие платежеспособность, проверяются органами внутренних дел на предмет подлинности путем направления запроса в банковское учреждение, выдавшее документ, подтверждающий платежеспособность, с письменного согласия иностранца и лица без гражданства по форме.
Если с ходатайством о получении разрешения на постоянное проживание обращаются несколько членов семьи, то подтвердить наличие суммы в размере 1320 МРП должен каждый, достигший 16-летнего возраста. При отсутствии жилища, подтверждение о наличии суммы, достаточной на его приобретение представляется из расчета 15 квадратных метров на каждого члена семьи любого возраста.
Не должны подтверждать свою платежеспособность:
- этнические казахи;
- бывшие соотечественники, лица, родившиеся или ранее состоявшие в гражданстве Республики Казахстан или Казахской Советской Социалистической Республики, и члены их семей;
- граждане стран, и члены их семей, которые имеют право на приобретение гражданства Республики Казахстан в упрощенном порядке на основании международных договоров
(соглашение между Республикой Беларусь, Республикой Казахстан, Кыргызской Республикой и Российской Федерацией об упрощенном порядке приобретения гражданства и Конвенции о гражданстве замужней женщины), в связи с тем, что они имеют право ходатайствовать о получении гражданства Республики Казахстан независимо от срока проживания на территории Стороны приобретаемого гражданства.
Доказательство платежеспособности: технический обзор | Миха Видмар | ICONOMI
5 апреля 2018 года обязательства ICONOMI на сумму 133,6 млн долларов и резервы на 210,2 млн долларов, распределенные по 80 цифровым активам, были проверены и проверены Deloitte блокчейнов.
Наша цель аудита блокчейна заключалась в том, чтобы доказать нашу платежеспособность и наши цифровые активы, используя передовой опыт традиционной финансовой индустрии в сочетании с прозрачностью мира блокчейна. Вот почему мы решили работать с Deloitte и использовать подход дерева Меркла.
Дерево Меркла — это структура, позволяющая эффективно и безопасно проверять содержимое большого массива данных. Используя деревья Меркла, каждый отдельный пользователь может проверить баланс своего счета и рассчитать все обязательства, не раскрывая никакой личной информации.
Платежеспособность определяется как способность компании выполнять свои долгосрочные финансовые обязательства.
Платежеспособность считается доказанной, когда общий баланс резервов, полученный с использованием подтверждения наличия резервов, оказывается достаточным для покрытия общей суммы обязательств, полученных с использованием подтверждения наличия обязательств. Используя эти две разные методологии, Deloitte доказала, что резервы ICONOMI превышают ее обязательства. Таким образом, все цифровые активы ICONOMI теперь проверены.
Доказательство платежеспособности состоит из двух частей:
Подтверждение обязательств: Мы установили процедуру помещения всех наших пользователей и активов DAA в деревья Меркла. Использование деревьев Меркла позволяет каждому пользователю проверить, включены ли они в наши обязательства, не раскрывая никакой личной информации. Чем больше пользователей проверяют, что их балансы были включены в дерево, тем большей определенности достигает доказательство, поэтому мы призываем как можно больше людей проверить свои балансы после того, как инструменты станут доступны.
Подтверждение обязательств разделено на две части:
- Активы, которыми владеют пользователи (например, ETH, BTC и ICN, хранящиеся на платформе, а также любые активы DAA)
- Активы, которыми владеют DAA
Подтверждение резервов: . Общие резервы определяются как сумма всех цифровых активов ICONOMI и фиатных активов на банковских счетах. «Делойт» получил все наши блокчейн-адреса, информацию о банковских счетах и информацию об обменных счетах. Наряду с нашими адресами в блокчейне мы подтверждаем право собственности либо подписывая сообщения закрытыми ключами, либо создавая предопределенные транзакции из этих учетных записей.
Все восемьдесят активов, которыми в настоящее время владеет ICONOMI, прошли аудит блокчейна.
Подход с использованием дерева Меркла
Используя подход с использованием дерева Меркла, мы даем пользователям возможность проверить, включена ли наша ответственность/обязательство перед ними в отчет Deloitte.
Допустим, у нас есть четыре пользователя на нашей платформе со следующими балансами. Для каждого пользователя мы генерируем уникальный случайный идентификатор (соль), называемый идентификатором аудита.
Мы берем данные каждого пользователя и пропускаем их через хеш-функцию. Хеш-функции — это односторонние функции, которые принимают входные данные и возвращают результат фиксированного размера ( хэш ). Поскольку это односторонние функции, вы не можете получить исходные данные, используемые для хэша, просто зная результат. Используя хеш-функции, мы можем обеспечить прозрачность и сделать данные общедоступными для проверки, сохраняя при этом конфиденциальность пользовательских данных (т. Е. Никто не может видеть чужие адреса электронной почты или балансы).
Примечание: Мы использовали SHA256 для нашей функции хеширования. Данные разделяются с помощью вертикальной черты в качестве разделителя: SHA256 (электронная почта пользователя | баланс актива | идентификатор аудита).
Значения имеют фиксированный формат с удаленными конечными нулями.
Все хэши пользователей с их балансами затем вставляются в дерево как листья:
Затем мы вычисляем каждый внутренний узел, суммируя балансы двух его дочерних элементов, объединяя их хэши и затем хешируя результат. Например, выделенный узел на изображении ниже будет хешем следующих данных:
- Сумма балансов: 3 BTC
- Хэш 1: a3j5
- Хэш 2: 49j3
Примечание:
Используя эту процедуру по всем уровням дерева до корневого узла, мы получаем корневой узел с суммой всех балансов.
Мы выполнили одну и ту же процедуру для всех активов на платформе ICONOMI и построили дерево для каждого актива, чтобы получить несколько корневых узлов. Эти корневые узлы чрезвычайно важны, потому что они показывают наши обязательства по каждому активу.
Кроме того, использование хэшей вплоть до корневого узла делает данные в дереве защищенными от несанкционированного доступа: мы не можем изменить какие-либо данные в дереве, не изменив также хэш корневого узла.
Различия процедур для массивов цифровых активов
Та же процедура используется для создания деревьев Меркла для DAA, за исключением данных, используемых в листьях. В функции хэширования для деревьев Меркла DAA мы используем тикеры DAA вместо электронных писем пользователей. Например:
Как «Делойт» проверял наши деревья Меркла
«Делойт» получил полные деревья Меркла (только балансы и хэши, поэтому никакие пользовательские данные не были переданы) и проверил все балансы и хэши вплоть до корневого узла. Они смогли проверить отсутствие отрицательного баланса и правильность суммирования и хеширования всех узлов. Они также публично перечислили хэши корневых узлов, а это означает, что если мы когда-либо попытаемся изменить какие-либо балансы или добавить или удалить пользователей в этих деревьях, об этом будет известно всем.
Скоро: подтвердите свою ветку с панели управления пользователя!
Пользователям будут предоставлены инструменты на нашей платформе, чтобы проверить свою ветвь дерева и убедиться, что их активы включены в дерево, отправленное в Deloitte. Пользователи могут видеть только свое частичное дерево, но обязательства по-прежнему полностью проверяемы.
Все пользователи, имевшие активы на платформе ICONOMI на момент аудита блокчейна, увидят на странице аудита блокчейна платформы следующие данные:
- Электронная почта пользователя, используемая во время моментального снимка
- Идентификатор аудита, созданный для пользователя
- Для каждого актива, которым они владели во время моментального снимка: тикер актива или массива цифровых активов, баланс и ссылка на их частичное дерево
Вот пример того, как частичное дерево будет выглядеть для пользователя из предыдущего примера:
Пользователи могут видеть путь от своего листа до корневого узла.
Используя любой онлайн-калькулятор SHA256, информацию на индивидуальной странице аудита блокчейна пользователя и информацию, представленную в этом сообщении блога, пользователи должны иметь возможность проверить правильность всех хэшей от своего конечного узла до корневого узла. Пользователи также должны убедиться, что хэш корневого узла совпадает с хэшем, указанным Deloitte для этого актива. Менеджеры DAA также смогут проверять активы своих DAA.
После того, как пользовательский интерфейс аудита блокчейна будет реализован, мы опубликуем специальную запись в блоге, объясняющую, как вы можете проверить свои собственные активы. Другие обновления будут следовать.
Мы предоставили Deloitte все наши обменные остатки, все остатки на наших банковских счетах и все наши адреса в блокчейне, где хранятся активы.
Биржевые и банковские счета проверены лично. Мы доказали право собственности на адреса блокчейна либо путем создания подписей с закрытым ключом(ами) для этих адресов со случайными строками, предоставленными Deloitte, либо путем создания транзакций с суммой и целевым адресом, согласованными заранее.
Примечание: Для кошелька, задействованного во взломе Parity по адресу 0x376c3e5547c68bc26240d8dcc6729fff665a4448, мы смогли подтвердить право собственности, подписав сообщения с закрытыми ключами, но в настоящее время мы не можем получить доступ к этим активам.
Все восемьдесят активов прошли блокчейн-аудит. У нас есть 133,6 млн долларов обязательств и 210,2 млн долларов резервов. Полные данные доступны на нашем сайте.
В заключение, доказав, что у нас больше активов в наших резервах, чем обязательств перед нашими пользователями, мы доказали, что мы платежеспособны.
Следите за обновлениями и новостями на наших официальных каналах:
Facebook / Twitter / Reddit / Medium
или войдите на нашу платформу, чтобы узнать больше о стратегиях DAA.
подтверждение платежеспособности и более
Переключение темного режима
2022 19 ноября Просмотреть все сообщения
Безопасная CEX: подтверждение платежеспособности и не только для обсуждения.
Каждый раз, когда выходит из строя крупная централизованная биржа, возникает общий вопрос: можем ли мы использовать криптографические методы для решения проблемы. Вместо того, чтобы полагаться исключительно на «фиатные» методы, такие как государственные лицензии, аудиторы и изучение корпоративного управления и биографии лиц, управляющих биржей, биржи могут создавать криптографические доказательства , которые показывают, что средств, которые они держат в сети, достаточно для покрытия свои обязательства перед пользователями.
Что еще более амбициозно, биржа может построить систему, в которой она вообще не сможет снимать средства вкладчиков без их согласия. Потенциально мы могли бы исследовать весь спектр между CEX, стремящимся к хорошему парню, «не будь злым» и «не может быть злым», но на данный момент неэффективным и нарушающим конфиденциальность DEX в сети. Этот пост расскажет об истории попыток приблизить биржи на один или два шага к недоверию, ограничениях этих методов и некоторых более новых и мощных идеях, основанных на ZK-SNARK и других передовых технологиях.
Балансовые списки и деревья Меркла: доказательство платежеспособности старой школы
Самые ранние попытки бирж попытаться криптографически доказать, что они не обманывают своих пользователей, уходят в далекое прошлое. В 2011 году крупнейшая на тот момент биржа биткойнов MtGox доказала, что у них есть средства, отправив транзакцию, которая переместила 424242 BTC на заранее объявленный адрес. В 2013 году начались дискуссии о том, как решить другую сторону проблемы: доказать общий размер депозитов клиентов. Если вы докажете, что депозиты клиентов равны X (« доказательство обязательств «) и докажите право собственности на приватные ключи X монет (« доказательство активов «), тогда у вас есть доказательство платежеспособности : вы доказали, что у биржи есть средства для погашения всех его вкладчиков.
Самый простой способ подтвердить депозиты — просто опубликовать список из (имя пользователя, баланс) пар .
Каждый пользователь может проверить, что его баланс включен в список, и любой может проверить полный список, чтобы видеть, что (i) каждый баланс неотрицательный, и (ii) общая сумма является заявленной суммой.Конечно, это нарушает конфиденциальность, поэтому мы можем немного изменить схему: опубликовать список из (хэш (имя пользователя, соль), баланс)
соли . Но даже это приводит к утечке балансов, а также к утечке модели изменения балансов. Желание сохранить конфиденциальность приводит нас к следующему изобретению: методу дерева Меркла .
Зеленый: узел Чарли. Синий: узлы, которые Чарли получит как часть своего доказательства. Желтый: корневой узел, общедоступный для всех.
Техника дерева Меркла состоит в том, что таблица балансов клиентов помещается в Суммарное дерево Меркла . В дереве суммы Меркла каждый узел представляет собой пару (баланс, хэш) .
Конечные узлы нижнего уровня представляют балансы и хэши имен пользователей с солью отдельных клиентов. В каждом узле более высокого уровня баланс представляет собой сумму двух балансов ниже, а хеш — это хеш двух узлов ниже. Доказательство суммы Меркла, как и доказательство Меркла, представляет собой «ветвь» дерева, состоящую из сестринских узлов на пути от листа к корню.
Биржа отправит каждому пользователю сумму Меркла, подтверждающую его баланс. Тогда у пользователя будет гарантия того, что его баланс правильно включен в общую сумму. Простой пример реализации кода можно найти здесь .
# Функция для вычисления родительского узла с учетом двух дочерних узлов
def comb_tree_nodes (L, R):
L_хэш, L_баланс = L
R_хэш, R_баланс = R
утверждать L_balance >= 0 и R_balance >= 0
новый_узел_хэш = хэш (
L_hash + L_balance.to_bytes(32, 'большой') +
R_hash + R_balance.to_bytes(32, 'большой')
)
возврат (new_node_hash, L_balance + R_balance)
# Строит полное дерево Меркла.
1] для i в диапазоне (branch_length)]
# Проверяет доказательство (да)
def verify_proof (имя пользователя, соль, баланс, индекс, user_table_size, корень, доказательство):
лист = userdata_to_leaf (имя пользователя, соль, баланс)
branch_length = log2 (get_next_power_of_2 (user_table_size)) - 1
для i в диапазоне (branch_length):
если индекс & (2**i):
лист = comb_tree_nodes (доказательство [i], лист)
еще:
лист = comb_tree_nodes (лист, доказательство [i])
вернуть лист == корень Утечка конфиденциальности в этом дизайне намного ниже, чем при полностью общедоступном списке, и ее можно еще уменьшить, перетасовывая ветки каждый раз, когда публикуется корень, но некоторая утечка конфиденциальности все еще присутствует: Чарли узнает, что у кого-то есть баланс 164 ETH, , баланс некоторых двух пользователей составляет 70 ETH и т. д. Злоумышленник, контролирующий множество учетных записей, потенциально может узнать значительную информацию о пользователях биржи.
Одна важная тонкость схемы — возможность отрицательный баланс : что, если биржа, имеющая 1390 ETH балансов клиентов, но только 890 ETH в резервах, попытается компенсировать разницу, добавив баланс -500 ETH под фальшивую учетную запись где-то в дереве? Оказывается, эта возможность не нарушает схему, хотя именно поэтому нам нужно именно дерево сумм Меркла, а не обычное дерево Меркла. Предположим, что Генри — фейковый аккаунт, контролируемый биржей, и биржа кладет туда -500 ETH:
Проверка подтверждения Греты не удастся: биржа должна будет предоставить ей узел Генри -500 ETH, который она отклонит как недействительный. Проверка доказательства Евы и Фреда и потерпит неудачу, потому что промежуточный узел выше Генри имеет -230 общего количества ETH, и поэтому также недействителен! Чтобы избежать наказания за кражу, биржа должна была бы надеяться, что никто во всей правой половине дерева не проверит подтверждение своего баланса.
Если биржа сможет идентифицировать пользователей стоимостью 500 ETH, которые, как они уверены, либо не будут проверять доказательства, либо им не поверят, когда они жалуются, что они никогда не получали доказательства, им может сойти с рук кража. Но тогда обмен может просто исключить этих пользователей из дерева и иметь тот же эффект. Следовательно, метод дерева Меркла в основном так же хорош, как и схема доказательства обязательств, если целью является только доказательство обязательств. Но его свойства конфиденциальности все еще не идеальны. Вы можете пойти немного дальше, используя деревья Меркла более умными способами, например, делая каждый сатоши или вей отдельным листом, но, в конечном счете, с более современными технологиями есть еще лучшие способы сделать это.
Повышение конфиденциальности и надежности с помощью ZK-SNARK
ZK-SNARK — мощная технология. ZK-SNARK может быть для криптографии тем же, чем трансформаторы для ИИ: технология общего назначения, настолько мощная, что она полностью запустит целую кучу прикладных методов для целого ряда проблем, которые были разработаны в предшествующие десятилетия.
И поэтому, конечно же, мы можем использовать ZK-SNARK, чтобы значительно упростить и улучшить конфиденциальность в протоколах подтверждения ответственности.
Самое простое, что мы можем сделать, это поместить все депозиты пользователей в дерево Меркла (или, что еще проще, в обязательство KZG) и использовать ZK-SNARK, чтобы доказать, что все балансы в дереве неотрицательны, и добавить до некоторого заявленного значения. Если мы добавим уровень хеширования для конфиденциальности, ветка Merkle (или доказательство KZG), предоставленная каждому пользователю, покажет
Использование обязательств KZG — это один из способов избежать утечки конфиденциальности, поскольку нет необходимости предоставлять «сестринские узлы» в качестве доказательств, и можно использовать простой ZK-SNARK для подтверждения суммы балансов и того, что каждый баланс неотрицательный. .
Доказать сумму и неотрицательность остатков в вышеуказанных КЗГ можно специальным ЗК-СНАРК.
{15}\)) и где каждый 16-й position отслеживает промежуточный итог со смещением, так что его сумма равна нулю, только если фактическая сумма соответствует объявленной сумме. Если \(z\) — корень 128-го порядка из единицы, мы можем доказать уравнения:{16*x+14}) — \frac{объявленное\ total}{user\ count}\)
Первые значения допустимой настройки для \(I(x)\) будут следующими: 0 0 0 0 0 1 3 6 12 25 50 -300 …
См. здесь и здесь в моем посте о ZK-SNARKs для дальнейшего объяснения того, как преобразовать уравнения, подобные этим, в полиномиальную проверку а затем в ZK-SNARK. Это не оптимальный протокол, но он показывает, что в наши дни такого рода криптографические доказательства не так страшны!
С помощью всего нескольких дополнительных уравнений подобные системы ограничений можно адаптировать к более сложным условиям. Например, в системе торговли с кредитным плечом допустимо наличие у отдельных пользователей отрицательного баланса, но только в том случае, если у них достаточно других активов, чтобы покрыть средства с некоторой маржей обеспечения.
SNARK можно использовать для доказательства этого более сложного ограничения, убеждая пользователей в том, что биржа не рискует их средствами, тайно освобождая других пользователей от правил.
В более долгосрочной перспективе этот вид подтверждения обязательств ZK, возможно, можно было бы использовать не только для клиентских депозитов на биржах, но и для кредитования в более широком смысле. Любой, кто берет кредит, помещает запись в полином или дерево, содержащее этот кредит, и корень этой структуры публикуется в цепочке. Это позволит любому, кто ищет ссуду ZK-доказать кредитору, что они еще не взяли слишком много других ссуд. В конце концов, правовые инновации могут даже сделать ссуды, которые были взяты на себя таким образом, более приоритетными, чем ссуды, которые не были выделены. Это ведет нас точно в том же направлении, что и одна из идей, которая обсуждалась в документе «Децентрализованное общество: в поисках души Web3»: общее понятие отрицательной репутации или обременений в сети через некую форму «токенов, привязанных к душе».
Подтверждение активов
Простейшая версия подтверждения активов — это протокол, который мы видели выше: чтобы доказать, что у вас есть X монет, вы просто перемещаете X монет в какое-то заранее оговоренное время или в транзакции, где поле данных содержит слова «эти средства принадлежат Binance». Чтобы не платить комиссию за транзакцию, вместо этого вы можете подписать сообщение вне сети; и Биткойн, и Эфириум имеют стандарты для подписанных сообщений вне сети.
С этим простым методом проверки активов связаны две практические проблемы:
- Работа с холодильными камерами
- Обеспечение двойного назначения
Из соображений безопасности большинство бирж хранит большую часть средств клиентов в «холодном хранилище»: на автономных компьютерах, где транзакции необходимо подписывать и переносить в Интернет вручную. Буквальное воздушное закрытие является обычным явлением: установка холодного хранилища, которую я использовал для личных средств, включала постоянно отключенный компьютер, генерирующий QR-код, содержащий подписанную транзакцию, который я сканировал со своего телефона.
Из-за высокой стоимости протоколы безопасности, используемые биржами, еще более безумны и часто включают многосторонние вычисления между несколькими устройствами, чтобы еще больше снизить вероятность взлома одного устройства с целью компрометации ключа. При такой настройке создание даже одного дополнительного сообщения для подтверждения контроля над адресом является дорогостоящей операцией!
Есть несколько путей, по которым может идти биржа:
- Держите несколько общедоступных адресов для длительного использования . Обмен будет генерировать несколько адресов, публиковать подтверждение каждого адреса один раз , чтобы подтвердить право собственности, а затем повторно использовать эти адреса. Это, безусловно, самый простой вариант, хотя он добавляет некоторые ограничения в том, как сохранить безопасность и конфиденциальность.
- Иметь много адресов, несколько случайным образом указать несколько . У биржи будет много адресов, возможно, даже использование каждого адреса только один раз и удаление его после одной транзакции.
В этом случае биржа может иметь протокол, в котором время от времени несколько адресов выбираются случайным образом и должны быть «открыты» для подтверждения права собственности. Некоторые биржи уже делают что-то подобное с аудитором, но в принципе этот метод можно превратить в полностью автоматизированную процедуру. - Более сложные варианты ЗКП . Например, биржа может установить для всех своих адресов мультиподпись 1-из-2, где один из ключей отличается для каждого адреса, а другой является слепой версией какого-то «большого» аварийного резервного ключа, хранящегося в каком-то сложном, но очень безопасный способ, например. мультиподпись 12 из 16. Чтобы сохранить конфиденциальность и избежать раскрытия всего набора своих адресов, биржа может даже запустить доказательство с нулевым разглашением в блокчейне, где оно доказывает общий баланс всех адресов в цепочке, которые имеют этот формат.
Другой важной проблемой является защита от двойного назначения.
Перемещение обеспечения между собой для подтверждения резервов — это то, что биржи могли бы легко сделать, и это позволило бы им притворяться платежеспособными, хотя на самом деле это не так. В идеале подтверждение платежеспособности должно выполняться в режиме реального времени, причем доказательство обновляется после каждого блока. Если это нецелесообразно, следующим лучшим решением будет координация по фиксированному графику между различными биржами, например. подтверждающие запасы в 14:00 UTC каждый вторник.
Последний вопрос: можете ли вы подтвердить наличие активов в фиатных деньгах? Биржи хранят не только криптовалюту, но и фиатную валюту в банковской системе. Здесь ответ: да, но такая процедура неизбежно опиралась бы на «фиатные» модели доверия: сам банк может подтвердить балансы, аудиторы могут подтвердить балансы и т. д. Учитывая, что фиат не поддается криптографической проверке, это лучшее, что можно сделать в этих рамках, но это все же стоит сделать.
Альтернативным подходом было бы четкое разделение между одной организацией, которая управляет биржей и имеет дело со стабильными монетами, обеспеченными активами, такими как USDC, и другой организацией (сам USDC), которая обрабатывает процесс ввода и вывода наличных для перехода между криптовалютой и традиционной валютой. банковские системы. Поскольку «обязательства» USDC — это только токены ERC20 в цепочке, подтверждение обязательств предоставляется «бесплатно», и требуется только подтверждение активов.
Plasma и валидации: можем ли мы сделать CEX без тюремного заключения?
Предположим, что мы хотим пойти дальше: мы не хотим просто доказать, что биржа имеет средства для выплаты долга своим пользователям. Скорее, мы хотим не допустить, чтобы биржа полностью украла средства пользователей .
Первой серьезной попыткой сделать это было Plasma , решение для масштабирования, которое было популярно в кругах исследователей Ethereum в 2017 и 2018 годах.
Plasma работает путем разделения баланса на набор отдельных «монет», где каждой монете назначается index и живет в определенной позиции в дереве Merkle блока Plasma. Для действительной передачи монеты необходимо поместить транзакцию в правильную позицию дерева, корень которого публикуется в цепочке.
Упрощенная схема одной версии Plasma. Монеты хранятся в смарт-контракте, который обеспечивает соблюдение правил протокола Plasma во время вывода средств.
OmiseGo попыталась создать децентрализованный обмен на основе этого протокола, но с тех пор они обратились к другим идеям — как, впрочем, и сама Plasma Group, которая теперь является оптимистичным проектом объединения EVM Optimism.
Не стоит рассматривать технические ограничения Plasma в том виде, в каком они были задуманы в 2018 году (например, доказательство дефрагментации монет), как своего рода моральную сказку обо всей концепции. После пика обсуждения Plasma в 2018 году ZK-SNARK стали гораздо более жизнеспособными для случаев использования, связанных с масштабированием, и, как мы уже говорили выше, ZK-SNARK меняют все.
Более современная версия идеи Plasma — это то, что Starkware называет валидацией: в основном то же самое, что и ZK-накопитель, за исключением случаев, когда данные хранятся вне сети. Эта конструкция может быть использована во многих случаях, возможно, везде, где централизованному серверу необходимо запустить некоторый код и доказать, что он выполняет код правильно. В валидиуме у оператора нет способа кражи средств, хотя в зависимости от деталей реализации некоторое количество пользовательских средств может получить застревает если оператор пропадает.
Все это действительно хорошо: CEX и DEX не являются бинарными, оказывается, что существует целый спектр вариантов, включая различные формы гибридной централизации, где вы получаете некоторые преимущества, такие как эффективность, но при этом имеете много криптографических возможностей. барьеры, препятствующие централизованному оператору участвовать в большинстве форм злоупотреблений.
Но стоит подойти к основному вопросу с правой половиной этого дизайнерского пространства: работа с ошибками пользователя . Безусловно, самый важный тип ошибки: что, если пользователь забудет свой пароль, потеряет свое устройство, будет взломан или иным образом потеряет доступ к своей учетной записи?
Биржи могут решить эту проблему: сначала восстановление по электронной почте, а если даже это не поможет, более сложные формы восстановления через KYC. Но чтобы иметь возможность решать такие проблемы, биржа должна иметь реальный контроль над монетами. Чтобы иметь возможность возвращать средства учетных записей пользователей по уважительным причинам, биржи должны обладать полномочиями, которые также можно использовать для кражи средств учетных записей пользователей по плохим причинам. Это неизбежный компромисс.
Идеальное долгосрочное решение — полагаться на самостоятельную охрану в будущем, когда пользователи будут иметь легкий доступ к таким технологиям, как мультиподпись и кошельки социального восстановления, которые помогут справиться с чрезвычайными ситуациями.
Но в краткосрочной перспективе есть две четкие альтернативы, которые имеют четко разные затраты и выгоды:
| Кастодиальная биржа (например, Coinbase сегодня) | Средства пользователя могут быть потеряны, если возникнут проблемы на стороне биржи | Exchange может помочь восстановить учетную запись |
| Обмен без хранения (например, Uniswap сегодня) | Пользователь может выйти, даже если обмен действует злонамеренно | Средства пользователя могут быть потеряны, если пользователь облажается |
Другим важным вопросом является поддержка кросс-чейнов: биржи должны поддерживать множество разных цепочек, а такие системы, как Plasma и валидации, должны иметь код, написанный на разных языках для поддержки разных платформ, и вообще не могут быть реализованы на других ( особенно Биткойн) в их нынешнем виде. Мы надеемся, что в долгосрочной перспективе это можно будет исправить с помощью технологических обновлений и стандартизации; однако в краткосрочной перспективе это еще один аргумент в пользу того, чтобы кастодиальные биржи пока оставались кастодиальными.
Выводы: будущее лучших бирж
В краткосрочной перспективе существует два четких «класса» бирж: кастодиальные биржи и некастодиальные биржи. Сегодня последняя категория — это просто DEX, такие как Uniswap, и в будущем мы также можем увидеть криптографически «ограниченные» CEX, в которых средства пользователей хранятся в чем-то вроде смарт-контракта с валидацией. Мы также можем увидеть полукастодиальные биржи, где мы доверяем им фиат, но не криптовалюту.
Оба типа бирж продолжат свое существование, и самый простой обратно совместимый способ повысить безопасность кастодиальных бирж — добавить доказательство резервирования. Он состоит из комбинации подтверждения активов и подтверждения обязательств. Существуют технические проблемы при создании хороших протоколов для обоих, но мы можем и должны сделать все возможное, чтобы добиться прогресса в обоих, и максимально открыть исходный код программного обеспечения и процессов, чтобы все биржи могли извлечь выгоду.
Я надеюсь, что в долгосрочной перспективе мы будем все ближе и ближе приближаться к тому, чтобы все биржи не содержали условий содержания под стражей, по крайней мере, в криптосфере.
