这是一项任务。 我必须在Google应用程序引擎上创建一个Web应用程序,并应用rsa算法将数据存储在应用程序引擎数据存储区中。我的应用程序只存储由用户创建的小笔记。我已经完成了应用程序,并且还应用了RSA来加密消息(从Implementing RSA algorithm获得代码)。为此,我分割字符串并将每个字符转换为ascii,然后将它们存储在重复的ndb.IntegerProperty
中,但我不明白应该如何处理私钥和公钥。我想知道我在哪里存储私钥,一旦笔记已经加密并且用户再次访问它们,我如何获得公钥和私钥?我是否应该将密钥存储在数据存储中?在谷歌应用引擎webapp上实现RSA
加密在服务器完成以加密用户保存的注释。笔记是分成字符的字符串,然后对它们的ASCII值进行加密。所有这些都是在用户点击“添加注释”后在服务器端完成的。
解密在服务器端完成,当用户登录时,他的用户ID用于获取他存储的注释,解密后得到原始ascii值,然后形成原始字符串。
当前只有一个在代码中生成的密钥对。 链接到应用程序:http://cloudassignment-1102.appspot.com
让我知道如果我需要添加源代码。
我更新了我的答案。我觉得很难给你100%的答案,因为这实际上是一个无用练习的例子,所以你应该在哪里存储你的密钥的真实答案是'任何你想要的'。为了简单起见,我建议按照我的编辑中所述的答案使用数据存储区。 – konqi