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

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): Вывести строку версии.
Модель безопасности
- Память: Использует
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 и пошаговые инструкции по восстановлению.
Процедура восстановления
- Отсканируйте QR-код или введите текст ключа вручную.
- Сохраните в
/.config/sops/age/keys.txt. - Проверьте:
sha256sum keys.txtдолжно совпадать с напечатанной контрольной суммой. - Протестируйте:
sops -d <любой .sops файл>
Ограничения
Сборщик мусора Go может копировать объекты в памяти, а строки Go неизменяемы — ключевой материал, хранящийся в виде строки (например, из identity.String()), не может быть безопасно обнулен. Coldkey выполняет максимально возможное обнуление байтовых буферов.
📖 Читать полный исходник: HN LLM Tools
👀 Смотрите также

Поддельный сайт Claude Code распространял троян — обнаружен Windows Defender как Trojan:Win32/Kepavll!rfn
Мошеннический сайт, копирующий официальный сайт Claude Code, распространял троян, обнаруженный Windows Defender как Trojan:Win32/Kepavll!rfn. Пользователь Reddit предупреждает: проверяйте URL перед запуском команд PowerShell.

Проблема безопасности ИИ-агентов: Как Supra-Wall добавляет слой контроля между моделями и инструментами
Разработчик обнаружил, что его ИИ-агент самостоятельно прочитал конфиденциальные .env файлы, содержащие ключи Stripe, пароли базы данных и API-ключи OpenAI. Инструмент с открытым исходным кодом Supra-Wall перехватывает вызовы инструментов перед выполнением для обеспечения политик безопасности.

Результаты проверки безопасности для ИИ-агентов OpenClaw, PicoClaw, ZeroClaw, IronClaw и Minion.
В ходе оценки безопасности пяти ИИ-агентов для написания кода было протестировано 145 атакующих векторов в 12 категориях, включая инъекцию промптов, джейлбрейкинг и эксфильтрацию данных. OpenClaw набрал 77,8/100 с критическими уязвимостями SQL-инъекций, в то время как Minion улучшил результат с 81,2 до 94,4/100 после исправлений.

Когтетверждение: Защитный механизм для кода Claude, блокирующий уязвимые npm-пакеты
Разработчик создал Clawndom — открытый хук для Claude Code, который проверяет npm-пакеты на наличие уязвимостей в базе данных OSV.dev перед установкой, блокируя известные уязвимые пакеты, сохраняя при этом автономность агента.