IP Library Granted Patent US 8,752,156
Granted Patent B1
US 8,752,156 · App. 13/435,848 · Granted Jun 10, 2014

Detecting soft token copies

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 8,752,156
App. No.
13/435,848
Granted
Jun 10, 2014
Kind
B1
Abstract

A technique for detecting unauthorized copies of a soft token that runs on a mobile device includes generating a set of random bits on the mobile device and providing samples of the set of random bits, as well as token codes from the soft token, for delivery to a server during authentication requests. The server acquires the set of random bits of the mobile device, or learns the set of random bits over the course of multiple login attempts. Thereafter, the server predicts values of the samples of the set of random bits and tests actual samples arriving in connection with subsequent authentication requests. Mismatches between predicted samples and received samples indicate discrepancies between the random bits of the device providing the samples and the random bits of the mobile device, and thus indicate unauthorized soft token copies.

Claims (65)

1. A method for detecting unauthorized copies of a soft token that runs on a mobile device, comprising:

receiving, from a user, multiple authentication requests including token codes generated by the soft token;

receiving, from the mobile device and in connection with the authentication requests, multiple samples of a set of random bits;

generating multiple predicted samples of the set of random bits based on at least one sample of the set of random bits previously received from the mobile device;

testing whether the received samples of the set of random bits match the predicted samples of the set of random bits; and

identifying the use of an unauthorized soft token copy in response to the testing indicating that the received samples of the set of random bits do not match the predicted samples of the set of random bits,

wherein each of the received samples conveys only partial information for identifying the set of random bits.

2. The method of claim 1 , wherein receiving multiple samples of the set of random bits includes receiving multiple passcodes generated by the mobile device, each passcode conveying a token code and a sample of the set of random bits.

3. The method of claim 2 , further comprising analyzing the samples of the set of random bits received over an initial set of the authentication requests to learn values of the set of random bits, wherein generating multiple predicted samples of the set of random bits takes into account the learned values of the set of random bits.

4. The method of claim 2 , wherein the passcodes further include at least one data bit for communicating information from the mobile device, and wherein the method further comprises, in response to the testing indicating a mismatch between a received sample of the set of random bits and a respective predicted sample of the set of random bits, checking the at least one data bit for information indicating whether the mismatch was caused by a copied soft token.

5. The method of claim 2 , further comprising storing a seed value that is shared with the mobile device, wherein generating multiple predicted samples of the random bits includes, for each sample, computing the modulo-2 of an inner product of one of (i) the seed value and (ii) a value derived from the seed value with a pseudo random vector having a value that is updated with a pseudo random function for each sample to produce a 1-bit predicted sample.

6. The method of claim 5 , wherein generating multiple predicted samples of the random bits further includes subjecting one of (i) the seed value and (ii) a value derived from the seed value to a forward secure function in response to testing indicating that a received sample of the random bits does not match a predicted sample of the random bits, wherein a result of the forward-secure function is used in generating subsequent predicted samples of the random bits.

7. The method of claim 6 , further comprising establishing a monotonic count for indicating a number of times one of (i) the seed value and (ii) a value derived from the seed value has been subjected to the forward secure function.

8. The method of claim 7 , wherein the monotonic count is indicative of a number of trigger events that have occurred on the mobile device, wherein trigger events indicate (i) detected malicious activity by the mobile device and (ii) that a copy has been made of the soft token.

9. The method of claim 8 , further comprising, in response to the testing indicating an additional mismatch between a received sample of the set of random bits and a respective predicted sample of the set of random bits:

calculating a predicted alternative sample based on a previous iteration of the forward-secure function corresponding to a previous value of the monotonic count; and

sending a message to a user of the mobile device to synchronize all copies of the soft token in response to predicted alternative samples matching received samples of the set of random bits in authentication requests received after the additional mismatch.

10. The method of claim 9 , further comprising in response to the monotonic count reaching a predetermined number, denying subsequent authentication requests received with token codes generated by any copy of the soft token.

11. The method of claim 8 , further comprising:

analyzing samples of the set of random bits received after the testing indicates a mismatch to learn an updated pattern of bits, the presence of which indicates creation of an authorized soft token copy;

after receiving a number of additional authentication requests, predicting new samples of the updated pattern of bits for authentication requests received after the number of additional authentication requests;

testing whether the predicted new samples match respective received samples; and

identifying the use of an unauthorized soft token copy in response to the testing indicating that there is not a match.

