--- categories: ['OpenBSD','Système','Base'] date: 2017-07-31T13:50:49+01:00 description: "Petit rappel pour l'utilisation de l'outil signify sous OpenBSD." draft: false tags: ['OpenBSD','Signify','Mini-Tuto'] title: "[Mini-Tuto] Signify (OpenBSD)" translationKey: 'openbsd-signify' --- ## Description Un mini-tutoriel concernant l'usage de l'outil {{< man signify >}} ! Pour ceux qui ne connaissent pas, *signify* est un outil natif du projet OpenBSD, dont le but est de générer une signature cryptographique d'un fichier ou ensemble de fichiers. ## Vérification de signature Vous avez récupéré un fichier de clé publique, créé avec signify, ainsi que le fichier de signature ; pour vérifier que les fichiers fournis avec soient intègres, il vous faudra utiliser signify ainsi :
`$ signify -C -p Nom_Projet.pub -x Nom_Projet.sig` Cette commande signifie de vérifier avec la clé publique du projet Untel, tous les fichiers écrites dans le fichier de signature. Cette commande peut être légèrement abrégée :
`$ signify -Cp Nom_Projet.pub -x Nom_Projet.sig` ## Création de signature Maintenant, voyons comment créer un ensemble de fichiers de clé privée/publique avec signify :
`$ signify -G -p Nom_Projet.pub -s Nom_Projet.sec` L'invite de commande vous demandera d'écrire une passphrase et de la confirmer ! {{< color red >}}Ne pas oublier la passphrase ; et, mettez en sécurité le fichier de clé privée `*.sec`, en lieu sûr !{{< /color >}} Si pour des raisons quelconques, vous avez besoin de générer une signature sans passphrase, exécutez signify ainsi :
`$ signify -G -n -p Nom_Projet.pub -s Nom_Projet.sec` ## Génération du fichier de signature Nous savons donc vérifier un ensemble de fichiers grâce à un fichier de signature, créer un ensemble de clé privée/publique, voyons comment générer un fichier de signature ! `$ signify -S -e -x Nom_Projet.sig -s Nom_Projet.sec` ### Cas d'utilisation Profitons de la possibilité de coupler l'outil signify, avec une fonction de hachage cryptographique, telle `sha512` ! - En premier lieu, générons un fichier de condensats cryptographiques, e.g :
`find ./ -exec sha512 {} + > Nom_Projet.sha512` - Puis, occupons nous du fichier de signature :
`$ signify -S -s Nom_Projet.sec -m Nom_Projet.sha512 -e -x Nom_Projet.sig` {{< note tip >}}À-propos de l'usage de l'algorithme de cryptographie sha512 :
La génération de hashes cryptographiques peut être faite par l'outil `cksum` en utilisant l'option `-a` pour cibler l'algorithme `sha512` *(entres autres…)* ! {{< /note >}} ---- {{< note info >}}Le terme "somme de contrôle" est communément accepté pour parler des condensats/hashes cryptos générés à partir d'une fonction de hash. Cet usage peut être considéré comme impropre par des spécialistes. Par exemple, pour explication : ---- Une somme de contrôle est utile pour détecter des modifications accidentelles des données, mais n'a pas vocation à assurer une protection contre les modifications intentionnelles. Plus précisément, elle ne peut en général pas assurer directement l'intégrité cryptographique des données. Pour éviter de telles modifications, il est possible d'utiliser une fonction de hachage adaptée, comme SHA-256, couplée à un élément secret (clé secrète), ce qui correspond au principe du HMAC. *[source](https://fr.wikipedia.org/wiki/Somme_de_contr%C3%B4le#Somme_de_contr%C3%B4le_et_cryptographie)* {{< / note >}} ## Documentation * Le manpage officiel - *en anglais* - : {{< man signify >}} * Celui de la fonction de hachage cryptographique - *en anglais* - : {{< man sha512 >}} * Celui à-propos de l'outil en ligne de commande - *en anglais* - : {{< man cksum >}} * La page {{< wp "Somme_de_contrôle" >}}. ------------------------------------------------------------------------