一种微电脑升位验证密码锁的制作方法

文档序号:11833168阅读:173来源:国知局
一种微电脑升位验证密码锁的制作方法与工艺

本发明涉及一种微电脑密码锁,尤其涉及一种微电脑升位验证密码锁。



背景技术:

现有的微电脑密码锁,用户密码一经设定,在身份验证过程中密码位固定不变,这样有限的密码位经不起穷举破译,安全性较差。为了保证安全,现在都采用限制密码错误次数、输错密码超过限定次数剥夺操作权限保障用户密码的安全性。因此,传统微电脑密码锁存在一个无法统一的矛盾,用户设置密码面临两难的选择:从安全角度考虑,密码越长安全级别越高;但是长密码又存在难于记忆,操作繁琐,容易输错的问题;从方便用户使用的角度考虑,密码越短越易记,操作越方便,但是密码越短其安全性越差。



技术实现要素:

为了解决现有微电脑密码锁存在的上述问题,本发明提出了一种微电脑升位验证密码锁,包括:

单片机、键盘、按钮、显示器、驱动器、报警及输入提示音电路、 电磁锁、升位验证密码锁程序。其中,所述键盘、按钮、显示器、报警及输入提示音电路、驱动器分别与单片机相连接;

所述的单片机型号为AT89C51或其它51系列;所述键盘为5x5矩阵键盘,其列线分别与单片机P1.0-P1.4相连接; 其行线分别与单片机P3.1-P3.5相连接;键盘按键俯视面印制数字加英文字母,便于密码用汉语拼音词组或句子的字母编码以便于记忆,也可用英语单词,句子编码;同一键钮上的数字和字母键值相同,只是同一键值用两种符号表示;所述按钮由:复位按钮、升位设置按钮、密码设置按钮、密码验证输入按钮组成。密码验证输入按钮为外置按钮,其余为内置按钮,即同电路板安装在保险箱内、室内,身份验证通过开锁后才能进入操作;以防止非授权者进行复位,升位设置,密码设置等使其丧失升位验证功能的操作。所述复位按钮其功能是返回到升位设置按钮、密码设置按钮、密码验证输入按钮的操作选择状态,与单片机P3.0相连接;所述升位设置按钮其功能是设置升位参数(密码段长度),与单片机P1.1相连接;所述密码设置按钮其功能是设定密码为设置状态,即输入的密码永久存储在固定的RAM区,供密码验证时比对。与单片机P1.2相连接;所述密码输入按钮其功能是设定密码为验证状态,输入的密码即时与设置密码逐位比对。与单片机P1.3相连接;复位按钮、升位设置按钮、密码设置按钮只在设置密码和设置密码长度参数时使用,密码验证输入按钮只在首次密码验证时使用;所述显示器由驱动模块和六位七段LED数码管组成,与单片机P1口和P2口相连接;密码满6位自动清0,让位于后续输入的密码显示;所述报警及输入提示音电路由陶瓷喇叭组成,单片机输出电压直接驱动,其功能是对输入信息进行提示和输错密码报警,与单片机P2.1口相连接;所述驱动器由单相可控硅及光电耦合器组成,其功能是放大单片机输出的开锁控制电流。可控硅阴极和阳极与电磁锁相连接。光电耦合器发光源的引脚与单片机的P2.0相连接,光电耦合器受光器的引脚跨接于可控硅的阴极和栅极。当单片机的P2.0口输出开锁信号时发光源发光,受光器因光照而产生了光电流,由受光器输出端引出,使可控硅被触发导通,达到开锁电流强度。所述升位验证密码锁程序属于51汇编语言,是本发明创新的核心部分,经编译生成机器码,烧录在单片机的EPROM存储器中,密码验证过程中产生的动态数据及用户设置的密码存储在单片机的RAM存储器;

本发明的一种微电脑升位验证密码锁密码设置及验证过程包括:

