一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

解决AFU工具刷新BIOS进行密码验证的方法及装置与流程

2021-12-07 21:21:00 来源:中国专利 TAG:

解决afu工具刷新bios进行密码验证的方法及装置
技术领域
1.本发明属于bios刷新技术领域,具体涉及一种解决afu工具刷新bios进行密码验证的方法及装置。


背景技术:

2.bios,是basic input output system的简称,基本输入输出系统。bios作为服务器主板最底层的、最直接的硬件设置和控制的管理端,能为服务器提供更多简单的易用性功能。bios可以通过带内和带外两种方式进行刷新,其中带内bios刷新常用的工具是afu工具。
3.afu工具是用在各种系统下更新系统bios的实用工具包,可在efi shell、linux和windows下帮助用户实现bios的更新。目前,利用afu工具进行bios刷新时无任何的安全校验机制,无论普通用户还是管理者只要能使用服务器的人员均能利用afu工具实现bios更新,此种的更新机制缺乏安全检测,不符合安全规定,容易造成因bios更新不当导致服务器无法正常使用,以及出现安全侵袭等问题;再者,bios与afu工具之间并没有规定有关密码验证的传输信息,bios端将要执行的命令发送给afu工具,令afu工具做出一些操作,指令如何发送给afu工具,怎么让afu工具接受到指令,都是面临的一大难题。
4.此为现有技术的不足,因此,针对现有技术中的上述缺陷,提供一种解决afu工具刷新bios进行密码验证的方法及装置,是非常有必要的。


技术实现要素:

