加密长用户输入的最佳方法是什么,这样我就无法查看数据库并立即看到每个人的写作?

What is the best way to encrypt long user input so that I cannot look in the database and immediately see everyone's writing?

我正在创建一个网站,用户可以在该网站上以日记的形式记录他们的一天。现在,如果用户决定写一些即使是非常私人的东西,我也可以通过查询数据库中的条目内容立即看到。我想知道最好的方法是加密我从用户那里得到的这个日记条目,这样我至少需要付出更多的努力才能看到​​人们在写什么。我正在使用 Flask 和 SQLAlchemy。

如果它是人类可读性的问题,您可以只对它进行 base64 编码 - 因此混淆它,而不是加密它。这包含在 python 标准库中,这是一个示例:

https://www.base64encoder.io/python/

如果需要加密,您可以为用户分配一个私钥,并使用其对应的public密钥对数据进行加密。这可能有点矫枉过正,除非您不希望任何其他人能够阅读它,即使付出了很多努力。显然,您需要将这些私钥对用户以外的任何人保密,这会很复杂,如果用户丢失了密钥,您将无法帮助他们。