запутать или зашифровать некоторые текстовые данные в PHP

Мне нужно запутать или зашифровать некоторые текстовые данные в моем приложении php 5.2.

Я бы предпочел решение, в котором входная строка и выходная строка сохраняли бы одинаковую длину.

Это не должно быть чрезвычайно сильным, поскольку существует множество других уровней безопасности. Сильное было бы хорошо, но это только удержит программистов / dba / support людей / и т.д. от случайного чтения текста из базы данных.

ключевые соображения

EDIT ADD I'd prefer a solution that would have input string and output string retain the same length. only string text will be obfuscated/encrypted for storage in a database the php application will need to obfuscate/encrypt the data before the database save and will need to un-obfuscate/dencrypt following the database read this is a modification to an existing application only some columns will need to be obfuscated/encrypted only some rows will need to be obfuscated/encrypted, based on a Type field there are only a few load/save points to handle max column size is already determined for some fields, but not for others, but I'd prefer a solution to work within the existing size of the restricted fields EDIT, ADD the key will be probably be a composite of some Primary key info +uneditable fields

Вот пример таблицы базы данных и данных:

<code>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
</code>

Приложение будет загружать и отображать строки 1, 2 и 4 нормально. Однако он будет условно (в зависимости от типа строки) обрабатывать текст в строке 3, используя эту логику запутывания / шифрования и не-запутывания / дешифрования.

Кто-нибудь может предоставить обфусцировать / зашифровать и не обфусцировать / расшифровать код функций, ссылки и / или указатель, которые могли бы помочь здесь?

Спасибо!

EDIT
Мне нравится простая идея кодирования base64, но есть ли метод, который может держать данные в пределах фиксированного размера. Все перечисленные методы имеют выходное значение больше, чем входное значение. Это будет проблемой для некоторых столбцов, где пользователь может ввести 50 символов, и он будет сохранен в столбце varchar (50).

Ответы на вопрос(7)

Ваш ответ на вопрос