5.针对现有技术的上述现有的afu工具进行bios更新缺乏安全检查易造成bios更新不当无法使用,以及afu工具与bios之间缺少有关密码验证的传输信息的缺陷,本发明提供一种解决afu工具刷新bios进行密码验证的方法及装置,以解决上述技术问题。
6.第一方面,本发明提供一种解决afu工具刷新bios进行密码验证的方法,包括如下步骤:
7.s1.bios端定义密码功能检验模块,密码功能检验模块检查bios端是否存在密码信息标志位,并在存在密码信息标志位时,建立密码功能检验模块与afu工具的链接;
8.s2.运行afu工具进行bios刷新时,自动触发bios端的密码功能检验模块,密码功能检验模块中断bios刷新操作,启动密码请求,判断是否存在密码以及请求密码是否与预存的密码相同;
9.s3.当请求密码与预存的密码相同时,bios端的密码功能检验模块通知afu工具密码验证通过,afu工具继续进行bios刷新;
10.s4.当请求密码与预存的密码不同时,bios端的密码功能检验模块再次请求密码,并当请求密码次数超过设定次数时,afu工具停止bios刷新。
11.进一步地,步骤s1具体步骤如下:
12.s11.在bios端和afu端注册afu工具与bios通信的指令信号,包括密码存在信号、
密码获取信号以及密码检验信号;
13.s12.在bios端定义密码存在标记位、密码获取标记位以及密码检验标记位;密码存在标记位用于指示密码存在信号是否存在,密码获取标记位用于指示密码获取信号是否存在,密码检验标记位用于指示密码检验标记信号是否存在;
14.s13.在bios端定义密码功能检验模块,并在密码存在标记位、密码获取标记位以及密码检验标记位存在时,建立密码功能检验模块与afu工具的链接;
15.s14.在密码功能检验模块内定义密码请求指令、密码通过指令以及密码错误指令、密码长度指令以及密码超限指令。在bios端和afu工具端注册两者通信的对应信号,在bios端定义结构体标识通信信号的标记位,在bios端还定义两者通信传输链接的密码功能检验模块。
16.进一步地,步骤s2具体步骤如下:
17.s21.通过afu工具进行bios刷新时,触发bios端的密码功能检验模块;
18.s22.密码功能检验模块通知bios将密码请求指令发送到afu工具,中止bios刷新操作;
19.s23.bios判断是否存在管理员密码;
20.若是,进入步骤s24;
21.若否,进入步骤s3;
22.s24.密码功能检验模块通知bios发送密码长度指令到afu工具;
23.s25.afu工具提示输入管理员密码后才可继续刷新bios;
24.s26.bios获取到管理员密码后,将管理员密码与预存的管理员密码进行比较,进入步骤s3。bios将获取的管理员密码按照预存管理员密码的加密方式进行加密后,再与预存管理员密码进行比对。afu工具在进行bios刷新前触发密码验证,需要输入正确管理员密码才能刷新。
25.进一步地,步骤s3具体步骤如下:
26.s31.当不存在管理员密码时或者用户输入的管理员密码与预存的管理员密码相同时,密码功能检验模块通知bios将密码通过指令发送到afu工具;
27.s32.afu工具继续执行bios刷新操作,结束。输入管理员密码正确方可继续刷新。
28.进一步地,步骤s4具体步骤如下:
29.s41.当用户输入的管理员密码与预存的管理员密码不同时,密码功能检验模块通知bios将密码错误指令发送到afu工具;
30.s42.密码功能检验模块判断密码输入错误次数是否超过设定次数;
31.若是,进入步骤s43;
32.若否,返回步骤s24;
33.s43.密码功能检验模块通知bios将密码超限指令发送到afu工具;
34.s44.afu工具停止bios刷新。需要管理员密码错误,需要重新输入,而重输的次数做了限定,保证afu工具进行bios刷新的安全性。
35.第二方面,本发明提供一种解决afu工具刷新bios进行密码验证的装置,包括:
36.密码功能检验模块定义单元,用于bios端定义密码功能检验模块,密码功能检验模块检查bios端是否存在密码信息标志位,并在存在密码信息标志位时,建立密码功能检
验模块与afu工具的链接;
37.密码验证单元,用于运行afu工具进行bios刷新时,自动触发bios端的密码功能检验模块,密码功能检验模块中断bios刷新操作,启动密码请求,判断是否存在密码以及请求密码是否与预存的密码相同;
38.bios继续刷新单元,用于当请求密码与预存的密码相同时,bios端的密码功能检验模块通知afu工具密码验证通过,afu工具继续进行bios刷新;
39.bios停止刷新单元,用于当请求密码与预存的密码不同时,bios端的密码功能检验模块再次请求密码,并当请求密码次数超过设定次数时,afu工具停止bios刷新。
40.进一步地,密码功能检验模块定义单元包括:
41.通信指令信号注册子单元,用于在bios端和afu端注册afu工具与bios通信的指令信号,包括密码存在信号、密码获取信号以及密码检验信号;
42.密码标记位定义子单元,用于在bios端定义密码存在标记位、密码获取标记位以及密码检验标记位;密码存在标记位用于指示密码存在信号是否存在,密码获取标记位用于指示密码获取信号是否存在,密码检验标记位用于指示密码检验标记信号是否存在;
43.密码功能检验模块链接子单元,用于在bios端定义密码功能检验模块,并在密码存在标记位、密码获取标记位以及密码检验标记位存在时,建立密码功能检验模块与afu工具的链接;
44.密码指令定义子单元,用于在密码功能检验模块内定义密码请求指令、密码通过指令以及密码错误指令、密码长度指令以及密码超限指令。
45.进一步地,密码验证单元包括:
46.密码验证功能检验模块触发子单元,用于通过afu工具进行bios刷新时,触发bios端的密码功能检验模块;
47.刷新中止子单元,用于密码功能检验模块通知bios将密码请求指令发送到afu工具,中止bios刷新操作;
48.管理员密码判断子单元,用于bios判断是否存在管理员密码;
49.密码长度指令发送子单元,用于存在管理员密码时,密码功能检验模块通知bios发送密码长度指令到afu工具;
50.输入密码提示子单元,用于afu工具提示输入管理员密码后才可继续刷新bios;
51.密码比对子单元,用于bios获取到管理员密码后,将管理员密码与预存的管理员密码进行比较。
52.进一步地,bios继续刷新单元包括:
53.密码通过指令发送子单元,用于当不存在管理员密码时或者用户输入的管理员密码与预存的管理员密码相同时,密码功能检验模块通知bios将密码通过指令发送到afu工具;
54.bios继续刷新子单元,用于afu工具继续执行bios刷新操作。
55.进一步地,bios停止刷新单元包括:
56.密码错误指令发送子单元,用于当用户输入的管理员密码与预存的管理员密码不同时,密码功能检验模块通知bios将密码错误指令发送到afu工具;
57.密码超限验证子单元,用于密码功能检验模块判断密码输入错误次数是否超过设
定次数;
58.密码超限指令发送子单元,用于密码输入错误次数超过设定次数时,密码功能检验模块通知bios将密码超限指令发送到afu工具;
59.bios刷新停止子单元,用于afu工具停止bios刷新。
60.本发明的有益效果在于,
61.本发明提供的解决afu工具刷新bios进行密码验证的方法及装置,实现了带内使用afu工具进行刷新时进行用户密码验证,在bios和afu工具之间规定了一些指令规范,在bios端进行密码获取和判断,并发送指令到afu工具,让afu工具执行下一步操作,当用户为管理员且输入密码正确时才允许进行bios刷新,完善了bios带内刷新的安全检测机制,有效避免了因为bios刷新不当造成的一系列问题,提高了用户刷新bios的安全性,解决了afu工具和bios端之间无密码检测指令的难题。
62.此外,本发明设计原理可靠,结构简单,具有非常广泛的应用前景。
63.由此可见,本发明与现有技术相比,具有突出的实质性特点和显著的进步,其实施的有益效果也是显而易见的。
附图说明
64.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
65.图1是本发明的解决afu工具刷新bios进行密码验证的方法流程示意图一。
66.图2是本发明的解决afu工具刷新bios进行密码验证的方法流程示意图二。
67.图3是本发明的解决afu工具刷新bios进行密码验证的装置示意图。
68.图中,1

