Encrypted Messaging Device Verification via Cryptographic Code

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing messaging systems face challenges in securely authorizing secondary devices to send and receive encrypted messages on behalf of a user without sharing private encryption keys, and in managing device lists to ensure secure communication and prevent unauthorized access.

Innovation Solution

A method where a primary device verifies a secondary device by generating a computer-perceptible code containing cryptographic credentials, which is then used to establish an encrypted communication session, and a server manages authorized device lists with timestamps to ensure secure communication and prevent unauthorized access.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If a user logs into messaging system from any location and makes changes to their account, then the system provides flexibility and accessibility, but it becomes difficult to determine which device should be considered the authoritative source of truth for user data

Engineering Contradiction:
Improvedevice flexibilityVSAvoidsource of truth
Core Design Contradiction:
Adaptability or versatilityVSLoss of information

Solution Approach 1:

The system segments devices into primary and secondary categories, with the primary device serving as the authoritative source of truth. This segmentation resolves the contradiction by allowing multiple devices to access the system while clearly designating one device as the definitive source for user data, preventing information loss or conflicts.

Inventive Principle:
Principle #1Segmentation

2Reliability

If messages are encrypted and decrypted only on end-user devices with private keys kept secret, then security is improved, but it becomes challenging to authorize secondary devices without sharing private encryption keys

Engineering Contradiction:
ImprovesecurityVSAvoiddevice authorization
Core Design Contradiction:
ReliabilityVSEase of operation

Solution Approach 1:

The system introduces an intermediary verification process using public key cryptography. Instead of sharing private keys, the primary device verifies the secondary device through cryptographic proof generated by the messaging application. This intermediary mechanism maintains security while enabling authorized devices to access the system.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system replaces the mechanical approach of sharing secret keys with a cryptographic verification mechanism. The secondary device generates cryptographic proof using its private key, and the primary device verifies this proof using the secondary device's public key, eliminating the need for key sharing while maintaining security.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

3Reliability

If the system uses cryptographic verification to authorize devices, then security is enhanced, but the complexity of the authorization process increases

Engineering Contradiction:
Improveauthorization securityVSAvoidverification process
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system implements self-service authorization where the secondary device autonomously generates the cryptographic proof required for verification. The messaging application on the secondary device automatically creates the verification data and transmits it to the primary device, eliminating the need for manual configuration or complex user intervention while maintaining high security standards.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS11743035B2Methods, mediums, and systems for verifying devices in an encrypted messaging system
Publication Date: 2023.08.29 WHATSAPP LLC
  • US11743035B2 patent drawing
  • US11743035B2 patent drawing
  • US11743035B2 patent drawing

AI summary

This application describes methods, mediums, and systems for verifying a device for use in a messaging system. Using the device verification procedures described, a messaging system can securely authorize new devices to send and receive encrypted messages on behalf of a user, preferably without the need to share a private encryption key between the users' different devices. The application describes several techniques that can be used to provide such a system, including distributing a computer-perceptible code that encodes encryption information between a secondary device and a primary device. This allows the information to be distributed without intervention by a server. Other techniques provide unique ways to build and reverify authorized device lists, distribute encryption keys in chat channels, ensure that lists of authorized devices are distributed in the correct order and remain valid for an appropriate amount of time, add new devices to an ongoing or new conversation, and more.