Secure shell (ssh) server public key validation by a ssh client in a high volume device deployment
US-2018351926-A1 · Dec 6, 2018 · US
US11539680B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-11539680-B2 |
| Application number | US-202117160717-A |
| Country | US |
| Kind code | B2 |
| Filing date | Jan 28, 2021 |
| Priority date | Mar 27, 2020 |
| Publication date | Dec 27, 2022 |
| Grant date | Dec 27, 2022 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
A system and method for providing remote access to a device is disclosed. The method comprises receiving an automatically expiring authentication token having encrypted authentication token data including a session key from the device, transmitting the authentication token to secure facility, receiving the decrypted authentication token data from the secure facility, signing a tool package with a package verification key derived at least in part from the session key, the tool package comprising processor instructions providing remote access to the device when executed by the processor, providing the signed tool package to the device. The device verifies the signed tool package using the package verification key and executes the tool package only if the signature of the tool package is verified.
Opening claim text (preview).
What is claimed is: 1. A method of providing remote access to a device comprising a processor, comprising: receiving an automatically expiring authentication token having encrypted authentication token data including a session key from the device; transmitting the authentication token to secure facility; receiving the decrypted authentication token data from the secure facility; signing a tool package with a package verification key derived at least in part from the session key, the tool package comprising processor instructions providing remote access to the device when executed by the processor; providing the signed tool package to the device; and wherein the device: verifies the signed tool package using the package verification key; and executes the tool package only if the signature of the tool package is verified. 2. The method of claim 1 , further comprising deriving the package verification key, comprising: generating a first value K1 from a hash of the session key; generating a second value K2 from a hash of the first value K1; and generating the package verification key from a concatenation of the first value K1 and the second value K2. 3. The method of claim 2 , wherein the first value K1 comprises a least significant part of the package verification key and the second value K2 comprises a most significant part of the package verification key. 4. The method of claim 3 , wherein signing a tool package with the package verification key derived at least in part from the session key comprises: generating a hash of the tool package; generating a manifest having the hash of the tool package; generating a signature of the manifest using the package verification key; appending the signature of the manifest to the manifest; and appending the tool package to the manifest. 5. The method of claim 1 , wherein: the automatically expiring encrypted authentication token is generated by the device, by: generating, by the device, token data comprising: the session key; and validity period, the authentication token being only valid during the validity period; storing the token data in trusted storage of the device; encrypting, by the device, the token data according to a random symmetric key (AEK) generated by the device; encrypting the AEK with a public key associated with a private key securely stored in a remote facility; and generating the authentication token having the encrypted AEK and the encrypted token data. 6. The method of claim 1 , wherein: the tool package executed from a random access memory (RAM) communicatively coupled to the processor; and the method further comprises removing the tool package from the RAM. 7. The method of claim 6 , wherein removing the tool package from RAM occurs upon a reboot of the device. 8. The method of claim 6 , wherein the tool package is removed by a delete command via an application program interface of the device. 9. The method of claim 5 , wherein: the token data further comprises one or more passwords; and the method further comprises: enabling logging in to the device by providing the one or more passwords. 10. The method of claim 5 wherein a new AEK is generated by the device each time a new encrypted authentication token is generated. 11. The method of claim 5 , wherein: the public key is received in a configuration file and stored in the trusted storage. 12. The method of claim 11 , further comprising: receiving a configuration file; determining if the configuration file includes the public key; if the received configuration file does not include the public key, disabling login access to the device; if the received configuration file includes the public key, comparing the public key in the received configuration file with a public key stored in trusted storage of the device; and if public key in storage is different than public key in configuration file, replace public key in trusted storage of the device with public key of configuration file and regenerate authentication token. 13. The method of claim 5 , wherein: the device comprises a processor and a memory storing a firmware image having instructions for performing processor operations; and the public key is stored in the firmware image. 14. An apparatus for providing remote access to a device comprising a processor, comprising: a first processor; a memory, communicatively coupled to the first processor, the memory storing first processor instructions comprising instructions for: receiving an automatically expiring authentication token having encrypted authentication token data including a session key from the device; transmitting the authentication token to secure facility; receiving the decrypted authentication token data from the secure facility; signing a tool package with a package verification key derived at least in part from the session key, the tool package comprising device processor instructions providing remote access to the device when executed by the device processor; providing the signed tool package to the device; and wherein the device: verifies the signed tool package using the package verification key; and executes the tool package only if the signature of the tool package is verified. 15. The apparatus of claim 14 , wherein the first processor instructions further comprise instructions for deriving the package verification key, comprising first processor instructions for: generating a first value K1 from a hash of the session key; generating a second value K2 from a hash of the first value K1; and generating the package verification key from a concatenation of the first value K1 and the second value K2. 16. The apparatus of claim 15 , wherein the first value K1 comprises a least significant part of the package verification key and the second value K2 comprises a most significant part of the package verification key. 17. The apparatus of claim 16 , wherein the first processor instructions for signing a tool package with the package verification key derived at least in part from the session key comprise first processor instructions for: generating a hash of the tool package; generating a manifest having the hash of the tool package; generating a signature of the manifest using the package verification key; appending the signature of the manifest to the manifest; and appending the tool package to the manifest. 18. The apparatus of claim 14 , wherein: the tool package executed from a random access memory (RAM) communicatively coupled to the processor; and the device processor instructions further comprise device processor instructions for removing the tool package from the RAM. 19. A non-transitory computer-readable memory of an apparatus storing one or more instructions for providing remote access to a device, the one or more instructions when executed by a processor of the apparatus cause the apparatus to perform one or more operations comprising: receiving an automatically expiring authentication token having encrypted authentication token data including a session key from the device; transmitting the authentication token to secure facility; receiving the decrypted authentication token data from the secure facility; signing a tool package with a package verification key derived at least in part from the session key, the tool package comprising processor instructions providing remote access to the device when executed by the processor; providing the signed tool package to the device; verifying the signed tool
using passwords (cryptographic mechanisms or cryptographic arrangements for entity authentication using a predetermined code H04L9/3226) · CPC title
using tickets or tokens, e.g. Kerberos (network architectures or network communication protocols for entities authentication using tickets in a packet data network H04L63/0807) · CPC title
using time-dependent keys, e.g. periodically changing keys (cryptographic mechanisms or cryptographic arrangements for controlling usage of secret information H04L9/088) · CPC title
using tickets, e.g. Kerberos (cryptographic mechanisms or cryptographic arrangements for entity authentication using tickets or tokens H04L9/3213) · CPC title
involving digital signatures · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.