密码功能检验模块定义单元;1.1

通信指令信号注册子单元;1.2

密码标记位定义子单元;1.3

密码功能检验模块链接子单元;1.4

密码指令定义子单元;2

密码验证单元;2.1

密码验证功能检验模块触发子单元;2.2

刷新中止子单元;2.3

管理员密码判断子单元;2.4

密码长度指令发送子单元;2.5

输入密码提示子单元;2.6

密码比对子单元;3

bios继续刷新单元;3.1

密码通过指令发送子单元;3.2

bios继续刷新子单元;4

bios停止刷新单元;4.1

密码错误指令发送子单元;4.2

密码超限验证子单元;4.3

密码超限指令发送子单元;4.4

bios刷新停止子单元。
具体实施方式
69.为了使本技术领域的人员更好地理解本发明中的技术方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
70.实施例1:
71.如图1所示,本发明提供一种解决afu工具刷新bios进行密码验证的方法,包括如下步骤:
72.s1.bios端定义密码功能检验模块,密码功能检验模块检查bios端是否存在密码信息标志位,并在存在密码信息标志位时,建立密码功能检验模块与afu工具的链接;
73.s2.运行afu工具进行bios刷新时,自动触发bios端的密码功能检验模块,密码功能检验模块中断bios刷新操作,启动密码请求,判断是否存在密码以及请求密码是否与预存的密码相同;
74.s3.当请求密码与预存的密码相同时,bios端的密码功能检验模块通知afu工具密码验证通过,afu工具继续进行bios刷新;
75.s4.当请求密码与预存的密码不同时,bios端的密码功能检验模块再次请求密码,并当请求密码次数超过设定次数时,afu工具停止bios刷新。
76.实施例2:
77.如图2所示,本发明提供一种解决afu工具刷新bios进行密码验证的方法,包括如下步骤:
78.s1.bios端定义密码功能检验模块,密码功能检验模块检查bios端是否存在密码信息标志位,并在存在密码信息标志位时,建立密码功能检验模块与afu工具的链接;具体步骤如下:
79.s11.在bios端和afu端注册afu工具与bios通信的指令信号,包括密码存在信号、密码获取信号以及密码检验信号;
80.s12.在bios端定义密码存在标记位、密码获取标记位以及密码检验标记位;密码存在标记位用于指示密码存在信号是否存在,密码获取标记位用于指示密码获取信号是否存在,密码检验标记位用于指示密码检验标记信号是否存在;
81.s13.在bios端定义密码功能检验模块,并在密码存在标记位、密码获取标记位以及密码检验标记位存在时,建立密码功能检验模块与afu工具的链接;
82.s14.在密码功能检验模块内定义密码请求指令、密码通过指令以及密码错误指令、密码长度指令以及密码超限指令;
83.s2.运行afu工具进行bios刷新时,自动触发bios端的密码功能检验模块,密码功能检验模块中断bios刷新操作,启动密码请求,判断是否存在密码以及请求密码是否与预存的密码相同;具体步骤如下:
84.s21.通过afu工具进行bios刷新时,触发bios端的密码功能检验模块;
85.s22.密码功能检验模块通知bios将密码请求指令发送到afu工具,中止bios刷新操作;
86.s23.bios判断是否存在管理员密码;
87.若是,进入步骤s24;
88.若否,进入步骤s3;
89.s24.密码功能检验模块通知bios发送密码长度指令到afu工具;
90.s25.afu工具提示输入管理员密码后才可继续刷新bios;
91.s26.bios获取到管理员密码后,将管理员密码与预存的管理员密码进行比较,进入步骤s3;
92.s3.当请求密码与预存的密码相同时,bios端的密码功能检验模块通知afu工具密码验证通过,afu工具继续进行bios刷新;具体步骤如下:
93.s31.当不存在管理员密码时或者用户输入的管理员密码与预存的管理员密码相同时,密码功能检验模块通知bios将密码通过指令发送到afu工具;
94.s32.afu工具继续执行bios刷新操作;
95.s4.当请求密码与预存的密码不同时,bios端的密码功能检验模块再次请求密码,并当请求密码次数超过设定次数时,afu工具停止bios刷新;具体步骤如下:
96.s41.当用户输入的管理员密码与预存的管理员密码不同时,密码功能检验模块通知bios将密码错误指令发送到afu工具;
97.s42.密码功能检验模块判断密码输入错误次数是否超过设定次数;
98.若是,进入步骤s43;
99.若否,返回步骤s24;
100.s43.密码功能检验模块通知bios将密码超限指令发送到afu工具;
101.s44.afu工具停止bios刷新。
102.实施例3:
103.如图2所示,本发明提供一种解决afu工具刷新bios进行密码验证的方法,包括如下步骤:
104.s1.bios端定义密码功能检验模块,密码功能检验模块检查bios端是否存在密码信息标志位,并在存在密码信息标志位时,建立密码功能检验模块与afu工具的链接;具体步骤如下:
105.s11.在bios端和afu端注册afu工具与bios通信的指令信号,包括密码存在passwordexist信号、密码获取passwordget信号以及密码检验passworcheck信号;
106.s12.在bios端定义密码存在标记位、密码获取标记位以及密码检验标记位;密码存在标记位用于指示密码存在信号是否存在,密码获取标记位用于指示密码获取信号是否存在,密码检验标记位用于指示密码检验标记信号是否存在;bios端定义了两个结构体,一个是标记passwordexist指令在位,一个定义标记了passwordget和passwordcheck的bit位;
107.s13.在bios端定义密码功能检验模块,并在密码存在标记位、密码获取标记位以及密码检验标记位存在时,建立密码功能检验模块与afu工具的链接;bios端定义一个函数smi password function作为密码功能检验模块,去检测这两个结构体的标志位是否存在,也就是bios端是否开启此功能,然后会将结构体链接到ofbd下,发送给afu工具,afu工具接收指令后,进行相应操作;
108.s14.在密码功能检验模块内定义密码请求指令、密码通过指令以及密码错误指令、密码长度指令以及密码超限指令;函数smi password function作为指令传输桥梁,密码请求指令password request用于在afu进行bios刷新时暂时中断,需要进行密码验证;密码通过指令password ok用于afu工具继续执行刷新操作;密码错误指令password error用于告知afu用户输入密码有误;密码长度指令passwordlength用于告诉afu工具bios具有的管理员密码长度是多少;密码超限指令password exceeded用于告知afu工具密码输入次数超过规定,停止刷新;
109.s2.运行afu工具进行bios刷新时,自动触发bios端的密码功能检验模块,密码功能检验模块中断bios刷新操作,启动密码请求,判断是否存在密码以及请求密码是否与预
存的密码相同;具体步骤如下:
110.s21.通过afu工具进行bios刷新时,触发bios端的密码功能检验模块;在调用afu工具时会触发调用函数smipasswordfunction;
111.s22.密码功能检验模块通知bios将密码请求指令发送到afu工具,中止bios刷新操作;bios会将密码请求指令password request通过ofbd发送到afu工具,afu工具收到指令则暂停bios刷新,等待进一步的操作指令;
112.s23.bios判断是否存在管理员密码;bios进行管理员密码存在与否判断,利用getvariable函数获取当前bios的管理员密码;
113.若是,进入步骤s24;
114.若否,进入步骤s3;若获取的管理员密码为空,则表示此时没有设置管理员密码,则进入步骤s3发送密码通过指令password ok到afu工具;
115.s24.密码功能检验模块通知bios发送密码长度指令到afu工具;若获取的管理员密码为非空,则bios会发送密码长度指令passwordlength到afu工具,通知afu工具此时bios具有长度为passwordlength的管理员密码;
116.s25.afu工具提示输入管理员密码后才可继续刷新bios;afu工具获取到密码长度指令passwordlength后,则会提示用户需要输入密码才能继续进行bios刷新;
117.s26.bios获取到管理员密码后,将管理员密码与预存的管理员密码进行比较,进入步骤s3;bios端获取到用户输入密码后,会和已有的bios管理员密码作比较;由于bios利用getvariable获取到的管理员密码是经过加密算法加密后的密码,因此在进行对比时,先需要将用户收入密码按照同样的加密方法进行加密后,再对比两个密码是否一致;
118.s3.当请求密码与预存的密码相同时,bios端的密码功能检验模块通知afu工具密码验证通过,afu工具继续进行bios刷新;具体步骤如下:
119.s31.当不存在管理员密码时或者用户输入的管理员密码与预存的管理员密码相同时,密码功能检验模块通知bios将密码通过指令发送到afu工具;
120.s32.afu工具继续执行bios刷新操作;若管理员密码和用户收入密码一致,bios发送密码通过指令password ok到afu工具,afu工具会继续进行刷新;
121.s4.当请求密码与预存的密码不同时,bios端的密码功能检验模块再次请求密码,并当请求密码次数超过设定次数时,afu工具停止bios刷新;若两个密码不一致,则bios发送密码错误指令passworderror到afu工具输入密码有误,需再次提醒用户输入密码;具体步骤如下:
122.s41.当用户输入的管理员密码与预存的管理员密码不同时,密码功能检验模块通知bios将密码错误指令发送到afu工具;
123.s42.密码功能检验模块判断密码输入错误次数是否超过设定次数三次;
124.若是,进入步骤s43;
125.若否,返回步骤s24;
126.s43.密码功能检验模块通知bios将密码超限指令password exceeded发送到afu工具;
127.s44.afu工具停止bios刷新。
128.实施例4:
129.如图3所示,本发明提供一种解决afu工具刷新bios进行密码验证的装置,包括:
130.密码功能检验模块定义单元1,用于bios端定义密码功能检验模块,密码功能检验模块检查bios端是否存在密码信息标志位,并在存在密码信息标志位时,建立密码功能检验模块与afu工具的链接;
131.密码验证单元2,用于运行afu工具进行bios刷新时,自动触发bios端的密码功能检验模块,密码功能检验模块中断bios刷新操作,启动密码请求,判断是否存在密码以及请求密码是否与预存的密码相同;
132.bios继续刷新单元3,用于当请求密码与预存的密码相同时,bios端的密码功能检验模块通知afu工具密码验证通过,afu工具继续进行bios刷新;
133.bios停止刷新单元4,用于当请求密码与预存的密码不同时,bios端的密码功能检验模块再次请求密码,并当请求密码次数超过设定次数时,afu工具停止bios刷新。
134.实施例5:
135.如图3所示,本发明提供一种解决afu工具刷新bios进行密码验证的装置,包括:
136.密码功能检验模块定义单元1,用于bios端定义密码功能检验模块,密码功能检验模块检查bios端是否存在密码信息标志位,并在存在密码信息标志位时,建立密码功能检验模块与afu工具的链接;密码功能检验模块定义单元1包括:
137.通信指令信号注册子单元1.1,用于在bios端和afu端注册afu工具与bios通信的指令信号,包括密码存在信号、密码获取信号以及密码检验信号;
138.密码标记位定义子单元1.2,用于在bios端定义密码存在标记位、密码获取标记位以及密码检验标记位;密码存在标记位用于指示密码存在信号是否存在,密码获取标记位用于指示密码获取信号是否存在,密码检验标记位用于指示密码检验标记信号是否存在;
139.密码功能检验模块链接子单元1.3,用于在bios端定义密码功能检验模块,并在密码存在标记位、密码获取标记位以及密码检验标记位存在时,建立密码功能检验模块与afu工具的链接;
140.密码指令定义子单元1.4,用于在密码功能检验模块内定义密码请求指令、密码通过指令以及密码错误指令、密码长度指令以及密码超限指令;
141.密码验证单元2,用于运行afu工具进行bios刷新时,自动触发bios端的密码功能检验模块,密码功能检验模块中断bios刷新操作,启动密码请求,判断是否存在密码以及请求密码是否与预存的密码相同;密码验证单元2包括:
142.密码验证功能检验模块触发子单元2.1,用于通过afu工具进行bios刷新时,触发bios端的密码功能检验模块;
143.刷新中止子单元2.2,用于密码功能检验模块通知bios将密码请求指令发送到afu工具,中止bios刷新操作;
144.管理员密码判断子单元2.3,用于bios判断是否存在管理员密码;
145.密码长度指令发送子单元2.4,用于存在管理员密码时,密码功能检验模块通知bios发送密码长度指令到afu工具;
146.输入密码提示子单元2.5,用于afu工具提示输入管理员密码后才可继续刷新bios;
147.密码比对子单元2.6,用于bios获取到管理员密码后,将管理员密码与预存的管理
员密码进行比较;
148.bios继续刷新单元3,用于当请求密码与预存的密码相同时,bios端的密码功能检验模块通知afu工具密码验证通过,afu工具继续进行bios刷新;bios继续刷新单元3包括:
149.密码通过指令发送子单元3.1,用于当不存在管理员密码时或者用户输入的管理员密码与预存的管理员密码相同时,密码功能检验模块通知bios将密码通过指令发送到afu工具;
150.bios继续刷新子单元3.2,用于afu工具继续执行bios刷新操作;
151.bios停止刷新单元4,用于当请求密码与预存的密码不同时,bios端的密码功能检验模块再次请求密码,并当请求密码次数超过设定次数时,afu工具停止bios刷新;bios停止刷新单元4包括:
152.密码错误指令发送子单元4.1,用于当用户输入的管理员密码与预存的管理员密码不同时,密码功能检验模块通知bios将密码错误指令发送到afu工具;
153.密码超限验证子单元4.2,用于密码功能检验模块判断密码输入错误次数是否超过设定次数;
154.密码超限指令发送子单元4.3,用于密码输入错误次数超过设定次数时,密码功能检验模块通知bios将密码超限指令发送到afu工具;
155.bios刷新停止子单元4.4,用于afu工具停止bios刷新。
156.尽管通过参考附图并结合优选实施例的方式对本发明进行了详细描述,但本发明并不限于此。在不脱离本发明的精神和实质的前提下,本领域普通技术人员可以对本发明的实施例进行各种等效的修改或替换,而这些修改或替换都应在本发明的涵盖范围内/任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献