12. The method of claim 1 , wherein receiving multiple samples of the set of random bits includes receiving a first sample of the set of random bits in connection with a first authentication request and receiving a second sample of the set of random bits in connection with a second authentication request, wherein each of the first sample and the second sample conveys only partial information for identifying the set of random bits.

13. The method of claim 12 , wherein testing whether the received samples of the set of random bits match the predicted samples includes testing the first sample of the set of random bits in response to receiving the first authentication request and testing the second sample of the set of random bits in response to receiving the second authentication request.

14. A server for detecting unauthorized copies of a soft token that runs on a mobile device, comprising:

a set of processors; and

memory, coupled to the set of processors, the memory constructed and arranged to store instructions executable by the set of processors,

wherein the set of processors executing instructions from the memory forms a specialized circuit constructed and arranged to:

receive, from a user, multiple authentication requests including token codes generated by the soft token;

receive, from the mobile device and in connection with the authentication requests, multiple samples of a set of random bits;

generate multiple predicted samples of the set of random bits based on at least one sample of the set of random bits previously received from the mobile device;

test whether the received samples of the set of random bits match the predicted samples of the set of random bits; and

identify the use of an unauthorized soft token copy in response to the testing indicating that the received samples of the set of random bits do not match the predicted samples of the set of random bits,

wherein each of the received samples conveys only partial information for identifying the set of random bits.

15. A non-transitory computer readable medium including instructions which, when executed by a set of processors of a server, cause the set of processors to perform a method for detecting unauthorized copies of a soft token that runs on a mobile device, the method comprising:

receiving, from a user, multiple authentication requests including token codes generated by the soft token;

receiving, from the mobile device and in connection with the authentication requests, multiple samples of a set of random bits;

generating multiple predicted samples of the set of random bits based on at least one sample of the set of random bits previously received from the mobile device;

testing whether the received samples of the set of random bits match the predicted samples of the set of random bits; and

identifying the use of an unauthorized soft token copy in response to the testing indicating that the received samples of the set of random bits do not match the predicted samples of the set of random bits,

wherein each of the received samples conveys only partial information for identifying the set of random bits.

16. A method for enabling detection of unauthorized copies of a soft token that runs on a mobile device, comprising:

storing a seed value shared with a server;

generating a set of random bits;

subjecting one of (i) the seed value and (ii) a value derived from the seed value and the set of random bits to a forward secure function to produce a multi-bit value;

storing state information on the mobile device indicating that the forward-secure function has been run;

generating multiple samples of the multi-bit value;

generating multiple token codes; and

providing the token codes and samples for transmission to the server in connection with multiple authentication requests,

wherein each of the samples of the multi-bit value conveys only partial information for identifying the multi-bit value.

17. The method of claim 16 , wherein providing the token codes and samples includes combining the token codes and samples to form multiple respective passcodes, and displaying the passcodes on a display of the mobile device.

18. The method of claim 17 , further comprising executing a cloning operation to copy the soft token from the mobile device to a second device, wherein the cloning operation includes:

subjecting the multi-bit value to the forward secure function to produce a new multi-bit value;

transmitting the new multi-bit value from the mobile device to the second device; and

transmitting the stored state information from the mobile device to the second device;

wherein generating samples by the mobile device after transmitting the new multi-bit value and the stored state information is performed on the new multi-bit value.

19. The method of claim 17 , wherein subjecting the multi-bit value to the forward secure function includes providing the multi-bit value to the forward-secure function along with some extra bits to produce the new multi-bit value.

20. The method of claim 19 , further comprising executing a second cloning operation to copy the soft token from the mobile device to a third device, wherein the second cloning operation includes:

subjecting the new multi-bit value to the forward secure function to produce a second new multi-bit value;

transmitting the second new multi-bit value from the mobile device to the third device; and

transmitting the stored state information from the mobile device to the third device;

wherein generating samples by the mobile device after transmitting is performed on the second new multi-bit value.

21. The method of claim 20 , wherein subjecting the new multi-bit value to the forward secure function includes providing the new multi-bit value to the forward-secure function along with second extra bits to produce the second new multi-bit value.

22. The method of claim 21 , further comprising receiving a message from the server directing a user of the mobile device to synchronize the soft token copies on the mobile device, the second device, and the third device.

