Шифруй то, шифруй это, или LLM под замком
Здравствуйте, уважаемые читатели Хабра. Чем больше я погружаюсь в LLM, тем больше укрепляюсь во мнении, что сейчас они (LLM) заняли если не самое важное, то уж точно одно из очень значимых мест во всём пантеоне моделей машинного обучения. При этом всё чаще встаёт вопрос шифрования моделей в самом широком смысле. Речь не столько о механизмах, алгоритмах, подходах и методиках шифрования того, что запрашивает пользователь, сколько о работе с данными в целом, в том числе и для обучения моделей. То есть о шифровании как на входе, так и на выходе — данных от пользователя, от модели и обучающих данных.
Мы поговорим о безопасном обращении с коммерческим контентом, шифровании данных, моделях и подходах к безопасному обращению и встраиванию коммерческих данных в модель. Будет интересно;)
Почему это важно? Сегодня работает четвёртое поколение GPT‑систем, ждём пятое. Есть много аналогов «четвёрки» (Megatron‑LLM, LLaMA, Claude, PaLM, Mistral, BLOOM, Grok, Megatron‑Turing NLG, Chinchilla, OPT, GODEL, Jurrassic-2), которые по ряду параметров намного превосходят GPT-4. Однако для качественной «эволюции» систем необходимо «скармливать» им «правильный» эксплуатационный код, апробированный и полностью покрытый тестами, который создаётся крупными корпорациями, средним и малым бизнесом. Но есть нюанс: такой код просто так никто не отдаст. Более того, он защищён авторскими правами и имеет ряд наложенных юридических условий использования.
Так как сейчас ни один из вышеупомянутых чатботов (генеративных моделей) не способен выдать что‑либо на уровне архитектора или серьёзной production‑разработки, полноценная интеграция среди моделей может быть не такой быстрой. Да, это пытаются обойти, как, например, показано в этой статье. Более того, в модель невозможно сейчас заложить большой временной пласт всей разработки проекта, например за год, если, конечно, это не внутренняя модель крупной корпорации. Это как раз и был один из скрытых факторов, когда OpenAI анонсировали расширение последовательности до 8192 токенов в 2023 году, причём в 2025 году ожидается расширение этой последовательности. Из‑за этого проблема шифрования сейчас стоит очень остро, так как появляется всё больше атак, методов обхода блокировок и различных способов изменения правил. Например, на просторах Git можно найти такие «замечательные» вещи: раз, два.
Ещё один неприятный фактор — это заимствование контента. Стремительно растёт количество судебных исков к таким компаниям как OpenAI (ChatGPT), NVIDIA (Megatron), Microsft (Bard), CompVIS (Stable Diffusion), потому что они по многим сообщениям (раз, два, три, четыре) просто «заимствуют» внешний контент (аудио, видео, код, текст, другие технологические и технические данные), без соблюдения любых авторских прав и коммерческих соглашений. Последний скандал с NVIDIA только подтвердил эти моменты. По имеющимся сведениям, скачивание велось не только из открытых источников (YouTube, NetFlix), но и с пиратских ресурсов.
Идёт настоящая гонка, если не война за контент, и ни нормы, ни законы, ни какие‑то прочие моменты уже не играют роли для таких крупных конгломератов. Правда, совсем недавно в ходе судебных переговоров Google заплатила СМИ крупные отступные за использование контента. Но ситуация глобально не изменится, поэтому стоит задуматься.
При этом размежевание по использованию контента и подходам происходит не только в программной, но и в аппаратной сфере. Так, OpenAI собирается выпускать собственные чипы для GPU, тем самым открыто бойкотируя и «сливая» гегемонию NVIDIA при поддержке не менее значимых игроков. При этом под шумок и такие «киты» как Blackrock, Neuberger Berman, Type One Ventures, Cisco, KDDI и Samsung Catalyst Fund во всю строят свой собственный заводик и уже получили под это дело инвестиции. Конечно, о поглощении компаний речи не идёт, но ситуация очень близка к этому. Кроме того, на пороге уже активно «маячит» AGI и квантовое шифрование, которого мы обязательно коснёмся.
Эта битва будет легендарной ;)
Шифрование
Начнём с безопасной передачи приватных данных. В этом исследовании предлагается использовать простой, но эффективный механизм EmojiCrypt для защиты конфиденциальности пользователей. Он использует Emoji для шифрования пользовательских данных перед их отправкой в LLM. Это делает их неразборчивыми для человека или экспертизы LLM, но сохраняет первоначальный смысл подсказки, что гарантирует отсутствие влияния на эффективность модели.
Тестирование проводилось на трёх задачах: персонализированных рекомендациях, анализе настроений и анализе табличных данных. Результаты экспериментов показали, что EmojiCrypt может шифровать личную информацию в подсказках таким образом, что не только предотвращает обнаружение конфиденциальных данных человеком или самой LLM, но и сохраняет или даже улучшает точность без дополнительной настройки, достигая сопоставимой или даже лучшей точности по сравнению с прямым обращением к LLM без шифрования подсказок (Рис. 1).
Рис. 1. Пример работы шифрования сообщений с помощью алгоритма EmojiCrypt
Также здесь упоминается, что существует проблема «утечки» (раз, два, три) данных, и она не может быть решена простыми решениями, такими как RSA‑шифрование. Передача данных в облачное хранение не совсем безопасна, поскольку содержимое разговоров пользователя с LLM может быть изучено в параметрах модели, которые затем могут быть раскрыты в результате атак противника (Jailbrake LLM).
Кроме того, в ряде работ замечено, что сейчас активно применяют гомоморфное шифрование по схеме BVF (Brakerski‑Vaikuntanathan‑Fan‑Vercauteren) — одной из наиболее известных схем полных гомоморфных шифрований (Fully Homomorphic Encryption, FHE, оптимизация этого подхода — FastQuery, и можно почитать ещё тут). Она основана на сложности задачи вычисления многомерных линейных уравнений и является развитием схемы Брейкерски и Вайкунтанатана, известной как схема BGV. Основные особенности схемы BVF:
Эффективность.Эта схема делает акцент на эффективности вычислений и снижении шума (ошибки), который обычно возникает при гомоморфных операциях.
Модулярные редукции. Применяются специальные техники редукции для контроля уровня шума в процессе вычислении.
Поддержка широкого класса операций. Схема BVF поддерживает как сложение, так и умножение зашифрованных данных, что делает её пригодной для сложных вычислительных задач.
Эти схемы не идеальны, теоретически их можно взломать. Но есть несколько важных факторов, один из которых — сложность задачи. Безопасность BVF основана на сложности решения задачи обучения с ошибками (Learning With Errors, LWE) и связанных задач на решётках (Lattice-based cryptography). Они считаются чрезвычайно трудными для взлома с помощью современных алгоритмов и вычислительных мощностей, однако одним из претендентов на эту роль могут быть квантовые алгоритмы (алгоритм Шора) либо его модифицированный вариант — алгоритм Регева. При этом примерный путь взлома будет такой:
Анализ структуры задачи обучения с ошибками (LWE). Схема BVF основана на задаче обучения с ошибками (Learning with Errors, LWE), которая заключается в том, чтобы на основе линейных уравнений с зашумлёнными коэффициентами восстановить исходные данные. Без шума задача является простой, но добавление ошибки делает её вычислительно трудной.
Преобразование LWE в проблему периодичности. Квантовый алгоритм Шора хорошо работает с задачами, которые можно свести к нахождению периодичности функций (например, в задаче факторизации чисел через нахождение порядка элемента в группе). Для этого потребуется разработать квантовый алгоритм, который свёл бы задачу обучения с ошибками к проблеме нахождения периодичности.
Построение квантового оракула. Алгоритм Шора использует квантовый оракул для вычисления состояния суперпозиции, которое затем проходит через квантовое преобразование Фурье для нахождения периодичности. Для задачи LWE нужно сделать подобный оракул, который генерирует суперпозицию всех возможных решений системы линейных уравнений с шумом.
Для решения задачи избавления от шума (компенсации) нужно его проанализировать. Тем самым получаем структуру шума и возможность подавить его. Так как он имеет вероятностный характер и, более того, его состав очень неоднороден, а содержание достаточно мало (на уровне 1%), то для изучения структуры шума можно использовать библиотеки для генерации синтетических данных (Pandas‑Faker, Mimesis, Synth), которые учитывают статистические распределения. Таким образом можно увеличить размер обучающего набора шума для разработки последующих моделей и получения распределения шума. Модели можно взять следующие: HMM, CRF, VAE.
В другой работе (если злоумышленник по каким‑то причинам узнал, что используется шифрование Emoji Encrypted и хочет подделать запрос) рассматривается не менее интересный подход с позиции Jailbreak. Метод основан на персонализированном шифровании, выполняемом на CodeChamelion. Он позволяет скрыть небезопасные намерения при выдаче подсказок для LLM. Таким образом, следует решать обратную задачу: расшифровывать зашифрованные сообщения для выявления «зловредных посылок» не в самой модели, а в отдельно созданной «песочнице». Это позволит нарастить фильтр на входе модели в дополнение к уже имеющимся на основе LLM‑Stega и PermLLM, MPCFormer, Puma.
Таким образом, есть примерный концепт шифрования и дешифрования. Комбинируя эти методы можно учесть методику существующего дешифрования и дополнить алгоритмы шифрования, которые еще не взломаны, но имеют потенциал к этому.
Набор инструментов
Вот несколько прикладных инструментов, которые сейчас используются для защиты и шифрования моделей.
Начнём, пожалуй, с шифрования и общей системы безопасности моделей: LLM‑Guard, cyber‑security‑llm‑agents, awesome‑llm‑security, PurpleLlama, agentic_security, llm‑security, rebuff, LLM Security 101, AutoAudit, llm‑security‑prompt‑injection.
Отдельное слово скажем про benchmark«и. Эти инструментов сейчас гора, но все они весьма однотипны, и можно разделить их на несколько категорий:
Технические (написать код, проверить, конвертировать, оптимизировать): Yet Another Applied LLM Benchmark, Bench, evalplus, bigcode‑evaluation‑harness, evaluation, CodeXGLUE.
Нагрузочные (оценка качества модели, скорость генерации лексем, затраты ресурсов, производительность): GPU‑Benchmarks‑on‑LLM‑Inference, Big‑BENCH, llmperf, llm‑benchmarker‑suite.
Мультимодальные (текст, видео, код, изображения): 大模型评测数据集和工具大全 (Full Collection Test Pack for LLM).
Агентные (тестирование ассистентов, агентов, общий диалог): FastChat, FLASK, llm‑benchmarks.
Атакующие (взлом, обход правил, тестирование безопасности, устойчивость): fiddler‑auditor, llm‑atacks.
Системы шифрования для LLM множатся и расширяются, тренд этот будет только усиливаться благодаря тому, что проблема галлюцинации пока не решена полностью и механизмов обхода блокировок по тем же промптам становится всё больше.