CN117118757A - 工控环境下的终端登录方法、装置、设备及介质 - Google Patents
工控环境下的终端登录方法、装置、设备及介质 Download PDFInfo
- Publication number
- CN117118757A CN117118757A CN202311377694.6A CN202311377694A CN117118757A CN 117118757 A CN117118757 A CN 117118757A CN 202311377694 A CN202311377694 A CN 202311377694A CN 117118757 A CN117118757 A CN 117118757A
- Authority
- CN
- China
- Prior art keywords
- terminal
- time
- target
- dimensional code
- current
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 51
- 230000004048 modification Effects 0.000 claims description 27
- 238000012986 modification Methods 0.000 claims description 27
- 230000001360 synchronised effect Effects 0.000 claims description 25
- 238000004590 computer program Methods 0.000 claims description 11
- 230000008859 change Effects 0.000 claims description 9
- 230000008569 process Effects 0.000 claims description 9
- 238000004422 calculation algorithm Methods 0.000 claims description 5
- 230000009191 jumping Effects 0.000 claims 1
- 238000005516 engineering process Methods 0.000 abstract 1
- 230000006870 function Effects 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000012423 maintenance Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- RWSOTUBLDIXVET-UHFFFAOYSA-N Dihydrogen sulfide Chemical compound S RWSOTUBLDIXVET-UHFFFAOYSA-N 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/083—Network architectures or network communication protocols for network security for authentication of entities using passwords
- H04L63/0846—Network architectures or network communication protocols for network security for authentication of entities using passwords using time-dependent-passwords, e.g. periodically changing passwords
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
- G06F21/36—User authentication by graphic or iconic representation
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Storage Device Security (AREA)
Abstract
本发明涉及身份鉴别技术领域,特别涉及一种工控环境下的终端登录方法、装置、设备及介质。方法包括:当输入用户名后,终端判断当前用户名是否为首次登录;若是,终端生成随着终端时间变的二维码;在利用微信小程序对目标二维码扫描后,小程序服务端将当前用户名与微信唯一标识绑定,并且生成动态口令实时显示在小程序上;在用户将目标动态口令输入终端登录页面后,终端将当前终端时间与目标二维码生成时的终端时间进行同步后,生成以目标二维码生成时的终端时间为基准的目标口令,以基于目标口令与目标动态口令比对结果进行终端登录;若否,则直接利用所绑定小程序上实时更新的动态口令进行终端登录。本方案不但方便管理,而且安全性更高。
Description
技术领域
本发明实施例涉及身份鉴别技术领域,特别涉及一种工控环境下的终端登录方法、装置、设备及介质。
背景技术
目前工控环境下主流的登录方式包括两种,一种是传统的用户名密码登录,就是用户输入用户名、密码,输入验证码进行登录;一种是基于证书的登录方式,给每个用户发放证书,在浏览器中导入证书后,才可以使用该用户进行登录,用户中会绑定证书的信息。
由于用户名密码需要定期修改密码,并对密码的复杂度有一定的要求,而证书登录方式中每次新建用户时需要办理证书,用户需要下载证书保留,且登录时需要证书导入浏览器,等于绑定了设备和服务器,如果要换设备登录,需要重新导入证书。另外,密码比较容易泄露或丢失,且证书过期后重新申请新的证书,所以为了方便,证书使用期限不便于设置太短。因此,传统的两种登录方式不仅操作繁琐,不便管理,而且安全性较差。
因此,亟需一种新的工控环境下的终端登录方法。
发明内容
为了解决传统登录方式不仅操作繁琐,不便管理,而且安全性较差的问题,本发明实施例提供了一种工控环境下的终端登录方法、装置、设备及介质。
第一方面,本发明实施例提供了一种工控环境下的终端登录方法,方法包括:
当用户在终端登录页面输入要使用动态口令登录的用户名后,所述终端判断当前用户名是否为首次登录;
若为首次登录,所述终端基于自己的身份信息、当前用户名和当前终端时间,生成随着终端时间的分钟数变化的二维码;
在利用手机的微信小程序对目标二维码扫描后,小程序的服务端得到所述目标二维码中的终端身份信息、当前用户名和所述目标二维码生成时的终端时间,并将当前用户名与微信唯一标识绑定;
所述服务端基于扫描所述目标二维码时的服务端时间与所述目标二维码生成时的终端时间之间的差值,生成以所述目标二维码生成时的终端时间为基准的动态口令,并将所述动态口令实时显示在与当前用户名绑定的微信的小程序上;其中,所述动态口令随着时间分钟数变化而变化,每分钟更新一次;
若不为首次登录,则所述终端不生成二维码,与当前用户名绑定的微信的小程序上实时显示动态口令;
在将目标动态口令输入所述终端登录页面后,所述终端将当前终端时间与所述目标二维码生成时的终端时间进行同步,以基于自己的身份信息、当前用户名和同步后的时间,生成以所述目标二维码生成时的终端时间为基准的目标口令,以基于所述目标口令与所述目标动态口令比对结果进行终端登录。
第二方面,本发明实施例还提供了一种工控环境下的终端登录装置,装置包括:
判断单元,用于当用户在终端登录页面输入要使用动态口令登录的用户名后,所述终端判断当前用户名是否为首次登录;
第一生成单元,用于若为首次登录时,所述终端基于自己的身份信息、当前用户名和当前终端时间,生成随着终端时间的分钟数变化的二维码;
绑定单元,用于在利用手机的微信小程序对目标二维码扫描后,小程序的服务端得到所述目标二维码中的终端身份信息、当前用户名和所述目标二维码生成时的终端时间,并将当前用户名与微信唯一标识绑定;
第二生成单元,用于所述服务端基于扫描所述目标二维码时的服务端时间与所述目标二维码生成时的终端时间之间的差值,生成以所述目标二维码生成时的终端时间为基准的动态口令,并将所述动态口令实时显示在与当前用户名绑定的微信的小程序上;其中,所述动态口令随着时间分钟数变化而变化,每分钟更新一次;
第三生成单元,用于若不为首次登录时,所述终端不生成二维码,与当前用户名绑定的微信的小程序上实时显示动态口令;
登录单元,用于在将目标动态口令输入所述终端登录页面后,所述终端将当前终端时间与所述目标二维码生成时的终端时间进行同步,以基于自己的身份信息、当前用户名和同步后的时间,生成以所述目标二维码生成时的终端时间为基准的目标口令,以基于所述目标口令与所述目标动态口令比对结果进行终端登录。
第三方面,本发明实施例还提供了一种计算设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器执行所述计算机程序时,实现本说明书任一实施例所述的方法。
第四方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行本说明书任一实施例所述的方法。
本发明实施例提供了一种工控环境下的终端登录方法、装置、设备及介质,当用户名为首次登录时,需要与一个微信账号绑定,在之后登录时只需要打开小程序查看实时显示的动态口令,输入终端登录页面即可登录,手机操作方便快捷,密码不易泄露,易于管理维护;另外二维码、动态口令以及目标口令的有效期均为1分钟,精度和安全性更高。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一实施例提供的一种工控环境下的终端登录方法的流程图;
图2是本发明一实施例提供的一种计算设备的硬件架构图;
图3是本发明一实施例提供的一种工控环境下的终端登录装置结构图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
下面描述以上构思的具体实现方式。
请参考图1,本发明实施例提供了一种工控环境下的终端登录方法,该方法包括:
步骤100,当用户在终端登录页面输入要使用动态口令登录的用户名后,终端判断当前用户名是否为首次登录;
步骤102,若为首次登录,终端基于自己的身份信息、当前用户名和当前终端时间,生成随着终端时间的分钟数变化的二维码;
步骤104,在利用手机的微信小程序对目标二维码扫描后,小程序的服务端得到目标二维码中的终端身份信息、当前用户名和目标二维码生成时的终端时间,并将当前用户名与微信唯一标识绑定;
步骤106,服务端基于扫描目标二维码时的服务端时间与目标二维码生成时的终端时间之间的差值,生成以目标二维码生成时的终端时间为基准的动态口令,并将动态口令实时显示在与当前用户名绑定的微信的小程序上;其中,动态口令随着时间分钟数变化而变化,每分钟更新一次;
步骤108,若不为首次登录,则终端不生成二维码,与当前用户名绑定的微信的小程序上实时显示动态口令;
步骤110,在将目标动态口令输入终端登录页面后,终端将当前终端时间与目标二维码生成时的终端时间进行同步,以基于自己的身份信息、当前用户名和同步后的时间,生成以目标二维码生成时的终端时间为基准的目标口令,以基于目标口令与目标动态口令比对结果进行终端登录。
本发明实施例中,当用户名为首次登录时,需要与一个微信账号绑定,在之后登录时只需要打开小程序查看实时显示的动态口令,输入终端登录页面即可登录,手机操作方便快捷,密码不易泄露,易于管理维护;另外二维码、动态口令以及目标口令的有效期均为1分钟,精度和安全性更高。
针对步骤100:
在本发明实施例中,终端可以为各种安全设备,例如防火墙的服务器等。在该终端的用户管理中,包括与该终端关联的若干用户名,未与该终端关联的用户名在该终端登录时,视为首次登录;且与该终端关联的每一个用户名都有与其绑定的微信唯一标识,若没有与其绑定的微信唯一标识,该用户名在该终端登录时,也视为首次登录,需要执行步骤102-106进行重新绑定。
在本步骤中,需要首先在终端的用户管理中,设置用户登录方式为动态口令登录;然后,在终端登录页面,输入要使用动态口令登录的用户名。终端根据当前用户名是否在该终端的用户管理中,且是否有与之绑定的微信唯一标识,来判断当前用户名是否为首次登录,若是,则执行步骤102-106进行绑定后,执行步骤110进行终端登录;若否,则执行步骤108-110直接进行终端登录。
针对步骤102:
在一些实施方式中,终端的身份信息可以包括终端的序列号和终端的IP;
那么,二维码可以通过如下方式生成:
获取终端的序列号、终端的IP、当前用户名以及当前终端时间;其中,获取的当前终端时间精度为分钟;
生成一个随机数;
基于终端的序列号、终端的IP、当前用户名、当前终端时间以及随机数,生成当前分钟对应的二维码。
在本实施例中,在点击密码输入框时,终端会获取终端的序列号SN、IP、输入的当前用户名、当前终端时间,并生成一个随机数,根据这5个信息,生成一个二维码,该二维码每分钟会变化一次,来保证二维码中的时间和当前终端时间是一致的,时间精度到分钟,来确保生成的动态口令在一分钟之内有效。随机数是为了防止加密算法被泄露后,不法分子可以自行生成动态口令进行登录,因此,设置随机数可以提高动态口令的加密度。另外,利用当前用户名生成二维码,是为了保证动态口令与当前用户名的对应关系,防止生成的动态口令哪个用户名都能登录。
针对步骤104和步骤106:
在一些实施方式中,在利用手机的微信小程序对目标二维码进行扫描后,小程序的服务端还可以得到目标二维码中的随机数;
那么,步骤106中服务端基于扫描目标二维码时的服务端时间与目标二维码生成时的终端时间之间的差值,生成以目标二维码生成时的终端时间为基准的动态口令,包括步骤S1-S2:
步骤S1,服务端基于扫描目标二维码时的服务端时间与目标二维码生成时的终端时间之间的差值,推算服务端的当前时间以目标二维码生成时的终端时间为基准时的同步时间;当前时间的精度为分钟;
在本实施例中,在工控环境下,各个终端的时间都可能不一致,不是使用的统一的互联网时间,而服务端的时间是统一的互联网时间,服务端的时间基准不会改变,但是目标二维码生成时的终端时间与互联网时间(即扫描目标二维码时的服务端时间)可能不一致,为了使服务端生成的动态口令可以与后续步骤110终端生成的目标口令一致,需要将服务端时间与终端时间同步。
在一些实施方式中,同步时间的推算方式为:
式中,为服务端每一分钟推算的同步时间,/>为服务端的当前时间,/>为扫描目标二维码时的服务端时间,/>为目标二维码生成时的终端时间。
在本实施例中,由于二维码在一分钟内有效,当扫描目标二维码时,服务端时间与目标二维码生成时的终端时间之间的差值,即为终端时间与互联网时间的差值(即扫描目标二维码时的服务端时间),那么将实时的服务端时间减去该差值,就可以推断出实时的服务端时间所对应的终端时间,即为同步时间。
举例来说,目标二维码生成时的终端时间为6点,而扫描目标二维码时的服务端时间为5点,那么说明服务端时间与目标二维码的差值为-1时,那么,计算服务端时间为6点的动态口令时,同步时间应该为6-(-1)=7时。
步骤S2,基于扫码得到的终端的序列号、终端的IP、当前用户名、随机数以及同步时间,生成动态口令。
在本发明实施例中,动态口令的生成方式为:
利用散列算法,将由终端的序列号、终端的IP、当前用户名、随机数和同步时间组成的数据转换为哈希值;
将哈希值按顺序分为6组子数据;
针对每一组子数据,均执行:
计算当前组子数据每一位的ASCII码值并相加,得到一个数值;
判断当前数值是几位数;
若当前数值为个位数,则将当前数值作为当前组子数据对应的目标数字;
若当前数值为多位数,则将当前数值中的每一位数字相加,得到新的数值,并将新的数值作为当前数值,跳转执行判断当前数值是几位数,直至得到当前组子数据对应的目标数字为止;
按顺序将6组子数据对应的目标数字进行组合,得到动态口令。
在本实施例中,通过步骤S1推算出每分钟变化的同步时间后,就可以生成对应每分钟变化的动态口令了。举例来说,利用散列算法,将由终端的序列号、终端的IP、当前用户名、随机数和同步时间组成的数据转换为长度为128的哈希值;将哈希值分为6组子数据,如:asdhfalsd89890814234h、asdfhasdlasnhksadjfas、djfasdfasdfasdfupoupo、uqwerasdfasdf08098098、0980980234580923450hs、audyfioy897as98df70987;根据分组后的子数据,针对每一组子数据,均执行:计算当前组子数据每一位的ASCII码值并相加,得到一个数值,6组子数据的数值分别为1626、2203、2230、1818、1210、1626;把每组数值分别合并为一个目标数字,以第一组子数据的数值1626为例:将每一位数字相加1+6+2+6=15,15不为个位数,再将15的每一位数字相加1+5=6,由于6为个位数,那么第一组子数据对应的目标数字即为6;接下来的5组子数据同理,可以得到动态口令为677943。
可以理解,动态口令每分钟变化,并实时显示在与当前用户名绑定的微信的小程序上。
针对步骤108:
当不为首次登录时,终端不生成二维码,与当前用户名绑定的微信的小程序上一直在实时显示动态口令,只要打开小程序,将最新的动态口令输入终端登录页面即可。
需要说明的是,一个用户名只能绑定一个微信唯一标识,微信唯一标识可以由任意手机登录。如果要切换用户名的绑定微信,需要在终端的用户管理中,重置绑定信息,就会清空之前的绑定信息,在登录时,会重新生成二维码,重复步骤102-106,完成绑定的操作。在重新绑定时,服务端会删除之前的绑定信息,保证只有一个微信唯一标识可以查看动态口令。
针对步骤110:
不管是首次登录还是非首次登录,在将目标动态口令输入终端登录页面后,终端都需要生成目标口令,与目标动态口令进行比对,只有两者一致时,才可以登录成功。
在一些实施方式中,步骤“终端将当前终端时间与目标二维码生成时的终端时间进行同步,以基于自己的身份信息、当前用户名和同步后的时间,生成以目标二维码生成时的终端时间为基准的目标口令”,包括:
从目标二维码生成开始,记录终端时间的每一次修改,以确定最近一次修改后相较于目标二维码生成时的终端时间的修改差值;
基于当前终端时间和修改差值,推算目标二维码生成后,若从未修改终端时间时的当前终端时间,得到同步后的时间;
获取目标二维码对应的随机数、终端的序列号、终端的IP和当前用户名;
基于终端的序列号、终端的IP、当前用户名、随机数和同步后的时间,生成目标口令。
在本实施例中,在工控环境下各个终端的时间都可能不一致,不是使用的统一的互联网时间。且每一个终端的时间在首次登录绑定后,可能存在多次更改,那么为了使服务端生成的动态口令与终端生成的目标口令一致,服务端时间需要与目标二维码生成时的终端时间同步,终端时间也需要与目标二维码生成时的终端时间同步,因此,从首次登录时的目标二维码生成开始,记录终端时间的每一次修改,以确定最近一次修改后相较于目标二维码生成时的终端时间的修改差值。
在一些实施方式中,终端是通过如下公式推算同步后的时间的:
式中,为同步后的时间,/>为当前终端时间,/>为修改差值。
举例来说,首次登录时的目标二维码生成时的终端时间为A,第一次修改为终端时间增加了1个小时,修改差值为1,第二次修改为减少了1个小时,修改差值变为0,第三次修改为减少了2个小时,修改差值变为-2,最近一次为第三次修改,那么此时的修改差值为-2。若当前终端时间为2点,那么目标二维码生成后,若从未修改终端时间,此时当前终端时间实际应该为。
在得到同步后的时间之后,基于终端的序列号、终端的IP、当前用户名、随机数和同步后的时间,生成目标口令,目标口令的生成方式与步骤S2中动态口令的生成方式相同,在此不进行赘述。
如图2、图3所示,本发明实施例提供了一种工控环境下的终端登录装置。装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。从硬件层面而言,如图2所示,为本发明实施例提供的一种工控环境下的终端登录装置所在计算设备的一种硬件架构图,除了图2所示的处理器、内存、网络接口、以及非易失性存储器之外,实施例中装置所在的计算设备通常还可以包括其他硬件,如负责处理报文的转发芯片等等。以软件实现为例,如图3所示,作为一个逻辑意义上的装置,是通过其所在计算设备的CPU将非易失性存储器中对应的计算机程序读取到内存中运行形成的。本实施例提供的一种工控环境下的终端登录装置,装置包括:
判断单元301,用于当用户在终端登录页面输入要使用动态口令登录的用户名后,终端判断当前用户名是否为首次登录;
第一生成单元302,用于若为首次登录时,终端基于自己的身份信息、当前用户名和当前终端时间,生成随着终端时间的分钟数变化的二维码;
绑定单元303,用于在利用手机的微信小程序对目标二维码扫描后,小程序的服务端得到目标二维码中的终端身份信息、当前用户名和目标二维码生成时的终端时间,并将当前用户名与微信唯一标识绑定;
第二生成单元304,用于服务端基于扫描目标二维码时的服务端时间与目标二维码生成时的终端时间之间的差值,生成以目标二维码生成时的终端时间为基准的动态口令,并将动态口令实时显示在与当前用户名绑定的微信的小程序上;其中,动态口令随着时间分钟数变化而变化,每分钟更新一次;
第三生成单元305,用于若不为首次登录时,终端不生成二维码,与当前用户名绑定的微信的小程序上实时显示动态口令;
登录单元306,用于在将目标动态口令输入终端登录页面后,终端将当前终端时间与目标二维码生成时的终端时间进行同步,以基于自己的身份信息、当前用户名和同步后的时间,生成以目标二维码生成时的终端时间为基准的目标口令,以基于目标口令与目标动态口令比对结果进行终端登录。
在本发明一个实施例中,第一生成单元302中终端的身份信息包括终端的序列号和终端的IP;
二维码是通过如下方式生成的:
获取终端的序列号、终端的IP、当前用户名以及当前终端时间;其中,获取的当前终端时间精度为分钟;
生成一个随机数;
基于终端的序列号、终端的IP、当前用户名、当前终端时间以及随机数,生成当前分钟对应的二维码。
在本发明一个实施例中,绑定单元303在利用手机的微信小程序对目标二维码进行扫描后,小程序的服务端还可以得到目标二维码中的随机数:
第二生成单元304在执行服务端基于扫描目标二维码时的服务端时间与目标二维码生成时的终端时间之间的差值,生成以目标二维码生成时的终端时间为基准的动态口令时,用于:
服务端基于扫描目标二维码时的服务端时间与目标二维码生成时的终端时间之间的差值,推算服务端的当前时间以目标二维码生成时的终端时间为基准时的同步时间;当前时间的精度为分钟;
基于扫码得到的终端的序列号、终端的IP、当前用户名、随机数以及同步时间,生成动态口令。
在本发明一个实施例中,第二生成单元304中同步时间的推算方式为:
式中,为服务端每一分钟推算的同步时间,/>为服务端的当前时间,/>为扫描目标二维码时的服务端时间,/>为目标二维码生成时的终端时间。
在本发明一个实施例中,第二生成单元304中动态口令的生成方式为:
利用散列算法,将由终端的序列号、终端的IP、当前用户名、随机数和同步时间组成的数据转换为哈希值;
将哈希值按顺序分为6组子数据;
针对每一组子数据,均执行:
计算当前组子数据每一位的ASCII码值并相加,得到一个数值;
判断当前数值是几位数;
若当前数值为个位数,则将当前数值作为当前组子数据对应的目标数字;
若当前数值为多位数,则将当前数值中的每一位数字相加,得到新的数值,并将新的数值作为当前数值,跳转执行判断当前数值是几位数,直至得到当前组子数据对应的目标数字为止;
按顺序将6组子数据对应的目标数字进行组合,得到动态口令。
在本发明一个实施例中,登录单元306在执行终端将当前终端时间与目标二维码生成时的终端时间进行同步,以基于自己的身份信息、当前用户名和同步后的时间,生成以目标二维码生成时的终端时间为基准的目标口令时,用于:
从目标二维码生成开始,记录终端时间的每一次修改,以确定最近一次修改后相较于目标二维码生成时的终端时间的修改差值;
基于当前终端时间和修改差值,推算目标二维码生成后,若从未修改终端时间时的当前终端时间,得到同步后的时间;
获取目标二维码对应的随机数、终端的序列号、终端的IP和当前用户名;
基于终端的序列号、终端的IP、当前用户名、随机数和同步后的时间,生成目标口令。
在本发明一个实施例中,登录单元306中终端是通过如下公式推算同步后的时间的:
式中,为同步后的时间,/>为当前终端时间,/>为修改差值。
可以理解的是,本发明实施例示意的结构并不构成对一种工控环境下的终端登录装置的具体限定。在本发明的另一些实施例中,一种工控环境下的终端登录装置可以包括比图示更多或者更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件、软件或者软件和硬件的组合来实现。
上述装置内的各模块之间的信息交互、执行过程等内容,由于与本发明方法实施例基于同一构思,具体内容可参见本发明方法实施例中的叙述,此处不再赘述。
本发明实施例还提供了一种计算设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器执行所述计算机程序时,实现本发明任一实施例中的一种工控环境下的终端登录方法。
本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序在被处理器执行时,使所述处理器执行本发明任一实施例中的一种工控环境下的终端登录方法。
具体地,可以提供配有存储介质的系统或者装置,在该存储介质上存储着实现上述实施例中任一实施例的功能的软件程序代码,且使该系统或者装置的计算机(或CPU或MPU)读出并执行存储在存储介质中的程序代码。
在这种情况下,从存储介质读取的程序代码本身可实现上述实施例中任何一项实施例的功能,因此程序代码和存储程序代码的存储介质构成了本发明的一部分。
用于提供程序代码的存储介质实施例包括软盘、硬盘、磁光盘、光盘(如CD-ROM、CD-R、CD-RW、DVD-ROM、DVD-RAM、DVD-RW、DVD+RW)、磁带、非易失性存储卡和ROM。可选择地,可以由通信网络从服务器计算机上下载程序代码。
此外,应该清楚的是,不仅可以通过执行计算机所读出的程序代码,而且可以通过基于程序代码的指令使计算机上操作的操作系统等来完成部分或者全部的实际操作,从而实现上述实施例中任意一项实施例的功能。
此外,可以理解的是,将由存储介质读出的程序代码写到插入计算机内的扩展板中所设置的存储器中或者写到与计算机相连接的扩展模块中设置的存储器中,随后基于程序代码的指令使安装在扩展板或者扩展模块上的CPU等来执行部分和全部实际操作,从而实现上述实施例中任一实施例的功能。
需要说明的是,在本文中,诸如第一和第二之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储在计算机可读取的存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质中。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (10)
1.一种工控环境下的终端登录方法,其特征在于,包括:
当用户在终端登录页面输入要使用动态口令登录的用户名后,所述终端判断当前用户名是否为首次登录;
若为首次登录,所述终端基于自己的身份信息、当前用户名和当前终端时间,生成随着终端时间的分钟数变化的二维码;
在利用手机的微信小程序对目标二维码扫描后,小程序的服务端得到所述目标二维码中的终端身份信息、当前用户名和所述目标二维码生成时的终端时间,并将当前用户名与微信唯一标识绑定;
所述服务端基于扫描所述目标二维码时的服务端时间与所述目标二维码生成时的终端时间之间的差值,生成以所述目标二维码生成时的终端时间为基准的动态口令,并将所述动态口令实时显示在与当前用户名绑定的微信的小程序上;其中,所述动态口令随着时间分钟数变化而变化,每分钟更新一次;
若不为首次登录,则所述终端不生成二维码,与当前用户名绑定的微信的小程序上实时显示动态口令;
在将目标动态口令输入所述终端登录页面后,所述终端将当前终端时间与所述目标二维码生成时的终端时间进行同步,以基于自己的身份信息、当前用户名和同步后的时间,生成以所述目标二维码生成时的终端时间为基准的目标口令,以基于所述目标口令与所述目标动态口令比对结果进行终端登录。
2.根据权利要求1所述的方法,其特征在于,所述终端的身份信息包括所述终端的序列号和所述终端的IP;
所述二维码是通过如下方式生成的:
获取所述终端的序列号、所述终端的IP、当前用户名以及当前终端时间;其中,获取的当前终端时间精度为分钟;
生成一个随机数;
基于所述终端的序列号、所述终端的IP、当前用户名、当前终端时间以及所述随机数,生成当前分钟对应的二维码。
3.根据权利要求2所述的方法,其特征在于,在利用手机的微信小程序对目标二维码进行扫描后,小程序的服务端还可以得到所述目标二维码中的随机数;
所述服务端基于扫描所述目标二维码时的服务端时间与所述目标二维码生成时的终端时间之间的差值,生成以所述目标二维码生成时的终端时间为基准的动态口令,包括:
所述服务端基于扫描所述目标二维码时的服务端时间与所述目标二维码生成时的终端时间之间的差值,推算所述服务端的当前时间以所述目标二维码生成时的终端时间为基准时的同步时间;所述当前时间的精度为分钟;
基于扫码得到的所述终端的序列号、所述终端的IP、当前用户名、随机数以及所述同步时间,生成动态口令。
4.根据权利要求3所述的方法,其特征在于,所述同步时间的推算方式为:
式中,为所述服务端每一分钟推算的同步时间,/>为所述服务端的当前时间,/>为扫描所述目标二维码时的服务端时间,/>为所述目标二维码生成时的终端时间。
5.根据权利要求3或4所述的方法,其特征在于,所述动态口令的生成方式为:
利用散列算法,将由所述终端的序列号、所述终端的IP、当前用户名、随机数和所述同步时间组成的数据转换为哈希值;
将所述哈希值按顺序分为6组子数据;
针对每一组子数据,均执行:
计算当前组子数据每一位的ASCII码值并相加,得到一个数值;
判断当前数值是几位数;
若当前数值为个位数,则将当前数值作为当前组子数据对应的目标数字;
若当前数值为多位数,则将当前数值中的每一位数字相加,得到新的数值,并将新的数值作为当前数值,跳转执行所述判断当前数值是几位数,直至得到当前组子数据对应的目标数字为止;
按顺序将6组子数据对应的目标数字进行组合,得到动态口令。
6.根据权利要求2所述的方法,其特征在于,所述终端将当前终端时间与所述目标二维码生成时的终端时间进行同步,以基于自己的身份信息、当前用户名和同步后的时间,生成以所述目标二维码生成时的终端时间为基准的目标口令,包括:
从所述目标二维码生成开始,记录所述终端时间的每一次修改,以确定最近一次修改后相较于所述目标二维码生成时的终端时间的修改差值;
基于当前终端时间和所述修改差值,推算所述目标二维码生成后,若从未修改所述终端时间时的当前终端时间,得到同步后的时间;
获取所述目标二维码对应的随机数、所述终端的序列号、所述终端的IP和当前用户名;
基于所述终端的序列号、所述终端的IP、当前用户名、所述随机数和同步后的时间,生成目标口令。
7.根据权利要求6所述的方法,其特征在于,所述终端是通过如下公式推算同步后的时间的:
式中,为同步后的时间,/>为当前终端时间,/>为所述修改差值。
8.一种工控环境下的终端登录装置,其特征在于,包括:
判断单元,用于当用户在终端登录页面输入要使用动态口令登录的用户名后,所述终端判断当前用户名是否为首次登录;
第一生成单元,用于若为首次登录时,所述终端基于自己的身份信息、当前用户名和当前终端时间,生成随着终端时间的分钟数变化的二维码;
绑定单元,用于在利用手机的微信小程序对目标二维码扫描后,小程序的服务端得到所述目标二维码中的终端身份信息、当前用户名和所述目标二维码生成时的终端时间,并将当前用户名与微信唯一标识绑定;
第二生成单元,用于所述服务端基于扫描所述目标二维码时的服务端时间与所述目标二维码生成时的终端时间之间的差值,生成以所述目标二维码生成时的终端时间为基准的动态口令,并将所述动态口令实时显示在与当前用户名绑定的微信的小程序上;其中,所述动态口令随着时间分钟数变化而变化,每分钟更新一次;
第三生成单元,用于若不为首次登录时,所述终端不生成二维码,与当前用户名绑定的微信的小程序上实时显示动态口令;
登录单元,用于在将目标动态口令输入所述终端登录页面后,所述终端将当前终端时间与所述目标二维码生成时的终端时间进行同步,以基于自己的身份信息、当前用户名和同步后的时间,生成以所述目标二维码生成时的终端时间为基准的目标口令,以基于所述目标口令与所述目标动态口令比对结果进行终端登录。
9.一种计算设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器执行所述计算机程序时,实现如权利要求1-7中任一项所述的方法。
10.一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行权利要求1-7中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311377694.6A CN117118757B (zh) | 2023-10-24 | 2023-10-24 | 工控环境下的终端登录方法、装置、设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311377694.6A CN117118757B (zh) | 2023-10-24 | 2023-10-24 | 工控环境下的终端登录方法、装置、设备及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117118757A true CN117118757A (zh) | 2023-11-24 |
CN117118757B CN117118757B (zh) | 2024-01-09 |
Family
ID=88806031
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311377694.6A Active CN117118757B (zh) | 2023-10-24 | 2023-10-24 | 工控环境下的终端登录方法、装置、设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117118757B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102685093A (zh) * | 2011-12-08 | 2012-09-19 | 陈易 | 一种基于移动终端的身份认证系统及方法 |
CN106453321A (zh) * | 2016-10-18 | 2017-02-22 | 郑州云海信息技术有限公司 | 一种认证服务器、系统和方法及待认证终端 |
CN106936803A (zh) * | 2015-12-31 | 2017-07-07 | 亿阳安全技术有限公司 | 二维码扫描认证登录方法及相关装置 |
CN113794571A (zh) * | 2021-09-16 | 2021-12-14 | 浪潮商用机器有限公司 | 一种基于动态口令的认证方法、装置及介质 |
WO2022042198A1 (zh) * | 2020-08-31 | 2022-03-03 | 百果园技术(新加坡)有限公司 | 身份验证方法、装置、计算机设备和存储介质 |
-
2023
- 2023-10-24 CN CN202311377694.6A patent/CN117118757B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102685093A (zh) * | 2011-12-08 | 2012-09-19 | 陈易 | 一种基于移动终端的身份认证系统及方法 |
CN106936803A (zh) * | 2015-12-31 | 2017-07-07 | 亿阳安全技术有限公司 | 二维码扫描认证登录方法及相关装置 |
CN106453321A (zh) * | 2016-10-18 | 2017-02-22 | 郑州云海信息技术有限公司 | 一种认证服务器、系统和方法及待认证终端 |
WO2022042198A1 (zh) * | 2020-08-31 | 2022-03-03 | 百果园技术(新加坡)有限公司 | 身份验证方法、装置、计算机设备和存储介质 |
CN113794571A (zh) * | 2021-09-16 | 2021-12-14 | 浪潮商用机器有限公司 | 一种基于动态口令的认证方法、装置及介质 |
Also Published As
Publication number | Publication date |
---|---|
CN117118757B (zh) | 2024-01-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107294729B (zh) | 区块链中不同节点之间的通信方法及装置 | |
US20210027289A1 (en) | Asset transaction method, storage medium, and computer device | |
CN107480990B (zh) | 区块链记账方法及装置 | |
CN109471865B (zh) | 一种离线数据管理方法、系统、服务器及存储介质 | |
US9419804B2 (en) | Data authenticity assurance method, management computer, and storage medium | |
CN108734028B (zh) | 基于区块链的数据管理方法、区块链节点及存储介质 | |
CN107483509A (zh) | 一种身份验证方法、服务器及可读存储介质 | |
CN111182525B (zh) | 一种存储数据的方法和装置 | |
CN110177124B (zh) | 基于区块链的身份认证方法及相关设备 | |
WO2022134951A1 (zh) | 一种数据同步方法、装置、设备以及计算机可读存储介质 | |
CN111740966B (zh) | 一种基于区块链网络的数据处理方法及相关设备 | |
CN110266494B (zh) | 一种块链式账本中的授时认证方法、装置及设备 | |
US10790968B2 (en) | Ledger verification method and apparatus, and device | |
CN110474775B (zh) | 一种块链式账本中的用户创建方法、装置及设备 | |
CN109949054B (zh) | Key码确定方法、装置、设备及存储介质 | |
CN111460400A (zh) | 一种数据处理方法、装置及计算机可读存储介质 | |
CN114553590A (zh) | 数据传输方法及相关设备 | |
CN111669434A (zh) | 一种通信群组的建立方法、系统、装置及设备 | |
CN111147235B (zh) | 对象访问方法、装置、电子设备及机器可读存储介质 | |
CN117118757B (zh) | 工控环境下的终端登录方法、装置、设备及介质 | |
CN116800535A (zh) | 多台服务器之间相互免密方法及装置 | |
CN107172165B (zh) | 一种数据同步方法及装置 | |
CN111327680A (zh) | 认证数据同步方法、装置、系统、计算机设备和存储介质 | |
CN107707532B (zh) | Url生成、查询参数验证方法、装置、设备及存储介质 | |
CN110728504A (zh) | 区块链的数据处理方法、装置、设备及可读存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |