Я экспериментирую с созданием простой страницы сообщений (PHP), которая использует таблицу MySQL для хранения записей. Грубый набросок колонн я буду использовать в таблице:Как зашифровать определенный столбец в таблице MySQL?
MSG_ID (первичный ключ, auto_increment)
user_id (внешний ключ, указывающий на пользователя, создавшего сообщение)
время (запись DATETIME, чтобы обеспечить временные метки MSG)
Сообщ (а УАКСНАК содержащий MSG)
, доступную (просто Int (1), 0 означает, что нет никого, кроме пользователя, сам может читать сбщ и 1 означает, другие могут прочитать его)
Что мне интересно, что это лучший способ шифрования поля msg, так что любопытные глаза не могут его прочитать (скажем, открыв mysql CLI или phpMyAdmin и просто прочитав значение, хранящееся в строке)?
Если для параметра «accessable» установлено значение 0, то только его пользователь должен иметь возможность прочитать его (путем доступа к некоторой странице PHP), но если он установлен в 1, все остальные должны иметь возможность читать его , Я не знаю, как это решить, поэтому любая помощь очень ценится!
Не так ли странно положить ключ в триггер? если вы получите доступ к db, он сможет увидеть ключ и дешифровать данные ... – Roey 2015-01-26 09:06:00
Я согласен с прохождением ключа @Roey в триггере, сделает все, что бесполезно. – 2016-02-03 06:56:42