IP Library Granted Patent US 10,489,576
Granted Patent B2
US 10,489,576 · App. 14/704,819 · Granted Nov 26, 2019

Method and system for generating verification codes

Inventors: Jiajia Li (Hangzhou, CN); Xinlin Yu (Hangzhou, CN)
Assignee: Alibaba Group Holding Limited
G06F21/36G06F21/316H04L63/08H04L63/14G06F2221/2133
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,489,576
App. No.
14/704,819
Granted
Nov 26, 2019
Kind
B2
Abstract

Generating verification codes includes selecting at least two verification code generators from a verification code generator set comprising a plurality of verification code generators to compose a current use set, executing each verification code generator in the current use set to obtain corresponding partial verification codes, composing a current verification code from the partial verification codes, outputting the current verification code to a user, receiving a user response that is made in response to the current verification code, and comparing the current verification code and the user response to determine whether the user is verified.

Claims (65)

1. A method for authenticating a user based on verification codes, comprising:

selecting, using a hardware processor, at least three verification code generators from a verification code generator set comprising a plurality of verification code generators to compose a current use set, wherein at least three verification code generators include a first verification code generator, a second verification code generator, and a third verification code generator, the first verification code generator, the second verification code generator, and the third verification code generator having a digital verification mode, an ASCII character verification mode, a Chinese character verification mode, a speech verification mode, a question-and-answer verification mode, a picture-based verification mode, or any combination thereof, the first verification code generator and the second verification code generator being associated with different verification modes, the third verification code generator being associated with any verification mode, and wherein the selecting of the at least three verification code generators comprises:

combining the at least three verification code generators associated with two or more verification modes;

determining whether a screening technique for the combined at least three verification code generators associated results in a number of authentication failures within a time segment exceeds or is equal to a predetermined threshold; and

in response to a determination that the number of authentication failures within the time segment exceeds or is equal to the predetermined threshold, increasing a number of verification code generators in the current use set to be selected, the increased number of verification code generators includes an additional verification mode;

executing, using the hardware processor, each verification code generator in the current use set to obtain corresponding partial verification codes;

composing, using the hardware processor, a current verification code from the partial verification codes;

outputting the current verification code to a user, comprising:

displaying, using a display, the current verification code to the user;

receiving a user response that is made in response to the current verification code, wherein the user response is a single user response; and

comparing, using the hardware processor, the current verification code and the user response to determine whether the user is verified.

2. The method as described in claim 1 , wherein the selecting of the at least three verification code generators from the verification code generator set comprises:

specifying a screening technique from a plurality of pre-established screening techniques, the plurality of screening techniques specifying a respective plurality of sequences of verification code generators; and

selecting the at least three verification code generators from the verification code generator set based on the specified screening technique.

3. The method as described in claim 2 , wherein:

the pre-established screening techniques have varying levels of complexity; and

the specifying of the screening technique from the pre-established screening techniques includes: selecting the screening technique of a certain level of complexity based on historical behavior records of the user.

4. The method as described in claim 2 , wherein the specifying of the screening technique from the pre-established screening techniques comprises: randomly selecting the screening technique from the pre-established screening techniques.

5. The method as described in claim 1 , wherein the composing of the current verification code from the partial verification codes comprises: composing the current verification code from the partial verification codes corresponding to a sequence of the at least three verification code generators in the current use set.

6. The method as described in claim 1 , further comprising: composing a current verification code checksum from partial verification code checksums generated by each verification code generator in the current use set.

7. The method as described in claim 1 , wherein the first verification code generator and the second verification code generator each relate to a numerical verification code generator, a mixed ASCII character verification code generator, a Chinese verification code generator, a question-and-answer verification code generator, a picture-based verification code generator, an ASCII character verification mode, or a question-and-answer verification mode.

8. A system for authenticating a user based on verification codes, comprising:

a display;

at least one processor configured to:

select at least three verification code generators from a verification code generator set comprising a plurality of verification code generators to compose a current use set, wherein the at least three verification code generators include a first verification code generator, a second verification code generator and a third verification code generator, the first verification code generator, the second verification code generator, and the third verification code generator having a digital verification mode, an ASCII character verification mode, a Chinese character verification mode, a speech verification mode, a question-and-answer verification mode, a picture-based verification mode, or any combination thereof, the first verification code generator and the second verification code generator being associated with different verification modes the third verification code generator being associated with any verification mode, and wherein the selecting of the at least three verification code generators comprises to:

combine the at least three verification code generators associated with two or more verification modes;

determine whether a screening technique for the combined at least three verification code generators associated results in a number of authentication failures within a time segment exceeds or is equal to a predetermined threshold; and

in response to a determination that the number of authentication failures within the time segment exceeds or is equal to the predetermined threshold, increase a number of verification code generators in the current use set to be selected, the increased number of verification code generators includes an additional verification mode;

