IP Library Granted Patent US 12,200,005
Granted Patent B2
US 12,200,005 · App. 17/746,650 · Granted Jan 14, 2025

Secure and repeatable deployment to an air-gapped system

Inventors: Anthony Hamilton (Raleigh, NC); Bryson Earl (Raleigh, NC)
Assignee: Applied Research Associates, Inc.
H04L63/1433H04L63/0428
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,200,005
App. No.
17/746,650
Granted
Jan 14, 2025
Kind
B2
Abstract

Systems, programs, and methods for providing secure and repeatable processes of deploying networked software applications to an air-gapped system while maintaining security are described. A deployment bundle may be generated on a cloud-based platform utilizing cloud-based development tools and infrastructure as a service. In some embodiments, an on-site or hybrid cloud/on-site system may be used. The deployment bundle may be stored on a portable storage device. The portable storage device may be connected to the air-gapped system. The deployment bundle may be deployed in the air-gapped system providing the networked software application together with any local or network service dependencies into the air-gapped system.

Claims (59)

1. A method of deploying networked software into an air-gapped private cloud, the method comprising:

providing the air-gapped private cloud by a plurality of air-gapped computing devices communicatively connected,

wherein the plurality of air-gapped computing devices is physically isolated from any outside network communication;

generating, by a non-air-gapped computing device of a set of computing devices not associated with the air-gapped private cloud, a deployment script for the networked software;

building, on the non-air-gapped computing device, a deployment bundle comprising the networked software, the deployment script, and a network service dependency bundle for the networked software,

wherein the networked software comprises a commercially available software update and is obtained by the non-air-gapped computing device over a wide-area network;

storing the deployment bundle on a portable storage device readable by a computing device of the plurality of air-gapped computing devices providing the air-gapped private cloud;

transferring the deployment bundle to the computing device of the air-gapped private cloud using the portable storage device physically connected to the computing device; and

executing the deployment script on the computing device of the air-gapped private cloud to:

install the networked software on the computing device of the air-gapped private cloud; and

deploy the network service dependency bundle in of the air-gapped private cloud to provide a network service to the plurality of air-gapped computing devices in the air-gapped private cloud.

2. The method of claim 1 , further comprising a step of verifying a compliance of the deployment bundle with a standard of a regulatory body prior to the storing of the deployment bundle on the portable storage device.

3. The method of claim 2 , further comprising attesting the compliance of the deployment bundle with the standard of the regulatory body via a digital signature.

4. The method of claim 1 , wherein the network service in the air-gapped private cloud is a license service for the networked software.

5. The method of claim 1 , wherein the air-gapped private cloud is one of a commercial datacenter system, a private company datacenter system, a hybrid commercial and private datacenter, or an edge-based server solution.

6. The method of claim 1 , wherein the deployment bundle is encrypted before storage on the portable storage device.

7. The method of claim 6 , wherein the deployment script is decrypted in the air-gapped private cloud.

8. The method of claim 1 , wherein the networked software is an update for a previous version of the networked software running in the air-gapped private cloud.

9. One or more non-transitory computer-readable media storing computer-executable instructions that, when executed by a processor, performs a method of deploying networked software into an air-gapped private cloud, the method comprising:

providing the air-gapped private cloud by a plurality of air-gapped computing devices communicatively connected,

wherein the plurality of air-gapped computing devices is physically isolated from any outside network communication;

generating, by a non-air-gapped computing device of a set of computing devices not associated with the air-gapped private cloud, a deployment script for the networked software;

building, on the non-air-gapped computing device, an encrypted deployment bundle comprising the networked software, the deployment script, and a software dependency for the networked software,

wherein the networked software comprises a commercially available software update and is obtained by the non-air-gapped computing device over a wide-area network;

storing the encrypted deployment bundle on a portable storage device readable by a computing device of the air-gapped private cloud;

transferring the encrypted deployment bundle to the computing device of the air-gapped private cloud using the portable storage device physically connected to the computing device;

decrypting the encrypted deployment bundle on the computing device of the air-gapped private cloud; and

executing the deployment script on the computing device of the air-gapped private cloud to:

install the networked software on the computing device of the air-gapped private cloud; and

install the software dependency for the networked software on the computing device of the air-gapped private cloud.

10. The media of claim 9 , wherein a license key for the networked software on the computing device of the air-gapped private cloud is provided as an input by the deployment script.

11. The media of claim 9 , wherein the encrypted deployment bundle further comprises a network service dependency bundle for the networked software and wherein the method further comprises a step of executing the deployment script on the computing device of the air-gapped private cloud to deploy the network service dependency bundle on a server of the air-gapped private cloud to provide a network service in the air-gapped private cloud.

12. The media of claim 9 , wherein the method further comprises digitally signing the encrypted deployment bundle prior to storing it on the portable storage device.

13. The media of claim 9 , wherein the method further comprises a step of verifying a compliance of the encrypted deployment bundle with a standard of a regulatory body.

