US 12,288,212 B2
Method and system for validating transaction in client-server environment
Visa Forsten, Helsinki (FI); and Niko Derome, Helsinki (FI)
Assigned to Supercell Oy, Helsinki (FI)
Filed by Supercell Oy, Helsinki (FI)
Filed on Jul. 7, 2021, as Appl. No. 17/369,166.
Prior Publication US 2023/0009399 A1, Jan. 12, 2023
Int. Cl. G06Q 20/40 (2012.01); H04L 67/10 (2022.01)
CPC G06Q 20/401 (2013.01) [H04L 67/10 (2013.01)] 11 Claims
OG exemplary drawing
 
1. A method of validating a purchase transaction in a game application of a client-server game environment, the method comprising:
processing, in a special purpose processor of a client device operating on a first operating system, a request for the purchase transaction initiated froma user at the client device, the purchase transaction comprising exchanging one or more resources associated with the user to acquire an asset in the game application operating on the client device, wherein the one or more resources comprise credits associated with the user in the game application and the asset is a game item in the game application;
verifying a resource balance in the game application for completing the purchase transaction, and when the resource balance is verified as a sufficient resource balance, executing a client command at the client device to initiate the request for the purchase transaction, using a resource balance associated with the user in state data stored in a memory at the client device;
transmitting a request by the client device to a server over a network, the server operating on a second operating system different from the first operating system, for execution of a server command at the server only after executing the client command at the client device, wherein the server command and the client command are both associated with a common logic code of game logic of the game application;
executing the server command by a special purpose processor of the server configured to execute the server command using a copy of state data corresponding to the user stored in an uncompromised state on a memory of the server, wherein a successful execution of the server command at the server requires a sufficient resource balance in the copy of the state data stored in the memory of the server, and the server validating the purchase transaction associated with the request for the purchase transaction at the client device upon successful execution of the server command by the server;
wherein the server is further configured to notify the client device of the validation of the purchase transaction and update a resource balance associated with the user in the copy of the state data stored in the memory of the server; and
the client device is configured to perform the purchase transaction upon receipt of the notification by the server by electronically exchanging the one or more resources for the asset and updating the resource balance associated with the user in the state data stored in the memory of the client device.