微信公众号 
图码生活

每天发布有五花八门的文章,各种有趣的知识等,期待您的订阅与参与
电脑报 1992-2001 十年文章全集
电脑报 1992-2001 十年文章全集
包含从 1992 年 - 2001 年间,两万余篇期刊文章,查询最少输入两个字符
随便看看
读取中
读取中
标题利用随机码防止密码被窃取
栏目软件世界
作者刘红军
发布2000年第20期
  当前各种应用软件中普遍存在密码不安全的问题。一般软件的密码输入界面是通过设置文本框的属性,使输入文本显示为“*”,避免密码的直接显示。其实这种保护是很脆弱的,现在已经有很多办法可以突破这种保护。本文介绍一种在VB中利用随机数输入密码的方法,使同一个密码每次输入后,用relevation1.1和其他窃取密码软件得到的都是不同的随机乱码。而真正的密码已瞒天过海。
  首先,在窗体Form1中添加文本框Text1,按钮Command1,标签Label1,Label2,主要属性设置如下:
  Form1的KeyPreview为True;
  Text1的PasswordChar为“*”;
  Command1的Caption为“确定”;
  Label1和Label2的Caption为空,Autosize为True。
  代码如下:
  '通用声明:
  Public x As Long
  Public st As String
  Private Sub Text1_GotFocus()
  st = ""
  End Sub
  Private Sub Text1_KeyPress(KeyAscii As Integer)
  st = st + Chr(KeyAscii)
  '每按一下键,获得一个48到122之间的随机数,并将其对应的字符显示在文本框中
  Randomize
  x = Int((122 - 48 + 1) * Rnd + 48)
  KeyAscii = Asc(Chr(x))
  End Sub
  Private Sub Command1_Click()
  'Label1显示文本框中的随机乱码
  Label1.Caption = Text1.Text
  'Label2显示从键盘输入的真实字符
  Label2.Caption = st
  If st = "abcdefgh" Then
  MsgBox "密码正确"
  Else
  MsgBox "密码错误"
  End If
  End Sub
  本程序在Win98+VB6.0中文企业版运行通过。