Skip to content
KitploitKITPLOIT
ИнструментыЭксплойтыБлог
Log in
Отправить
ИнструментыЭксплойтыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

ЛентыКонтактыКонфиденциальность© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
GraphIP-Bench — Бенчмарк и библиотека для оценки атак извлечения моделей и методов защиты прав собственности (водяные знаки, возмущение выходных данных, обнаружение запросов) на графовых нейронных сетях в рамках единого протокола чёрного ящика. | Kitploit
Инструменты/GitHubGitHub/labrai/graphip-bench
Оборонительные ИнструментыМашинное ОбучениеСтатьи и ИсследованияОбучение и ОбразованиеБезопасность ИИСостязательная Атака
GitHublabrai/graphip-bench

GraphIP-Bench

Бенчмарк и библиотека для оценки атак извлечения моделей и методов защиты прав собственности (водяные знаки, возмущение выходных данных, обнаружение запросов) на графовых нейронных сетях в рамках единого протокола чёрного ящика.

Репозиторий
2365 месяцев назадЕщё не проверено

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться

GraphIP-Bench

Насколько сложно украсть графовую нейронную сеть и можно ли это предотвратить?

Единый бенчмарк и библиотека для оценки атак извлечения моделей и защит прав собственности на графовых нейронных сетях в рамках единого воспроизводимого протокола чёрного ящика.

Project Python PyTorch DGL PyG License

Зачем нужен GraphIP-Bench · Ключевые особенности · Быстрый старт · Исследовательские вопросы · Структура · Цитирование

Attacks Defenses Datasets Backbones Tasks Joint Track


Зачем нужен GraphIP-Bench

Графовые нейронные сети, развёрнутые в виде облачных сервисов, можно украсть с помощью атак извлечения моделей: злоумышленник отправляет тщательно подобранные запросы, записывает метки или оценки уверенности, которые возвращает конечная точка, и обучает локальную суррогатную модель, воспроизводящую поведение целевой. Успешная кража раскрывает интеллектуальную собственность владельца, подрывает доход от оплаты за запрос и позволяет конкурентам воссоздать проприетарную функциональность с низкими затратами.

Растущее направление защит прав собственности — водяные знаки, фингерпринтинг, возмущение выходных данных, обнаружение шаблонов запросов — пытается предотвратить или отследить такую кражу. Но экспериментальная практика в этой области фрагментирована: исследования используют закрытые разбиения, несовместимые бюджеты и несогласованные метрики; немногочисленные существующие тестовые стенды сосредоточены на робастности или конфиденциальности и исключают извлечение моделей вместе с верификацией прав собственности.

GraphIP-Bench восполняет этот пробел. Он стандартизирует оценку двух взаимодополняющих треков — трека извлечения (злоумышленник обучает суррогатную модель, имитирующую развёрнутую GNN) и трека прав собственности (владелец модели проверяет водяной знак или фингерпринт после извлечения) — в рамках единого протокола чёрного ящика с общими разбиениями, запросами и бюджетами. Затем мы добавляем совместный трек атак и защит, который запускает каждую атаку извлечения на каждой защищённой цели и измеряет выживаемость водяного знака на извлечённой суррогатной модели — именно эта постановка определяет, полезна ли защита на практике.

КомпонентЧто это даёт
12 атакШесть базовых методов в стиле MEA (MEA0–MEA5), состязательный (AdvMEA), основанный на центральности (CEGA), учитывающий структуру (Realistic) и три варианта без данных (DFEA_I/II/III)
12 защит5 методов отслеживания владения (BackdoorWM, RandomWM, SurviveWM, ImperceptibleWM, Integrity) + 7 методов ограничения информации (OP_low, OP_high, PR_2bit, PR_top1, PRADA, AdaptMisinfo, GradRedir)
10 наборов данныхГомофильные цитирования (Cora, CiteSeer, PubMed), соавторство/товары (CoauthorCS, CoauthorPhysics, Computers, Photo), крупномасштабные (OGBN-Arxiv), гетерофильные (RomanEmpire, AmazonRatings)
3 магистрали × 3 задачиGCN, GAT, GraphSAGE для классификации узлов, предсказания связей, классификации графов
Совместный трекТочность суррогата и выживание водяного знака на извлечённом суррогате — всё в рамках одного протокола
ВоспроизводимостьПубличные разбиения, общие наборы запросов, фиксированные seed'ы, вывод в формате JSON-Lines, готовые скрипты агрегации

Ключевые особенности

Один протокол, две стороны

Каждая атака оценивается против каждой защиты при одинаковых разбиениях, бюджетах и допущениях о конечных точках. Точность, проверка владения, полезность и вычислительные затраты сообщаются в едином наборе метрик.

Выживание водяного знака, а не только его внедрение

Совместный трек измеряет, сохраняет ли водяной знак верификацию после фактического извлечения модели — выявляя разрыв, который упускают оценки на одной модели.

Гетерофильные и крупномасштабные графы

Помимо семи гомофильных графов базового протокола, мы добавляем OGBN-Arxiv (169 тыс. узлов, 40 классов) и гетерофильные RomanEmpire / AmazonRatings для стресс-тестирования поведения атак и защит.

Воспроизводимость по построению

Фиксированные seed'ы, общие наборы запросов и записи вывода в формате JSON-Lines для каждой ячейки (набор данных, атака, защита, режим, бюджет, seed). Запуск с одним seed'ом напрямую сопоставим с соответствующей ячейкой в статье.


Краткий обзор

ПоказательМасштаб в бенчмарке
Атаки извлечения12
Защиты владения / ограничения информации12
Наборы данных графов10
Магистрали GNN3 (GCN, GAT, GraphSAGE)
Задачи графового обучения3 (узлы / связи / графы)
Режимы доступности данных4 (оба, только признаки, только структура, без данных)
Стандартизированные бюджеты запросов5 (0.05× — 1.00× размера теста)
Seed'ов на ячейку3
Треки оценки3 (извлечение, владение, совместный)

Быстрый старт

git clone https://github.com/LabRAI/GraphIP-Bench.git
cd GraphIP-Bench
conda create -n graphip python=3.11 -y
conda activate graphip
pip install -r requirements.txt

Запустите одну ячейку трека извлечения:

python scripts/run_rq1_single.py \
  --dataset Cora \
  --attack MEA0 \
  --regime both \
  --budget 0.25 \
  --seed 0 \
  --gpu \
  --output-dir outputs/RQ1

Запустите совместный трек атаки и защиты на одном наборе данных:

python examples/run_joint_evaluation.py \
  --dataset Cora \
  --seed 0 \
  --gpu

Каждый запуск записывает одну JSON-Lines-запись на кортеж (attack, defense, regime, budget, seed) в outputs/. Записи можно объединять и анализировать с помощью вспомогательных скриптов в scripts/ (например, merge_rq1_rq5_faithful_results.py).


Установка

GraphIP-Bench поддерживает Linux (рекомендуется) с Python 3.10+. Мы фиксируем версии PyTorch / DGL / PyG, поскольку ядра graphbolt в DGL 2.1.0 поставляются в виде предварительно собранных разделяемых библиотек только для PyTorch 2.0–2.2 на CUDA 12.1.

Вариант A: Conda (рекомендуется)

conda create -n graphip python=3.11 -y
conda activate graphip
pip install -r requirements.txt

Вариант B: pip + venv

Скачать инструмент