Coldkey : Outil de génération de clés et de sauvegarde papier pour l'ère post-quantique

Coldkey est un outil en ligne de commande pour générer des clés de chiffrement age post-quantiques et créer des sauvegardes papier. Il résout le problème de la perte des clés privées age—essentielles pour déchiffrer les fichiers chiffrés avec age ou sops—en produisant des documents HTML imprimables avec des codes QR.
Installation
# Homebrew (macOS/Linux)
brew install --cask pike00/tap/coldkey
Ou avec Go
go install github.com/pike00/coldkey/cmd/coldkey@latest
Démarrage rapide avec Docker (recommandé)
# Télécharger l'image
docker pull ghcr.io/pike00/coldkey:latest
Mode interactif — générer une clé et une sauvegarde papier
just docker-run
Sauvegarder une clé existante
just docker-backup /.config/sops/age/keys.txt
Toutes les commandes just docker-* incluent des drapeaux de durcissement de sécurité : --network none, --read-only, --cap-drop ALL, --security-opt no-new-privileges:true. La sortie est écrite dans ./output/.
Commandes
- Mode interactif (
coldkey) : Menu pour générer une nouvelle clé ou créer une sauvegarde à partir d'une clé existante. - Générer (
coldkey generate [-o CHEMIN] [-f] [--no-backup]) : Générer une nouvelle paire de clés age post-quantiques (ML-KEM-768 + X25519). Sortie par défaut sur stdout sauf si-oest fourni. - Sauvegarder (
coldkey backup [drapeaux] FICHIER_CLE) : Créer une sauvegarde papier HTML imprimable à partir d'un fichier de clé existant. - Version (
coldkey version) : Afficher la chaîne de version.
Modèle de sécurité
- Mémoire : Utilise
mlockall(MCL_CURRENT|MCL_FUTURE)pour empêcher l'échange du matériel de clé sur le disque. - Fichiers : Écrits avec le mode 0600, fsynced ; temporaires détruits (3 passages de réécriture).
- Processus : Les secrets passés uniquement via stdin/fichiers, jamais dans les arguments du processus.
- Conteneur : Image distroless/static:nonroot sans shell, UID non root 65534.
- Mise à zéro de la mémoire : Effort maximal de
secure.Zero()sur les tampons de clés avant le GC.
Encodage des codes QR
Les clés age post-quantiques ne stockent qu'une graine de 32 octets, donc keys.txt fait généralement ~2 089 octets—tenant dans un seul code QR (version 40, EC-L supporte 2 953 octets). Pour les fichiers plus volumineux, coldkey divise en plusieurs codes QR en utilisant un protocole de cadrage : COLDKEY:<partie>/<total>:<données>. Récupération : scanner tous les codes QR dans l'ordre, supprimer les préfixes, concaténer, et vérifier la somme de contrôle SHA-256.
Contenu de la sauvegarde papier
Le HTML généré comprend : titre/métadonnées (date, nom d'hôte, utilisateur, chemin source), texte brut de la clé en police monospace, code(s) QR avec annotation de capacité, somme de contrôle SHA-256, et instructions de récupération étape par étape.
Procédure de récupération
- Scanner le code QR ou taper le texte brut de la clé.
- Enregistrer dans
/.config/sops/age/keys.txt. - Vérifier :
sha256sum keys.txtcorrespond à la somme de contrôle imprimée. - Tester :
sops -d <n'importe quel fichier .sops>
Limites
Le ramasse-miettes de Go peut copier des objets en mémoire, et les chaînes Go sont immuables—le matériel de clé conservé sous forme de chaîne (par exemple, de identity.String()) ne peut pas être sécurisé par mise à zéro. Coldkey effectue une mise à zéro au mieux sur les tampons d'octets.
📖 Lire la source complète : HN LLM Tools
👀 See Also

Vulnérabilité RCE critique dans la bibliothèque protobuf.js
Une vulnérabilité critique d'exécution de code à distance dans les versions 8.0.0/7.5.4 et inférieures de protobuf.js permet l'exécution de code JavaScript via des schémas malveillants. Des correctifs sont disponibles dans les versions 8.0.1 et 7.5.5.

Piratage du chiffrement de la médiation AppLovin : l'empreinte numérique des appareils contourne l'ATT
Le reverse engineering a révélé que le chiffrement personnalisé d'AppLovin utilise un sel constant + une clé SDK, un PRNG SplitMix64, et aucune authentification. Les requêtes déchiffrées transportent environ 50 champs sur l'appareil (modèle matériel, taille d'écran, locale, heure de démarrage, etc.) même lorsque ATT est refusé, permettant une ré-identification déterministe entre applications.

Utilisateur d'OpenClaw Partage une Stratégie pour Équilibrer l'Autonomie des Agents et la Sécurité Web
Un utilisateur d'OpenClaw décrit son défi actuel : équilibrer l'autonomie des agents avec la sécurité, notamment concernant l'accès au web et les risques d'injection de prompt. Il propose une solution utilisant des segments d'agents à 'faible confiance' et 'haute confiance' avec une étape d'approbation humaine.

Attaque massive de la chaîne d'approvisionnement NPM & PyPI contre TanStack, Mistral AI et plus de 170 paquets
Une attaque coordonnée a compromis plus de 170 paquets npm et 2 paquets PyPI, ciblant TanStack (42 paquets), les SDK d'IA Mistral, UiPath, OpenSearch et Guardrails AI. Les versions malveillantes exécutent un dropper qui exfiltre les identifiants et sonde les métadonnées cloud.