2010-12-09 6 views
0

Nous avons un OpenSSL/kerberos/OpenSSH-authentification des utilisateurs qui exigent une paire de clés publique et privée.réutilisation keypair d'authentification pour chiffrement et le déchiffrement des données

Je dois me connecter et récupérer des données d'une base de données. Mais je ne suis pas autorisé à stocker les données dans la base de données en format clair. Et la clé privée utilisée pour le déchiffrer doit être stockée hors site.

Nous ne voulons pas utiliser le chiffrement des données transparrent comme dans l'oracle, db2, MySQL, etc, mais créer notre propre.

Au lieu d'ajouter une autre couche de cryptage puis-je resue le keypair je l'ai déjà.

Ceci est conforme aux exigences PCIDSS pour le stockage de données sensibles. https://www.pcisecuritystandards.org/security_standards/index.php

Quelques conseils sur les meilleures pratiques vraiment appréciés.

Merci

Répondre

0

En général, il est déconseillé d'utiliser la même paire de clés pour l'authentification et le chiffrement. C'est pourquoi une clé GnuPG contient en réalité 2 clés privées par exemple. Du point de vue du cryptographe, vous devrez stocker une autre paire de clés pour le cryptage ou utiliser une clé symétrique pour le cryptage des données.

Est-ce que vous lisez et écrivez le contenu de la base de données avec toujours le même client? Si c'est le cas, vous pouvez utiliser un chiffrement symmeric et stocker la clé sur le client.

0

PCI est énorme et se tromper pourrait détruire une entreprise, afin de trouver un expert pourrait être le meilleur. Cela dit, voici ce que je pense: Si toutes les données doivent être cryptées pour que seule une partie hors site puisse les ouvrir, utilisez un bon système cryptographique à clé publique pour sauvegarder les données. (Lisez la documentation suffisante pour assurer que la bibliothèque crypte les données avec une clé de session, et encrypte la clé de session avec la clé publique de la partie à distance. Vous ne voulez jamais chiffrer données avec une clé publique, seulement . clés de session)

Si toutes les données doivent être stockées avec une clé par utilisateur, vous pouvez le faire aussi, mais Kerberos a été conçu spécifiquement pour éviter de chiffrement à clé publique - ils sont allés à une énorme quantité d'efforts pour construire quelque chose de presque similaire en utilisant seulement des chiffres symétriques. Intelligent, mais cela peut signifier que vous ne pouvez même pas utiliser les clés que vous espériez utiliser (si l'exigence est que seule une clé stockée hors site peut déchiffrer le texte chiffré stocké).

Espérons que cela aide.

Questions connexes