CPC G06Q 20/0425 (2013.01) [G06Q 20/108 (2013.01); G06Q 20/20 (2013.01); G06Q 20/3274 (2013.01); G06Q 20/3825 (2013.01); G06Q 20/38215 (2013.01); G06Q 40/02 (2013.01)] | 20 Claims |
1. A first mobile device comprising:
one or more hardware processors; and
a non-transitory memory storing merchant information comprising a name and an account of a merchant and instructions that, when executed by the one or more hardware processors, cause the one or more hardware processors of the first mobile device to perform operations comprising:
generating transaction data for encoding in separate ones of a first plurality of two-dimensional (2D) barcodes;
generating the first plurality of 2D barcodes based on a first portion of transaction data corresponding to a payment amount;
encoding the first plurality of 2D barcodes with the name and the account of the merchant;
displaying the encoded first plurality of 2D barcodes to a second mobile device via a display output of the first mobile device;
in response to the displaying, capturing a second plurality of 2D barcodes displayed in a continuous loop on the second mobile device, wherein each of the second plurality of 2D barcodes is encoded with a second portion of data and a sequential identifier;
determining a plurality of scanned frames presented on the first mobile device and comprising the second plurality of 2D barcodes;
decoding, from the plurality of scanned frames, the second portion of the data and the sequential identifier in each of the second plurality of 2D barcodes;
reconstructing the data from the second portions of the data based on the sequential identifiers decoded from the second plurality of 2D barcodes in the plurality of scanned frames;
determining, from the reconstructed data, payment information for a payment instrument with a payment service provider to the name and the account of the merchant for the payment amount and a certified public key;
downloading a certificate revocation list (CRL) by the first mobile device from the payment service provider, wherein the CRL lists one or more revoked keys;
validating, based on a capability notation embedded in the certified public key, the certified public key for use with the payment instrument; and
verifying the payment instrument based on the certified public key being found in the CRL.
|