关于密码的问题 (100分)

  • 主题发起人 主题发起人 changerxue
  • 开始时间 开始时间
C

changerxue

Unregistered / Unconfirmed
GUEST, unregistred user!
我要作一个程序,程序的第一个画面为系统登录窗口,需要用户输入密码才能进入程序,
在程序编写过程中我仅仅是在程序里用if password='aaa'这样的方法编写,但在最后交
付程序的时候需要让用户能够在进入我的系统后动态修改密码,而我在程序中提供的只
能当初始密码,我估计可能要根据用户的密码定制生成文件,而且这个文件应该是加密
的,否则其它用户只需打开文本文件就能看到密码了,不知这个工作怎么作?希望回答
时能够详细一点!我会把我现在的积分全给满意的答案!谢谢!
 
老大,你不会换行啊?

这个,你只要把你的用户输入密码经过各种各样的运算以后的值保存到
注册表里最好了。
 
用注册表是比较好的方法
你若需要控件,I email to you!
 
可用注册表,也可将密码添加到运行文件之后,在代码中通过读写二进制文件方法读出相
关数据,此方法本人认为保密性更好。若担心别人复制,只要在添加数据中加入安装机的
标识数据即可。
 
同意delphi-abc.
 
如果你的程序是有关数据库的
可以做一个用户表: 用户代码,口令,[权限]
 
同意面条
 
使用ini 文件也行的
 
现在提倡“绿色软件”,不要随意向“注册表”里写东东!
我建议使用单独的一个文件保存密码,但必须加密。
如果你不想被人家查出密码,最好自己写加密程序。
 
下面是我们的表结构了:
CREATE TABLE UYD.YHQX (
YHDMID VARCHAR2(10) NOT NULL,
YHMM VARCHAR2(8),
YHMC VARCHAR2(30),
YHZB VARCHAR2(10),
YHQX VARCHAR2(128),
ZCRQ DATE,
SSCS VARCHAR2(40),
XP LONG,
PROMPT VARCHAR2(100)
)
 
如果是一个数据库程序,把用户名和密码放到数据库中是最常用也是比较安全的做法。
如果是纯粹的桌面型应用程序,不管是使用INI文件或注册表,一定要注意密码的加密,
现在的加密算法很多,可以将数据加密后再保存。
 
面条:如果我存在数据库中,那么因为现有的数据库类型总可以用相应的其它程序打开,
所以,用来存放用户名和密码得数据库是不是也需要加密?怎么加密?
 
最简单的就是:

将用户名,密码和一特定字符窜异或的结果放入。

较好的方法是:采用一些不可逆算法,可参考一写常用的加密算法实现,
如:DES....
 
用注册表比较好随便找个地方建个主键然后加入一串字符采用某种自制算法把用户的
密码编码后写进去。要用时读出来反编码后和输入的密码比较这种办法保密性较好。
不过要注意环保哦。
 
用数据库较好。
 
全力赞同wjiachun

用数据库较好(查找录入方便)
在录入密码前将密码用自制的算法条理一下,比如
将他们的ASCII码值都加上一个值,提取密码时再减掉这个值即可
 
太多太多的方法了!!!!
如果是一个数据库程序,把用户名和密码放到数据库中是最方便、最常用
也是比较安全的做法。当然数据库可以被别人打开,但存放密码的字段是应该被
你用指定方式加密后的。另外,你也可以对数据库加密。
如果不想用数据库,你可以用注册表来存放,当然密码也是加密过的!
但如果你比较注重于环保,那么可以自己用文件来保存。如ini 文件或者自定义的
配置文件。但是你一定要注意加密和安全检测,因为文件是很容易打开或者删除的,
比如foxmai删除那个配置文件后,所有加密邮箱都打开了。真差!
更绝的是,你可以写在自己的二进制文件中,用代码对指定地址进行检查。这样没有多余
文件,别人很难破解。而且可以更好的作到防拷贝等等。
不过,不管怎样。都必须加密。现在的加密算法很多,有的很容易破,但没事谁高兴破你的?
所以你可以随便用一种就可以了。如果要求高,可参考密码学方面的书。
 
用加密算法将密码加密后写入注册表,每次启动程序时打开该键值,用相反的算法解密后与
用户输入的密码比较.用文件也可以,当总觉得比较麻烦,既然有注册表,为什么不用呢?加密
算法可参考相关书籍,可别把头看大了!
 
前面说了这么多,我无话可说了
 
后退
顶部