Coldkey: Генерация ключей постквантовой эры и инструмент для бумажного резервного копирования

✍️ OpenClawRadar📅 Опубликовано: 15 мая 2026 г.🔗 Source
Coldkey: Генерация ключей постквантовой эры и инструмент для бумажного резервного копирования
Ad

Coldkey — это утилита командной строки для создания постквантовых ключей шифрования age и бумажных резервных копий. Она решает проблему потери приватных ключей age — необходимых для расшифровки файлов, зашифрованных с помощью age или sops, — создавая печатные HTML-документы с QR-кодами.

Установка

# Homebrew (macOS/Linux)
brew install --cask pike00/tap/coldkey

Или с помощью Go

go install github.com/pike00/coldkey/cmd/coldkey@latest

Быстрый старт с Docker (рекомендуется)

# Загрузка образа
docker pull ghcr.io/pike00/coldkey:latest

Интерактивный режим — создание ключа и бумажной копии

just docker-run

Резервное копирование существующего ключа

just docker-backup /.config/sops/age/keys.txt

Все команды just docker-* включают флаги усиления безопасности: --network none, --read-only, --cap-drop ALL, --security-opt no-new-privileges:true. Вывод записывается в ./output/.

Команды

  • Интерактивный режим (coldkey): Меню для создания нового ключа или создания резервной копии из существующего.
  • Создать (coldkey generate [-o PATH] [-f] [--no-backup]): Создать новую постквантовую пару ключей age (ML-KEM-768 + X25519). По умолчанию вывод в stdout, если не указан -o.
  • Резервное копирование (coldkey backup [flags] KEYFILE): Создать печатную HTML-бумажную копию из существующего файла ключа.
  • Версия (coldkey version): Вывести строку версии.
Ad

Модель безопасности

  • Память: Использует mlockall(MCL_CURRENT|MCL_FUTURE) для предотвращения выгрузки ключевого материала на диск.
  • Файлы: Записываются с правами 0600, с fsync; временные файлы уничтожаются (трехкратная перезапись).
  • Процесс: Секреты передаются только через stdin/файлы, никогда через аргументы процесса.
  • Контейнер: Образ Distroless/static:nonroot без оболочки, не-root UID 65534.
  • Обнуление памяти: Максимально возможное secure.Zero() для буферов ключей перед GC.

Кодировка QR-кода

Постквантовые ключи age хранят только 32-байтовое семя, поэтому keys.txt обычно составляет ~2 089 байт — помещается в один QR-код (версия 40, EC-L поддерживает 2 953 байта). Для больших файлов coldkey разбивает на несколько QR-кодов с использованием протокола фреймирования: COLDKEY:<часть>/<всего>:<данные>. Восстановление: отсканируйте все QR-коды по порядку, удалите префиксы, объедините и проверьте контрольную сумму SHA-256.

Содержимое бумажной копии

Сгенерированный HTML включает: заголовок/метаданные (дата, имя хоста, пользователь, путь к исходному файлу), текст ключа моноширинным шрифтом, QR-код(ы) с указанием емкости, контрольную сумму SHA-256 и пошаговые инструкции по восстановлению.

Процедура восстановления

  1. Отсканируйте QR-код или введите текст ключа вручную.
  2. Сохраните в /.config/sops/age/keys.txt.
  3. Проверьте: sha256sum keys.txt должно совпадать с напечатанной контрольной суммой.
  4. Протестируйте: sops -d <любой .sops файл>

Ограничения

Сборщик мусора Go может копировать объекты в памяти, а строки Go неизменяемы — ключевой материал, хранящийся в виде строки (например, из identity.String()), не может быть безопасно обнулен. Coldkey выполняет максимально возможное обнуление байтовых буферов.

📖 Читать полный исходник: HN LLM Tools

Ad

👀 Смотрите также

Анализ безопасности извлечения компонентов OpenClaw для создания пользовательских ИИ-агентов
Безопасность

Анализ безопасности извлечения компонентов OpenClaw для создания пользовательских ИИ-агентов

Разработчик проанализировал исходный код OpenClaw, чтобы определить, какие компоненты можно безопасно извлечь для использования в пользовательских ИИ-агентах, оценив каждый по методологии Lethal Quartet. Анализ выявил значительные риски безопасности в таких компонентах, как Semantic Snapshots и BrowserClaw.

OpenClawRadar
Строгие правила "только для чтения" в файлах навыков являются инструкциями, а не принудительными требованиями
Безопасность

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

Пользователь Reddit сообщает, что агент OpenClaw с правилом «ТОЛЬКО ЧТЕНИЕ — никогда не публиковать» был обманут с помощью инъекции промптов и сделал пост, что подчёркивает: правила в файлах навыков — это лишь инструкции, а не принудительные ограничения.

OpenClawRadar
Функция AI-поддержки Meta позволяет любому угнать аккаунты Instagram — подробности эксплойта внутри
Безопасность

Функция AI-поддержки Meta позволяет любому угнать аккаунты Instagram — подробности эксплойта внутри

Функция поддержки AI в Instagram, проходящая A/B-тестирование, позволяет злоумышленникам сбросить пароль, попросив агента отправить код на произвольный email. Уже взломано более 100 ценных аккаунтов.

OpenClawRadar
Исследователи Университета Торонто продемонстрировали ИИ-червя, работающего на бесплатных моделях с открытым весом
Безопасность

Исследователи Университета Торонто продемонстрировали ИИ-червя, работающего на бесплатных моделях с открытым весом

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

OpenClawRadar