Счастлив опубликовать сегодня результаты аудита я исполняла для обмена Bitfinex. Это похоже на аудит Kraken, мы просто взяли некоторые из обратной связи на борту (хэш адрес электронной почты в листовые узлы), улучшены безопасность в нескольких местах (остатки были анонимными даже для меня) и упростили процесс еще немного (представляя простой аудит.)
Как всегда, аудит не означает одобрение и не затрагивают какие-либо рисков за пределами нынешней несостоятельности. Это также не является непогрешимым, обмены могут занимать деньги или просить других, чтобы подписать их аудиторское сообщение. Наконец, пока мы не можем в полной мере реализовать нулевое знание, криптографический доказуемую проверку, вы должны доверять аудитору, то есть меня, сделали свою работу правильно.
Кроме того, такой же, как в прошлый раз, я не получил никакой компенсации за аудит, и я сделал это в свое свободное время.
-----НАЧАТЬ PGP MESSAGE ----- ПОДПИСАЛИ
Hash: SHA1
===== НАЧАТЬ Аудиторский отчет =====
РЕВИЗОР: Stefan Thomas
АУДИРУЕМОЕ ЛИЦО: iFinex, Inc., https://www.bitfinex.com
ROOT HASH: 37c49d606c61aab140726265099992c3dd0fba30e1ce1a8a04f0e56cec6dc19f
БЛОК ВЫСОТА: 294378
РЕЗУЛЬТАТ: >100% запасов
6 апреля 2014
Сан-Франциско
Это сообщение является отчет о проведении аудита я исполняла для обмена Bitfinex Bitcoin на 5-й и 6-го апреля 2014 года с моего домашнего офиса здесь, в Сан-Франциско. Я не получил никакой оплаты за этого аудита - моя личная цель с этим, чтобы помочь улучшить стабильность и уверенность в математике на основе валютной индустрии в целом.
утверждение
=========
Процесс аудита разработан, чтобы позволить аудитор - в этом случае меня, Стефан Томас - проверить, что общая сумму Bitcoins принадлежащего Bitfinex матчей суммы, необходимую для покрытия анонимизированного набора остатков клиентов. Я свидетельствуя корень хэш Merkle дерева, содержащего все остатки, которые были рассмотрены в ходе аудита. Если вы являетесь клиентом Bitfinex, вы будете иметь возможность проверить с помощью инструментов с открытым кодом, что ваш баланс на момент проведения ревизии является частью этого корня хэш. Если это, и если вы считаете, что я заслуживающий доверия, то вы можете быть уверены, что ваш баланс был покрыт 100% запасов на момент проверки.
По сравнению с проверок, проведенных другими биржами, этот подход является очень строгим, сохраняя при этом полную конфиденциальность для клиентов. Самый трудная часть аудита, как правило, чтобы убедиться, что обмен не занижая количество и противовесы держателей счетов. При таком подходе каждый владелец счета может подтвердить, что они были рассмотрены в ходе аудита.
Доверие в этом типе аудита все еще требует доверия аудитора. На данный момент, это будет лежать на моих плечах, но Bitfinex проявили интерес к делать регулярные аудиты с разными аудиторами каждый раз. Это служит для обновления аудита, а также повысить доверие к процессу аудита и обоснованность результатов.
требования
======
Пункт 1: Bitfinex контролирует определенное количество Bitcoins.
Доказательство: Bitfinex предоставил файл в формате JSON со списком своих Bitcoin адресов и противовесов. Я использовал `cryptoshi команды audit` в libcoin для проверки файла JSON против копии блока цепи.
Версия libcoin использовали фиксации e913a46fd481236f573001abbc879d89595d5fef.
Вот код аудита используется:
https://github.com/libcoin/libcoin/blob/e913a46fd481236f573001abbc879d89595d5fef/applications/cryptoshi/cryptoshi.cpp#L638-692
Пункт 2: Сумма из п.1 больше, чем количество содержащегося в корневой хэш остатков.
Доказательство: Bitfinex предоставил файл JSON, содержащий набор анонимизированных остатков пользователей. Я использовал свой собственный инструмент "простой аудит" чтобы вычислить коэффициент резервирования и корневой хэш.
Версия легкого-аудита была использована фиксации 8dc5882c1d40f5ab9bbea14778cd1abadce6e459
Доступны на: https://github.com/justmoon/easy-audit
Вот код аудита используется:
https://github.com/justmoon/easy-audit/blob/8dc5882c1d40f5ab9bbea14778cd1abadce6e459/proof.js#L21-45
Выход Автомата был:
АКТИВ ВЛАДЕЛЕЦ: bitfinex.com
БЛОК ВЫСОТА: 294378
ROOT HASH: 37c49d606c61aab140726265099992c3dd0fba30e1ce1a8a04f0e56cec6dc19f
RESERVE RATIO: 102,82%
Фактические запасы были немного (< 3%) выше необходимых запасов, а это означает Bitfinex были больше, чем 100% резервов на высоту блока аудита.
// Stefan Thomas
===== END АУДИТ ОТЧЕТ =====
-----НАЧАТЬ PGP SIGNATURE -----
Версия: GnuPG v1.4.14 (GNU / Linux)
iQIcBAEBAgAGBQJTQsC9AAoJEMlHNwCksIvzTqYP / AoNwhCWI0EYcUm0mulbZT5T
DfeXUI3 / VdiYMkVz21LNjwzb62DCkKLlA2T042z2zj2PZQy4hFSV6a4DZWYzbgv8
9Uh5v1GCGCBkUGzkDSRZHw8ZCngZBpwYjAzVpTAgpYCpdfHxlbv60ojgWv42qO3e
oTAXslu52jPFSYH7xI3wPL0Ry5BZEa1yB1rBjGzNEkqtLr + Iqz9RXy ++ Cln8Fx / H
qNQuSfD1XBEUEhddNgscU9dpCFhRdtRZFkk2m7ey6iDzmuAIfVRLL9H0fYeb78Yv
IJm9ugkzNNUS4vkjOvQtEbGZKXCoR / M77xkQ184Q7hd6ewy8bfvgs9364dvt3b2Z
c89Ru / 83GKDDG0kB + UWP7zLYuBs0Z7INpCZmAeFSI0K9EOa + 6Vll / 6NPJZUZGa4W
/ NIxxRs2O9IgYxrWQ5F8q9zj + vgP83ZMBUvsBm51wa2SIWRoAzedBjNK / Qvj3dJZ
5JqWaTTXTFP4DYX8dxKeKn9u2 + YZ87Rpg8n4zhbzoGvITDmOkUxtYJnBRHbS1yjY
TfoYgaHtfv2DQzu5QpgEkXYQ4dGIhVd2HgMt9mPysJ + DxGYR1AJIFLt5PiMrZJqf
bDA9 / MI9k3iCJ6Cl8CCxBedkdzRo09WlNj57TQsuTnWi2UyjuiH6u3y / n1TFUX6p
BL668CgmPco71YrdM1uN
= jCJM
-----END PGP SIGNATURE -----