CN117353922A - 离线状态下的容器镜像签名验证方法、系统、设备及介质 - Google Patents
离线状态下的容器镜像签名验证方法、系统、设备及介质 Download PDFInfo
- Publication number
- CN117353922A CN117353922A CN202311660141.1A CN202311660141A CN117353922A CN 117353922 A CN117353922 A CN 117353922A CN 202311660141 A CN202311660141 A CN 202311660141A CN 117353922 A CN117353922 A CN 117353922A
- Authority
- CN
- China
- Prior art keywords
- public key
- password
- mirror image
- dynamic
- verification
- 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 56
- 238000012795 verification Methods 0.000 claims abstract description 131
- 238000004364 calculation method Methods 0.000 claims abstract description 87
- 238000004519 manufacturing process Methods 0.000 claims abstract description 17
- 238000011161 development Methods 0.000 claims abstract description 15
- 238000012545 processing Methods 0.000 claims description 14
- 238000003860 storage Methods 0.000 claims description 5
- 230000008569 process Effects 0.000 description 10
- 238000010586 diagram Methods 0.000 description 3
- 230000008676 import Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000010420 art technique Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 238000011835 investigation Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000001681 protective effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0894—Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
- H04L9/0897—Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage involving additional devices, e.g. trusted platform module [TPM], smartcard or USB
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3226—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using a predetermined code, e.g. password, passphrase or PIN
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3297—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving time stamps, e.g. generation of time stamps
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Storage Device Security (AREA)
Abstract
本申请公开了一种离线状态下的容器镜像签名验证方法、系统、设备及介质,主要涉及容器镜像签名验证技术领域,用以解决现有的方案无法判断在开发环境和生产环境下容器镜像签名的密钥是否被篡改的问题。包括:获取当前操作用户的第一用户身份密码和下载的容器镜像对应的第一公钥计算码,导入预设生成规则,生成第一动态验证密码;获取当前操作用户的第二用户身份密码和推送的容器镜像对应的第二公钥计算码,导入预设生成规则,生成第二动态验证密码;进行第二动态验证密码与第一动态验证密码的比对,在比对成功后,进行容器镜像签名验证,以在验证成功后,将推送的容器镜像推送至第二镜像仓库中。
Description
技术领域
本申请涉及容器镜像签名验证技术领域,尤其涉及一种离线状态下的容器镜像签名验证方法、系统、设备及介质。
背景技术
容器是当今IT运维的关键部分,是应用的箱子。容器镜像是容器的模板,容器是容器镜像的运行实例,容器运行时根据容器镜像创建容器。镜像可以看作是一个特殊的文件系统,除了提供容器运行时所需的程序、库、资源、配置等文件外,还包含了一些为运行时准备的一些配置参数。
容器镜像的安全与可靠是云原生环境稳定运行最基本的保障。容器镜像的签名和验签功能可避免中间人攻击和非法镜像的更新及运行,进而实现镜像从分发到部署的全链路一致性,保证云原生开发环境和生产环境业务运行的一致性。
容器镜像的创建者可以对镜像做数字签名,数字签名将保存在容器镜像中。通过在部署前对容器镜像进行签名验证可以确保只部署经过可信授权方进行过签名的容器镜像,降低在生产环境中运行意外或恶意代码的风险。
但是,现有的容器镜像签名和签名验证机制都是基于公有云的经验,即只有“在线环境”中才能保证这套机制的有效性。而离线环境(即开发环境和生产环境完全不联网时),由于存在着公、私钥被篡改和伪造的可能性,使用现有技术对签名进行验证其实是没有意义的。
发明内容
针对现有技术的上述不足,本申请提供一种离线状态下的容器镜像签名验证方法、系统、设备及介质,以解决现有的方案无法判断在开发环境和生产环境下容器镜像签名的密钥是否被篡改的问题。
第一方面,本申请提供了一种离线状态下的容器镜像签名验证方法,方法包括:在开发环境中获取到从第一镜像仓库下载容器镜像的操作时,通过镜像操作工具获取当前操作用户的第一用户身份密码和下载的容器镜像对应的第一公钥计算码,并下发至离线动态密码生成工具;通过离线动态密码生成工具,将第一用户身份密码、第一公钥计算码、当前时间戳和预设动态密码有效时长,导入预设生成规则,生成第一动态验证密码,并写入离线动态密码验证工具中;在生产环境中获取到将容器镜像推送到第二镜像仓库的操作时,通过镜像操作工具获取当前操作用户的第二用户身份密码和推送的容器镜像对应的第二公钥计算码,并下发至离线动态密码验证工具;通过离线动态密码验证工具,将第二用户身份密码、第二公钥计算码、当前时间戳和预设动态密码有效时长,导入预设生成规则,生成第二动态验证密码;进行第二动态验证密码与第一动态验证密码的比对,在比对成功后,获取推送的容器镜像的公钥,以将公钥导入推送的容器镜像,进行容器镜像签名验证,以在验证成功后,将推送的容器镜像推送至第二镜像仓库中。
进一步地,通过镜像操作工具获取当前操作用户的第一用户身份密码和下载的容器镜像对应的第一公钥计算码,具体包括:通过镜像操作工具获取下载的容器镜像对应的公钥;调用预设处理规则,将公钥转换为第一公钥计算码;通过镜像操作工具获取当前操作用户的第二用户身份密码和推送的容器镜像对应的第二公钥计算码,具体包括:通过镜像操作工具获取推送的容器镜像对应的公钥;调用预设处理规则,将公钥转换为第二公钥计算码。
进一步地,将第一用户身份密码、第一公钥计算码、当前时间戳和预设动态密码有效时长,导入预设生成规则,生成第一动态验证密码,具体包括:通过预设生成规则:第一动态验证密码=字符转数字(SM3(SM3(第一公钥计算码),第一用户身份密码,(当前时间戳+预设动态密码有效时长)))%1000000,生成第一动态验证密码;将第二用户身份密码、第二公钥计算码、当前时间戳和预设动态密码有效时长,导入预设生成规则,生成第二动态验证密码,具体包括:通过预设生成规则:第二动态验证密码=字符转数字(SM3(SM3(第二公钥计算码),第二用户身份密码,(当前时间戳+预设动态密码有效时长)))%1000000,生成第二动态验证密码。
进一步地,获取推送的容器镜像的公钥,具体包括:确定推送的容器镜像的公钥类型,在公钥类型为项目统一类型时,从操作服务器的固定路径导入公钥;在公钥类型为独立类型时,从离线动态密码验证工具中导入;其中,离线动态密码验证工具中预存了公钥类型为独立类型的容器镜像的公钥。
第二方面,本申请提供了一种离线状态下的容器镜像签名验证系统,系统包括:镜像操作工具,用于在开发环境中获取到从第一镜像仓库下载容器镜像的操作时,获取当前操作用户的第一用户身份密码和下载的容器镜像对应的第一公钥计算码,并下发至离线动态密码生成工具;在生产环境中获取到将容器镜像推送到第二镜像仓库的操作时,获取当前操作用户的第二用户身份密码和推送的容器镜像对应的第二公钥计算码,并下发至离线动态密码验证工具;离线动态密码生成工具,用于将第一用户身份密码、第一公钥计算码、当前时间戳和预设动态密码有效时长,导入预设生成规则,生成第一动态验证密码,并写入离线动态密码验证工具中;将第二用户身份密码、第二公钥计算码、当前时间戳和预设动态密码有效时长,导入预设生成规则,生成第二动态验证密码,并发送至离线动态密码验证工具中;离线动态密码验证工具,用于进行第二动态验证密码与第一动态验证密码的比对,在比对成功后,获取推送的容器镜像的公钥,以将公钥导入推送的容器镜像,进行容器镜像签名验证,以在验证成功后,将推送的容器镜像推送至第二镜像仓库中。
进一步地,镜像操作工具包括公钥计算码生成单元,用于获取下载的容器镜像对应的公钥;调用预设处理规则,将公钥转换为第一公钥计算码;获取推送的容器镜像对应的公钥;调用预设处理规则,将公钥转换为第二公钥计算码。
进一步地,离线动态密码生成工具包括第一密码生成单元,用于通过预设生成规则:第一动态验证密码=字符转数字(SM3(SM3(第一公钥计算码),第一用户身份密码,(当前时间戳+预设动态密码有效时长)))%1000000,生成第一动态验证密码;离线动态密码验证工具包括第二密码生成单元;用于通过预设生成规则:第二动态验证密码=字符转数字(SM3(SM3(第二公钥计算码),第二用户身份密码,(当前时间戳+预设动态密码有效时长)))%1000000,生成第二动态验证密码。
进一步地,离线动态密码验证工具包括公钥获取单元,用于确定推送的容器镜像的公钥类型,在公钥类型为项目统一类型时,从操作服务器的固定路径导入公钥;在公钥类型为独立类型时,从离线动态密码验证工具中导入;其中,离线动态密码验证工具中预存了公钥类型为独立类型的容器镜像的公钥。
第三方面,本申请提供了一种离线状态下的容器镜像签名验证设备,设备包括:处理器;以及存储器,其上存储有可执行代码,当可执行代码被执行时,使得处理器执行如上述任一项的一种离线状态下的容器镜像签名验证方法。
第四方面,本申请提供了一种非易失性计算机存储介质,其上存储有计算机指令,计算机指令在被执行时实现如上述任一项的一种离线状态下的容器镜像签名验证方法。
本领域技术人员能够理解的是,本申请至少具有如下有益效果:
本申请通过对离线环境(开发环境、生产环境)的容器镜像签名设置了第一动态验证密码和第二动态验证密码的生成-验证流程,其中,第一动态验证密码和第二动态验证密码的生成过程涉及公钥计算码,即涉及公钥计算码的比对,解决了开发与生产环境网络不具备互通条件且生产环境属于完全独立的安全内网场景下,公私钥对无法判断是否被篡改的问题;另外,公钥计算码并不是公钥本身,避免了计算过程中公钥被篡改的风险;同时第一动态验证密码和第二动态验证密码在生成过程中需要用户身份密码的上传,实现了操作人员身份的获取,解决了在发现容器镜像数据被篡改后,调查的源头问题。本申请提高了潜在的中间人攻击事件的处理效率,将云原生运行环境的安全性延伸到了完全离线场景。
附图说明
下面参照附图来描述本公开的部分实施例,附图中:
图1是本申请实施例提供的一种离线状态下的容器镜像签名验证方法流程图。
图2是本申请实施例提供的一种离线状态下的容器镜像签名验证系统内部结构示意图。
图3是本申请实施例提供的一种离线状态下的容器镜像签名验证设备内部结构示意图。
具体实施方式
本领域技术人员应当理解的是,下文所描述的实施例仅仅是本公开的优选实施例,并不表示本公开仅能通过该优选实施例实现,该优选实施例仅仅是用于解释本公开的技术原理,并非用于限制本公开的保护范围。基于本公开提供的优选实施例,本领域普通技术人员在没有付出创造性劳动的情况下所获得的其它所有实施例,仍应落入到本公开的保护范围之内。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
下面通过附图对本申请实施例提出的技术方案进行详细的说明。
本申请实施例提供了一种离线状态下的容器镜像签名验证方法,如图1所示,本申请实施例提供的方法,主要包括以下步骤:
步骤110、在开发环境中获取到从第一镜像仓库下载容器镜像的操作时,通过镜像操作工具获取当前操作用户的第一用户身份密码和下载的容器镜像对应的第一公钥计算码,并下发至离线动态密码生成工具。
需要说明的是,镜像操作工具可以为任意可行的能够进行用户身份密码获取、公钥计算码获取以及数据下发的设备或装置等。
第一镜像仓库为存储容器镜像的数据库,能够支持存储容器镜像的签名数据。获取操作的方法可以通过任意可行的操作检测程序进行,本申请此不做限定。
其中,通过镜像操作工具获取当前操作用户的第一用户身份密码和下载的容器镜像对应的第一公钥计算码的方法可以具体为:
通过镜像操作工具获取下载的容器镜像对应的公钥;调用预设处理规则,将公钥转换为第一公钥计算码。
需要补充说明的是,预设处理规则可以为任意可行的能够隐藏公钥具体内容,并能够获得稳定、唯一且能参与计算的识别码(第一公钥计算码)的规则。
上述,获取下载的容器镜像对应的公钥的方法可以具体为:确定下载的容器镜像的公钥类型,在公钥类型为项目统一类型时,从操作服务器的固定路径导入公钥;在公钥类型为独立类型时,从离线动态密码验证工具中导入;其中,离线动态密码验证工具中预存了公钥类型为独立类型的容器镜像的公钥。
补充说明的是,容器镜像的公钥类型已经提前预设好,本领域技术人员可以直接确定具体公钥类型。
步骤120、通过离线动态密码生成工具,将第一用户身份密码、第一公钥计算码、当前时间戳和预设动态密码有效时长,导入预设生成规则,生成第一动态验证密码,并写入离线动态密码验证工具中。
需要说明的是,离线动态密码生成工具可以为任意可行的能够获取镜像操作工具下发的数据、生成动态验证密码(第一动态验证密码和第二动态验证密码)以及能够写入数据至离线动态密码验证工具的设备或装置等。
作为示例地,将第一用户身份密码、第一公钥计算码、当前时间戳和预设动态密码有效时长,导入预设生成规则,生成第一动态验证密码,具体可以为:通过预设生成规则:第一动态验证密码=字符转数字(SM3(SM3(第一公钥计算码),第一用户身份密码,(当前时间戳+预设动态密码有效时长)))%1000000,生成第一动态验证密码。
需要补充说明的是,SM3为标准密码散列函数。
本领域技术人员可以理解的是,通过此步骤可以保证生产环境的动态验证密码生成过程和开发环境一致,从而保证生产环境运行的容器镜像和开发环境发布时是一致的。后期发现有不一致,则可以从镜像下载人员(用户身份密码)入手排查。
步骤130、在生产环境中获取到将容器镜像推送到第二镜像仓库的操作时,通过镜像操作工具获取当前操作用户的第二用户身份密码和推送的容器镜像对应的第二公钥计算码,并下发至离线动态密码验证工具。
需要说明的是,通过镜像操作工具获取当前操作用户的第二用户身份密码和推送的容器镜像对应的第二公钥计算码,具体可以为:
通过镜像操作工具获取推送的容器镜像对应的公钥;调用预设处理规则,将公钥转换为第二公钥计算码。
上述,获取推送的容器镜像对应的公钥可以具体为:确定推送的容器镜像的公钥类型,在公钥类型为项目统一类型时,从操作服务器的固定路径导入公钥;在公钥类型为独立类型时,从离线动态密码验证工具中导入;其中,离线动态密码验证工具中预存了公钥类型为独立类型的容器镜像的公钥。
补充说明的是,容器镜像的公钥类型已经提前预设好,本领域技术人员可以直接确定具体公钥类型。
步骤140、通过离线动态密码验证工具,将第二用户身份密码、第二公钥计算码、当前时间戳和预设动态密码有效时长,导入预设生成规则,生成第二动态验证密码;进行第二动态验证密码与第一动态验证密码的比对,在比对成功后,获取推送的容器镜像的公钥,以将公钥导入推送的容器镜像,进行容器镜像签名验证,以在验证成功后,将推送的容器镜像推送至第二镜像仓库中。
需要说明的是,离线动态密码验证工具可以为任意可行的能够生成第二动态验证密码、进行第二动态验证密码与第一动态验证密码的比对、进行容器镜像签名验证以及能够将推送的容器镜像推送至第二镜像仓库的设备或装置等。第二镜像仓库只接收为离线动态密码验证工具推送的容器镜像的数据库。
上述,将第二用户身份密码、第二公钥计算码、当前时间戳和预设动态密码有效时长,导入预设生成规则,生成第二动态验证密码,具体可以为:
通过预设生成规则:第二动态验证密码=字符转数字(SM3(SM3(第二公钥计算码),第二用户身份密码,(当前时间戳+预设动态密码有效时长)))%1000000,生成第二动态验证密码。
上述,将公钥导入推送的容器镜像,进行容器镜像签名验证的方法可由现有方法或技术实现,本申请对此不做限定。
上述,获取推送的容器镜像的公钥,可以具体为:
确定推送的容器镜像的公钥类型,在公钥类型为项目统一类型时,从操作服务器的固定路径导入公钥;在公钥类型为独立类型时,从离线动态密码验证工具中导入;其中,离线动态密码验证工具中预存了公钥类型为独立类型的容器镜像的公钥。
除此之外,图2为本申请实施例提供的一种离线状态下的容器镜像签名验证系统。如图2所示,本申请实施例提供的系统,主要包括:
系统通过镜像操作工具210在开发环境中获取到从第一镜像仓库220下载容器镜像的操作时,获取当前操作用户的第一用户身份密码和下载的容器镜像对应的第一公钥计算码,并下发至离线动态密码生成工具230;在生产环境中获取到将容器镜像推送到第二镜像仓库250的操作时,获取当前操作用户的第二用户身份密码和推送的容器镜像对应的第二公钥计算码,并下发至离线动态密码验证工具240。
系统获取第一公钥计算码和第二公钥计算码的方案可以具体为:
镜像操作工具210中的公钥计算码生成单元211,获取下载的容器镜像对应的公钥;调用预设处理规则,将公钥转换为第一公钥计算码;获取推送的容器镜像对应的公钥;调用预设处理规则,将公钥转换为第二公钥计算码。
系统通过离线动态密码生成工具230将第一用户身份密码、第一公钥计算码、当前时间戳和预设动态密码有效时长,导入预设生成规则,生成第一动态验证密码,并写入离线动态密码验证工具240中;将第二用户身份密码、第二公钥计算码、当前时间戳和预设动态密码有效时长,导入预设生成规则,生成第二动态验证密码,并发送至离线动态密码验证工具240中。
其中,离线动态密码生成工具230包括第一密码生成单元231,
用于通过预设生成规则:第一动态验证密码=字符转数字(SM3(SM3(第一公钥计算码),第一用户身份密码,(当前时间戳+预设动态密码有效时长)))%1000000,生成第一动态验证密码;
系统中的离线动态密码验证工具240将第二用户身份密码、第二公钥计算码、当前时间戳和预设动态密码有效时长,导入预设生成规则,生成第二动态验证密码;进行第二动态验证密码与第一动态验证密码的比对,在比对成功后,获取推送的容器镜像的公钥,以将公钥导入推送的容器镜像,进行容器镜像签名验证,以在验证成功后,将推送的容器镜像推送至第二镜像仓库250中。
其中,系统将第二用户身份密码、第二公钥计算码、当前时间戳和预设动态密码有效时长,导入预设生成规则,生成第二动态验证密码的过程可以具体为:
离线动态密码验证工具240中的第二密码生成单元241;通过预设生成规则:第二动态验证密码=字符转数字(SM3(SM3(第二公钥计算码),第二用户身份密码,(当前时间戳+预设动态密码有效时长)))%1000000,生成第二动态验证密码。
其中,系统获取推送的容器镜像的公钥的过程可以具体为:
通过离线动态密码验证工具240中的公钥获取单元242确定推送的容器镜像的公钥类型,在公钥类型为项目统一类型时,从操作服务器的固定路径导入公钥;在公钥类型为独立类型时,从离线动态密码验证工具240中导入;其中,离线动态密码验证工具240中预存了公钥类型为独立类型的容器镜像的公钥。
以上为本申请中的方法实施例,基于同样的发明构思,本申请实施例还提供了一种离线状态下的容器镜像签名验证设备。如图3所示,该设备包括:处理器;以及存储器,其上存储有可执行代码,当可执行代码被执行时,使得处理器执行如上述实施例中的一种离线状态下的容器镜像签名验证方法。
具体地,服务器端在开发环境中获取到从第一镜像仓库下载容器镜像的操作时,通过镜像操作工具获取当前操作用户的第一用户身份密码和下载的容器镜像对应的第一公钥计算码,并下发至离线动态密码生成工具;通过离线动态密码生成工具,将第一用户身份密码、第一公钥计算码、当前时间戳和预设动态密码有效时长,导入预设生成规则,生成第一动态验证密码,并写入离线动态密码验证工具中;在生产环境中获取到将容器镜像推送到第二镜像仓库的操作时,通过镜像操作工具获取当前操作用户的第二用户身份密码和推送的容器镜像对应的第二公钥计算码,并下发至离线动态密码验证工具;通过离线动态密码验证工具,将第二用户身份密码、第二公钥计算码、当前时间戳和预设动态密码有效时长,导入预设生成规则,生成第二动态验证密码;进行第二动态验证密码与第一动态验证密码的比对,在比对成功后,获取推送的容器镜像的公钥,以将公钥导入推送的容器镜像,进行容器镜像签名验证,以在验证成功后,将推送的容器镜像推送至第二镜像仓库中。
除此之外,本申请实施例还提供了一种非易失性计算机存储介质,其上存储有可执行指令,在该可执行指令被执行时,实现如上述的一种离线状态下的容器镜像签名验证方法。
至此,已经结合前文的多个实施例描述了本公开的技术方案,但是,本领域技术人员容易理解的是,本公开的保护范围并不仅限于这些具体实施例。在不偏离本公开技术原理的前提下,本领域技术人员可以对上述各个实施例中的技术方案进行拆分和组合,也可以对相关技术特征作出等同的更改或替换,凡在本公开的技术构思和/或技术原理之内所做的任何更改、等同替换、改进等都将落入本公开的保护范围之内。
Claims (10)
1.一种离线状态下的容器镜像签名验证方法,其特征在于,所述方法包括:
在开发环境中获取到从第一镜像仓库下载容器镜像的操作时,通过镜像操作工具获取当前操作用户的第一用户身份密码和下载的容器镜像对应的第一公钥计算码,并下发至离线动态密码生成工具;
通过离线动态密码生成工具,将第一用户身份密码、第一公钥计算码、当前时间戳和预设动态密码有效时长,导入预设生成规则,生成第一动态验证密码,并写入离线动态密码验证工具中;
在生产环境中获取到将容器镜像推送到第二镜像仓库的操作时,通过镜像操作工具获取当前操作用户的第二用户身份密码和推送的容器镜像对应的第二公钥计算码,并下发至离线动态密码验证工具;
通过离线动态密码验证工具,将第二用户身份密码、第二公钥计算码、当前时间戳和预设动态密码有效时长,导入预设生成规则,生成第二动态验证密码;进行第二动态验证密码与第一动态验证密码的比对,在比对成功后,获取推送的容器镜像的公钥,以将公钥导入推送的容器镜像,进行容器镜像签名验证,以在验证成功后,将推送的容器镜像推送至第二镜像仓库中。
2.根据权利要求1所述的离线状态下的容器镜像签名验证方法,其特征在于,
通过镜像操作工具获取当前操作用户的第一用户身份密码和下载的容器镜像对应的第一公钥计算码,具体包括:
通过镜像操作工具获取下载的容器镜像对应的公钥;调用预设处理规则,将公钥转换为第一公钥计算码;
通过镜像操作工具获取当前操作用户的第二用户身份密码和推送的容器镜像对应的第二公钥计算码,具体包括:
通过镜像操作工具获取推送的容器镜像对应的公钥;调用预设处理规则,将公钥转换为第二公钥计算码。
3.根据权利要求1所述的离线状态下的容器镜像签名验证方法,其特征在于,
将第一用户身份密码、第一公钥计算码、当前时间戳和预设动态密码有效时长,导入预设生成规则,生成第一动态验证密码,具体包括:
通过预设生成规则:第一动态验证密码=字符转数字(SM3(SM3(第一公钥计算码),第一用户身份密码,(当前时间戳+预设动态密码有效时长)))%1000000,生成第一动态验证密码;
将第二用户身份密码、第二公钥计算码、当前时间戳和预设动态密码有效时长,导入预设生成规则,生成第二动态验证密码,具体包括:
通过预设生成规则:第二动态验证密码=字符转数字(SM3(SM3(第二公钥计算码),第二用户身份密码,(当前时间戳+预设动态密码有效时长)))%1000000,生成第二动态验证密码。
4.根据权利要求1所述的离线状态下的容器镜像签名验证方法,其特征在于,获取推送的容器镜像的公钥,具体包括:
确定推送的容器镜像的公钥类型,在公钥类型为项目统一类型时,从操作服务器的固定路径导入公钥;在公钥类型为独立类型时,从离线动态密码验证工具中导入;其中,离线动态密码验证工具中预存了公钥类型为独立类型的容器镜像的公钥。
5.一种离线状态下的容器镜像签名验证系统,其特征在于,所述系统包括:
镜像操作工具,用于在开发环境中获取到从第一镜像仓库下载容器镜像的操作时,获取当前操作用户的第一用户身份密码和下载的容器镜像对应的第一公钥计算码,并下发至离线动态密码生成工具;在生产环境中获取到将容器镜像推送到第二镜像仓库的操作时,获取当前操作用户的第二用户身份密码和推送的容器镜像对应的第二公钥计算码,并下发至离线动态密码验证工具;
离线动态密码生成工具,用于将第一用户身份密码、第一公钥计算码、当前时间戳和预设动态密码有效时长,导入预设生成规则,生成第一动态验证密码,并写入离线动态密码验证工具中;
离线动态密码验证工具,用于将第二用户身份密码、第二公钥计算码、当前时间戳和预设动态密码有效时长,导入预设生成规则,生成第二动态验证密码;进行第二动态验证密码与第一动态验证密码的比对,在比对成功后,获取推送的容器镜像的公钥,以将公钥导入推送的容器镜像,进行容器镜像签名验证,以在验证成功后,将推送的容器镜像推送至第二镜像仓库中。
6.根据权利要求5所述的离线状态下的容器镜像签名验证系统,其特征在于,镜像操作工具包括公钥计算码生成单元,
用于获取下载的容器镜像对应的公钥;
调用预设处理规则,将公钥转换为第一公钥计算码;
获取推送的容器镜像对应的公钥;调用预设处理规则,将公钥转换为第二公钥计算码。
7.根据权利要求5所述的离线状态下的容器镜像签名验证系统,其特征在于,离线动态密码生成工具包括第一密码生成单元,
用于通过预设生成规则:第一动态验证密码=字符转数字(SM3(SM3(第一公钥计算码),第一用户身份密码,(当前时间戳+预设动态密码有效时长)))%1000000,生成第一动态验证密码;
离线动态密码验证工具包括第二密码生成单元;
用于通过预设生成规则:第二动态验证密码=字符转数字(SM3(SM3(第二公钥计算码),第二用户身份密码,(当前时间戳+预设动态密码有效时长)))%1000000,生成第二动态验证密码。
8.根据权利要求5所述的离线状态下的容器镜像签名验证系统,其特征在于,离线动态密码验证工具包括公钥获取单元,
用于确定推送的容器镜像的公钥类型,在公钥类型为项目统一类型时,从操作服务器的固定路径导入公钥;在公钥类型为独立类型时,从离线动态密码验证工具中导入;其中,离线动态密码验证工具中预存了公钥类型为独立类型的容器镜像的公钥。
9.一种离线状态下的容器镜像签名验证设备,其特征在于,所述设备包括:
处理器;
以及存储器,其上存储有可执行代码,当所述可执行代码被执行时,使得所述处理器执行如权利要求1-4任一项所述的一种离线状态下的容器镜像签名验证方法。
10.一种非易失性计算机存储介质,其特征在于,其上存储有计算机指令,所述计算机指令在被执行时实现如权利要求1-4任一项所述的一种离线状态下的容器镜像签名验证方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311660141.1A CN117353922B (zh) | 2023-12-06 | 2023-12-06 | 离线状态下的容器镜像签名验证方法、系统、设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311660141.1A CN117353922B (zh) | 2023-12-06 | 2023-12-06 | 离线状态下的容器镜像签名验证方法、系统、设备及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117353922A true CN117353922A (zh) | 2024-01-05 |
CN117353922B CN117353922B (zh) | 2024-03-22 |
Family
ID=89365336
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311660141.1A Active CN117353922B (zh) | 2023-12-06 | 2023-12-06 | 离线状态下的容器镜像签名验证方法、系统、设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117353922B (zh) |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170161976A1 (en) * | 2015-12-07 | 2017-06-08 | Utechzone Co., Ltd. | Identity verification method, apparatus and system and non-transitory computer readable medium thereof |
CN110007933A (zh) * | 2019-03-26 | 2019-07-12 | 山东超越数控电子股份有限公司 | 一种面向多租户容器镜像安全配置方法,系统,运行终端及存储介质 |
US20190327086A1 (en) * | 2018-04-24 | 2019-10-24 | Bartosz Slowik | Reciprocal data mirror system and method of data security |
CN111787116A (zh) * | 2020-07-07 | 2020-10-16 | 上海道客网络科技有限公司 | 一种基于区块链技术的容器镜像可信认证的系统与方法 |
CN112306970A (zh) * | 2019-08-01 | 2021-02-02 | 广州虎牙科技有限公司 | 一种容器镜像仓库的处理方法、装置、设备和存储介质 |
WO2021232845A1 (zh) * | 2020-05-22 | 2021-11-25 | 国云科技股份有限公司 | 一种基于容器的镜像更新发布方法及装置 |
CN113900772A (zh) * | 2021-10-14 | 2022-01-07 | 成都卫士通信息产业股份有限公司 | 一种镜像文件传输方法、装置、设备及存储介质 |
US20220129544A1 (en) * | 2019-07-11 | 2022-04-28 | Huawei Technologies Co., Ltd. | Apparatus and Method for Disk Attestation |
CN115718932A (zh) * | 2022-11-24 | 2023-02-28 | 中电云数智科技有限公司 | 一种基于可信计算的容器镜像完整性校验方法 |
-
2023
- 2023-12-06 CN CN202311660141.1A patent/CN117353922B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170161976A1 (en) * | 2015-12-07 | 2017-06-08 | Utechzone Co., Ltd. | Identity verification method, apparatus and system and non-transitory computer readable medium thereof |
US20190327086A1 (en) * | 2018-04-24 | 2019-10-24 | Bartosz Slowik | Reciprocal data mirror system and method of data security |
CN110007933A (zh) * | 2019-03-26 | 2019-07-12 | 山东超越数控电子股份有限公司 | 一种面向多租户容器镜像安全配置方法,系统,运行终端及存储介质 |
US20220129544A1 (en) * | 2019-07-11 | 2022-04-28 | Huawei Technologies Co., Ltd. | Apparatus and Method for Disk Attestation |
CN112306970A (zh) * | 2019-08-01 | 2021-02-02 | 广州虎牙科技有限公司 | 一种容器镜像仓库的处理方法、装置、设备和存储介质 |
WO2021232845A1 (zh) * | 2020-05-22 | 2021-11-25 | 国云科技股份有限公司 | 一种基于容器的镜像更新发布方法及装置 |
CN111787116A (zh) * | 2020-07-07 | 2020-10-16 | 上海道客网络科技有限公司 | 一种基于区块链技术的容器镜像可信认证的系统与方法 |
CN113900772A (zh) * | 2021-10-14 | 2022-01-07 | 成都卫士通信息产业股份有限公司 | 一种镜像文件传输方法、装置、设备及存储介质 |
CN115718932A (zh) * | 2022-11-24 | 2023-02-28 | 中电云数智科技有限公司 | 一种基于可信计算的容器镜像完整性校验方法 |
Non-Patent Citations (1)
Title |
---|
任兰芳;庄小君;付俊;: "Docker容器安全防护技术研究", 电信工程技术与标准化, no. 03 * |
Also Published As
Publication number | Publication date |
---|---|
CN117353922B (zh) | 2024-03-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109257340B (zh) | 一种基于区块链的网站防篡改系统及方法 | |
US11212117B2 (en) | Tamper-resistant software development lifecycle provenance | |
CN107463806B (zh) | 一种Android应用程序安装包的签名和验签方法 | |
JP4949232B2 (ja) | 署名付きファイルに証明書をリンクする方法およびシステム | |
CN109639661B (zh) | 服务器证书更新方法、装置、设备及计算机可读存储介质 | |
US20150207870A1 (en) | Detecting code injections through cryptographic methods | |
US20110231645A1 (en) | System and method to validate and authenticate digital data | |
CN106911684B (zh) | 一种鉴权方法及系统 | |
CN111787116B (zh) | 一种基于区块链技术的容器镜像可信认证的系统与方法 | |
US20100205660A1 (en) | System, method and program product for recording creation of a cancelable biometric reference template in a biometric event journal record | |
US20080244554A1 (en) | Method and system for updating digitally signed active content elements without losing attributes associated with an original signing user | |
CN101615230A (zh) | 一种文件可信执行和可信保护的方法 | |
JP2007028015A (ja) | タイムスタンプ検証プログラム、タイムスタンプ検証システム、タイムスタンプ検証方法、タイムスタンプ生成依頼方法 | |
US10938574B2 (en) | Cryptographic font script with integrated signature for verification | |
CN111460410A (zh) | 服务器登录方法、装置、系统与计算机可读存储介质 | |
CN111600701B (zh) | 一种基于区块链的私钥存储方法、装置及存储介质 | |
CN117353922B (zh) | 离线状态下的容器镜像签名验证方法、系统、设备及介质 | |
CN112257046A (zh) | 一种用软件库实现可信数字身份解密和验签的方法、系统和设备 | |
CN111953477B (zh) | 终端设备及其标识令牌的生成方法和客户端的交互方法 | |
CN115242471B (zh) | 信息传输方法、装置、电子设备及计算机可读存储介质 | |
CN110890979A (zh) | 堡垒机自动部署方法、装置、设备及介质 | |
JP2008097301A (ja) | ファイル管理サーバ及びそのプログラムとファイル管理方法 | |
CN110807210A (zh) | 一种信息处理方法、平台、系统及计算机存储介质 | |
CN108933766B (zh) | 一种提高设备id安全性的方法和客户端 | |
KR101458929B1 (ko) | 3자 인증을 이용한 로그 정보 인증 시스템의 osp 서버에 포함된 로그 블랙박스 장치 및 그 운영방법 |
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 |