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

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

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

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

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

Категории

Все категории
Loading categories
gEnclave — Централизованный аппаратно-защищённый анклав криптографической идентификации на базе TPM 2.0 и многопротокольный мост для Linux (FIDO2/CTAP2 WebAuthn Passkeys, OpenSSH Agent, GnuPG LibAssuan, age-plugin, зашифрованное хранилище конфигурации). | Kitploit
Инструменты/GitLabGitLab/renich/genclave
Взлом паролейИнструменты шифрования/дешифрованияУправление идентификациейКриптографияКонфиденциальностьАппаратная БезопасностьУтилиты и фреймворкиОбнаружение СекретовУправление идентификацией и доступом (IAM)Аутентификация
GitLab
14 ч 51 мин назадЕщё не проверено

Популярное

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

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

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

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

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

gEnclave

Централизованный аппаратно-защищённый анклав криптографической идентификации на базе TPM 2.0 и многопротокольный мост для Linux (FIDO2/CTAP2 WebAuthn Passkeys, OpenSSH Agent, GnuPG LibAssuan, age-plugin, зашифрованное хранилище конфигурации).

Репозиторий

======== gEnclave

.. image:: https://gitlab.com/renich/gpasskey/-/raw/master/assets/banner.svg :width: 100% :align: center :alt: gEnclave banner

|

.. image:: https://gitlab.com/renich/gpasskey/badges/master/pipeline.svg :target: https://gitlab.com/renich/gpasskey/-/commits/master :alt: pipeline status .. image:: https://img.shields.io/gitlab/v/release/renich/gpasskey?logo=gitlab&label=release :target: https://gitlab.com/renich/gpasskey/-/releases :alt: GitLab Release .. image:: https://img.shields.io/badge/Go-1.26+-00ADD8?style=flat&logo=go :target: https://golang.org/ :alt: Go Version .. image:: https://img.shields.io/badge/License-GPLv3-blue.svg?logo=gnu :target: https://www.gnu.org/licenses/gpl-3.0 :alt: License

|

.. image:: https://img.shields.io/badge/FIDO2-CTAP2%20Virtual%20HID-4285F4?logo=fido :target: docs/technical/specs/ctap2-virtual-hid.rst :alt: FIDO2 CTAP2 .. image:: https://img.shields.io/badge/Hardware-TPM%202.0%20Sealed-4CAF50?logo=security :target: docs/technical/specs/tpm-binding.rst :alt: TPM 2.0 .. image:: https://img.shields.io/badge/Bridges-SSH%20%7C%20GPG%20%7C%20Age%20%7C%20D--Bus-8b5cf6 :target: docs/technical/specs/protocol-bridges.rst :alt: Multi-Protocol Bridges .. image:: https://img.shields.io/badge/Donate-Liberapay-f6c915.svg?logo=liberapay&logoColor=black :target: https://liberapay.com/Renich/donate :alt: Donate using Liberapay

.. caution::

ПРЕДВАРИТЕЛЬНАЯ АЛЬФА-ВЕРСИЯ — ИСПОЛЬЗУЙТЕ НА СВОЙ РИСК!

Несмотря на нумерацию релизов, gEnclave (ранее gpasskey) в настоящее время является экспериментальным программным обеспечением на стадии предварительной альфы, проходящим быструю архитектурную разработку. Криптографические схемы, форматы хранилищ и протокольные мосты могут изменяться без обратной совместимости.

  • Высокий риск потери ключей и данных: Всегда записывайте и надёжно храните вашу 24-словную фразу восстановления BIP39.
  • Поддерживайте вторичную 2FA: При регистрации виртуальных ключей безопасности FIDO2 на производственных аккаунтах всегда настраивайте вторичный метод 2FA (например, TOTP или резервные коды восстановления).
  • Без гарантий: Предоставляется строго «как есть» без каких-либо гарантий в соответствии с лицензией GNU GPLv3.

Обзор

gEnclave предоставляет унифицированный аппаратно-защищённый анклав безопасности, который хранит приватные ключи и секреты в зашифрованном хранилище, запечатанном TPM. Он действует как многопротокольный мост, поддерживая WebAuthn/FIDO2 Passkeys, OpenSSH Agent, протокол плагина шифрования age, эмуляцию подписи коммитов GnuPG и зашифрованную конфигурацию секретов.

Ключевые возможности

  • Многопротокольная поддержка:

    • FIDO2/CTAP2 Passkeys: Эмулятор виртуального USB-ключа безопасности через /dev/uhid для нативной аутентификации по Passkey в браузерах (Firefox, Chrome, Chromium) и ОС.
    • SSH Agent: Протокол агента, совместимый с OpenSSH.
    • age-plugin: Нативная поддержка шифрования файлов age (v1) (age-plugin-ge/age-plugin-gpasskey).
    • GnuPG Bridge: Эмулирует GPG CLI (genclave-gpg/gpasskey-gpg) для бесшовной подписи и проверки коммитов Git.
  • Аппаратно-защищённая безопасность: Приватные ключи шифруются с помощью AES-256-GCM, преимущественно запечатываются в TPM 2.0 с кэшированием SRK и автоматическим программным откатом на Argon2id.

  • Криптографическая привязка PIN и кэш авторизации: Каждая операция привязана к подключу, производному от PIN, с кэшем авторизации в памяти, заблокированной ядром (mlock). Поддерживается настраиваемая длительность всплеска (по умолчанию 5 с) или постоянное/неограниченное кэширование (GENCLAVE_SSH_CACHE_TTL="infinite"), с мгновенным обнулением при приостановке системы или ручной блокировке.

  • Предварительная аутентификация CLI и управление блокировкой: Разблокировка или блокировка кэша в памяти непосредственно из терминала (, ) для автоматизированных пакетных скриптов и безголовых рабочих процессов.

