Securely updating software on connected electronic devices

US10949189B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10949189-B2
Application numberUS-201715636356-A
CountryUS
Kind codeB2
Filing dateJun 28, 2017
Priority dateJun 28, 2017
Publication dateMar 16, 2021
Grant dateMar 16, 2021

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Techniques for securely updating a point-of-sale (POS) system that includes a merchant-facing device and a buyer-facing device are described. For instance, the merchant-facing device may execute first software that provides first POS functionality and the buyer-facing device may execute second software that provides second POS functionality. To update both devices, the merchant-facing device may receive a software update from a payment service via a network connection, and update the first software using the software update. The merchant-facing device can then cause, via a physical connection, the buyer-facing device to reboot in an update mode and send the software update to the buyer-facing device. In response, the buyer-facing device can update the second software using the software update and then reboot in a payments mode. In some instances, the buyer-facing device can then update a secure enclave on the buyer-facing device using the software update.

First claim

Opening claim text (preview).

What is claimed is: 1. A system comprising: a payment service that communicates with a first point-of-sale (POS) device via a network connection, the payment service configured to: store a software update that includes an updated version of first software configured for the first POS device and an updated version of second software configured for a second POS device; receive, from the first POS device via the network connection, an identifier associated with the first POS device; identify the first POS device using the identifier; receive, from the first POS device via the network connection, an indication that the first POS device has installed a previous version of the first software; and send, to the first POS device via the network connection, the software update; the first POS device that communicates with the payment service via the network connection and communicates with the second POS device via a physical connection, the first POS device configured to: receive, from the payment service via the network connection, the software update; store, on the first POS device, the software update for the second POS device; update the first software to the updated version of the first software using the software update; detect a connection with the second POS device via the physical connection; in response to detecting the connection and as a security measure to protect at least one of the first POS device or the second POS device, send, to the second POS device via the physical connection, a request for information indicating a current version of the second software that is installed on the second POS device; receive, from the second POS device via the physical connection, an indication that the second POS device includes a previous version of the second software; cause, via the physical connection, the second POS device to reboot into an update mode; and based at least in part on the second POS device rebooting into the update mode, send the updated version of the second software to the second POS device via the physical connection; and the second POS device that communicates with the first POS device via the physical connection, the second POS device configured to: receive the updated version of the second software from the first POS device via the physical connection; update the second software to the updated version of the second software; and based at least in part on updating the second software, reboot into a payments mode. 2. The system as recited in claim 1 , wherein the first POS device is further configured to: store one or more preferences associated with the second POS device; determine that the second POS device has rebooted into the payments mode; and send, via the physical connection, data associated with the one or more preferences to the second POS device. 3. The system of claim 1 , wherein the second POS device includes a secure payments enclave and the software update further includes an updated version of third software, and wherein the second POS device is further configured to: determine that one or more microcontrollers within the secure payments enclave include a previous version of the third software; and update the third software to the updated version of the third software using the software update. 4. The system of claim 1 , wherein: the payment service is further configured to: encrypt the software update using a first encryption key to generate an encrypted software update, wherein sending the software update to the first POS device comprises sending, to the first POS device via the network connection, the encrypted software update; retrieve a second encryption key associated with the first POS device; encrypt the first encryption key using the second encryption key to generate an encrypted first encryption key; and send the encrypted first encryption key to the first POS device via the network connection; and the first POS device is further configured to: decrypt the encrypted first encryption key using a local version of the second encryption key to generate the first encryption key; and decrypt the encrypted software update using the first encryption key. 5. A method comprising: storing a software update that includes an updated version of first software configured for a first point-of-sale (POS) device and an updated version of second software configured for a second POS device; receiving, from the first POS device via a network connection, an identifier associated with the first POS device; identifying the first POS device using the identifier; receiving an indication that the first POS device has installed a previous version of the first software configured for the first POS device; sending the software update to the first POS device; receiving, by the first POS device via the network connection, the software update; storing, on the first POS device, the software update for the second POS device; updating the previous version of the first software on the first POS device using the updated version of the first software; detecting, by the first POS device via a physical connection, a connection with the second POS device; in response to detecting the connection, sending, to the second POS device via the physical connection, a request for information about the second software that is installed on the second POS device; receiving, from the second POS device via the physical connection, an indication that the second POS device includes a previous version of the second software; causing, by the first POS device via the physical connection, the second POS device to reboot into an update mode; based at least in part on the second POS device rebooting into the update mode, sending, by the first POS device via the physical connection, the updated version of the second software to the second POS device; receiving, at the second POS device, the updated version of the second software from the first POS device via the physical connection; updating the second software to the updated version of the second software; and based at least in part on updating the second software, rebooting the second POS device into a payments mode. 6. The method as recited in claim 5 , further comprising: detecting, by the first POS device, an additional connection with a third POS device; receiving, by the first POS device, and from the third POS device, an indication that the third POS device includes the updated version of the second software; and refraining, by the first POS device, from sending the updated version of the second software to the third POS device. 7. The method as recited in claim 5 , wherein the software update is encrypted using a first encryption key, and wherein the method further comprises: receiving, by the first POS device and via the network connection, an encrypted version of the first encryption key; decrypting, by the first POS device, the encrypted version of the first encryption key using a second encryption key associated with the first POS device; and decrypting, by the first POS device, the software update using the first encryption key. 8. The method as recited in claim 5 , further comprising: storing, by the first POS device, one or more preferences associated with the second POS device; determining, by the first POS device via the physical connection, that the second POS device has rebooted into the payments mode; and sending, by the first POS device via the physical connection, data associated with the one or more preferences to the second POS device. 9. The method as recited in claim 5 , wherein the software update further includes an updated version of third software, and wherein the method further comprises:

Assignees

Inventors

Classifications

  • Point-of-sale [POS] network systems · CPC title

  • applying encryption of the keys · CPC title

  • wherein the data content is protected, e.g. by encrypting or encapsulating the payload · CPC title

  • using cards, e.g. integrated circuit [IC] cards or magnetic cards · CPC title

  • Version control (security arrangements therefor G06F21/57); Configuration management · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US10949189B2 cover?
Techniques for securely updating a point-of-sale (POS) system that includes a merchant-facing device and a buyer-facing device are described. For instance, the merchant-facing device may execute first software that provides first POS functionality and the buyer-facing device may execute second software that provides second POS functionality. To update both devices, the merchant-facing device ma…
Who is the assignee on this patent?
Square Inc
What technology area does this patent fall under?
Primary CPC classification G06F8/65. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Mar 16 2021 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 12 related publications on this page (citations in our corpus or others sharing the same primary CPC).