步骤A.设置一定长度的密码M;

步骤B.对密码M分段:设N1、N2、N3、N4……Ni为各段密码长度,同时N1<N2<N3<N4……<Ni

从密码M的第一位至第N1位的密码段命名为M1

从密码M的第一位至第N2位的密码段命名为M2

从密码M的第一位至第N3位的密码段命名为M3

从密码M的第一位至第N4位的密码段命名为M4

……

从密码的第一位至第Ni位的密码段命名为Mi

因N1<N2<N3<N4……<Ni,相应的M 1< M 2< M 3< M 4……< Mi

步骤C.从键盘输入设置的密码M,送入存储器保存;从键盘输入设置的各段密码长度参数:N1、N2、N3、N4……Ni送入存储器保存;

步骤D.初始化设置参数;

步骤E. 用户输入验证密码段M,同存储器里设置对应的密码段比对,如果比对一致则执行步骤I, 否则执行步骤F;

步骤F. 判断密码是否升至最高位,是则执行步骤G,否则执行步骤H;

步骤G. .将升位后的验证密码段作为新的验证密码段,执行步骤E;

步骤H.密码按照M 1→ M 2→ M 3→ M 4……< Mi的顺序升位输入验证,将本次验证密码段的下一密码段作为新的验证密码段,执行步骤G.;

步骤I.用户通过密码验证,执行开锁,重置密码验证信息,验证过程结束。

本发明的一种微电脑升位验证密码锁,可以有效解决现有微电脑密码锁存在的密码使用的方便性与密码的安全性之间难以兼頋的技术难题。

附图说明

图1是本发明的电路原理图。

图2是本发明的密码升位验证流程图。

图3是本发明实施例1的密码分段示意图。

图4是本发明的矩阵键盘图。

具体实施方式

下面结合附图详细说明本发明的一种微电脑升位验证密码锁。

如图2所示,本发明的一种微电脑升位验证密码锁验证过程,包括:

步骤A.设置一定长度的密码M;

步骤B.对密码M分段:设N1、N2、N3、N4……Ni为各段密码长度,同时N1<N2<N3<N4……<Ni

从密码M的第一位至第N1位的密码段命名为M1

从密码M的第一位至第N2位的密码段命名为M2

从密码M的第一位至第N3位的密码段命名为M3

从密码M的第一位至第N4位的密码段命名为M4

……

从密码的第一位至第Ni位的密码段命名为Mi

因N1<N2<N3<N4……<Ni,相应的M 1< M 2< M 3< M 4……< Mi

步骤C.从键盘输入设置的密码M,送入存储器保存;从键盘输入设置的各段密码长度参数:N1、N2、N3、N4……Ni送入存储器保存;

步骤D.初始化设置参数;

步骤E. 用户输入验证密码段M,同存储器里设置对应的密码段比对,如果比对一致则执行步骤I, 否则执行步骤F;

步骤F. 判断密码是否升至最高位,是则执行步骤G,否则执行步骤H;

步骤G. .将升位后的验证密码段作为新的验证密码段,执行步骤E;

步骤H.密码按照M 1→ M 2→ M 3→ M 4……< Mi的顺序升位输入验证,将本次验证密码段的下一密码段作为新的验证密码段,执行步骤G.;

步骤I.用户通过密码验证,执行开锁,重置密码验证信息,验证过程结束。

