обратимое шифрование перед записью в БД
Добрый день. Реализовать надо следующее: есть история болезни пациента, простой текст русские символы, utf-8, поле textarea. нужно перед отправкой аяксом в БД зашифровать этот текст с помощью ключа (врач его вводит). Защита просто от админов БД, чтобы не видели историю болезни в явном виде.
при выборке из БД в браузер врача передаются эти кракозябры, врач вводит свой ключ, кракозябры становятся нормальным текстом. нашел примеры для английских символов, для русских - пока печаль.:cray: подскажите пожалуйста где посмотреть? |
Шифрование текста
Floyd,
шифровка алексу :write: :) function fixedCharCodeAt(a, d) { var b = a.charCodeAt(d); if (55296 <= b && 56319 >= b) { var c = b, b = a.charCodeAt(d + 1); return 1024 * (c - 55296) + (b - 56320) + 65536 } return 56320 <= b && 57343 >= b ? (c = a.charCodeAt(d - 1), 1024 * (c - 55296) + (b - 56320) + 65536) : b } function fixedFromCharCode(a) { return 65535 < a ? (a -= 65536, String.fromCharCode(55296 + (a >> 10), 56320 + (a & 1023))) : String.fromCharCode(a) } function code(a, d, b) { for (var c = "", e = 0; e < a.length; e++) var f = fixedCharCodeAt(a, e) + fixedCharCodeAt(d, e % d.length) * (b ? -1 : 1), c = c + fixedFromCharCode(f); return c }; var str = code('нашел примеры для английских символов, для русских - пока печаль.','12345test') // code(str, key, decode) alert(str); str = code(str,'12345test', true) ; alert(str) |
Зная врачей - пипец данным! :D
|
Зачем шифрование?
Врачи и так крякозябрами пишут. |
Ну вообще можно использовать вот это для шифрования. Там и AES и DES есть. Всяко надежнее, чем самописные велосипеды.
|
Цитата:
|
Цитата:
как пофиксить? спасибо! |
Floyd,
какая кодировка на странице? |
utf-8
|
ха, странно, облачил функцию code в две отдельные энкоде и декоде, и пробелы стало восстанавливать абсолютно нормально. как это??:blink:
|
Часовой пояс GMT +3, время: 13:57. |