2010-11-19 51 views
0

我们正在将用户数据保存在服务器上,我们希望保存用TrueCrypt加密的这些数据。Java Web应用程序的用户数据加密(Spring/Jboss)

如果用户注册,我们为他生成一个用他的密码加密的非对称密钥。这个不对称的用户专用密钥将加密用于服务的所有密钥,包括上述数据加密。

如果我们现在想要读取用户文件,在Application Server上运行的Java应用程序中添加新的和修改现有的文件,我们是否应该安装TrueCrypt容器? 我们认为这可能是一个安全漏洞,因为攻击者可以轻松查看安装的容器,但我们也没有其他想法 - 我们被卡住了!

我相信有人可以帮助我们在这里。

感谢, 海因里希

@edit顺便说一句,我们正在使用Spring的Java应用程序。

回答

1

我不认为在这个用例中使用TrueCrypt是个好主意。使用TrueCrypt时,除了将每个请求加载到加密文件上,您别无选择。你应该考虑使用普通的Java加密,并自己进行加密和解密。有像Google Keyczar这样的库可以帮助你实现这一点。

+0

好的。 “普通”图书馆仍然可以使用高达50GB的数据量,我们有时会使用?特别是检索文件列表和更改某些特定文件很重要。 – Erik 2010-11-20 12:10:41

+0

由于大多数加密库(例如JCE)都适用于流,所以这应该是可能的。但我认为这取决于您是否实施某种容器(如TrueCrypt)或者如果您加密单个文件。我更喜欢后者,因为它更容易实现,访问单个文件的性能更好。 – chkal 2010-11-21 08:46:14