IP Library › Granted Patent US 11,177,964
Granted Patent B2
US 11,177,964 · App. 16/257,126 · Granted Nov 16, 2021

Blockchain based authentication

Inventors: Leigh S. McLean (Nerang, AU); Narayana A. Madineni (Southport, AU)
Assignee: International Business Machines Corporation
H04L9/3247H04L9/0618H04L9/0838H04L9/3236H04L2209/38
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 11,177,964
App. No.
16/257,126
Granted
Nov 16, 2021
Kind
B2
Abstract

A method, computer system, and a computer program product for blockchain based authentication is provided. The present invention may include receiving a request packet. The present invention may also include adding the request packet to a blockchain. The present invention may then include creating a hash based on the added request packet and the blockchain. The present invention may further include transmitting the hash to a user. The present invention may also include receiving a verifier packet, wherein the verifier packet includes an authentication token generated by the user that incorporates the transmitted hash.

Claims (49)

1. A method for blockchain based authentication, the method comprising:

receiving a request packet;

adding the request packet to a blockchain;

receiving a verifier registration packet;

creating a genesis block using the verifier registration packet as the genesis block;

creating a hash based on the added request packet and blockchain data, wherein an authentication history is used to create the hash, wherein the hash is a cumulative hash that begins with a genesis block and ends with the added request packet;

transmitting the hash to a user; and

receiving a verifier packet, wherein the verifier packet includes an authentication token generated by the user that incorporates the hash, wherein the hash is used as a basis of the authentication token, validating the hash and the authentication token by comparing the hash of all blocks in the blockchain up to and including a request block of the user with the hash in the authentication token; and

transmitting a successful authentication message to the user.

2. The method of claim 1 , further comprising:

receiving a user registration pocket.

3. The method of claim 1 , further comprising:

failing the validation of the hash and the authentication token; and

transmitting an unsuccessful authentication message to the user.

4. The method of claim 1 , wherein the request packet includes identification information of the user, a public key of the user, a nonce of the user and a digital signature of the user.

5. The method of claim 1 , wherein the authentication token includes the hash, a nonce, digital signatures, identifying information of the user and authentication restrictive information of the user.

6. A computer system for blockchain based authentication, comprising:

one or more processors, one or more computer-readable memories, one or more computer-readable tangible storage media, and program instructions stored on at least one of the one or more computer-readable tangible storage media for execution by at least one of the one or more processors via at least one of the one or more computer-readable memories, wherein the computer system is capable of performing a method comprising:

receiving a request packet;

adding the request packet to a blockchain;

receiving a verifier registration packet;

creating a genesis block using the verifier registration packet as the genesis block;

creating a hash based on the added request packet and blockchain data, wherein an authentication history is used to create the hash, wherein the hash is a cumulative hash that begins with a genesis block and ends with the added request packet;

transmitting the hash to a user; and

receiving a verifier packet, wherein the verifier packet includes an authentication token generated by the user that incorporates the hash, wherein the hash is used as a basis of the authentication token, validating the hash and the authentication token by comparing the hash of all blocks in the blockchain up to and including a request block of the user with the hash in the authentication token; and

transmitting a successful authentication message to the user.

7. The computer system of claim 6 , further comprising:

receiving a user registration packet.

8. The computer system of claim 6 , further comprising:

failing the validation of the hash and the authentication token; and

transmitting an unsuccessful authentication message to the user.

9. The computer system of claim 6 , wherein the request packet includes identification information of the user, a public key of the user, a nonce of the user and a digital signature of the user.

10. The computer system of claim 6 , wherein the authentication token includes the hash, a nonce, digital signatures, identifying information of the user and authentication restrictive information of the user.

11. A computer program product for blockchain based authentication, comprising:

one or more computer-readable tangible storage media and program instructions stored on at least one of the one or more computer-readable tangible storage media, the program instructions executable by a processor to cause the processor to perform a method comprising:

receiving a request packet;

adding the request packet to a blockchain;

receiving a verifier registration packet;

creating a genesis block using the verifier registration packet as the genesis block;

creating a hash based on the added request packet and blockchain data, wherein an authentication history is used to create the hash, wherein the hash is a cumulative hash that begins with a genesis block and ends with the added request packet;

transmitting the hash to a user; and

receiving a verifier packet, wherein the verifier packet includes an authentication token generated by the user that incorporates the hash, wherein the hash is used as a basis of the authentication token, validating the hash and the authentication token by comparing the hash of all blocks in the blockchain up to and including a request block of the user with the hash in the authentication token; and

transmitting a successful authentication message to the user.

12. The computer program product of claim 11 , further comprising:

receiving a user registration packet.

13. The computer program product of claim 11 , further comprising:

failing the validation of the hash and the authentication token; and

transmitting an unsuccessful authentication message to the user.

14. The computer program product of claim 11 , wherein the request packet includes identification information of the user, a public key of the user, a nonce of the user and a digital signature of the user.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 25, 2019
From: MCLEAN, LEIGH S.; MADINENI, NARAYANA A.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 048130/0601 →
Continuity (1)
Related Publication 20200244464A1 · Jul 30, 2020
Cited By (2)
US 12,712,753 US 12,744,774