密码加密验证
在网上找一段VB的 MD5 的编码类,假设类名为 Encode,编码函数:MD5(),数据库路径为: c:\test.mdb ,表名为 user ,字段用户名,密码: username,password,代码如下:
Dim nConn as object
Dim nRs as Object
Dim md5instance as new Encode
Dim SQL As String
set nConn=CreateObject("ADODB.Connection")
set nRs=CreateObject("ADODB.Recordset")
nConn.Open "Driver={Microsoft Access Driver (*.mdb)};UID=;PWD=;DBQ=c:\test.mdb"
SQL="select * from user where username=admin and password=" & md5instance.MD5("123456") '123456 是密码
nRs.Open SQL,nConn,3,3
if nRs.Eof then
msgbox "验证失败!"
else
msgbox "验证通协!"
end if
MD5 算法请参考:
http://www.mx68.com/wangluoanquan/2006-03-29/wangluoanquan_79429.shtml
‘贰’ 十大常见密码加密方式
一、密钥散列
采用MD5或者SHA1等散列算法,对明文进行加密。严格来说,MD5不算一种加密算法,而是一种摘要算法。无论多长的输入,MD5都会输出一个128位(16字节)的散列值。而SHA1也是流行的消息摘要算法,它可以生成一个被称为消息摘要的160位(20字节)散列值。MD5相对SHA1来说,安全性较低,但是速度快;SHA1和MD5相比安全性高,但是速度慢。
二、对称加密
采用单钥密码系统的加密方法,同一个密钥可以同时用作信息的加密和解密,这种加密方法称为对称加密。对称加密算法中常用的算法有:DES、3DES、TDEA、Blowfish、RC2、RC4、RC5、IDEA、SKIPJACK等。
三、非对称加密
非对称加密算法是一种密钥的保密方法,它需要两个密钥来进行加密和解密,这两个密钥是公开密钥和私有密钥。公钥与私钥是一对,如果用公钥对数据进行加密,只有用对应的私钥才能解密。非对称加密算法有:RSA、Elgamal、背包算法、Rabin、D-H、ECC(椭圆曲线加密算法)。
四、数字签名
数字签名(又称公钥数字签名)是只有信息的发送者才能产生的别人无法伪造的一段数字串,这段数字串同时也是对信息的发送者发送信息真实性的一个有效证明。它是一种类似写在纸上的普通的物理签名,但是在使用了公钥加密领域的技术来实现的,用于鉴别数字信息的方法。
五、直接明文保存
早期很多这样的做法,比如用户设置的密码是“123”,直接就将“123”保存到数据库中,这种是最简单的保存方式,也是最不安全的方式。但实际上不少互联网公司,都可能采取的是这种方式。
六、使用MD5、SHA1等单向HASH算法保护密码
使用这些算法后,无法通过计算还原出原始密码,而且实现比较简单,因此很多互联网公司都采用这种方式保存用户密码,曾经这种方式也是比较安全的方式,但随着彩虹表技术的兴起,可以建立彩虹表进行查表破解,目前这种方式已经很不安全了。
七、特殊的单向HASH算法
由于单向HASH算法在保护密码方面不再安全,于是有些公司在单向HASH算法基础上进行了加盐、多次HASH等扩展,这些方式可以在一定程度上增加破解难度,对于加了“固定盐”的HASH算法,需要保护“盐”不能泄露,这就会遇到“保护对称密钥”一样的问题,一旦“盐”泄露,根据“盐”重新建立彩虹表可以进行破解,对于多次HASH,也只是增加了破解的时间,并没有本质上的提升。
八、PBKDF2
该算法原理大致相当于在HASH算法基础上增加随机盐,并进行多次HASH运算,随机盐使得彩虹表的建表难度大幅增加,而多次HASH也使得建表和破解的难度都大幅增加。
九、BCrypt
BCrypt 在1999年就产生了,并且在对抗 GPU/ASIC 方面要优于 PBKDF2,但是我还是不建议你在新系统中使用它,因为它在离线破解的威胁模型分析中表现并不突出。
十、SCrypt
SCrypt 在如今是一个更好的选择:比 BCrypt设计得更好(尤其是关于内存方面)并且已经在该领域工作了 10 年。另一方面,它也被用于许多加密货币,并且我们有一些硬件(包括 FPGA 和 ASIC)能实现它。 尽管它们专门用于采矿,也可以将其重新用于破解。
‘叁’ 用户登陆过程发生了什么,post 密码加密 验证
密码的加密,登录用户信息验证。
加密,是以某种特殊的算法改变原有的信息数据,使得未授权的用户即使获得了已加密的信息,但因不知解密的方法,仍然无法了解信息的内容。 在航空学中,指利用航空摄影像片上已知的少数控制点,通过对像片测量和计算的方法在像对或整条航摄带上增加控制点的作业。
‘肆’ 简述认证与加密的区别
认证和加密的区别在于:加密用以确保数据的保密性,阻止对手的被动攻击,如截取、窃听等;而认证用以确保报文发送者和接收者的真实性以及报文的完整性,阻止对手的主动攻击,如冒充、篡改、重播等。认证往往是许多应用系统中安全保护的第一道设防,因而极为重要。
认证的基本思想是通过验证称谓者(人或事)的一个或多个参数的真实性和有效性,来达到验证称谓者是否名符其实的目的。这样,就要求验证的参数和被认证的对象之间存在严格的对应关系,理想情况下这种对应关系应是惟一的。
认证系统常用的参数有口令、标识符、密钥、信物、智能卡、指纹、视网纹等。对于那些能在长时间内保持不变的参数(非时变参数可采用在保密条件下预先产生并存储的位模式进行认证,而对于经常变化的参数则应适时地产生位模式,再对此进行认证。
一般来说,利用人的生理特征参数进行认证的安全性高,但技术要求也高,至今尚未普及。目前广泛应用的还是基于密码的认证技术。
认证和数字签名技术都是确保数据真实性的措施,但两者有着明显的区别。
①认证总是基于某种收发双方共享的保密数据来认证被鉴别对象的真实性,而数字签名中用于验证签名的数据是公开的。
②认证允许收发双方互相验证其真实性,不准许第三者验证,而数字签名允许收发双方和第三者都能验证。
③数字签名具有发送方不能抵赖接收方不能伪造和具有在公证人前解决纠纷的能力,而认证则不一定具备。
如果收发双方都是诚实的,那么仅有认证就足够了。利用认证技术,收发双方可以验证对方的真实性和报文的真实性、完整性。但因他们双方共享保密的认证数据,如果接收方不诚实,则他便可以伪造发送方的报文,且发送方无法争辩;同样,发送方也可抵赖其发出的报文,且接收方也无法争辩。由于接收方可以伪造,发送方能够抵赖,因此第三者便无法仲裁。
‘伍’ 怎么给qq设置密码锁
给qq设置密码锁方改蠢备法:
工具/原料:iPhone12、IOS15.7、QQ8.9.10。
1、打开手机QQ,进入QQ首页,点击页面左上角的QQ头像,进入手机QQ的个人中心页面。
QQ密码锁档信的核毁作用
1、当暂时离开电脑时,不想别人看到自己QQ消息,或者不想别人使用自己的QQ时,就可以锁定QQ,可以同时按住Ctrl、Alt和L这三个按键快速锁定QQ。
2、这样可以更好地保护隐私,锁定后QQ仍然在线并能接收到消息,但别人看不到消息,也无法使用QQ。
3、当从外面回来时,再次按住Ctrl、Alt和L这三个按键,输入解锁密码,即可解锁。
‘陆’ 如何给自己的密码加密
密码是默认是一些帐号的登陆密码或是查看资料密码再或是一些提现密码,一般是由个人自己知道或是掌控的,他人是不知道的或是说只有相关的平台是可以查看到或是进行修改操作的。
在以前拥有了平台帐号时,是需要拥有密码才能登陆。很多人会把密码保管起来,随着互联网技能的发展很多基本的密码不能防止盗号软件的盗取了,很多平台提供一些密保,它是针对密码进行保护的又一种措施。
对于自己给密码加密,可以从以下几点考虑:
一、用邮箱或手机号
对于一些特殊的平台,在注册时是需要邮箱或是手机号进行注册限制的。这两种比较私人化的信息,只有知道密码的人员才能登陆进行进行接受相应的验证码,若是没有用邮箱或是手机号绑定的帐号这里建议直接把邮箱与手机号都绑定在自己的帐号内。
二、密保
这个也是目前比较好的保护个人帐号的方式,可以通过一些问答设置并设置答案的方式进行保护密码。这里需要注意的是要切记自己设置的密保问题与密保答案,若是两者对应不上后续再登陆时或是修改新密码时也是一件非常麻烦的事。
三、U盾保护
这个一般用于网购的平台,它是可以直接购买此U盾工具,然后在需要用时直接在PC端或是移动端插入后才可以获取相应的支付密码验证码,再进行支付或是登陆操作。
四、技术
对于有拥术人员可以通过自己的技术设置,对自己的帐号进行设置保护操作,这样在后续登陆或是支付时都有一个很好的保护。
每一个密保都是可行的,这里建议在设置相应的密码保护后要进行保管,否则在设置完成后忘记了也等于盗号操作了。