Decoupling and updating pinned certificates on a mobile device
AssigneeAmerican Express Travel Related Services Company, Inc.
InventorWael Ibrahim
Life of this patent
Estimating the term…
Abstract
Systems for decoupling and updating pinned certificates on a user device are disclosed. A mobile application having a hardcoded pinned certificate may be installed on a user device. The pinned certificate may be decoupled from the mobile application and stored on the user device. In response to the mobile application attempting to establish a secure connection with a server, the system may check whether the decoupled pinned certificate is current by querying a certificate repository. In response to determining that the pinned certificate is out of date, the system may transmit the current certificate to the user device to update the decoupled pinned certificate.
Claims20
A method, comprising:
- receiving, by a processor, a connection request from a mobile application installed on a user device, wherein the user device comprises a pinned certificate that is decoupled from the mobile application;
- determining, by the processor, a certificate version of the pinned certificate;
- querying, by the processor, a certificate repository based on the pinned certificate to locate a stored certificate;
- determining, by the processor, whether the certificate version of the pinned certificate matches a second certificate version of the stored certificate in the certificate repository;
- transmitting, by the processor, the stored certificate to the user device, in response to the certificate version of the pinned certificate not matching the second certificate version of the stored certificate;
- and
- updating, by the processor, the pinned certificate on the user device to comprise data from the stored certificate.
A system comprising:
- a processor,
- a tangible, non-transitory memory configured to communicate with the processor,
- the tangible, non-transitory memory having instructions stored thereon that, in response to execution by the processor, cause the processor to perform operations comprising:
- receiving, by the processor, a connection request from a mobile application installed on a user device, wherein the user device comprises a pinned certificate that is decoupled from the mobile application;
- determining, by the processor, a certificate version of the pinned certificate;
- querying, by the processor, a certificate repository based on the pinned certificate to locate a stored certificate;
- determining, by the processor, whether the certificate version of the pinned certificate matches a second certificate version of the stored certificate in the certificate repository;
- transmitting, by the processor, the stored certificate to the user device, in response to the certificate version of the pinned certificate not matching the second certificate version of the stored certificate;
- and
- updating, by the processor, the pinned certificate on the user device to comprise data from the stored certificate.
An article of manufacture including a non-transitory, tangible computer readable storage medium having instructions stored thereon that, in response to execution by a computer based system, cause the computer based system to perform operations comprising:
- receiving, by the computer based system, a connection request from a mobile application installed on a user device, wherein the user device comprises a pinned certificate that is decoupled from the mobile application;
- determining, by the computer based system, a certificate version of the pinned certificate;
- querying, by the computer based system, a certificate repository based on the pinned certificate to locate a stored certificate;
- determining, by the computer based system, whether the certificate version of the pinned certificate matches a second certificate version of the stored certificate in the certificate repository;
- transmitting, by the computer based system, the stored certificate to the user device, in response to the certificate version of the pinned certificate not matching the second certificate version of the stored certificate;
- and
- updating, by the computer based system, the pinned certificate on the user device to comprise data from the stored certificate.
Dependencies are inferred from the claim text.