Dans le cadre d’un projet de publication, d’intégration et de réconciliation de transaction je suis intervenu sur la mise en place d’un système d’encryption de fichier XML.
L’environnement dispose de SSIS+ 1.6 de la société Cozyroc. L’outil offre une bibliothèque de tâches SSIS permettant entre autres la simplification des taches suivantes :
- Compression et décompression : Zip, GZip, bzip2, Unix, tar
- Transfert de fichiers via le protocole SFTP
- Envoi d’email avancé (SMTP, IMAP, POP3, Exchange)
- Support de Microsoft Excel en 64 bits
- Chiffrement à clé publique privée (OpenPGP), le sujet de l’article 😉
Voir la liste complète : http://www.cozyroc.com/products
Open PGP
Le format OpenPGP est le standard de cryptographie issu de PGP (Pretty Good Privacy), créé par Phil Zimmermann en 1991.
Lorsque vous envoyez un document crypté, le destinataire ne connaît en général pas le mot de passe pour le décrypter. Si vous lui envoyez le mot de passe, celui-ci peut être intercepté et votre cryptage devient inutile.
PGP génère une clé publique qui permet à vos correspondants de crypter des messages que vous seul (avec votre clé privée) pourrez décrypter.
L’histoire de PGP est intéressante : http://openpgp.vie-privee.org/histoire.htm
WinPT
Ce logiciel offre une interface graphique et un gestionnaire de clé pour GnuPG, l’alternative libre à PGP.
TéléchargerAprès l’avoir installé, vous devez créer une nouvelle clé :
A la fin de la génération, enregistrer pubring.gpg (la clé publique) et secring.gpg (la clé privée).
SSIS OpenPGP Task
Nous avons les clés publique et privée nous pouvons désormais encrypter puis décrypter des fichiers depuis SSIS !
Vérifier la présence de la tache OpenPGP dans les taches de flux de contrôle, si elle n’est pas présente, ajoutez-la:
La tache peut effectuer les actions suivantes :
- Encrypter un fichier
- Décrypter un fichier
- Crée une signature de fichier
- Vérifer une signature de fichier
Le paramétrage de la tache est intuitif :
Pour l’encryption, la clé (cryptée) de la Public Key est à spécifier. Pour la retrouver dans WinPT : Gestionnaire de clés, Edit, Sub Key :
Le paramétrage de la décryption est similaire, il vous sera en plus demandé le mot de passe de la clé privée.
Vous pouvez télécharger deux exemples d’utilisation réalisés par la société Cozyroc : Stream sans stockage et Encryption en mémoire.
Performances
Afin d’analyser les performances et les éventuelles dégradations sur le traitement des transactions dues a l’encryption et la décryption, j’ai effectué quelque testes :
Les résultats sur 6 fichiers de différentes tailles :
Comments are closed.