Assignments (22)
RELEASE OF SECURITY INTEREST RECORDED AT REEL/FRAME 56098/0534 Recorded Mar 5, 2026
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: RSA SECURITY LLC
Reel/Frame 075041/0175 →
RELEASE OF SECURITY INTEREST RECORDED AT REEL/FRAME 56096/0525 Recorded Mar 5, 2026
From: JPMORGAN CHASE BANK, N.A.
To: RSA SECURITY LLC; RSA SECURITY USA LLC
Reel/Frame 075030/0744 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 23, 2024
From: RSA SECURITY LLC
To: RSA SECURITY USA, LLC
Reel/Frame 069762/0529 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 23, 2024
From: RSA SECURITY LLC
To: RSA SECURITY LLC
Reel/Frame 069762/0401 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (045455/0001) Recorded May 20, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO ASAP SOFTWARE EXPRESS, INC.); DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC CORPORATION (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MAGINATICS LLC); EMC IP HOLDING COMPANY LLC (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MOZY, INC.); SCALEIO LLC
Reel/Frame 061753/0001 →
TERMINATION AND RELEASE OF SECOND LIEN SECURITY INTEREST IN PATENTS RECORDED AT REEL 053666, FRAME 0767 Recorded Apr 29, 2021
From: JEFFERIES FINANCE LLC, AS COLLATERAL AGENT
To: RSA SECURITY LLC
Reel/Frame 056095/0574 →
TERMINATION AND RELEASE OF FIRST LIEN SECURITY INTEREST IN PATENTS RECORDED AT REEL 054155, FRAME 0815 Recorded Apr 29, 2021
From: UBS AG, STAMFORD BRANCH, AS COLLATERAL AGENT
To: RSA SECURITY LLC
Reel/Frame 056104/0841 →
SECOND LIEN INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Apr 29, 2021
From: RSA SECURITY LLC
To: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
Reel/Frame 056098/0534 →
FIRST LIEN INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Apr 29, 2021
From: RSA SECURITY LLC
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 056096/0525 →
PARTIAL RELEASE OF SECURITY INTEREST Recorded Nov 24, 2020
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: ASAP SOFTWARE EXRESS, INC.; DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; SCALEIO LLC; WYSE TECHNOLOGY L.L.C.
Reel/Frame 054511/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 7, 2020
From: EMC IP HOLDING COMPANY LLC
To: RSA SECURITY LLC
Reel/Frame 053717/0020 →
RELEASE OF SECURITY INTEREST IN CERTAIN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (040136/0001) Recorded Sep 3, 2020
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS AGENT
To: ASAP SOFTWARE EXPRESS; DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; SCALEIO LLC; WYSE TECHNOLOGY L.L.C.
Reel/Frame 054163/0416 →
RELEASE OF SECURITY INTEREST IN CERTAIN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053546/0001) Recorded Sep 3, 2020
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS AGENT
To: DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; EMC IP HOLDING COMPANY LLC; WYSE TECHNOLOGY L.L.C.
Reel/Frame 054191/0287 →
RELEASE OF SECURITY INTEREST IN CERTAIN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (049452/0223) Recorded Sep 3, 2020
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS AGENT
To: DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.
Reel/Frame 054250/0372 →
FIRST LIEN PATENT SECURITY AGREEMENT Recorded Sep 1, 2020
From: RSA SECURITY LLC
To: UBS AG, STAMFORD BRANCH, AS COLLATERAL AGENT
Reel/Frame 054155/0815 →
SECOND LIEN PATENT SECURITY AGREEMENT Recorded Sep 1, 2020
From: RSA SECURITY LLC
To: JEFFERIES FINANCE LLC
Reel/Frame 053666/0767 →
SECURITY AGREEMENT Recorded Apr 22, 2020
From: CREDANT TECHNOLOGIES INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 053546/0001 →
SECURITY AGREEMENT Recorded Mar 21, 2019
From: CREDANT TECHNOLOGIES, INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 049452/0223 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 29, 2016
From: EMC CORPORATION
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 040203/0001 →
SECURITY AGREEMENT Recorded Sep 21, 2016
From: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; SPANNING CLOUD APPS LLC; WYSE TECHNOLOGY L.L.C.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 040136/0001 →
SECURITY AGREEMENT Recorded Sep 21, 2016
From: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; SPANNING CLOUD APPS LLC; WYSE TECHNOLOGY L.L.C.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 040134/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 13, 2012
From: VAN DIJK, MARTEN; BOWERS, KEVIN D.; CURRY, SAMUEL; ZOLFONOON, RIAZ; DOYLE, SEAN P.; TRIANDOPOULOS, NIKOLAOS
To: EMC CORPORATION
Reel/Frame 028368/0573 →