US 11,983,704 B2
Virtual token-based settlement providing system, virtual token generation apparatus, virtual token verification server, virtual token-based settlement providing method, and virtual token-based settlement providing program
Chang Hun Yoo, Seoul (KR)
Assigned to SSenStone Inc., Seoul (KR)
Filed by SSenStone Inc., Seoul (KR)
Filed on Oct. 12, 2021, as Appl. No. 17/499,544.
Application 17/499,544 is a continuation of application No. 16/657,170, filed on Oct. 18, 2019, granted, now 11,188,895.
Application 16/657,170 is a continuation of application No. PCT/KR2018/007850, filed on Jul. 11, 2018.
Claims priority of application No. 10-2017-0100953 (KR), filed on Aug. 9, 2017; and application No. 10-2018-0055344 (KR), filed on May 15, 2018.
Prior Publication US 2022/0067704 A1, Mar. 3, 2022
Int. Cl. G06Q 20/36 (2012.01); G06F 8/30 (2018.01); G06F 21/31 (2013.01); G06F 21/60 (2013.01); G06Q 20/06 (2012.01); G06Q 20/32 (2012.01); G06Q 20/34 (2012.01); G06Q 20/38 (2012.01); G06Q 20/40 (2012.01); G06Q 40/02 (2023.01); H04L 9/32 (2006.01); H04L 9/40 (2022.01); H04W 12/033 (2021.01)
CPC G06Q 20/3672 (2013.01) [G06F 8/30 (2013.01); G06F 21/31 (2013.01); G06F 21/606 (2013.01); G06Q 20/0658 (2013.01); G06Q 20/3274 (2013.01); G06Q 20/3278 (2013.01); G06Q 20/351 (2013.01); G06Q 20/354 (2013.01); G06Q 20/3674 (2013.01); G06Q 20/382 (2013.01); G06Q 20/385 (2013.01); G06Q 20/4093 (2013.01); G06Q 40/02 (2013.01); H04L 9/3213 (2013.01); H04L 9/3228 (2013.01); H04L 63/0428 (2013.01); H04W 12/033 (2021.01); H04L 2209/56 (2013.01); H04L 2209/80 (2013.01)] 7 Claims
OG exemplary drawing
 
1. A virtual code-based payment providing method, performed by a virtual code verification server device having a processor, the method comprising:
receiving a virtual code provided by a virtual code generation device from a payment terminal, wherein the virtual code is matched with an actual code by the virtual code generation device and then is generated;
extracting a plurality of detailed codes included in the virtual code, wherein the plurality of detailed codes include, a fixed code, a first code and a second code, and wherein the fixed code is combined at a predetermined location in the virtual code, and includes a code for determining a card issuer or a card type corresponding to the actual code or a code for identifying whether to correspond to the virtual code, the first code is to set a search start point for searching a storage location, and the second code is to set a search path from the search start point to the storage location depending on a specific search method;
searching for the actual code based on the plurality of detailed codes; and
transmitting the actual code to a payment settlement service server or a financial company server,
wherein the virtual code generation device receives a virtual code generation function to store the virtual code generation function in the virtual code generation device upon registering the actual code to use a virtual code service, and generates and outputs the virtual code matched with a payment request time point without communication with the virtual code verification device at a payment request time point of a user,
wherein the searching for the actual code includes:
verifying whether the virtual code generation device normally issues the virtual code, by using a generation virtual security number calculated based on a time value within a specific range from a time point when the virtual code is received;
in response to verifying that the virtual code generation device normally issues the virtual code, selecting, based on the fixed code in the virtual code, a specific storage location search algorithm for a specific card type, among storage location search algorithms included in the virtual code verification device, wherein the specific storage location search algorithm moves a pointer on a track based on the first code and the second code, to find the storage location in a hardware memory, which stores the actual code;
applying the first code and the second code to the selected storage location search algorithm by performing:
moving the pointer to a point on the track corresponding to the first code within the virtual code; and
setting a location corresponding to the first code to the search start point, and returning the track by a number of counts corresponding to the second code to search for a point matched with the storage location of the actual code; and
extracting the actual code included in the storage location of the actual code.