CN114266060A - 一种模型容器加密与部署方法 - Google Patents
一种模型容器加密与部署方法 Download PDFInfo
- Publication number
- CN114266060A CN114266060A CN202111624794.5A CN202111624794A CN114266060A CN 114266060 A CN114266060 A CN 114266060A CN 202111624794 A CN202111624794 A CN 202111624794A CN 114266060 A CN114266060 A CN 114266060A
- Authority
- CN
- China
- Prior art keywords
- model
- key
- encrypted
- output result
- container
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 41
- 238000004883 computer application Methods 0.000 claims abstract description 4
- 238000011161 development Methods 0.000 claims description 36
- 230000000007 visual effect Effects 0.000 claims description 7
- 238000013461 design Methods 0.000 claims description 4
- 238000005516 engineering process Methods 0.000 claims description 4
- 230000001419 dependent effect Effects 0.000 claims description 3
- 230000006870 function Effects 0.000 claims description 3
- 238000012360 testing method Methods 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 5
- 238000012423 maintenance Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
Images
Landscapes
- Storage Device Security (AREA)
Abstract
本发明涉及一种模型容器加密与部署方法,属于计算机应用技术领域。使用本发明的方法将模型生产方提交的模型容器以及文档存放到模型资源管理平台中,既可以实现对模型资源的管理,也可以通过拉取模型生产方提供的配置文件的方式实现模型容器的自动部署,解决了模型管理方大批量模型容器部署速度慢的问题;使用SM2与SM4混合加密算法加密模型的方式也确保了模型生成方的模型只能在模型管理方的K8s集群中运行,保证了模型的安全性。
Description
技术领域
本发明属于计算机应用技术领域,具体涉及一种模型容器加密与部署方法。
背景技术
当前通常使用容器(Docker)技术将模型以及其依赖包封装到一个可移植的镜像中,然后部署到K8s集群中。在K8s集群上部署容器主要有两种方法,一是直接编写部署(Deployment)的配置文件,并通过kubectl应用该配置文件部署容器;二是通过可视化界面配置部署的参数,后台自动生成该部署的配置文件。第二种部署方式是对第一种部署方式的简化,二者通过不同的方式将容器的名称、标签、镜像、镜像抓取策略、容器端口号、节点端口号、副本数等信息存储到配置文件中,由kubectl应用该配置文件。
为了避免开发者的模型容器在向甲方交付时被第三方窃取,需要对容器中的模型进行加密,目前对容器加密的方式主要为使用加密算法对容器文件本身进行加密,在部署前通过解密算法对容器进行解密。
中国专利“CN 111930388一种基于k8s、docker容器的持续化集成方法和系统”提供了一种基于利用yaml文件配置创建容器的方法,此专利通过将git服务器、nereus平台、镜像仓库以及k8s集群依次连接,然后创建容器,启动容器,部署到k8s集群中进行管理,支持java、python、vue等代码的发布、上线、回滚。
通过配置文件进行容器部署的方法需要专业的运维人员来编写配置文件,在缺乏运维人员且要部署大量模型容器的场景下,需要模型部署人员与模型开发人员进行大量沟通,导致部署效率较低,亟需模型容器自动化部署技术;当前的模型容器加密技术安全性较低,模型开发人员不愿向甲方交付无加密措施的模型容器。
发明内容
(一)要解决的技术问题
本发明要解决的技术问题是:如何设计一种模型开发方加密模型容器、模型管理方自动部署模型容器并解密的模型部署应用流程,提升模型的安全性,解决大批量模型容器部署效率低的问题。
(二)技术方案
为了解决上述技术问题,本发明提供了一种模型容器加密与部署方法,该方法在模型开发模块与模型管理模块之间交换实现,包括以下步骤:
步骤1、模型开发模块使用SM2和SM4混合加密方法对模型的输出结果进行加密,并根据所使用的编程语言编译为可执行文件;
步骤2、模型开发模块根据模型的编程语言采用不同框架将模型转换为可远程调用的Web服务,并将模型以及模型的依赖文件封装到容器中;
步骤3、模型开发模块编写模型容器部署所需的配置文件,配置文件中应包含:模型名称、镜像名称、镜像抓取策略、容器端口号、运行命令、环境变量、容器副本数、容器运行所需的硬件资源、数据卷这些信息,确保容器管理模块可通过该配置文件自动部署模型容器,同时模型开发方需向模型管理模块提供模型的设计文档、使用说明、测试文档文件;
步骤4、模型开发模块通过可视化界面向模型管理模块提供步骤3中的资源,存储在模型资源管理平台中;
所述模型开发模块的信息包括模型开发模块的名称、地址、联系电话、开发业务这些基本信息;
步骤5、模型管理模块查找模型资源库中的模型信息,根据业务需求通过可视化界面部署相应模型,可根据可用节点端口号、已使用节点端口号、所需端口数量自动推荐模型容器的节点端口号,实现容器的自动部署;所述模型信息包括模型的名称、功能、编程语言、版本号、配置文件地址、镜像名称、镜像地址这些信息。
优选地,所述可用节点端口号包括所存储和更新的K8s集群的可对外提供服务的节点端口号。
优选地,所述已使用节点端口号包括所存储和更新的K8s集群中已经使用的节点端口号;
优选地,还包括步骤6、模型的使用者通过Gateway网关访问K8s集群中已经部署的模型实例,Gateway网关中的模型解密算法自动将模型输出结果解密并发送给模型的使用者。
优选地,步骤1中,采用的SM2和SM4混合加密方法中,使用对称加密SM4算法加密模型输出结果得到加密的输出结果,使用非对称加密SM2算法对SM4密钥进行加密得到加密的密钥串,并把经过SM4加密的输出结果和经过SM2加密的密钥串封装并输出,为编译提供数据。
优选地,采用的SM2和SM4混合加密方法具体包括下列步骤:
(1)模型管理模块始化SM2密钥对,私钥保存到Gateway网关,公钥发放给模型开发模块;
(2)模型开发模块使用SM4算法,初始化得到SM4密钥,并使用SM4密钥对输出结果进行加密,得到加密的输出结果;
(3)模型开发模块得到SM2公钥,并使用SM2公钥对SM4密钥进行加密,得到加密的SM4密钥块;
(4)模型开发模块把SM4密钥块和加密的输出结果封装成加密数据块,作为模型的结果输出,为编译提供数据。
优选地,步骤6中,模型解密时:
(1)模型使用者通过Gateway网关服务,请求模型服务接口;
(2)Gateway网关拦截请求后,转发到对应的模型服务;
(3)模型原型根据用户输入的参数,执行输出,模型输出全局拦截服务拦截到输出接口后,对需要加密的输出结果进行加密,并输出到Gateway网关;
(4)Gateway网关接收到加密的数据块,通过解析得到SM4密钥块和加密的输出结果;
(5)Gateway网关从所述模型资源管理平台获取SM2私钥,并使用SM2私钥对SM4密钥块进行解密,得到SM4密钥;
(6)Gateway网关使用得到的SM4密钥,对输出结果进行解密得到解密的模型输出结果,并发送给模型的使用者。
优选地,该方法中,还创建用于保存模型路由信息的数据结构。
优选地,所述路由信息包含访问前缀、路由ID、路由名称、转发URL信息。
本发明还提供了一种所述方法在计算机应用技术领域中的应用。
(三)有益效果
本发明通过创新模型容器部署流程和自动推荐节点端口号的方式,实现了模型容器的自动部署,降低了模型管理方的管理难度,提升了大批量模型容器的部署速度;同时使用SM2与SM4混合加密的方式,确保了容器中模型的安全性,其中SM4加密算法加密速度快但安全性较低且密钥管理复杂,SM2为非对称加密算法,安全性高且密钥管理简单,但对大块数据的加密与解密速度较慢,使用二者的混合加密算法可以实现快速且安全性高的模型加密方式;通过Gateway网关的解密方式确保了模型生产方开发的模型容器只能在模型管理方的K8s集群中运行,保护了模型生产方的知识产权。
使用本发明的方法将模型生产方提交的模型容器以及文档存放到模型资源管理平台中,既可以实现对模型资源的管理,也可以通过拉取模型生产方提供的配置文件的方式实现模型容器的自动部署,解决了模型管理方大批量模型容器部署速度慢的问题;使用SM2与SM4混合加密算法加密模型的方式也确保了模型生成方的模型只能在模型管理方的K8s集群中运行,保证了模型的安全性。
附图说明
图1为本发明的方法主流程图;
图2为本发明的模型加密算法示意图;
图3为本发明的模型输出解密算法示意图。
具体实施方式
为使本发明的目的、内容、和优点更加清楚,下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。
如图1所示,本发明提出的一种模型容器加密与部署方法,该方法在模型开发方与模型管理方之间交换实现,包括以下步骤:
(1)模型开发方的模型开发模块使用SM2和SM4混合加密方法对模型的输出结果进行加密,并根据所使用的编程语言编译为可执行文件;
(2)模型开发模块根据模型的编程语言采用不同框架将模型转换为可远程调用(RPC)的Web服务,并将模型以及模型的依赖文件封装到容器中;
(3)模型开发模块编写模型容器部署所需的配置文件,配置文件中应包含:模型名称、镜像名称、镜像抓取策略、容器端口号、运行命令、环境变量、容器副本数、容器运行所需的硬件资源、数据卷等信息,确保模型管理模块可通过该配置文件自动部署模型容器。同时模型开发方需向模型管理模块提供模型的设计文档、使用说明、测试文档等文件;
(4)模型开发模块通过可视化界面向模型管理模块提供步骤3中的资源,并存储在模型资源管理平台中,在本发明中,创建了以下数据结构:
模型开发模块信息包括模型开发模块的名称、地址、联系电话、开发业务等基本信息;
模型信息:用于记录模型的名称、主要功能、编程语言、版本号、配置文件地址、镜像名称、镜像地址等信息;
配置文件库:用于记录模型部署配置文件的存储地址;
模型镜像库:用于保存模型镜像文件的名称与存储地址。
(5)模型管理方的模型管理模块查看模型资源库中的模型信息,根据业务需要通过可视化界面部署相应模型,系统可根据可用节点端口号(nodePort)、已使用节点端口号、所需端口数量自动推荐该模型容器的节点端口号,实现容器的自动部署,本发明中,创建了以下数据结构:
可用节点端口号:用于存储和更新K8s集群的可对外提供服务的节点端口号;
已使用节点端口号:用于存储和更新K8s集群中已经使用的节点端口号。
(6)模型的使用者通过Gateway网关访问K8s集群中已经部署的模型实例,Gateway网关中的模型解密算法会自动将模型的输出结果解密并发送给模型的使用者。
图2是本发明中的模型加密算法示意图,采用SM2和SM4混合加密的方法,使用对称加密SM4算法加密模型输出结果得到加密的输出结果,使用非对称加密SM2算法对SM4密钥进行加密得到加密的密钥串,并把经过SM4加密的输出结果和经过SM2加密的密钥串封装并输出,本发明提出的模型加密方法包括下列步骤:
(1)模型管理模块始化SM2密钥对,私钥保存到Gateway网关,公钥发放给模型开发模块;
(2)模型开发模块使用SM4算法,初始化得到SM4密钥,并使用SM4密钥对输出结果进行加密,得到加密的输出结果;
(3)模型开发模块得到SM2公钥,并使用SM2公钥对SM4密钥进行加密,得到加密的SM4密钥块;
(4)模型开发模块把SM4密钥块和加密输出结果封装成加密数据块,作为模型的结果输出。
图3是本发明中的模型输出解密算法示意图,本发明提出的模型解密方法包括下列步骤:
(1)模型使用者通过Gateway网关服务,请求模型服务接口,本发明中,创建了以下数据结构:
路由信息:用于保存模型的路由信息,包含访问前缀、路由ID、路由名称、转发URL等信息。
(2)Gateway网关拦截请求后,转发到对应的模型服务;
(3)模型原型根据用户输入的参数,执行输出,模型输出全局拦截服务拦截到输出接口后,对需要加密的输出结果进行加密,并输出到网关;
(4)Gateway网关接收到加密数据块,通过解析得到SM4密钥块和加密的输出结果;
(5)Gateway网关从模型资源管理平台获取SM2私钥,并使用SM2私钥对SM4密钥块进行解密,得到SM4密钥;
(6)Gateway网关使用得到的SM4密钥,对输出结果进行解密得到解密的模型输出结果,并发送给模型使用者。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和变形,这些改进和变形也应视为本发明的保护范围。
Claims (10)
1.一种模型容器加密与部署方法,其特征在于,该方法在模型开发模块与模型管理模块之间交换实现,包括以下步骤:
步骤1、模型开发模块使用SM2和SM4混合加密方法对模型的输出结果进行加密,并根据所使用的编程语言编译为可执行文件;
步骤2、模型开发模块根据模型的编程语言采用不同框架将模型转换为可远程调用的Web服务,并将模型以及模型的依赖文件封装到容器中;
步骤3、模型开发模块编写模型容器部署所需的配置文件,配置文件中应包含:模型名称、镜像名称、镜像抓取策略、容器端口号、运行命令、环境变量、容器副本数、容器运行所需的硬件资源、数据卷这些信息,确保容器管理模块可通过该配置文件自动部署模型容器,同时模型开发模块向模型管理模块提供模型的设计文档、使用说明、测试文档文件;
步骤4、模型开发模块通过可视化界面向模型管理模块提供步骤3中的资源,存储在模型资源管理平台中;
所述模型开发模块的信息包括模型开发模块的名称、地址、联系电话、开发业务这些基本信息;
步骤5、模型管理模块查找模型资源库中的模型信息,根据业务需求通过可视化界面部署相应模型,可根据可用节点端口号、已使用节点端口号、所需端口数量自动推荐模型容器的节点端口号,实现容器的自动部署;所述模型信息包括模型的名称、功能、编程语言、版本号、配置文件地址、镜像名称、镜像地址这些信息。
2.如权利要求1所述的方法,其特征在于,所述可用节点端口号包括所存储和更新的K8s集群的可对外提供服务的节点端口号。
3.如权利要求1所述的方法,其特征在于,所述已使用节点端口号包括所存储和更新的K8s集群中已经使用的节点端口号。
4.如权利要求1所述的方法,其特征在于,还包括步骤6、模型的使用者通过Gateway网关访问K8s集群中已经部署的模型实例,Gateway网关中的模型解密算法自动将模型输出结果解密并发送给模型的使用者。
5.如权利要求1所述的方法,其特征在于,步骤1中,采用的SM2和SM4混合加密方法中,使用对称加密SM4算法加密模型输出结果得到加密的输出结果,使用非对称加密SM2算法对SM4密钥进行加密得到加密的密钥串,并把经过SM4加密的输出结果和经过SM2加密的密钥串封装并输出,为编译提供数据。
6.如权利要求1所述的方法,其特征在于,采用的SM2和SM4混合加密方法具体包括下列步骤:
(1)模型管理模块始化SM2密钥对,私钥保存到Gateway网关,公钥发放给模型开发模块;
(2)模型开发模块使用SM4算法,初始化得到SM4密钥,并使用SM4密钥对输出结果进行加密,得到加密的输出结果;
(3)模型开发模块得到SM2公钥,并使用SM2公钥对SM4密钥进行加密,得到加密的SM4密钥块;
(4)模型开发模块把SM4密钥块和加密的输出结果封装成加密数据块,作为模型的结果输出,为编译提供数据。
7.如权利要求4所述的方法,其特征在于,步骤6中,模型解密时:
(1)模型使用者通过Gateway网关服务,请求模型服务接口;
(2)Gateway网关拦截请求后,转发到对应的模型服务;
(3)模型原型根据用户输入的参数,执行输出,模型输出全局拦截服务拦截到输出接口后,对需要加密的输出结果进行加密,并输出到Gateway网关;
(4)Gateway网关接收到加密的数据块,通过解析得到SM4密钥块和加密的输出结果;
(5)Gateway网关从所述模型资源管理平台获取SM2私钥,并使用SM2私钥对SM4密钥块进行解密,得到SM4密钥;
(6)Gateway网关使用得到的SM4密钥,对输出结果进行解密得到解密的模型输出结果,并发送给模型的使用者。
8.如权利要求1所述的方法,其特征在于,该方法中,还创建用于保存模型路由信息的数据结构。
9.如权利要求8所述的方法,其特征在于,所述路由信息包含访问前缀、路由ID、路由名称、转发URL信息。
10.一种如权利要求1至9中任一项所述方法在计算机应用技术领域中的应用。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111624794.5A CN114266060B (zh) | 2021-12-28 | 2021-12-28 | 一种模型容器加密与部署方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111624794.5A CN114266060B (zh) | 2021-12-28 | 2021-12-28 | 一种模型容器加密与部署方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114266060A true CN114266060A (zh) | 2022-04-01 |
CN114266060B CN114266060B (zh) | 2024-03-26 |
Family
ID=80830820
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111624794.5A Active CN114266060B (zh) | 2021-12-28 | 2021-12-28 | 一种模型容器加密与部署方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114266060B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114978672A (zh) * | 2022-05-19 | 2022-08-30 | 银河麒麟软件(长沙)有限公司 | 一种Docker镜像加密及编排方法与系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111427600A (zh) * | 2020-03-20 | 2020-07-17 | 成都千立网络科技有限公司 | 一种基于docker的平台系统部署升级方法及系统 |
CN112912880A (zh) * | 2018-10-22 | 2021-06-04 | 皇家飞利浦有限公司 | 用于个性化的网络服务的容器构建器 |
US11055428B1 (en) * | 2021-02-26 | 2021-07-06 | CTRL IQ, Inc. | Systems and methods for encrypted container image management, deployment, and execution |
CN113810373A (zh) * | 2021-08-11 | 2021-12-17 | 长沙证通云计算有限公司 | 一种基于国密算法的ceph可视化一键部署方法 |
-
2021
- 2021-12-28 CN CN202111624794.5A patent/CN114266060B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112912880A (zh) * | 2018-10-22 | 2021-06-04 | 皇家飞利浦有限公司 | 用于个性化的网络服务的容器构建器 |
CN111427600A (zh) * | 2020-03-20 | 2020-07-17 | 成都千立网络科技有限公司 | 一种基于docker的平台系统部署升级方法及系统 |
US11055428B1 (en) * | 2021-02-26 | 2021-07-06 | CTRL IQ, Inc. | Systems and methods for encrypted container image management, deployment, and execution |
CN113810373A (zh) * | 2021-08-11 | 2021-12-17 | 长沙证通云计算有限公司 | 一种基于国密算法的ceph可视化一键部署方法 |
Non-Patent Citations (1)
Title |
---|
谢超群;: "高校数据中心Docker容器应用的安全体系设计", 网络安全技术与应用, no. 05, 14 May 2019 (2019-05-14) * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114978672A (zh) * | 2022-05-19 | 2022-08-30 | 银河麒麟软件(长沙)有限公司 | 一种Docker镜像加密及编排方法与系统 |
CN114978672B (zh) * | 2022-05-19 | 2024-03-26 | 银河麒麟软件(长沙)有限公司 | 一种Docker镜像加密及编排方法与系统 |
Also Published As
Publication number | Publication date |
---|---|
CN114266060B (zh) | 2024-03-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111541785B (zh) | 基于云计算的区块链数据处理方法及装置 | |
CN106063183B (zh) | 用于云辅助密码学的方法和装置 | |
CN109155781A (zh) | 对托管应用程序的动态访问 | |
US20170371625A1 (en) | Content delivery method | |
CN109450620B (zh) | 一种移动终端中共享安全应用的方法及移动终端 | |
WO2023029447A1 (zh) | 模型保护方法、装置、设备、系统以及存储介质 | |
CN109213501A (zh) | 在区块链网络中安装智能合约的方法、装置及存储介质 | |
CN112436936B (zh) | 一种具备量子加密功能的云存储方法及系统 | |
US11163902B1 (en) | Systems and methods for encrypted container image management, deployment, and execution | |
WO2024032660A1 (zh) | 账户数据的更改方法、装置、计算机设备和存储介质 | |
CN114041134A (zh) | 用于基于区块链的安全存储的系统和方法 | |
CN113919003A (zh) | 基于城轨PaaS平台的信息安全防护方法及系统 | |
CN114372245A (zh) | 基于区块链的物联网终端认证方法、系统、设备及介质 | |
CN112202713A (zh) | 一种Kubernetes环境下用户数据安全保护方法 | |
CN104270377A (zh) | 文档外发安全通用系统和方法 | |
CN116662941A (zh) | 信息加密方法、装置、计算机设备和存储介质 | |
WO2014197071A1 (en) | Secured embedded data encryption systems | |
CN114266060B (zh) | 一种模型容器加密与部署方法 | |
CN110825815A (zh) | 基于区块链的云笔记系统信息处理方法、设备及介质 | |
CN109286604B (zh) | 实现容器服务的方法、装置以及电子设备 | |
CN114282250B (zh) | 一种模型容器加密与部署系统 | |
CN117118598A (zh) | 一种数据分享的方法、电子设备及计算机集群 | |
Somorovsky et al. | SeC2: Secure Mobile Solution for Distributed Public Cloud Storages. | |
CN113468584A (zh) | 一种信息管理方法、装置、电子设备及存储介质 | |
US11003799B2 (en) | System and method for integrity assurance in a virtual environment |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |