Впервые взглянуть на кодовую базу FTX мы смогли в прошлую среду. Сторона обвинения показала скриншоты с Github в процессе допроса сотрудничающего со следствием свидетеля Гэри Вана, бывшего CTO компании FTX, который в разные промежутки времени отвечал за кодовую базу, лежащую в основе и FTX, и Alameda Research. Ван признал себя виновным по четырём пунктам обвинения.
Хотя существовала опасность того, что ознакомление жюри присяжных собьёт его с толку, Ван по предложению обвинения пошагово описал работу кода, и мне показалось, сделал это вполне понятно.
Наверно, этому способствовало и то, что инженеры FTX написали достаточно чистый код с описательными именами переменных и короткими функциями, а также выбрали человекочитаемый язык (Python).
Заметка для себя: если собираешься писать код для мошеннических действий, то сделай его запутанным и нечитаемым, чтобы снизить вероятность того, что в будущем его покажут жюри присяжных в качестве доказательства.
Основная часть обсуждений касалась флага allow_negative
, добавленного в кодовую базу FTX 1 августа 2019 года. Ван дал показания, что Сэм Бэнкман-Фрид попросил его и Нишада Сингха (бывшего технического директора FTX, тоже признавшего свою вину) добавить этот флаг. На скриншотах из Github видно, как Сингх внёс в код изменение, добавляющее столбец в базу данных, и логику, исключающую счета с этим флагом из проверок, которые в противном случае позволили бы определить, достаточно ли у них средств для снятия.
Позже самим Ваном было добавлено изменение, исключавшее ликвидацию счетов с этим флагом.
Обвинение воспользовалось этой возможностью, чтобы указать на то, что практически в тот же день, когда было внесено это изменение по приказу Бэнкмана-Фрида, сам Бэнкман-Фрид заявил в Twitter, что «Счёт [Alameda] не отличается от любого другого».
Ван подтвердил, что этот флаг allow_negative
был особой привилегией, выдаваемой только трейдинговым счетам Alameda Research, а скриншот базы данных также продемонстрировал практически неограниченную кредитную линию, которую могла использовать Alameda Research:
Ван рассказал, что изначально у Alameda не было такого высокого лимита кредита, но периодически трейдинговая фирма сталкивалась с проблемами в размещении торговых заявок из-за нехватки обеспечения, а Сэм Бэнкман-Фрид постоянно просил его повысить её лимит кредита, чтобы этого не происходило. По словам Вана, изначально лимит был установлен на «несколько миллионов долларов», но затем увеличен до одного миллиарда. Когда был достигнут и этот лимит, Бэнкман-Фрид попросил его установить значение настолько большое, чтобы они не могли его достичь. Тогда Ван установил его равным примерно 65 миллиардам долларов.
[Кто-то может задаться вопросом, почему Ван выбрал столь произвольное число, как $65355999994. Предположу, что он хотел задать его примерно равным $65,535 миллиардам (обратите внимание на перепутанные местами 5 и 3), выбрав число 65535, потому что в computer science оно означает наибольшее возможное значение беззнакового 16-битного целого числа. Это лишь предположение, но я не могу придумать более правдоподобной гипотезы.]
Затем сторона обвинения допросила Вана о «страховом фонде», который якобы должен был защитить и FTX, и её клиентов от неудачных торгов быстрее, чем на это мог среагировать механизм оценки рисков. FTX опубликовала предполагаемый баланс фонда на своём веб-сайте и активно рекламировала его существование, вплоть до свидетельства в Конгрессе США. Однако, по словам Вана, отображаемое на веб-сайте число было фальсифицированным.
Помощник федерального прокурора: Это реальное число?
Ван: Нет.
Помощник федерального прокурора: То есть это поддельное число?
Ван: Да.
Помощник федерального прокурора: Реальное число было выше или ниже поддельного?
Ван: Ниже.
Показанные жюри присяжных фрагменты кода демонстрируют, что Нишад Сингх написал код, обновляющий сумму страхового фонда, прибавляя к нему объём торгов за день, умноженный на случайное число, примерно равное 7500, и деля его на миллиард, из-за чего кажется, что веб-сайт берёт данные с баланса реального счёта, колеблющегося, когда биржа добавляет фонды или изымает их для покрытия убытков. На самом деле, всё это было придумано.
Это достаточно веское доказательство вины. Вероятно, можно было бы объяснить неточность числа — допустим, кто-то просто прописал его в коде веб-сайта и оно никогда не менялось и не отражало истинного баланса фонда; тогда это можно было оправдать тем, что оно точно описывало значение в какой-то момент времени, но потом его забыли изменить. Но очень сложно найти убедительное объяснение тому, что фонд увеличивался на случайное меняющееся число, никоим образом не связанное с реальным балансом счёта. Единственное объяснение очевидно: FTX пыталась показать клиентам сфабрикованное, но убедительное число. А это можно считать мошенничеством.
В другом месте кода можно заметить, что сумма FTT на самом деле представлена прописанным значением в пользовательском интерфейсе, а не берётся из внешнего источника данных.
Но это не было показано представителям жюри, вероятно, потому что рандомизированное число гораздо более наглядно.
В процессе допроса Вана стороной обвинения он рассказал, что во множестве случаев FTX сталкивалась с убытками, которые превосходили реальные, меньшие суммы средств, выделенные на страховой фонд. Один из таких случаев произошёл в 2021 году, когда трейдер смог воспользоваться багом в системе маржи FTX, что позволило ему вывести крупную позицию в криптовалюте MobileCoin. Позже он был ликвидирован, а у FTX возник ущерб на «много сотен миллионов долларов».
Сторона обвинения не упоминала этого, но Сэм Бэнкман-Фрид в мае 2022 года заявил под присягой перед Конгрессом США, что за предыдущие три года «страховой фонд выплатил суммарно $9,5 миллиона» и что «крупнейшее единовременное снятие за день из страхового фонда FTX.com составило $4,7 миллиона».
Однако обвинение показало фрагмент из подкаста Odd Lots, в котором Сэм Бэнкман-Фрид солгал интервьюеру Мэтту Ливайну, сказав, что механизм оценки рисков FTX настолько хорош, что «не было ни дня, когда сумма потерь была выше, чем мы заработали на биржевых сборах».
Ван свидетельствовал, что ущерб от аферы с MobileCoin и другие подобные потери, превышавшие суммы в страховом фонде, «брала на себя» Alameda, забирая позиции и обеспечение счёта, по сути, самостоятельно поглощая ущерб. Ван сказал, что Бэнкман-Фрид рассуждал так: «балансовые ведомости FTX публичнее, чем балансовые ведомости Alameda, а у инвесторов есть доступ к финансам FTX, но не к финансам Alameda».
И в самом деле, лишь недавно мы слышали свидетельство венчурного капиталиста Paradigm Мэтта Хуана, во время которого жюри были показаны балансовые ведомости: из них следовало, что за весь 2021 год было приблизительно $63 миллиона торговых расходов и $63 миллиона прочих расходов; в них совершенно точно отсутствовало «много сотен миллионов долларов», потерянных из-за инцидента с MobileCoin.
До завершения судебного заседания сторона защиты лишь вкратце допросила Вана, но начала с предположения о том, что он может говорить то, что хочет услышать государство, надеясь на более мягкий приговор (он может получить до 50 лет тюрьмы, но, скорее всего, благодаря сотрудничеству со следствием получит гораздо более короткий срок или вообще не будет отбывать наказание в виде лишения свободы). Также защита попыталась предложить альтернативное объяснение наличию флага allow_negative
: Alameda занималась конвертацией долларов США в стейблкойны, и на короткий промежуток времени ей нужно было заимствовать фонды FTX, прежде чем вернуть их в виде стейблкойнов. Однако не было ответа на вопрос, зачем для этого понадобился потолок в $65 миллиардов; скорее всего, на судебном заседании во вторник этот вопрос всплывёт.
Кроме того, во вторник будет свидетельствовать Кэролин Эллисон, бывшая CEO Alameda Research и девушка Сэма Бэнкмана-Фрида. Ожидается, что она станет «звёздным свидетелем» в этом деле, а сторона защиты уже рассказала в своих вступительных заявлениях о линии защиты «во всём винить Кэролин».