# US 12,010,102 B1 · Hybrid cryptography virtual private networks

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 12,010,102 B1
- Document ID: US12010102B1
- Status: Granted
- Kind: B1
- Application number: 18/474,688
- Filed: 2023-09-26
- Granted: 2024-06-11
- Earliest claimed: 2023-09-26
- Assignees: 360 It, Uab
- Applicants: 360 It, Uab
- Inventors: Karolis Pabijanskas; Mantas Jonytis
- Web page: https://patentgrep.com/patent/US12010102B1

## CPC

- H04L 63/0272: {Virtual private networks}
- H04L 9/0618: {Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation}
- H04L 9/3073: {involving pairings, e.g. identity based encryption [IBE], bilinear mappings or bilinear pairings, e.g. Weil or Tate pairing}
- H04L 9/32: including means for verifying the identity or authority of a user of the system {or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials}
- H04L 63/029: {Firewall traversal, e.g. tunnelling or, creating pinholes}
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

A virtual private network (VPN) client generates a short-term key pair. The VPN client generates a short-term high security key pair. The VPN client transmits a request for a pre-shared key (PSK) to a VPN server. The VPN client receives a response that includes the PSK. The VPN client decrypts the response based on the short-term key pair to obtain a ciphertext. The VPN client decrypts the ciphertext based on the short-term high security key pair to obtain the PSK. A VPN tunnel is then established between the VPN client and the VPN server based on the PSK.

## Claims

### Claim 1

A method, comprising:
generating, by a virtual private network (VPN) client, a short-term key pair;
generating, by the VPN client, a short-term high security key pair, wherein the short-term high security key pair is quantum-resistant;
transmitting, by the VPN client, a request for a pre-shared key (PSK) to a VPN server, wherein the PSK is not available at the VPN client;
receiving, by the VPN client, a response that includes the PSK; and
in response to receiving the response that includes the PSK:
decrypting, by the VPN client, the response based on the short-term key pair to obtain a ciphertext;
decrypting, by the VPN client, the ciphertext based on the short-term high security key pair to obtain the PSK; and
establishing a VPN tunnel between the VPN client and the VPN server based on the PSK, wherein establishing the VPN tunnel comprises:
transmitting, by the VPN client to the VPN server, a request to establish the VPN tunnel; and
receiving, by the VPN client and from the VPN server, a response indicating that the VPN client is authorized to establish the VPN tunnel.

### Claim 2 (depends on 1)

The method of claim 1, wherein the short-term key pair includes a short-term public key and a short-term private key, wherein the short-term high security key pair includes a short-term high security public key and a short-term high security private key, and wherein the request includes the short-term public key and the short-term high security public key.

### Claim 3 (depends on 2)

The method of claim 2, wherein the ciphertext is generated using the short-term high security public key.

### Claim 4 (depends on 1)

The method of claim 1, wherein in response to the request to establish the VPN tunnel, the VPN server authenticates and authorizes the VPN client.

### Claim 5 (depends on 4)

The method of claim 4, wherein the short-term high security key pair is generated using a Kyber algorithm.

### Claim 6 (depends on 1)

The method of claim 1, further comprising:
transmitting, by the VPN client and during a handshake operation, a long-term public key associated with the VPN client that is used to authenticate the VPN client.

### Claim 7 (depends on 1)

The method of claim 1, wherein the short-term key pair is generated using elliptic-curve cryptography.

### Claim 8

A virtual private network client (a VPN client), comprising:
a memory; and
a processor, the processor configured to execute instructions stored in the memory to:
generate a short-term key pair;
generate a short-term high security key pair, wherein the short-term high security key pair is quantum-resistant;
transmit a request for a pre-shared key (PSK) to a VPN server, wherein the PSK is not available at the VPN client;
receive a response that includes the PSK; and
in response to receiving the response that includes the PSK:
decrypt the response based on the short-term key pair to obtain a ciphertext;
decrypt the ciphertext based on the short-term high security key pair to obtain the PSK; and
establish a VPN tunnel with the VPN server based on the PSK, wherein to establish the VPN tunnel comprises to:
transmit, to the VPN server, a request to establish the VPN tunnel; and
receive, from the VPN server, a response indicating that the VPN client is authorized to establish the VPN tunnel.

### Claim 9 (depends on 8)

The VPN client of claim 8, wherein the short-term key pair includes a short-term public key and a short-term private key, wherein the short-term high security key pair includes a short-term high security public key and a short-term high security private key, and wherein the request includes the short-term public key and the short-term high security public key.

### Claim 10 (depends on 9)

The VPN client of claim 9, wherein the ciphertext is generated using the short-term high security public key.

### Claim 11 (depends on 8)

The VPN client of claim 8, wherein in response to the request to establish the VPN tunnel, the VPN server authenticates and authorizes the VPN client.

### Claim 12 (depends on 11)

The VPN client of claim 11, wherein the short-term high security key pair is generated using a Kyber algorithm.

### Claim 13 (depends on 8)

The VPN client of claim 8, further the processor is further configured to executed instructions stored in the memory to:
transmit, during a handshake operation, a long-term public key associated with the VPN client and that is used to authenticate the VPN client.

### Claim 14 (depends on 8)

The VPN client of claim 8, wherein the short-term key pair is generated using elliptic-curve cryptography.

### Claim 15

A non-transitory computer readable medium storing instructions operable to cause one or more processors to perform operations comprising:
generating, by a virtual private network (VPN) client, a short-term key pair that includes a short-term public key and a short-term private key;
generating, by the VPN client, a short-term high security key pair that includes a short-term high security public key and a short-term high security private key, wherein the short-term high security key pair is quantum-resistant;
transmitting, by the VPN client, a request for a pre-shared key (PSK) to a VPN server, wherein the PSK is not available at the VPN client;
receiving, by the VPN client, a response that includes the PSK; and
in response to receiving the response that includes the PSK:
decrypting, by the VPN client, the response using the short-term private key to obtain a ciphertext;
decrypting, by the VPN client, the ciphertext using the short-term high security private key to obtain the PSK; and
establishing a VPN tunnel between the VPN client and the VPN server based on the PSK, wherein establishing the VPN tunnel comprises:
transmitting, by the VPN client to the VPN server, a request to establish the VPN tunnel; and
receiving, by the VPN client and from the VPN server, a response indicating that the VPN client is authorized to establish the VPN tunnel.

### Claim 16 (depends on 15)

The non-transitory computer readable medium of claim 15, wherein the request includes the short-term public key and the short-term high security public key.

### Claim 17 (depends on 16)

The non-transitory computer readable medium of claim 16, wherein the ciphertext is generated using the short-term high security public key.

### Claim 18 (depends on 15)

The non-transitory computer readable medium of claim 15, wherein in response to the request to establish the VPN tunnel, the VPN server authenticates and authorizes the VPN client.

### Claim 19 (depends on 18)

The non-transitory computer readable medium of claim 18, wherein the short-term high security key pair is generated using a Kyber algorithm.

### Claim 20 (depends on 15)

The non-transitory computer readable medium of claim 15, wherein the short-term key pair is generated using elliptic-curve cryptography.