14. The media of claim 9 , wherein the encrypted deployment bundle further comprises configuration information for the networked software.

15. A system for deploying networked software into an air- gapped private cloud, the system comprising:

a development computing device comprising:

at least one first processor configured for Internet communication;

a first port for receiving a portable storage device; and

a first set of non-transitory computer-readable media storing a first set of computer-executable instructions that, when executed by the at least one first processor, perform a first method comprising:

receiving, via Internet communication, the networked software comprising a commercially available software update;

generating a deployment script for the networked software;

building a deployment bundle comprising the networked software, the deployment script, and a network service dependency bundle for the networked software; and

storing the deployment bundle on the portable storage device; and

a computing device of the air-gapped private cloud, comprising:

at least one second processor;

a second port for receiving the portable storage device; and

a second set of non-transitory computer-readable media storing a second set of computer-executable instructions that, when executed by the at least one second processor, perform a second method comprising:

loading the deployment bundle from the portable storage device to the computing device by physically connecting the portable storage device to the computing device; and

executing the deployment script to:

install the networked software on the computing device of the air-gapped private cloud; and

deploy the network service dependency bundle on at least one air-gapped computing device of the air-gapped private cloud to provide a network service in the air-gapped private cloud.

16. The system of claim 15 , wherein the deployment bundle further comprises a software dependency for the networked software, and wherein the second set of computer-executable instructions are further executed to perform a step of installing the software dependency for the networked software on the computing device of the air-gapped private cloud.

17. The system of claim 15 ,

wherein the deployment bundle is stored on the portable storage device by the development computing device in encrypted form encryption, and

wherein the second set of computer-executable instructions are further executed to perform a step of decrypting the deployment bundle.

18. The system of claim 15 , wherein the first set of computer-executable instructions are further executed to perform a step of verifying a compliance of the deployment bundle with a standard of a regulatory body.

19. The system of claim 15 , wherein at least one of a username or a password for accessing the network service in the air-gapped private cloud by the networked software is provided as an input by the deployment script.

20. The system of claim 15 , wherein the air-gapped private cloud is one of a commercial datacenter system, a private company datacenter system, a hybrid commercial and private datacenter, or an edge-based server solution.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 17, 2022
From: HAMILTON, ANTHONY; EARL, BRYSON
To: APPLIED RESEARCH ASSOCIATES, INC.
Reel/Frame 059936/0028 →
Continuity (1)
Related Publication 20230379349A1 · Nov 23, 2023
References Cited (36)
US 8826231B1 · Ross · 2014 [cited by examiner]
US 8918781B1 · Dubey · 2014 [cited by examiner]
US 9473482B2 · Koivuniemi · 2016 [cited by examiner]
US 9967154B2 · Masterson · 2018 [cited by examiner]
US 10817273B1 · Lucovsky · 2020 [cited by examiner]
US 10996945B1 · Allen · 2021 [cited by examiner]
US 11144289B1 · Hwang · 2021 [cited by examiner]
US 11275569B1 · Zhang · 2022 [cited by examiner]
US 20130117232A1 · Lee · 2013 [cited by examiner]
US 20130232498A1 · Mangtani · 2013 [cited by examiner]
US 20150199188A1 · Mantripragada · 2015 [cited by examiner]
US 20160154629A1 · Noens · 2016 [cited by examiner]
US 20170249132A1 · Andrews · 2017 [cited by examiner]
US 20170272321A1 · Ramos da Rocha · 2017 [cited by examiner]
US 20170272335A1 · Hamlin · 2017 [cited by examiner]
US 20180059660A1 · Heatzig · 2018 [cited by examiner]
US 20180191508A1 · Scriber · 2018 [cited by examiner]
US 20200177478A1 · Dakshinyam · 2020 [cited by examiner]
US 20200311288A1 · Yankovskiy · 2020 [cited by examiner]
US 20200358671A1 · Finch · 2020 [cited by examiner]
US 20210091930A1 · Visoky · 2021 [cited by examiner]
US 20210279326A1 · Adam · 2021 [cited by examiner]
US 20210352136A1 · Dojka · 2021 [cited by examiner]
US 20210397418A1 · Nikumb · 2021 [cited by examiner]
US 20220283794A1 · Wolfson · 2022 [cited by examiner]
US 20220284100A1 · Simon · 2022 [cited by examiner]
US 20220284101A1 · Simon · 2022 [cited by examiner]
US 20220405092A1 · Miedema · 2022 [cited by examiner]
US 20230025754A1 · Hassanzadeh · 2023 [cited by examiner]
US 20230061123A1 · Low · 2023 [cited by examiner]
US 20230062517A1 · Speks · 2023 [cited by examiner]
US 20230142148A1 · Ghosh · 2023 [cited by examiner]
US 20230229413A1 · Basu · 2023 [cited by examiner]
US 20230259343A1 · Medina · 2023 [cited by examiner]
US 20230267180A1 · Fieau · 2023 [cited by examiner]
US 20230379349A1 · Hamilton · 2023 [cited by examiner]