execute each verification code generator in the current use set to obtain corresponding partial verification codes;

compose a current verification code from the partial verification codes;

output the current verification code to a user, comprising to:

display, using the display, the current verification code to the user;

receive a user response that is made in response to the current verification code, wherein the user response is a single user response; and

compare the current verification code and the user response to determine whether the user is verified; and

a memory coupled to the at least one processor and configured to provide the at least one processor with instructions.

9. The system as described in claim 8 , wherein the selecting of the at least three verification code generators from the verification code generator set comprises to:

specify a screening technique from a plurality of pre-established screening techniques, the plurality of screening techniques specifying a respective plurality of sequences of verification code generators; and

select the at least three verification code generators from the verification code generator set based on the specified screening technique.

10. The system as described in claim 9 , wherein:

the pre-established screening techniques have varying levels of complexity; and

the specifying of the screening technique from the pre-established screening techniques includes: selecting the screening technique of a certain level of complexity based on historical behavior records of the user.

11. The system as described in claim 9 , wherein the specifying of the screening technique from the pre-established screening techniques comprises to: randomly select the screening technique from the pre-established screening techniques.

12. The system as described in claim 8 , wherein the composing of the current verification code from the partial verification codes comprises to: compose the current verification code from the partial verification codes corresponding to a sequence of the at least three verification code generators in the current use set.

13. The system as described in claim 8 , wherein the at least one processor is further configured to:

compose a current verification code checksum from partial verification code checksums generated by each verification code generator in the current use set.

14. A computer program product for authenticating a user based on verification codes, the computer program product being embodied in a tangible non-transitory computer readable storage medium and comprising computer instructions for:

selecting at least three verification code generators from a verification code generator set comprising a plurality of verification code generators to compose a current use set, wherein the at least three verification code generators include a first verification code generator, a second verification code generator, and a third verification code generator, the first verification code generator, the second verification code generator, and the third verification code generator having a digital verification mode, an ASCII character verification mode, a Chinese character verification mode, a speech verification mode, a question-and-answer verification mode, a picture-based verification mode, or any combination thereof, the first verification code generator and the second verification code generator being associated with different verification modes, the third verification code generator being associated with any verification mode, and wherein the selecting of the at least three verification code generators comprises:

combining the at least three verification code generators associated with two or more verification modes;

determining whether a screening technique for the combined at least three verification code generators associated results in a number of authentication failures within a time segment exceeds or is equal to a predetermined threshold; and

in response to a determination that the number of authentication failures within the time segment exceeds or is equal to the predetermined threshold, increasing a number of verification code generators in the current use set to be selected, the increased number of verification code generators includes an additional verification mode;

executing each verification code generator in the current use set to obtain corresponding partial verification codes;

composing a current verification code from the partial verification codes;

outputting the current verification code to a user, comprising:

displaying, using a display, the current verification code to the user;

receiving a user response that is made in response to the current verification code, wherein the user response is a single user response; and

comparing the current verification code and the user response to determine whether the user is verified.

15. The computer program product as described in claim 14 , wherein the selecting of the at least three verification code generators from the verification code generator set comprises:

specifying a screening technique from a plurality of pre-established screening techniques, the plurality of screening techniques specifying a respective plurality of sequences of verification code generators; and

selecting the at least three verification code generators from the verification code generator set based on the specified screening technique.

16. The computer program product as described in claim 15 , wherein:

the pre-established screening techniques have varying levels of complexity; and

the specifying of the screening technique from the pre-established screening techniques includes: selecting the screening technique of a certain level of complexity based on historical behavior records of the user.

17. The computer program product as described in claim 15 , wherein the specifying of the screening technique from the pre-established screening techniques comprises: randomly selecting the screening technique from the pre-established screening techniques.

18. The computer program product as described in claim 14 , wherein the composing of the current verification code from the partial verification codes comprises: composing the current verification code from the partial verification codes corresponding to a sequence of the at least three verification code generators in the current use set.

19. The computer program product as described in claim 14 , further comprising: composing a current verification code checksum from partial verification code checksums generated by each verification code generator in the current use set.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 11, 2020
From: ADVANTAGEOUS NEW TECHNOLOGIES CO., LTD.
To: ADVANCED NEW TECHNOLOGIES CO., LTD.
Reel/Frame 054233/0693 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 1, 2020
From: ALIBABA GROUP HOLDING LIMITED
To: ADVANTAGEOUS NEW TECHNOLOGIES CO., LTD.
Reel/Frame 053667/0148 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 10, 2015
From: LI, JIAJIA; YU, XINLIN
To: ALIBABA GROUP HOLDING LIMITED
Reel/Frame 036093/0584 →
Priority Claims (1)
CN 2014 1 0194197 · May 8, 2014 · national
Continuity (1)
Related Publication 20150324573A1 · Nov 12, 2015
Cited By (1)
US 12,282,515