Требования и предварительные условия

Аппаратное обеспечение и ядро

root@kitploit:~

* **TPM 2.0**: Аппаратное устройство TPM 2.0 (``/dev/tpmrm0`` или ``/dev/tpm0``) или ``swtpm`` для программно-эмулированной разработки.
* **Ядро Linux с /dev/uhid**: Нативная поддержка ядром HID-устройств пользовательского пространства (включена по умолчанию в современных дистрибутивах) для поддержки виртуальных браузерных passkey FIDO2/CTAP2.

Зависимости времени выполнения
  • zenity: Требуется для графического ввода PIN, запросов авторизации и модальных диалогов фразы восстановления в сессиях Wayland и X11.
  • pinentry/pinentry-curses: Требуется для безопасного ввода PIN в TTY в консольных или безголовых терминальных средах.
  • wl-clipboard (wl-copy) или xclip: Рекомендуется для копирования в буфер обмена одним щелчком в диалоге аварийного восстановления.
  • tpm2-tools: Рекомендуется для проверки аппаратного обеспечения и запроса статуса PCR.

Зависимости для сборки и разработки

root@kitploit:~

* **Go 1.26** или новее
* **GNU Make**
* **swtpm** (опционально, требуется для запуска полного набора интеграционных тестов)

Установка через менеджер пакетов
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

В Fedora/RHEL/AlmaLinux:

.. code-block:: bash

   sudo dnf install golang make tpm2-tools zenity pinentry wl-clipboard swtpm

В Arch Linux:

.. code-block:: bash

   sudo pacman -S go make tpm2-tools zenity pinentry wl-clipboard swtpm

В Debian/Ubuntu:

.. code-block:: bash

   sudo apt install golang-go make tpm2-tools zenity pinentry-curses wl-clipboard swtpm

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

Сборка и установка для вашей учётной записи (рекомендуется, без root):

.. code-block:: bash

   make clean && make all
   make install-user   # Installs to ~/.local/bin, ~/.config/systemd/user, ~/.local/share/dbus-1

Или установка в систему (требуется root):

.. code-block:: bash

   sudo make install   # Installs to /usr/local/bin

Включение и запуск активации сокета:

.. code-block:: bash

   systemctl --user enable --now genclave-ssh.socket genclave-gpg.socket

Инициализация хранилища и проверка статуса:

.. code-block:: bash

   ge status
   # Identities are enrolled automatically on first use by clients 
   # (WebAuthn passkeys, SSH, age, GPG) or via the portal API.

Предварительная аутентификация кэша для автоматизированных скриптов или безголовых сессий:

.. code-block:: bash

   # Unlock cache interactively via TTY:
   ge unlock

   # Or pre-authenticate via pipeline in scripts:
   echo "$PIN" | ge unlock --stdin

   # Purge and lock immediately when finished:
   ge lock


Passkeys WebAuthn в браузере:

.. code-block:: bash

   # Open Firefox or Chrome, go to https://webauthn.io/
   # Click "Register" -> enter your PIN in the gEnclave prompt -> Passkey is created!
   # Click "Authenticate" -> enter your PIN -> Instant login verified!

Управление зашифрованными секретами в конфигурационном хранилище на базе TPM:

.. code-block:: bash

   ge set-secret my-api-key "super-secret-value"
   ge get-secret my-api-key

Документация и спецификации
---------------------------

Наша комплексная инженерная документация организована в модульные спецификации, архитектурные записи и дорожные карты:

* **Функциональные спецификации**: `Functional Spec Index`_ — Определяет пользовательские требования и модели авторизации.
* **Технические чертежи**: `Technical Spec Index`_ — Подробная архитектура Go, криптографические примитивы и проекты анклавов.
* **Записи об архитектурных решениях (ADR)**: `ADR Index`_ — Неизменяемый журнал архитектурных, криптографических и security-решений.
* **API и сетевые протоколы**: `API Spec Index`_ — Управляющий сокет, порталы D-Bus и схемы сетевых мостов.
* **Дорожная карта выполнения проекта**: `Roadmap Index`_ — Поэтапные инженерные графики и вехи.

Руководства пользователя
~~~~~~~~~~~~~~~~~~~~~~~~

