IP Library Granted Patent US 10,764,043
Granted Patent B2
US 10,764,043 · App. 15/941,311 · Granted Sep 1, 2020

Identity and content authentication for phone calls

Inventors: Patrick G. Traynor (Gainesville, FL); Bradley G. Reaves (Raleigh, NC); Logan E. Blue (Gainesville, FL); Luis Vargas (Gainesville, FL); Hadi Abdullah (Gainesville, FL); Thomas Shrimpton (Gainesville, FL)
Assignee: University of Florida Research Foundation, Incorporated
H04L9/0844H04L9/3263H04L9/3268H04L65/1076H04W12/04H04W12/06H04L9/3242H04L63/0823H04L2209/80H04W12/00409H04W12/1006
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,764,043
App. No.
15/941,311
Granted
Sep 1, 2020
Kind
B2
Abstract

Systems and methods for call authentication are provided. A method can include an enrollment protocol that ensures users control the number they claim to own, a handshake protocol that mutually authenticates the calling parties, and a call integrity protocol that ensures the security of the voice channel and the content it carries. A server can act as either an endpoint or intermediary between user clients and client-server architecture can be employed. All protocols can include end-to-end cryptography and the enrollment protocol can issue a certificate that binds the identity of the client to a phone number.

Claims (59)

1. A method for call authentication comprising:

an enrollment protocol that ensures a user controls a number the user claims to own;

a handshake protocol that mutually authenticates two calling parties comprising a caller and a callee; and

a call integrity protocol that ensures the security of a voice channel and a content it carries, wherein the call integrity protocol comprises:

sending a message indicating that a voice call is connected, wherein the message comprises a timestamp and a hash message authentication code (HMAC) of the timestamp by the caller and the callee;

sending other audio digests by the caller and the callee after the voice call begins; and

sending a call concluded message comprising a timestamp with an HMAC.

2. The method according to claim 1 , wherein a server acts as either an endpoint or intermediary between user clients.

3. The method according to claim 1 , wherein all of the protocols implement end-to-end cryptography.

4. The method according to claim 1 , wherein the enrollment protocol issues a certificate that binds an identity of the client to a phone number.

5. The method according to claim 4 , wherein the enrollment protocol comprises:

establishing a client C and an enrollment server S;

(message 1) C sending an enrollment request with S's identity, C's identity information, C's phone number, and C's public key;

(message 2) S sending a nonce N Net , the identities of C and S and the phone numbers of C and S with a timestamp to ensure freshness, liveness, and to provide a “token” for the particular authentication session;

(message 3) S confirming that C controls the phone number it claims by S placing a call to C's claimed phone number, and S transmitting a nonce N Audio over the voice channel when a call is answered;

(message 4) C sending both the nonce N Net and the nonce N Audio along with the IDs of server, client, a timestamp, and a signature covering all other fields; and

(message 5) S replying with a signed certificate issued to C.

6. The method according to claim 5 , wherein the enrollment protocol comprises an out-of-band process for verifying identity of certificates (particularly high-value certificates), authentication of supporting documentation, and/or CNAM3 lookups.

7. The method according to claim 1 , wherein the handshake protocol comprises a first phase indicating to a server and the two calling parties that a call is imminent and a second phase of authenticating both parties on the call and establishing shared secrets.

8. The method according to claim 1 , wherein the other audio digests are transmitted for a duration of the voice call and are authenticated with HMACs.

9. A method of authentication, comprising:

performing an enrollment protocol between a client and a server to ensure that a user controls a phone number and to issue a certificate to the user;

performing a handshake protocol between two calling parties comprising a caller and a callee through the server to authenticate the two calling parties; and

performing a call integrity protocol to ensure security of a voice channel and a content it carries, wherein the call integrity protocol comprises:

sending a message indicating that a voice call is connected, wherein the message comprises a timestamp and a hash message authentication code (HMAC) of the timestamp by the caller and the callee;

sending other audio digests by the caller and the callee after the voice call begins; and

sending a call concluded message comprising a timestamp with an HMAC.

10. The method according to claim 9 , wherein the certificate the enrollment protocol binds an identity of the client to the phone number.

11. The method according to claim 10 , wherein the identity comprises at least one of a name, an organization, and pertinent information.

12. The method according to claim 11 , wherein the enrollment protocol comprises:

sending an enrollment request with the server's identity, the client's identity, the client's phone number, and the client's public key by the client;

sending a nonce N Net , the identities of the client and the server, and the phone numbers of the client and the server with a timestamp by the server;

sending the nonce N Net and an audio nonce N Audio by the client; and

replying with a signed certificate issued to the client by the server.

13. The method according to claim 12 , wherein the server provides a token during sending the nonce N Net .

14. The method according to claim 9 , wherein the handshake protocol comprises a first phase indicating imminent call between the server and the calling parties, and a second phase authenticating the calling parties.

15. The method according to claim 14 , wherein the first phase comprises:

indicating by the caller to the server that the caller wants to place a call;

informing by the server to the callee that an authenticated voice call is coming; and

informing by the server to the caller whether the callee is using the authenticated voice call.

16. The method according to claim 15 , wherein the caller and the callee compute independently messages and send the messages in parallel during the second phase of the handshake protocol.

17. The method according to claim 16 , wherein the messages contain all information necessary for a Diffie-Hellman Key establishment authenticated with a signature key in a certificate of the caller and the callee.

18. The method according to claim 9 , wherein the call integrity protocol confirms that the voice channel is established and confirms when a call ends.

19. A method of authentication, comprising:

performing an enrollment protocol between a client and a server to ensure that a user controls a phone number and to issue a certificate to the user;

performing a handshake protocol between two calling parties comprising a caller and a callee through the server to authenticate the two calling parties; and

performing a call integrity protocol to ensure security of a voice channel and a content it carries,

wherein the enrollment protocol comprises:

sending an enrollment request with the server's identity, the client's identity information, the client's phone number, and the client's public key by the client;

sending a nonce N Net , the identities of the client and the server, and the phone numbers of the client and the server with a timestamp by the server;

sending the nonce N Net and an audio nonce N Audio by the client; and

replying with a signed certificate issued to the client by the server, wherein the handshake protocol comprises:

indicating by the caller to the server that the caller wants to place a call;

informing by the server to the callee that an authenticated voice call is coming; and

informing by the server to the caller whether the callee is using the authenticated voice call, and

wherein the call integrity protocol comprises:

sending a message indicating that a voice call is connected, wherein the message comprises a timestamp and a hash message authentication code (HMAC) of the timestamp by the caller and the callee;

sending other audio digests by the caller and the callee after the voice call begins; and

sending a call concluded message comprising a timestamp with an HMAC.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 3, 2018
From: TRAYNOR, PATRICK G.; REAVES, BRADLEY G.; BLUE, LOGAN E.; VARGAS, LUIS; ABDULLAH, HADI; SHRIMPTON, THOMAS
To: UNIVERSITY OF FLORIDA RESEARCH FOUNDATION, INC.
Reel/Frame 046258/0404 →
CONFIRMATORY LICENSE Recorded May 21, 2018
From: UNIVERSITY OF FLORIDA
To: NATIONAL SCIENCE FOUNDATION
Reel/Frame 046195/0986 →
Continuity (2)
Provisional Application 62481951 · Apr 5, 2017
Related Publication 20180294959A1 · Oct 11, 2018
Cited By (8)
US 12,309,196 US 12,425,233 US 12,445,277 US 12,476,826 US 12,494,922 US 12,542,658 US 12,647,282 US 12,712,713