obscurcir ou chiffrer certaines données en texte brut en PHP

J'ai besoin de dissimuler ou de chiffrer certaines données en texte brut dans mon php 5.2 application.

Je préfère une solution qui aurait de la chaîne d'entrée et de sortie de la chaîne de conserver la même longueur.

Cette question n'est pas extrêmement forte, comme il y a de nombreux des autres couches de sécurité en place. Forte serait une bonne chose, mais ce sera juste garder les programmeurs/dba/soutenir les personnes/etc accidentellement à lire le texte de l'intérieur de la base de données.

considérations clés

  • MODIFIER AJOUTER je préfère une solution qui aurait de la chaîne d'entrée et de sortie de la chaîne de conserver la même longueur.
  • seule chaîne de texte sera masquée/crypté pour le stockage dans une base de données
  • le php va devoir obscurcir/chiffrer les données avant de la base de données enregistrer et aura besoin de l'onu-masquer/dencrypt à la suite de la lecture de base de données
  • c'est une modification d'une application existante
  • seulement certaines colonnes devront être obscurci/crypté
  • seulement quelques lignes devront être obscurci/crypté, basée sur un champ de Type
  • il y a seulement un peu de charger ou d'enregistrer des points de gérer
  • max taille de la colonne est déjà déterminée pour certains champs, mais pas pour les autres, mais je préfère une solution de travail à l'intérieur de la taille des domaines restreints
  • MODIFIER, AJOUTER la clé sera sans doute un composite de certains de clé Primaire info +non modifiable champs

voici un exemple de table de base de données et des données:

int           char(1) varchar(24)              int      date
MyPrimaryKey  RowType UserText                 UserNo   DateChange
------------  ------- ------------------------ -------- ----------------
1             N       nothing special here     43       6/20/2009 12:11am
2             N       same thing, wow!         78       6/23/2009 1:03pm
3             S       fBJKg}.jkjWfF78dlg@45kjg 43       6/25/2009 6:45am
4             N       same old, same old text  21       6/25/2009 8:11am

L'application serait de charger et afficher les lignes 1, 2, et 4 normalement. Cependant, il serait conditionnelle (basé sur le type de ligne) gérer le texte à la ligne 3 à l'aide de cette obscurcir/crypter et de l'onu-coder/décoder la logique.

Quelqu'un peut-il fournir obscurcir/crypter et de l'onu-coder/décoder les fonctions de code, des liens, et ou un pointeur qui pourraient aider ici?

merci!

MODIFIER
J'aime le simple encodage base64 idée, mais est-il une méthode qui permet de conserver les données au sein d'une taille fixe. Toutes les méthodes présentées jusqu'ici ont la valeur de sortie supérieure à la valeur d'entrée. Cela va être un problème pour certaines colonnes, où l'utilisateur peut entrer dans 50 caractères et il est stocké dans un varchar(50) de la colonne.

source d'informationauteur KM.