* `User Quick Start`_ — Начало работы за 5 минут.
* `Installation Guide`_ — Подробная сборка, настройка udev и systemd.
* `OpenSSH Guide`_ — Интеграция с агентом OpenSSH, jump-хосты и ключи FIDO2.
* `GnuPG & Git Signing Guide`_ — Управление ключами OpenPGP и подпись коммитов Git.
* `Pluggable Factors Guide`_ — Keyfiles, YubiKeys, биометрия и кворумы Шамира.
* `Security Guide`_ — Аппаратный анклав TPM 2.0 и изоляция памяти «Wrap and Clear».
* `Configuration Guide`_ — Переменные окружения и параметры сервиса.
* `CLI Reference`_ — Полная документация интерфейса командной строки.

.. _Functional Spec Index: docs/functional/spec.rst
.. _Technical Spec Index: docs/technical/spec.rst
.. _ADR Index: docs/adrs/index.rst
.. _API Spec Index: docs/api/spec.rst
.. _Roadmap Index: docs/project/roadmap.rst
.. _User Quick Start: docs/user/quickstart.rst
.. _Installation Guide: docs/user/installation.rst
.. _OpenSSH Guide: docs/user/ssh.rst
.. _GnuPG & Git Signing Guide: docs/user/gpg.rst
.. _Pluggable Factors Guide: docs/user/factors.rst
.. _Security Guide: docs/user/security.rst
.. _Configuration Guide: docs/user/configuration.rst
.. _CLI Reference: docs/user/cli.rst

Подключаемые факторы и многосторонний кворум (Фаза 7)
-----------------------------------------------------

**Фаза 7: Движок подключаемых многофакторных и многосторонних кворумов** предоставляет:

* **Потоковый хешер произвольных файлов**: Используйте любой файл (от короткого стихотворения до 100-гигабайтного мастер-файла FLAC или изображения) в качестве фактора авторизации с постоянным потреблением памяти :math:`\mathcal{O}(1)` (буфер :math:`\le 64\,\text{KB}`).
* **Многосторонний кворум («Рецепт Coca-Cola»)**: **Разделение секрета Шамира с обёрткой ключа** над :math:`\text{GF}(2^8)` с тегами проверки HMAC, обеспечивающее авторизацию с разделённым ключом :math:`k`-из-:math:`n`.
* **Аппаратное обеспечение и биометрия**: Физический YubiKey (Slot 2 HMAC-SHA1), физические ключи FIDO2 (``hmac-secret``) и биометрия Linux (``fprintd``).
* **Динамическая перегенерация ключей факторов**: Атомарное перешифрование в памяти (``ge rekey``) для переключения политики факторов идентичности на лету без пересоздания ключей.
* **Модернизация CLI**: Оптимизированный интерфейс командной строки, сведённый к каноническому ``ge``.
* **Автоматическая разблокировка в рабочей среде**: Бесшовная интеграция с Freedesktop Secret Service (``org.freedesktop.secrets``).

См. `Phase 7 Roadmap`_ и `ADR-006`_ для полных спецификаций.

.. _Phase 7 Roadmap: docs/project/roadmaps/phase-7-pluggable-factors.rst
.. _ADR-006: docs/adrs/2026-08-25-pluggable-auth-factors.rst

Компоненты
----------

* **genclaved**: Ядро анклава безопасности и демон виртуального USB-ключа безопасности CTAP2/FIDO2 (``man 8 genclaved``).
* **ge**: Основной инструмент командной строки для администрирования хранилища, генерации ключей OpenSSH/GnuPG и зашифрованной конфигурации (``man 1 ge``).
* **age-plugin-ge**: Плагин для инструмента шифрования ``age`` (``man 1 age-plugin-ge``).
* **genclave-gpg**: Мост эмуляции для подписи и проверки, совместимых с GnuPG (``man 1 genclave-gpg``).
* **genclave-ui**: Графический помощник для ввода PIN (``man 1 genclave-ui``).

Разработка
----------

Запуск модульных тестов:

.. code-block:: bash

   make test

Запуск полного нативного интеграционного набора Go (требуется ``swtpm``):

.. code-block:: bash

   make integration-test

Поддержка и пожертвования
-------------------------

Если вы находите **gEnclave** полезным и хотите поддержать его дальнейшую разработку, рассмотрите возможность пожертвования через Liberapay:

.. image:: https://liberapay.com/assets/widgets/donate.svg
   :target: https://liberapay.com/Renich/donate
   :alt: Donate using Liberapay

Лицензия
--------

Copyright 2026 EVALinux

Этот проект лицензирован под GNU General Public License v3.0 или более поздней версией.
Подробности см. в файле LICENSE.
Скачать инструмент
ge unlock [--stdin]
ge lock
  • Argon2id KDF: Вывод ключей, устойчивый к атакам по памяти, для мастер-парольной фразы, восстановления и подключей.

  • Защита от перебора: Автоматическая экспоненциальная задержка при неудачных попытках авторизации.

  • Интеллектуальная маршрутизация UI: Автоматическое определение сессии (графическая или TTY) для запросов авторизации.

  • Безопасная память: Использует mmap/mlock и стратегию «Wrap and Clear» для предотвращения утечки ключевого материала в swap или кучу GC.

  • Управление идентификацией: Надёжный CLI (ge) для администрирования хранилища и управления зашифрованными секретами.