N NewLearner Unregistered / Unconfirmed GUEST, unregistred user! 2009-08-13 #1 我如果把sql数据库的连接字符串写在源代码里(包括登录用户名和密码),有没有可能不安全被破解泄露?有什么好的解决方案?
J johnneo Unregistered / Unconfirmed GUEST, unregistred user! 2009-08-13 #2 数据库连接的密码最好是加密后以常量形式保存在代码中,登陆用的密码也最好是加密过保存在数据库里。加密方式最好是选用MD5之类不可还原加密,至此如果你的软件不是消费产品一般就不太可能被破解,因为能破解的高手不屑碰这种既没利润也没研究价值软件。
数据库连接的密码最好是加密后以常量形式保存在代码中,登陆用的密码也最好是加密过保存在数据库里。加密方式最好是选用MD5之类不可还原加密,至此如果你的软件不是消费产品一般就不太可能被破解,因为能破解的高手不屑碰这种既没利润也没研究价值软件。
N NewLearner Unregistered / Unconfirmed GUEST, unregistred user! 2009-08-13 #3 如果加密的不能还原有什么意义?我这是在软件里要连接数据库,并不是要用户输入密码的楼上答非所问
W wcq1002 Unregistered / Unconfirmed GUEST, unregistred user! 2009-08-13 #4 为了程序的灵活性,一般不会把数据库连接串硬编码在程序代码里. 我的解决方案是:把数据库连接串放在一个配置文件里, 主要包括4项就可以:数据库的IP;数据库名称;用户和密码.把这4项分别加密放在配置文件里面;程序运行的时候读取配置文件的信息,并解密.然后把它还原成数据库连接串即可.
为了程序的灵活性,一般不会把数据库连接串硬编码在程序代码里. 我的解决方案是:把数据库连接串放在一个配置文件里, 主要包括4项就可以:数据库的IP;数据库名称;用户和密码.把这4项分别加密放在配置文件里面;程序运行的时候读取配置文件的信息,并解密.然后把它还原成数据库连接串即可.
D duxing Unregistered / Unconfirmed GUEST, unregistred user! 2009-08-13 #5 同意 wcq1002意见,用一个连接配置文件,加密数据库IP地址,数据库名称,用户名和密码.
J johnneo Unregistered / Unconfirmed GUEST, unregistred user! 2009-08-14 #6 不可还原加密的破解成本相对比较高,你可以使用密文密码啊
K kkyy Unregistered / Unconfirmed GUEST, unregistred user! 2009-08-14 #7 写源代码里,别人已经装了MSSQL已经有别的应用了怎么办?配置加密一下即可,要破你的怎么都可以破,防君子不防小人
Z zbdzjx Unregistered / Unconfirmed GUEST, unregistred user! 2009-08-14 #10 前几天我还真试过!!我将我们公司写的程序用UlterEdit打开,一搜索连接字符串,整个连接字符串都是明文保存的,而且一点都不差。如果是用加密的配置文件,我没有试过,但我试过别一种解密的方法。当时是一个光盘,要密码才能进入,我先输入一个密码:888888,当提示错误时,用金山游侠(其它修改游戏的程序或是其它内存查找程序)搜索888888,当搜索到时,在这个地址的附近就有正确密码。不知道加密的配置文件会不会也有这种情况。
前几天我还真试过!!我将我们公司写的程序用UlterEdit打开,一搜索连接字符串,整个连接字符串都是明文保存的,而且一点都不差。如果是用加密的配置文件,我没有试过,但我试过别一种解密的方法。当时是一个光盘,要密码才能进入,我先输入一个密码:888888,当提示错误时,用金山游侠(其它修改游戏的程序或是其它内存查找程序)搜索888888,当搜索到时,在这个地址的附近就有正确密码。不知道加密的配置文件会不会也有这种情况。