其中,所述步骤A.设置一定长度的密码M,比较适合的长度一般为20—50位;所述步骤B.对密码M一般分为4-6段比较合适。密码分段的段数及各段长度参数可由软件设置为固定值,用户操作简便,但是用户不可更改,不能满足用户的个性化需求,也可由用户根据需要自行设置,更具灵活性,但操作时增加了一两步。最后一段密码之前的各段密码之和不要超过15位左右,以便让用户输错密码缓慢升位。各段密码长度按N1<N2<N3<N4……<Ni递增,并且N1、N2、N3、N4……Ni必须≦M总长,否则系统出错。如果N1=N2=N3=N4……=Ni便不升位,成为传统密码验证方法。所述步骤C. 长度参数,即升位参数;所述步骤D. 初始化设置参数是指将密码长度设置为N1,将当前验证密码段设置为M1;所述步骤E.用户首次输入第一段密码,之后根据升位状态输入相关密码段;所述步骤F.密码升至最高位是指升至设置密码M的总长度;所述步骤G.新的验证密码段是指本次验证密码段的下一密码段;所述步骤H.密码升位是按M1→M2→ M3→ M4……→ Mi顺序进行的;所述步骤I重置密码验证信息是指将密码M1作为当前验证密码段。

实施例1

下面再以一个具体的实例详细说明本发明的一种微电脑升位验证密码锁。

步骤A. 设置长度为20位的密码M:64130965347945694872,并存储于单片机的RAM用户区,如图3所示。

步骤B:用户根据自己的使用需要对密码M分段:设各段密码长度为N1=6;N2=8;N3=10;N4=20,密码段M1为:641309;密码段M264130965;密码段M3为:6413096534;密码段M4为:64130965347945694872,如图3所示。

步骤C. 按一下复位按钮,发出“嘟”的一声提示音,再按一下密码设置按钮,发出“嘟” ……的连续输入提示音,这时从键盘输入密码M:64130965347945694872数码管显示输入的密码;按一下复位按钮,发出“嘟”的一声提示音,再按一下升位设置按钮,发出“嘟” ……的连续输入提示音,这时从键盘输入升位参数:N1=6;N2=8;N3=10;N4=20,数码管显示输入的升位参数。

步骤D. 初始化设置参数:将密码长度设置为N1:6,将当前验证密码段设置为M1641309

步骤E. 按一下输入密码按钮,发出“嘟” ……的连续输入提示音,这时从键盘输入验证密码段M1:641355,数码管显示输入的密码,由于存储于RAM里对应的密码段M1641309,验证失败,因此执行步骤F;(以下步骤E的输入按钮操作同本步骤)。

步骤F. 判断密码是否升至最高位,由于本次加入验证的密码段M1641309为6位,未升到最高位:20位,因此执行步骤H。

步骤H.密码升位,将本次验证密码段M1641309的下一密码段M264130965作为新的验证密码段,执行步骤G. 。

步骤G.将升位后的验证密码段作为新的验证密码段,执行步骤E。

步骤E.用户输入验证密码段M2:64130955,由于存储于RAM里对应的密码段M264130965,验证失败,因此执行步骤F。

步骤F. 判断密码是否升至最高位,由于本次加入验证的密码段M2 64130965为8位,未升到最高位:20位,因此执行步骤H。

步骤H.密码升位,将本次验证密码段M264130965的下一密码段M36413096534作为新的验证密码段,执行步骤G. 。

步骤G.将升位后的验证密码段作为新的验证密码段,执行步骤E。

步骤E. 用户输入验证密码段M3:6413096555,由于存储于RAM里对应的密码段M36413096534,验证失败,因此执行步骤F。

步骤F. 判断密码是否升至最高位,由于本次加入验证的密码段M36413096534为10位,未升到最高位:20位,因此执行步骤H。

步骤H.密码升位,将本次验证密码段M36413096534的下一密码段M464130965347945694872作为新的验证密码段,执行步骤G.。

步骤G.将升位后的验证密码段作为新的验证密码段,执行步骤E。

步骤E.用户输入验证密码段M4:64130965347945694855,由于存储于RAM里对应的密码段M4是64130965347945694872,验证失败,因此执行步骤F。

步骤F. 判断密码是否升至最高位,由于本次加入验证的密码段M4:64130965347945694872为20位,已升到最高位:20位,因此执行步骤G。

步骤G.将升位后的验证密码段作为新的验证密码段,执行步骤E。

