Шифрование личного сообщения
Я использую как модуль Private Message, так и модули Encrypt. Конечно, я могу создать поле, которое зашифровано, но похоже, что я должен изменить модуль PM, поскольку его хранилище в базе данных не зашифровано. Это не совсем личное, тогда Разрешения не достаточно, чтобы сделать это личное сообщение.
Я предполагаю, что мне нужно будет добавить код Encrypt непосредственно в сам модуль. У кого-нибудь есть идеи, где бы я его добавил и как?
Спасибо
2 ответа
Модуль называется "личные сообщения", потому что сообщения являются личными между отправителем и получателем, никто больше не может видеть сообщения.
Если вы хотите зашифровать базу данных, вы можете напрямую использовать хуки API базы данных. Вам также придется изменить схему модуля личных сообщений, который я считаю.
Для HTTPS вы можете использовать https://drupal.org/project/securepages
А для шифрования формы представленных данных вы можете перейти с http://www.jcryption.org/ или даже с более интересным http://crypto.stanford.edu/sjcl/
Я делал нечто подобное прежде, чтобы хранить зашифрованные изображения непосредственно в БД (для фотографий на паспорт).
Я только что взглянул на модуль личных сообщений и похоже, что вам нужно изменить основной файл.module. Ищите хоть это для db_insert. Примерно в строке 1836 находится бит, который сохраняет сообщение в БД.
Если вы добавите:
$message->body = encrypt($message->body);
перед строкой:
$args['body'] = $message->body;
Тогда это будет обрабатывать шифрование.
Затем вам нужно найти, куда он возвращается из БД, и поместить туда функцию дешифрования.