请教: delphi 如何实现 对 mysql 中 encrypt()加密数据的比较处理(100分)

  • 主题发起人 主题发起人 GWW
  • 开始时间 开始时间
G

GWW

Unregistered / Unconfirmed
GUEST, unregistred user!

mysql 或 php 中 可以用 crypt() 解密

现想用 delphi 处理 mysql 数据 请教在 delphi 中如何解决此问题?

 
怎么在我的Ms Sql 7.0 和 6.5上没有crypt()这样一个函数?
如果你有的话,其实很简单的,你用query控件。
用以下的语句:
with Query do
begin
if Active then Close;
Sql.clear;
Sql.Add('select test=crypt("'+thedata+'")'); //thedata是你需要解开的数据
Active;
try
open;
if not isEmpty then
Data:=FieldByname('test').asstring;
except
end;
end;

如果这些数据有很多的话,也没事,编一个存储过程,然后将结果放在一张表里面,最后
取数据不就行了吗?

其实,我的意思就是Mssql有的东西还是尽量利用起来,虽然有可能麻烦一点。
 
to foolaliu:
MySQL 不是 MSSQL

to GWW:
>>mysql 或 php 中 可以用 crypt() 解密

真的可以解密吗?如果可以,select crypt(crypted-field-name) from ...不就可以了吗?
但是我记得crypt,password一样,都是单向的,只能用于密码验证,也就是只有知道内容,
然后用于比较,例如: select * from ... where crypted-field-name=crypt('aaaaa')

我想你实际上是问后者吧。
 

解出密码不可能,也不需要,只希望能实现密码校验即可。
如: crypt($str, $salt);


 
那么就是我上面说的第二种情况:
select * from ... where crypted-field-name=crypt('aaaaa')
有什么问题吗?
 
接受答案了.
 
后退
顶部