步骤E. 用户输入验证密码段M4:64130965347945694872,由于存储于RAM里对应的密码段M464130965347945694872,比对完全一致,验证成功,因此执行步骤I。

步骤I.用户通过密码验证,执行开锁:单片机P2.0口输出高电平,光电耦合器输出光电流,可控硅导通驱动电磁锁开锁;重置密码验证信息,将M1641309作为新的验证密码段,验证过程结束。

实施例2

下面再以一个中文句子的汉语拼音字母为设置密码的具体实例,详细说明本发明的一种微电脑升位验证密码锁;

中文句子:感觉∣到了∣的东西∣不一定理解它只有理解了的东西才能更深刻的感觉它;

对应的拼音字母:gan jue ∣dao liao ∣de dong xi ∣bu yi ding li jie ta zhi you li jie liao de dong xi cai neng geng shen ke de gan jue ta。

步骤A. 设置长度为87位的密码M:gan jue dao liao de dong xi bu yi ding li jie ta zhi you li jie liao de dong xi cai neng geng shen ke de gan jue ta,并存储于单片机的RAM用户区。

步骤B:用户根据自己的使用需要对密码M分段:设各段密码长度为N1=6;N2=13;N3=22;N4=87,密码段M1为:gan jue;密码段M2为gan jue dao liao;密码段M3为:gan jue dao liao de dong xi;密码段M4为:gan jue dao liao de dong xi bu yi ding li jie ta zhi you li jie liao de dong xi cai neng geng shen ke de gan jue ta。

步骤C. 按一下复位按钮,发出“嘟”的一声提示音,再按一下密码设置按钮,发出“嘟” ……的连续输入提示音,这时从键盘输入密码M:gan jue dao liao de dong xi bu yi ding li jie ta zhi you li jie liao de dong xi cai neng geng shen ke de gan jue ta,数码管显示输入的密码;按一下复位按钮,发出“嘟”的一声提示音,再按一下升位设置按钮,发出“嘟” ……的连续输入提示音,这时从键盘输入升位参数:N1=6;N2=13;N3=22;N4=87,数码管显示输入的升位参数。

步骤D. 初始化设置参数:将密码长度设置为N1:6,将当前验证密码段设置为M1:gan jue。

步骤E. 按一下输入密码按钮,发出“嘟” ……的连续输入提示音,这时从键盘输入验证密码段M1:gan ju5,数码管显示输入的密码,由于存储于RAM里对应的密码段M1是gan jue,验证失败,因此执行步骤F;(以下步骤E的输入按钮操作同本步骤)。

步骤F. 判断密码是否升至最高位,由于本次加入验证的密码段M1:gan jue为6位,未升到最高位:87位,因此执行步骤H。

步骤H.密码升位,将本次验证密码段M1:gan jue的下一密码段M2:gan jue dao liao作为新的验证密码段,执行步骤G. 。

步骤G.将升位后的验证密码段作为新的验证密码段,执行步骤E。

步骤E.用户输入验证密码段M2:gan jue dao liao,

由于存储于RAM里对应的密码段M2也是gan jue dao liao,比对完全一致,验证成功,因此执行步骤I。

步骤I.用户通过密码验证,执行开锁:单片机P2.0口输出高电平,光电耦合器输出光电流,可控硅导通驱动电磁锁开锁;重置密码验证信息,将M1:gan jue作为新的验证密码段,验证过程结束。

可以看出,采用本发明的一种微电脑升位验证密码锁,密码的合法持有者由于掌握密码,输错密码的概率很低,因此升位几率很小,连续输错密码升到最高位的几率更小,要求输入的是短密码;而密码破解者不知用户所设置的密码,全靠猜测试探,输错密码的概率很高,三,五次便升到最高位,面对的是几十位的长密码;该发明有效解决了密码的方便性和安全性的矛盾,满足了二者的完美统一。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1