IP Library Granted Patent US 9,633,098
Granted Patent B2
US 9,633,098 · App. 14/036,938 · Granted Apr 25, 2017

System and method for maintaining device state coherency

Inventors: Selim Aissi (Menlo Park, CA); Taeho Kgil (Foster City, CA)
Assignee: VISA INTERNATIONAL SERVICE ASSOCIATION
G06F17/30575
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 9,633,098
App. No.
14/036,938
Granted
Apr 25, 2017
Kind
B2
Abstract

Embodiments of the invention are directed to systems and methods for maintaining coherency between different entities in a distributed system. A coherency module automatically detects a change in state in a first entity, wherein the change in state relates to a change in functional code in the first entity. A synchronization message is transmitted to a second entity to synchronize data in the second entity with data in the first entity as a result of the change in state. The second entity is configured to synchronize the data in the second entity with the data in the first entity after receiving the synchronization message.

Claims (43)

1. A method for maintaining coherency, the method comprising:

automatically detecting by a processor of a user device, a removal of a wallet application at the user device, wherein the removal of the wallet application changes functional code of the user device, and wherein the processor of the user device automatically detects the removal of the wallet application at the user device by identifying a change in state between a persistent storage at the user device and a system memory at the user device;

initiating a transmission of a synchronization message by the user device to a second entity to apply a coherency protocol for synchronizing end states in the second entity with data in the user device;

in response to the automatically detecting the removal of the wallet application, receiving an instruction from the second entity to delete persistent sensitive data associated with the wallet application;

in response to the automatically detecting the removal of the wallet application, deleting the persistent sensitive data associated with the wallet application, wherein the persistent sensitive data being deleted is data that the wallet application uses when the functional code associated with the wallet application is executed,

wherein the second entity is configured to synchronize the data in the second entity with the data in the user device based upon a predetermined policy with high level of privilege, the predetermined policy specifying a condition to synchronize the second entity and the user device if the second entity and the user device share a common state and the change is due to a reconfiguration of the user device; and

if there is discrepancy in the end states, the second entity and the user device resolve the discrepancy either by committing to a new state or aborting and rolling back to a previous state so that the end states are coherent.

2. The method of claim 1 , wherein the second entity is a wallet provider.

3. The method of claim 1 , wherein initiating the transmission of the synchronization message to the second entity comprises transmitting the synchronization message from the user device to the second entity.

4. The method of claim 1 , wherein initiating the transmission of the synchronization message to the second entity comprises transmitting an initiation message to an intermediate entity, wherein the intermediate entity transmits the synchronization message to the second entity.

5. The method of claim 4 , wherein the intermediate entity is a trusted service manager (TSM).

6. The method of claim 1 , wherein the persistent sensitive data associated with the wallet application comprises payment account information.

7. The method of claim 1 , wherein the user device is a mobile device.

8. The method of claim 1 , wherein the data in the second entity is associated with a state in the second entity.

9. The method of claim 1 , wherein the persistent sensitive data is an account number or expiration date.

10. The method of claim 1 , wherein the sensitive data comprises at least one cryptographic key associated with the wallet application.

11. The method of claim 1 , wherein the synchronization message is transmitted using Transmission Control Protocol/Internet Protocol (TCP/IP).

12. A user device comprising:

a processor;

a computer readable medium coupled to the processor, the computer readable medium comprising code executable by the processor to perform a method comprising:

automatically detecting a removal of a wallet application at the user device, wherein the removal of the wallet application changes functional code of the user device, and wherein the processor of the user device automatically detects the removal of the wallet application at the user device by identifying a change in state between a persistent storage at the user device and a system memory at the user device;

initiating a transmission of a synchronization message by the user device to a second entity to apply a coherency protocol for synchronizing end states in the second entity with data in the user device;

in response to the automatically detecting the removal of the wallet application, receiving an instruction from the second entity to delete persistent sensitive data associated with the wallet application;

in response to the automatically detecting the removal of the wallet application, deleting the persistent sensitive data associated with the wallet application, wherein the persistent sensitive data being deleted is data that the wallet application uses when the functional code associated with the wallet application is executed,

wherein the second entity is configured to synchronize the data in the second entity with the data in the user device based upon a predetermined policy with high level of privilege, the predetermined policy specifying a condition to synchronize the second entity and the user device if the second entity and the user device share a common state and the change is due to a reconfiguration of the user device; and

if there is discrepancy in the end states, the second entity and the user device resolve the discrepancy either by committing to a new state or aborting and rolling back to a previous state so that the end states are coherent.

13. The user device of claim 12 , wherein the second entity is a wallet provider.

14. The user device of claim 12 , wherein the data in the second entity is associated with a state in the second entity.

15. The user device of claim 12 , wherein initiating the transmission of the synchronization message to the second entity comprises transmitting an initiation message to an intermediate entity, wherein the intermediate entity transmits the synchronization message to the second entity.

16. The user device of claim 12 , wherein the persistent sensitive data associated with the wallet application comprises payment account information.

17. The user device of claim 12 , wherein the user device is a mobile device.

18. A system comprising:

a user device; and

a second entity, wherein the user device and the second entity are communicatively coupled to each other; and wherein the user device comprises:

a processor;

a computer readable medium coupled to the processor, the computer readable medium comprising code executable by the processor to perform a method comprising:

automatically detecting a removal of a wallet application at the user device, wherein the removal of the wallet application changes functional code of the user device, and wherein the processor of the user device automatically detects the removal of the wallet application at the user device by identifying a change in state between a persistent storage at the user device and a system memory at the user device;

initiating, by the user device, a transmission of a synchronization message to the second entity to apply a coherency protocol for synchronizing end states in the second entity with data in the user device;

in response to the automatically detecting the removal of the wallet application, receiving an instruction from the second entity to delete persistent sensitive data associated with the wallet application;

in response to the automatically detecting the removal of the wallet application, deleting the persistent sensitive data associated with the wallet application, wherein the persistent sensitive data being deleted is data that the wallet application uses when the functional code associated with the wallet application is executed,

wherein the second entity is configured to synchronize the data in the second entity with the data in the user device based upon a predetermined policy with high level of privilege, the predetermined policy specifying a condition to synchronize the second entity and the user device if the second entity and the user device share a common state and the change is due to a reconfiguration of the user device; and

if there is discrepancy in the end states, the second entity and the user device resolve the discrepancy either by committing to a new state or aborting and rolling back to a previous state so that the end states are coherent.

19. The system of claim 18 , wherein the user device is a mobile device and the second entity is a wallet provider.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 1, 2013
From: AISSI, SELIM; KGIL, TAEHO
To: VISA INTERNATIONAL SERVICE ASSOCIATION
Reel/Frame 031532/0330 →
Continuity (2)
Provisional Application 61705443 · Sep 25, 2012
Related Publication 20140089261A1 · Mar 27, 2014