我正在构建一个具有Java Swing前端访问postgres数据库的系统。在本周发现碧玉之前,我最初计划使用Postgres自己的加密机制。它运行的很好,但我现在也希望网络上的密码被加密,因此我转向Jasypt。
问题是,我需要一个固定的密码输入到我的Postgres存储函数中。也就是说,如果输入密码是'aaa‘,那么其他输入到Postgres存储函数中的密码(’aaa‘除外)将不匹配。
是否有办法使这两种加密机制协同工作,还是我必须转储Postgres?
我的用户表:
CREATE TABLE "user"
(
id serial NOT NULL,
cryptpwd text NOT NULL,
md5pwd text NOT NULL,
...
)加密密码:
cryptedPassword = crypt(passwordIn, gen_salt('md5'));
md5Password = md5(passwordIn);
INSERT INTO "user"(username, cryptpwd, md5pwd, ...)
VALUES (usernameIn, cryptedPassword, md5Password, ...);解密密码:
select ..... from "user" .... where username = usernameIn and cryptpwd = crypt(passwordIn, cryptpwd);如果我不能让他们一起工作,那么我将不得不转储Postgres的机制,因为我需要通过网络进行加密。
此外,关于数据库连接字符串和数据库用户名和密码(不使用任何框架.简单的老jdbc连接--希望使用SSL --还没有实现),我不认为我能够使用Jasypt,因为我需要在数据库级别对它进行解密。单凭SSL就足以应付这种情况了吗?
谢谢。
https://stackoverflow.com/questions/11203550
复制相似问题