Тема такая.
Есть сайт, на нём юзеры (мало).
У каждого юзера есть связанный с ним список неких записей.
Каждая запись - просто текст.
Количество записей - до нескольких сотен на каждого юзера.
Записи могут добавляться/удаляться/изменяться.
Нужно сделать версионирование.
Каждый юзер работает только со своим списком.
Конкурентного доступа не будет.
Самое простое - свалить просто все эти записи в папку в виде файлов и сделать git-репу.
И коммитить при изменении.
История, откаты, диффы всё готово.
Следующий момент - эти данные нужно шифровать.
Требуемый уровень защиты - средний.
Чтобы шарящийся на сервере перец или излишне любопытный админ не мог просто так читать эти тексты.
От АНБ защищаться не обязательно.
Ну и ключом для шифрования нужно взять пароль или производное от него, чтобы юзер залогинился и у него в кабинете всё в расшифрованном виде.
Собственно вопросы профессионалам, а то я новичок:
Как лучше шифровать?
Как лучше таскать пароль со страницы на страницу?
Как сделать так, чтобы для гита эти файлы не были бинарными. То есть если в большом тексте изменилась одна строчка, то можно было вычислить небольшой дифф между ними.
Можно, конечно, просто построчно шифровать, но не убьёт ли это всю криптографию на корню?