CN116305007A - 一种安全加载服务模块的方法、装置及电子设备 - Google Patents
一种安全加载服务模块的方法、装置及电子设备 Download PDFInfo
- Publication number
- CN116305007A CN116305007A CN202310028717.6A CN202310028717A CN116305007A CN 116305007 A CN116305007 A CN 116305007A CN 202310028717 A CN202310028717 A CN 202310028717A CN 116305007 A CN116305007 A CN 116305007A
- Authority
- CN
- China
- Prior art keywords
- module
- service module
- verified
- loading
- signature
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 30
- 238000012795 verification Methods 0.000 claims abstract description 30
- 238000004590 computer program Methods 0.000 claims description 9
- 238000010586 diagram Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000000739 chaotic effect Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000036541 health Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 230000008569 process Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
- G06F21/12—Protecting executable software
- G06F21/121—Restricting unauthorised execution of programs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or signatures
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Technology Law (AREA)
- Multimedia (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Storage Device Security (AREA)
Abstract
本发明涉及一种安全加载服务模块的方法、装置及电子设备,所述方法应用于微内核操作系统中,所述方法包括:根据选择的签名算法,生成签名算法必要信息;读取待验证服务模块,获取所述待验证服务模块的签名信息;利用所述签名算法必要信息,对所述待验证服务模块的签名信息进行验证;若验证成功,则判断所述待验证服务模块为安全可信模块,并开始加载所述安全可信模块。上述方案中,微内核加载服务模块时,通过对服务模块进行签名验证,确保加载的服务模块为安全可信模块;用户无需关心模块可信问题,系统自动判断并加载可信模块,拒绝不可信模块,提供升用户体验。
Description
技术领域
本发明涉及系统安全领域,具体地,涉及一种安全加载服务模块的方法、装置及电子设备。
背景技术
微内核操作系统(micro kernel operating system),是近年来逐渐流行的新型操作系统架构之一。相比于宏内核系统,如linux系统,微内核操作系统主要由微内核和各种服务模块组成,最终为用户程序提供各种系统服务,如图1所示。
随着计算机的普及,各种计算机设备系统成为人们生活中不可或缺的部分,针对设备系统的攻击事件也日益增多,安全问题显得越来越重要,微内核采用极为精简的内核设计,使得内核的形式化验证等一些安全验证方法成为可能,最大程度保护了操作系统内核的安全。
根据微内核的理念设计,内核得到极大精简,内核中的安全性得到极大提高,但是这样的设计会将很多功能作为服务放到用户态运行,其中包括驱动程序。微内核上运行着大量的系统服务,这些服务属于操作系统的一部分,用户态可以通过方法动态的替换这些服务,替换的服务如果存在恶意代码,可能引起系统安全问题,从而影响操作系统的稳定性。另一方面,服务模块可由内核开发者以外的第三方提供,随意加载,将对系统安全造成重大隐患。
业界目前由使用者自行保证服务模块安全的方案,由于使用者开发水平有差异,以及可能存在的恶意开发者,容易造成混乱的生态,最终毁掉微内核操作系统的安全优势。
发明内容
本发明的目的是提供一种安全加载服务模块的方法、装置及电子设备,用于解决现有技术中存在的,由于用户态可以替换微内核上运行的系统服务,可能会对系统安全造成隐患,从而影响操作系统的稳定性的技术问题。本发明的方案中,微内核仅加载经过安全认证的可信模块,最大限度保证模块的安全,保证用户程序的安全,保证系统的安全,使微内核操作系统生态健康有序发展。
为了实现上述目的,本发明第一方面提供一种安全加载服务模块的方法,应用于微内核操作系统中,所述方法包括:
根据选择的签名算法,生成签名算法必要信息;
读取待验证服务模块,获取所述待验证服务模块的签名信息;
利用所述签名算法必要信息,对所述待验证服务模块的签名信息进行验证;若验证成功,则判断所述待验证服务模块为安全可信模块,并开始加载所述安全可信模块。
可选的,所述方法还包括:
在加载服务模块之前,读取所述待验证服务模块,获取所述待验证服务模块的模块信息;
将所述待验证服务模块的模块信息与预先设置的黑名单进行比较,若不属于黑名单,则继续读取所述待验证服务模块的签名信息;若属于黑名单,则中止加载。
可选的,所述方法还包括:若验证失败,则中止加载,并向所述微内核操作系统报告加载结果。
可选的,所述待验证服务模块为需要更新升级的可信模块加载服务模块,用于替换原有的可信模块加载服务模块;其中,所述可信模块加载服务模块是指用于加载安全可信模块的服务模块。
可选的,所述签名算法必要信息包括算法类型和密钥。
本发明第二方面提供一种安全加载服务模块的装置,应用于微内核操作系统中,所述装置包括:
签名算法必要信息生成模块,用于根据选择的签名算法,生成签名算法必要信息;
签名信息读取模块,用于读取待验证服务模块,获取所述待验证服务模块的签名信息;
签名信息验证模块,利用所述签名算法必要信息,对所述待验证服务模块的签名信息进行验证;若验证成功,则判断所述待验证服务模块为安全可信模块;
可信模块加载模块,用于加载所述安全可信模块。
本发明第三方面提供一种名为“可信模块加载服务模块”的装置,应用于微内核操作系统中,所述装置包括:
黑名单模块,用于检测待验证服务模块是否属于黑名单中的模块;
签名信息读取模块,用于读取待验证服务模块,获取所述待验证服务模块的签名信息;
签名信息验证模块,利用所述签名算法必要信息,对所述待验证服务模块的签名信息进行验证;若验证成功,则判断所述待验证服务模块为安全可信模块;
可信模块加载模块,用于加载所述安全可信模块。
本发明第四方面提供一种非临时性或临时性计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现第一方面所述方法的步骤。
本发明第五方面提供一种电子设备,包括:
存储器,其上存储有计算机程序;
处理器,用于执行所述存储器中的所述计算机程序,以实现第一方面所述方法的步骤。
本发明实施例的方案中,微内核加载服务模块时,通过对服务模块进行签名验证,确保加载的服务模块为安全可信模块;用户使用微内核操作系统时,无需关心模块可信问题,系统自动判断并加载可信模块,拒绝不可信模块,提供升用户体验;并且,微内核操作系统仅加载运行安全可信服务模块,恶意服务模块失去生存空间,为打造安全可靠健康的服务模块生态系统,提供有力保障。
本发明的其他特征和优点将在随后的具体实施方式部分予以详细说明。
附图说明
附图是用来提供对本发明的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本发明,但并不构成对本发明的限制。在附图中:
图1是根据一示例性实施例示出的微内核操作系统的示意图;
图2是根据一示例性实施例示出的安全加载服务模块的方法的流程图;
图3是根据一示例性实施例示出的准备和签名的流程图;
图4是根据一示例性实施例示出的验证和加载的流程图;
图5是根据一示例性实施例示出的加载服务模块的装置的框图;
图6是根据一示例性实施例示出的一种名为“可信模块加载服务模块”的装置的框图。
具体实施方式
以下结合附图对本发明的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本发明,并不用于限制本发明。
本发明实施例提供了一种安全加载服务模块的方法,应用于微内核操作系统中,如图2所示,所述方法包括:
步骤201,根据选择的签名算法,生成签名算法必要信息;在具体实施过程中,签名算法包括但不限于非对称加密算法RSA等,对应的,签名算法必要信息包括但不限于算法类型,公钥,私钥等。
步骤202,读取待验证服务模块,获取所述待验证服务模块的签名信息。
步骤203,利用所述签名算法必要信息,对所述待验证服务模块的签名信息进行验证;若验证成功,则判断所述待验证服务模块为安全可信模块,并开始加载所述安全可信模块。
若验证失败,则判断所述待验证服务模块是不可信模块,中止加载,并将加载结果报告于微内核。
上述方案中,通过对服务模块进行签名验证,确保加载的服务模块为安全可信模块;用户使用微内核操作系统时,无需关心模块可信问题,系统自动判断并加载可信模块,拒绝不可信模块,提供升用户体验;并且,微内核操作系统仅加载运行安全可信服务模块,恶意服务模块失去生存空间,为打造安全可靠健康的服务模块生态系统,提供有力保障。
本发明实施例中,需要基于加密算法对服务模块进行准备和签名,如图3所示,包括以下步骤。
步骤301,选择一种签名算法。在具体实施过程中,签名算法包括但不限于非对称加密算法RSA等;
步骤302,根据选择的签名算法,生成签名算法必要信息,包括但不限于算法类型,公钥,私钥等;
步骤303,利用签名算法必要信息,使用签名算法对安全可信的服务模块进行签名。
对于可信模块加载服务模块而言,需要将签名算法必要信息存储于可信模块加载服务模块中。其中,可信模块加载服务模块是指用于加载安全可信模块的服务模块。
微内核操作系统(以下简称微内核)在进行验证和加载时,如图4所示,包括以下步骤。
步骤401,微内核使用可信模块加载服务模块,加载服务模块;
步骤402,可信模块加载服务模块,读取待验证服务模块,获取模块信息;
步骤403,可信模块加载服务模块,利用黑名单模块将获取的待验证服务模块的模块信息,与黑名单进行比较,若属于黑名单则中止加载,并将加载结果报告于微内核,若不属于黑名单则继续;
步骤404,可信模块加载服务模块,利用签名信息读取模块读取待验证服务模块,获取签名信息;
步骤405,可信模块加载服务模块,利用签名信息验证模块对获取到的签名信息进行验证,若验证失败则中止加载,并将加载结果报告于微内核,若验证成功则该模块为安全可信模块;
步骤406,可信模块加载服务模块,利用可信模块加载模块开始加载安全可信模块;
步骤407,安全可信模块加载完成。
在微内核操作系统中,通过加载安全可信模块,增强微内核操作系统的安全性。一方面,微内核加载服务模块时,通过对服务模块进行签名验证,确保加载的服务模块为安全可信模块;另一方面,通过黑名单对服务模块进行过滤,即使签名正确也无法加载,提供了额外一层安全保障。用户使用微内核操作系统时,无需关心模块可信问题,系统自动判断并加载可信模块,拒绝不可信模块,提供升用户体验;并且,微内核操作系统仅加载运行安全可信服务模块,恶意服务模块失去生存空间,为打造安全可靠健康的服务模块生态系统,提供有力保障。
进一步,本发明实施例的方案中,可信模块加载服务模块可随时更新升级,即可信模块加载服务模块验证新的可信模块加载服务模块,验证通过后替换原有可信模块加载服务模块,确保签名验证方法持续安全可靠有效。
与现有技术相比,本发明提出的技术方案能够降低微内核操作系统,带来的安全性问题,通过黑名单,签名验证,实现安全可信模块的加载,降低恶意模块带来的安全风险,为微内核操作系统安全可靠的健康生态,可持续发展,提供坚实的保障。
基于同一发明构思,本发明实施例还提供一种安全加载服务模块的装置500,应用于微内核操作系统中,如图5所示,所述装置包括:签名信息生成模块501,用于根据选择的签名算法,生成签名算法必要信息;签名信息读取模块502,用于读取待验证服务模块,获取所述待验证服务模块的签名信息;签名信息验证模块503,利用所述签名算法必要信息,对所述待验证服务模块的签名信息进行验证;若验证成功,则判断所述待验证服务模块为安全可信模块;可信模块加载模块504,用于加载所述安全可信模块。
基于同一发明构思,本发明实施例还提供“可信模块加载服务模块”的装置600,应用于微内核操作系统中,如图6所示,所述装置包括:黑名单模块601,用于检测待验证服务模块是否属于黑名单中的模块;签名信息读取模块602,用于读取待验证服务模块,获取所述待验证服务模块的签名信息;签名信息验证模块603,利用所述签名算法必要信息,对所述待验证服务模块的签名信息进行验证;若验证成功,则判断所述待验证服务模块为安全可信模块;可信模块加载模块604,用于加载所述安全可信模块。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
在另一示例性实施例中,还提供一种计算机程序产品,该计算机程序产品包含能够由可编程的装置执行的计算机程序,该计算机程序具有当由该可编程的装置执行时用于执行上述的加载服务模块的方法的代码部分。
以上结合附图详细描述了本发明的优选实施方式,但是,本发明并不限于上述实施方式中的具体细节,在本发明的技术构思范围内,可以对本发明的技术方案进行多种简单变型,这些简单变型均属于本发明的保护范围。
另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合,为了避免不必要的重复,本发明对各种可能的组合方式不再另行说明。
此外,本发明的各种不同的实施方式之间也可以进行任意组合,只要其不违背本发明的思想,其同样应当视为本发明所公开的内容。
Claims (8)
1.一种安全加载服务模块的方法,应用于微内核操作系统中,其特征在于,所述方法包括:
根据选择的签名算法,生成签名算法必要信息;
读取待验证服务模块,获取所述待验证服务模块的签名信息;
利用所述签名算法必要信息,对所述待验证服务模块的签名信息进行验证;若验证成功,则判断所述待验证服务模块为安全可信模块,并开始加载所述安全可信模块。
2.如权利要求1所述的方法,其特征在于,所述方法还包括:
在加载服务模块之前,读取所述待验证服务模块,获取所述待验证服务模块的模块信息;
将所述待验证服务模块的模块信息与预先设置的黑名单进行比较,若不属于黑名单,则继续读取所述待验证服务模块的签名信息;若属于黑名单,则中止加载。
3.如权利要求1所述的方法,其特征在于,所述方法还包括:若验证失败,则中止加载,并向所述微内核操作系统报告加载结果。
4.如权利要求1所述的方法,其特征在于,所述待验证服务模块为需要更新升级的可信模块加载服务模块,用于替换原有的可信模块加载服务模块;其中,所述可信模块加载服务模块是指用于加载安全可信模块的服务模块。
5.如权利要求1所述的方法,其特征在于,所述签名算法必要信息包括算法类型和密钥。
6.一种安全加载服务模块的装置,应用于微内核操作系统中,其特征在于,所述装置包括:
签名信息生成模块,用于根据选择的签名算法,生成签名算法必要信息;
签名信息读取模块,用于读取待验证服务模块,获取所述待验证服务模块的签名信息;
签名信息验证模块,利用所述签名算法必要信息,对所述待验证服务模块的签名信息进行验证;若验证成功,则判断所述待验证服务模块为安全可信模块;
可信模块加载模块,用于加载所述安全可信模块。
7.一种非临时性或临时性计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求1-6中任一项所述方法的步骤。
8.一种电子设备,其特征在于,包括:
存储器,其上存储有计算机程序;
处理器,用于执行所述存储器中的所述计算机程序,以实现权利要求1-6中任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310028717.6A CN116305007A (zh) | 2023-01-10 | 2023-01-10 | 一种安全加载服务模块的方法、装置及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310028717.6A CN116305007A (zh) | 2023-01-10 | 2023-01-10 | 一种安全加载服务模块的方法、装置及电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116305007A true CN116305007A (zh) | 2023-06-23 |
Family
ID=86791333
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310028717.6A Pending CN116305007A (zh) | 2023-01-10 | 2023-01-10 | 一种安全加载服务模块的方法、装置及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116305007A (zh) |
-
2023
- 2023-01-10 CN CN202310028717.6A patent/CN116305007A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
AU2009233685B2 (en) | Method and apparatus for incremental code signing | |
KR100998344B1 (ko) | 신뢰되는 모바일 전화들을 위한 크기조절 가능하고 구성가능한 간단한 보안 부트 | |
CN104408370B (zh) | 安卓系统安全性验证方法及其验证装置 | |
US20130031371A1 (en) | Software Run-Time Provenance | |
CN112507328B (zh) | 一种文件签名方法、计算设备及存储介质 | |
US8392724B2 (en) | Information terminal, security device, data protection method, and data protection program | |
CN104424441A (zh) | 处理系统 | |
CN110224811B (zh) | 物联网加密处理方法、装置及系统 | |
JP2008537224A (ja) | 安全な起動方法およびシステム | |
CN111984962A (zh) | 固件安全验证方法及装置 | |
CN112445537B (zh) | 操作系统可信启动方法、装置、移动终端和存储介质 | |
WO2015023723A1 (en) | Secure os boot as per reference platform manifest and data sealing | |
KR20150035249A (ko) | 어플리케이션 패키지를 저장하는 기록 매체, 어플리케이션 패키지 생성 방법 및 장치, 어플리케이션 패키지 실행 방법 및 장치 | |
CN105426750A (zh) | 一种嵌入式系统的启动方法及嵌入式装置 | |
CN108229144B (zh) | 一种应用程序的验证方法、终端设备及存储介质 | |
US9843451B2 (en) | Apparatus and method for multi-state code signing | |
US9665711B1 (en) | Managing and classifying states | |
CN112699343A (zh) | 一种软件完整性保护、校验的方法及装置 | |
CN107657170A (zh) | 支持智能修复的可信加载启动控制系统和方法 | |
CN111241548B (zh) | 计算机启动方法 | |
JP4818824B2 (ja) | プログラム管理システムおよび端末装置 | |
CN107092832A (zh) | 一种及时弥补Secure‑Boot安全漏洞的方法 | |
CN116305007A (zh) | 一种安全加载服务模块的方法、装置及电子设备 | |
CN116561734A (zh) | 一种验证方法、装置、计算机及计算机配置系统 | |
CN112333208B (zh) | 区块链可信验证方法、装置及区块链一体机 |
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 |