发布时间:2025-02-25 12:46:54 点击量:
HASH GAME - Online Skill Game GET 300
目前大多数网站存在验证机制,即在用户登录过程中或在回复某些帖子时,需要输入验证码才能完成,以避免发帖数量过多或同一 IP地址回复过快等情况。但是当用户需要以较快频率回帖时,或在短时间内需要多次登录时,不得不重复输入验证码,十分影响上网的流畅感,对用户会造成很多不便。因此,需要一种新的验证技术,能够根据用户需要,在执行需要输入验证码才能进行的操作时,大幅降低用户输入验证码的频率,提高上网的流畅度,提升用户体验。·
本发明正是基于上述问题,提出了一种验证技术,能够根据用户需要,在执行需要输入验证码才能进行的操作时,大幅降低用户输入验证码的频率,提高上网的流畅度,提升用户体验。有鉴于此,本发明提出了一种验证装置,包括获取单元,用于获取上次验证过程中服务器发送至客户端的随机值,以及基于所述随机值和预设运算函数得到的验证码;控制单元,用于在本次验证过程中识别用户输入的预设指令,并根据识别出的预设指令使所述服务器使用所述随机值验证在所述本次验证过程中输入的所述验证码。在该技术方案中,在某些需要输入验证码才能进行的操作中,服务器可以随机生成一个数据(即随机值),再带入预设运算函数(不可逆且破解难度极高)进行计算,得到验证码(比如数字、汉字、符号和/或字母),然后再将验证码转化为图片发送至客户端,用户在客户端输入图片中显示的内容,服务器对用户的输入信息进行校验,判断用户的输入信息与将随机值带入预设运算函数所得的结果是否相等,进而判断用户是否正确输入验证码。并且在每次操作时,服务器可以通过改变随机值改变预设运算函数的输出值,即每次操作时需输入的验证码是不同的。在用户在正常验证过程中(输入页面显示的验证码完成验证),可以在客户端获取本次验证过程使用的随机值和用户输入的验证码,在用户第二次(也可以是第三次、第四次等)验证过程中,可以通过输入预设指令,使服务器不再使用本次验证过程应该使用的随机值,而使用上次验证过程中已获取的随机值,然后再输入上次验证过程中已获取的验证码,服务器即可通过预设运算函数计算已获取的随机值,得出用户输入验证码正确的结论。从而在需要输入验证码才能进行的操作中,若用户需要频繁进行该操作,就可以使用该验证装置,使服务器在用户每次执行该操作时,都可以判定用户已输入正确的验证码而允许该操作,进而避免反复输入验证码而能够直接进行该操作,提高上网的流畅度,节省用户时间。在上述技术方案中,优选地,还包括存储单元,用于保存所述随机值和所述验证码。 在上述技术方案中,优选地,所述预设运算函数包括哈希函数。在上述技术方案中,优选地,所述获取单元还用于在所述服务器判断出在所述本次验证过程中输入的所述验证码错误时,获取所述服务器下次发送至所述客户端的新的随机值,以及基于所述新的随机值和所述预设运算函数得到新的验证码。在该技术方案中,由于某些网站会定期或不定期地更换预设运算函数,所以采用固定的运算函数和验证码进行验证,在经过一段时间后可能无法成功验证,在这种情况下需要重新获取服务器发送至客户端的新的运算函数和相应的新的验证码,并重新根据用户指令调用新的运算函数和输入新的验证码进行验证。在上述任一技术方案中,优选地,还包括传输单元,用于根据所述预设指令,将所 述上次验证过程中采用的所述随机值传输至所述服务器或所述客户端向所述服务器发送请求,使所述服务器将所述上次验证过程所采用的所述随机值应用于所述本次验证过程。在该技术方案中,可以通过将已获取的随机值发送至服务器或通过向服务器发送请求,使服务器将上次验证过程中已获取的随机值应用在本次验证过程中。根据本发明的又一方面,还提出了一种验证方法,包括步骤202,获取上次验证过程中服务器发送至客户端的随机值和基于所述随机值和预设运算函数得到的验证码;步骤204,在本次验证过程中,识别用户输入的预设指令,使所述服务器使用所述随机值验证在所述本次验证过程中输入的所述验证码。在该技术方案中,在某些需要输入验证码才能进行的操作中,服务器可以随机生成一个数据(即随机值),再带入预设运算函数(不可逆且破解难度极高)进行计算,得到验证码(比如数字、汉字、符号和/或字母),然后再将验证码转化为图片发送至客户端,用户在客户端输入图片中显示的内容,服务器对用户的输入信息进行校验,判断用户的输入信息与将随机值带入预设运算函数所得的结果是否相等,进而判断用户是否正确输入验证码。并且在每次操作时,服务器可以通过改变随机值改变预设运算函数的输出值,即每次操作时需输入的验证码是不同的。在用户在正常验证过程中(输入页面显示的验证码完成验证),可以在客户端获取本次验证过程使用的随机值和用户输入的验证码,在用户第二次(也可以是第三次、第四次等)验证过程中,可以通过输入预设指令,使服务器不再使用本次验证过程应该使用的随机值,而使用上次验证过程中已获取的随机值,然后再输入上次验证过程中已获取的验证码,服务器即可通过预设运算函数计算已获取的随机值,得出用户输入验证码正确的结论。从而在需要输入验证码才能进行的操作中,若用户需要频繁进行该操作,就可以使用该验证装置,使服务器在用户每次执行该操作时,都可以判定用户已输入正确的验证码而允许该操作,进而避免反复输入验证码而能够直接进行该操作,提高上网的流畅度,节省用户时间。在上述技术方案中,优选地,所述步骤202还包括保存所述随机值和所述验证码。在上述技术方案中,优选地,所述预设运算函数包括哈希函数。在上述技术方案中,优选地,所述步骤204还包括,若在所述本次验证过程中,输入的所述验证码验证失败,则获取所述服务器下次发送至所述客户端的新的随机值,以及基于所述新的随机值和所述预设运算函数得到新的验证码。在该技术方案中,由于某些网站会定期或不定期地更换预设运算函数,所以采用固定的运算函数和验证码进行验证,在经过一段时间后可能无法成功验证,在这种情况下需要重新获取服务器发送至客户端的新的运算函数和相应的新的验证码,并重新根据用户指令调用新的运算函数和输入新的验证码进行验证。在上述任一技术方案中,优选地,根据所述预设指令,将所述上次验证过程中采用的所述随机值传输至所述服务器或所述客户端向所述服务器发送请求,使所述服务器将所述上次验证过程所采用的所述随机值应用于所述本次验证过程。在该技术方案中,可以通过将已获取的随机值发送至服务器或通过向服务器发送请求,使服务器将上次验证过程中已获取的随机值应用在本次验证过程中。通过以上技术方案,能够根据用户需要,在执行需要输入验证码才能进行的操作时,大幅降低用户输入验证码的频率,提高上网的流畅度,提升用户体验。·
对本发明进行进一步的详细描述。需要说明的是,在不冲突的情况下,本申请的实施例及实施例中的特征可以相互组合。在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是,本发明还可以采用其他不同于在此描述的其他方式来实施,因此,本发明的保护范围并不受下面公开的具体实施例的限制。图I示出了根据本发明的实施例的验证装置的框图。如图I所示,根据本发明的实施例的验证装置100包括获取单元102,用于获取上次验证过程中服务器发送至客户端的随机值,以及基于随机值和预设运算函数得到的验证码;控制单元104,用于在本次验证过程中识别用户输入的预设指令,并根据识别出的预设指令使服务器使用随机值验证在本次验证过程中输入的验证码。在某些需要输入验证码才能进行的操作中,服务器可以随机生成一个数据(即随机值),再带入预设运算函数(不可逆且破解难度极高)进行计算,得到验证码(比如数字、汉字、符号和/或字母),比如预设运算函数为f(x),随机值为a,那么验证码=f(a),然后再将验证码母转化为图片发送至客户端,用户在客户端输入图片中显示的内容,服务器对用户的输入信息进行校验,判断用户的输入信息与将随机值带入预设运算函数所得的结果是否相等,进而判断用户是否正确输入验证码。并且在每次操作时,服务器可以通过改变随机值改变预设运算函数的输出值,即每次操作时需输入的验证码是不同的。在用户在正常验证过程中(输入页面显示的验证码完成验证),可以在客户端获取本次验证过程使用的随机值和用户输入的验证码,在用户第二次(也可以是第三次、第四次等)验证过程中,可以通过输入预设指令,使服务器不再使用本次验证过程应该使用的随机值,而使用上次验证过程中已获取的随机值,然后再输入上次验证过程中已获取的验证码,服务器即可通过预设运算函数对已获取的随机值进行计算,得出用户输入验证码正确的结论。从而在需要输入验证码才能进行的操作中,若用户需要频繁进行该操作,就可以使用验证装置100,使服务器在用户每次执行该操作时,都可以判定用户已输入正确的验证码而允许该操作,进而避免反复输入验证码而能够直接进行该操作,提高上网的流畅度,节省用户时间。优选地,根据本发明的实施例的验证装置100还可以包括存储单元106,用于保存随机值和验证码。优选地,预设运算函数可以是哈希函数。优选地,获取单元102还用于在服务器判断出在本次验证过程中输入的验证码错·误时,获取服务器下次发送至客户端的新的随机值,以及基于新的随机值和预设运算函数得到新的验证码。由于某些网站会定期或不定期地更换预设运算函数,所以采用固定的运算函数和验证码进行验证,在经过一段时间后可能无法成功验证,在这种情况下需要重新获取服务器发送至客户端的新的运算函数和相应的新的验证码,并重新根据用户指令调用新的运算函数和输入新的验证码进行验证。优选地,根据本发明的实施例的验证装置100还包括传输单元108,用于根据预设指令,将上次验证过程中采用的随机值传输至服务器或客户端向服务器发送请求,使服务器将上次验证过程所采用的随机值应用于本次验证过程。可以通过将已获取的随机值发送至服务器或通过向服务器发送请求,使服务器将上次验证过程中已获取的随机值应用在本次验证过程中。图2示出了根据本发明的实施例的验证方法的流程图。如图2所示,根据本发明的实施例的验证方法包括包括步骤202,获取上次验证过程中服务器发送至客户端的随机值和基于随机值和预设运算函数得到的验证码;步骤204,在本次验证过程中,识别用户输入的预设指令,使服务器使用随机值验证在本次验证过程中输入的验证码。在某些需要输入验证码才能进行的操作中,服务器可以随机生成一个数据(即随机值),再带入预设运算函数(不可逆且破解难度极高)进行计算,得到验证码(比如数字、汉字、符号和/或字母),比如预设运算函数为f(x),随机值为a,那么验证码=f(a),然后再将验证码转化为图片发送至客户端,用户在客户端输入图片中显示的内容,服务器对用户的输入进行校验,判断用户的输入与将随机值带入预设运算函数所得的结果是否相等,进而判断用户是否正确输入验证码。并且在每次操作时,服务器可以通过改变随机值改变预设运算函数的输出值,即每次操作时需输入的验证码是不同的。在用户在正常验证过程中(输入页面显示的验证码完成验证),可以在客户端获取本次验证过程使用的随机值和用户输入的验证码,在用户第二次(也可以是第三次、第四次等)验证过程中,可以通过输入预设指令,使服务器不再使用本次验证过程应该使用的随机值,而使用上次验证过程中已获取的随机值,然后再输入上次验证过程中已获取的验证码,服务器即可通过预设运算函数计算已获取的随机值,得出用户输入验证码正确的结论。从而在需要输入验证码才能进行的操作中,若用户需要频繁进行该操作,就可以使用该验证方法,使服务器在用户每次执行该操作时,都可以判定用户已输入正确的验证码而允许该操作,进而避免反复输入验证码而能够直接进行该操作,提高上网的流畅度,节省用户时间。优选地,步骤202还包括保存随机值和验证码。优选地,预设运算函数可以是哈希函数。优选地,步骤204还包括,若在本次验证过程中,输入的验证码验证失败,则获取服务器下次发送至客户端的新的随机值,以及基于新的随机值和预设运算函数得到新的验证码。由于某些网站会定期或不定期地更换预设运算函数,所以采用固定的运算函数 和验证码进行验证,在经过一段时间后可能无法成功验证,在这种情况下需要重新获取服务器发送至客户端的新的运算函数和相应的新的验证码,并重新根据用户指令调用新的运算函数和输入新的验证码进行验证。优选地,根据预设指令,将上次验证过程中采用的随机值传输至服务器或客户端向服务器发送请求,使服务器将上次验证过程所采用的随机值应用于本次验证过程。可以通过将已获取的随机值发送至服务器或通过向服务器发送请求,使服务器将上次验证过程中已获取的随机值应用在本次验证过程中。图3A至图3D示出了根据本发明的实施例的登录操作的示意图。如图3A所示,在登录某论坛时,正常登录过程中需要输入账号、密码,并按照验证码图片的提示输入验证码,然后点击登录按键即可登录该论坛。如图3B所示,在如图3A所示的登录过程中,可以调出指令输入框302,并通过输入特定指令获取服务器本次随机生成的运算函数以及发送至客户端的验证码,比如在指令输入框302中输入curl 即可得到$savecookie (cookie中的哈希函数)和$authnum (验证码),然后在客户端保存得到的哈希函数和验证码,比如对于本次操作服务器生成的随机值为a,采用的预设运算函数为f(x),那么相应的验证码为A=f(a),假设f(x)为哈希函数,那么a为随机输入的任一长度的消息,A是经过哈希运算后的输出结果。如图3C所示,在如图3A所示的登录操作后,再次进行登录操作时,可以调出指令输入框302,然后在指令输入框302中输入预设指令,使服务器在本次验证过程中使用如图3A所示的登录过程中已获取的随机值进行验证,然后再输入如图3A所示的登录过程中已获取的验证码即可通过验证,比如在指令输入框302中输入$savecookie=294b506f05f896dcbb3a0dde86a5e36c$num=9632$username=bluestar$password=007007curl 。即可得到本次会话的ID并初始化cookies,其中包括登录所需的用户名、密码、cookie的哈希函数以及相应的验证码,然后继续在指令输入框302中输入grep-v authhash $username. cookietmp. $username即可忽略服务器发送至客户端的对应于本次会话的随机值(即使服务器不采用本次验证过程生成的随机值进行验证),比如对于本次操作生成的随机值为b,那么相应的验证码为B=b),通过上述指令可以不考虑该随机值b以及基于该随机值计算得到的验证码B,接着在指令输入框中输入echo 〃 tmp. $username。输入上述指令后(上述两条指令即用户输入的预设指令),可使服务器使用如图3B中已获取的随机值进行本次验证,即将a带入f(x),最后在指令输入框302中输入mv tmp. $username $username. cookie
curl 。即输入如图3B所示的验证码,由于服务器采用如图3B所示的随机值进行本次验证,所以对如图3B所示的验证码进行验证必然能够验证成功,即客户端输入的验证码为A,服务器验证f (a) =A成立。如图3D所示,在通过上述方法进行操作后,在随后的登录过程中,即可直接点击登录按键进行登录,而无需再次输入账号、密码和验证码,同理,对于其他需要输入验证码才能进行的操作也可以采用上述方法,对于需要重复进行输入验证码才能进行操作的用户,可以极大地提高上网的流畅度。以上结合附图详细说明了本发明的技术方案,考虑到相关技术中,大多数网站存在验证机制,某些操作需要用户输入验证码才能完成,导致用户在重复进行此类操作时,需要反复输入验证码,极大地影响上网的流畅度。通过本发明的技术方案,能够根据用户需要,在执行需要输入验证码才能进行的操作时,大幅降低用户输入验证码的频率,提高上网的流畅度,提升用户体验。以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
本发明提供了一种验证装置,包括获取单元,用于获取上次验证过程中服务器发送至客户端的随机值,以及基于所述随机值和预设运算函数得到的验证码;控制单元,用于在本次验证过程中识别用户输入的预设指令,并根据识别出的预设指令使所述服务器使用所述随机值验证在所述本次验证过程中输入的所述验证码。本发明还提出了一种验证方法。通过本发明的技术方案,能够根据用户需要,在执行需要输入验证码才能进行的操作时,大幅降低用户输入验证码的频率,提高上网的流畅度,提升用户体验。