Это задание. Мне нужно создать веб-приложение в движке Google и применить алгоритм rsa для хранения данных в хранилище данных приложения. Мое приложение просто хранит небольшие заметки, созданные пользователем. Я закончил приложение, а также применил RSA для шифрования сообщений (получил код от Implementing RSA algorithm). Для этого я разделяю строку и конвертирую каждый символ в ascii, а затем сохраняю их в повторном ndb.IntegerProperty
, но я не понимаю, как должны обрабатываться частные и открытые ключи. Я хочу знать, где хранить закрытый ключ и как только записятся заметки, и пользователь снова обращается к ним, как мне получить открытый и закрытый ключ? Должен ли я хранить их ключи в хранилище данных?Внедрение RSA в Google App Engine webapp
Шифрование выполняется на сервере для шифрования заметок, сохраненных пользователем. Заметки представляют собой строки, которые разбиты на символы, а их значения ascii затем зашифровываются. Все это делается на стороне сервера, как только пользователь нажимает «добавить примечание».
Дешифрование выполняется на стороне сервера при входе пользователя в систему, а его идентификатор пользователя используется для извлечения сохраненных заметок, которые дешифруются, чтобы получить исходные значения ascii, а затем сформировать исходную строку.
В настоящее время существует только одна пара ключей, которая генерируется в коде. ссылка на приложение: http://cloudassignment-1102.appspot.com
Сообщите мне, если мне нужно добавить исходный код.
Я обновил свой ответ. Мне сложно дать вам 100% -ный ответ, потому что это действительно пример бесполезного упражнения, поэтому верный ответ на то, где вы должны хранить свои ключи, - «где бы вы ни хотели». Для простоты я рекомендую использовать хранилище данных, как описано в моем редактировании для ответа. – konqi