Powerbuilder数据窗口密码加密

时间:2012-04-12 01:50:18

标签: encryption powerbuilder

我有一个使用Datawindow Select / Update的表格用户维护窗口。

我需要加密MSSQL数据库中保存的密码。

我有一个功能f_decrypt for Powerbuilder和dbo。

如何使用dw.Update()加密密码?

1 个答案:

答案 0 :(得分:0)

可能会写一本关于可能性的小书。我的第一个问题是存储加密密码的要求,或密码是否必须通过电子邮件加密。如果存储是唯一的要求,我倾向于让DBMS做一个高级程序员团队花费数月时间努力做到的事情,而不是试图自己重新发明轮子。即使它必须通过加密的电线,我会首先看看DBMS提供的选项。

如果你必须在客户端做这件事并处理散列,腌制,防止代码的逆向工程,,你自己,仍然有十几种方法可以做到这一点。我尝试的第一种方法是为密码用户界面创建一个带有虚拟列的DataWindow,以及表格中的列,例如:

SELECT '        ' as password_ui,
       table.password_storage,
       ...
FROM table
....

我将password_ui放在DataWindow的用户界面上,并将password_storage保留在用户界面之外,但请确保password_storage作为可更新列包含在Update Properties中。然后,在ItemChanged上,如果更改的列是password_ui,我会

CHOOSE CASE dwo.Name
   CASE "password_ui"
      SetItem (row, "password_storage", f_encrypt (data))
END CHOOSE
祝你好运,

特里。