安全执行可延伸固件应用程序的方法及计算器设备技术

技术编号:28204241 阅读:22 留言:0更新日期:2021-04-24 14:30
一种安全执行可延伸固件应用程序的方法及计算器设备,该方法由计算器设备执行,计算器设备中包含固件存储区及启动程序,其中固件存储区包含待执行的固件应用程序模块,且已通过安全性检查并附加有安全加密签章;启动程序附带第一有效数字签章且可通过计算器设备的安全启动凭证数据库验证,当要执行固件应用程序模块时,先由启动程序或计算器设备的安全启动凭证数据库验证固件存储区的安全加密签章,再由启动程序将固件应用程序模块加载到缓冲存储器以读取及执行,使得该固件应用程序模块在启动程序的监督下在安全启动模式下被允许且安全地执行。且安全地执行。且安全地执行。

【技术实现步骤摘要】
安全执行可延伸固件应用程序的方法及计算器设备


[0001]一种执行应用程序的方法及计算器设备,尤指一种安全执行可延伸固件应用程序的方法及计算器设备。

技术介绍

[0002]安全启动(Secure Boot)是近年来计算器设备应用的开机机制的一种,是在通用可扩展固件接口(Unified Extensible Firmware Interface;UEFI)环境下执行,用于确保计算器设备在启动阶段所加载的固件模块例如启动固件、固件驱动器、固件应用程序,以及加载的操作系统等可受到安全启动凭证认证,避免计算器设备被加载不明来源或不被信任的固件模块或操作系统,以确保计算器设备的安全。
[0003]在安全启动的模式下,当计算器设备通电执行启动时,包含安全启动凭证的数据库(Signature database;DB)会验证加载的固件是否附带有对应安全启动凭证的有效数字签名,只有当该固件附带的该有效数字签名通过验证时,该固件才能被加载。该安全启动凭证数据库由设备制造商(Original Equipment Manufacturer;OEM)建置以及更新。为了获得有效数字签名,该些启动程序、固件驱动器、固件应用程序及操作系统等必须先提交至设备制造商进行安全检查,通过检查后才能被授权执行,也就是在该些固件或操作系统上附加对应安全启动凭证的有效数字签名。
[0004]然而,基于部分固件应用程序的功能,即使该固件应用程序已获得该有效数字签名,当固件应用程序加载到计算器设备后,仍然可能会造成安全性问题。举例来说,编码直译器(例如:Python Interpreter)能够协助执行任何其装载的编码或程序,因此即使该编码直译器本身的安全性通过验证,当其被装载的编码文件或程序文件包含有恶意功能时,该编码直译器的执行仍然会危及计算器设备的安全。类似的固件应用程序由于其过于强大的功能,一般来说难以通过安全性检查并获得有效数字签名。因此当计算器设备在安全启动的模式下,该编码直译器无法被加载或执行,而造成工程人员的困扰。

技术实现思路

[0005]有鉴于在现有的安全启动机制下,计算器设备无法在安全启动模式下保证安全地执行某些未被授权的固件应用程序,本专利技术的安全执行可延伸固件应用程序的方法由计算器设备执行,该计算器设备中包含固件存储区(Firmware Volume;FV)及启动程序(Boot Loader),其中,该固件存储区包含待执行的固件应用程序模块,该固件存储区已通过安全性检查且通过安全加密程序而附加有安全加密签章,该启动程序是通过该计算器设备的安全启动凭证数据库验证;本专利技术的方法包含以下步骤:
[0006]当要执行该固件应用程序模块,验证该固件存储区的该安全加密签章;
[0007]当该安全加密签章通过验证,由该启动程序将该固件应用程序模块加载到缓冲存储器;
[0008]由该启动程序读取并执行该缓冲存储器中的该固件应用程序模块。
[0009]该启动程序通过设备制造商(OEM)的安全启动凭证数据库的签署授权,并因此附带有第一有效数字签章的启动程序,用于执行本专利技术的安全执行固件应用程序的方法。该待执行且未被授权的固件应用程序模块则被存储在固件存储区(Firmware Volume;FV)中,该固件应用程序模块除了包含该待执行的主应用程序,也包含该主应用程序所需的执行文件、数据文件、编码文件等非应用程序文件。该固件存储区的内容必须事先通过安全检查,并在通过安全检查后对该固件存储区进行加密保护并附加安全加密签章,当要执行该固件存储区中的固件应用程序模块时,只要借由通过验证该安全加密签章验证了该固件存储区,便能确认该固件存储区中的固件应用程序模块具有足够的安全性,因此将该固件应用程序模块加载到缓冲存储器,并进一步由该缓冲存储器寻找、读取并执行该固件应用程序模块。
[0010]也就是说,该固件存储区的安全性借由预先对该主应用程序及其所需的非应用程序文件进行安全检查并加上安全加密签章获得保证及信任。当该应用程序模块要被加载时,必须验证该固件存储区的安全加密签章,并在验证通过后才由该启动程序将该固件应用程序模块中由固件存储区加载到该缓冲存储器,并由该启动程序以进一步进行读取及执行。如此一来,确保了该固件应用程序模块中的主应用程序以及其执行时所需的其他非应用程序文件的整体安全性,避免该主应用程序在实际执行时因被加载了不被信任的非应用程序文件而危及计算器系统的安全性,而因此能被现有的计算器设备的UEFI环境在安全启动的模式下允许执行,避免了在安全启动模式下无法执行任何未被安全启动凭证数据库授权的固件应用程序的不便。
[0011]本专利技术另外提供了一种安全执行可延伸固件应用程序的计算器设备,包含了安全启动凭证数据库、启动程序、固件存储区及缓冲存储器。其中,该启动程序包含第一有效数字签章,且该第一有效数字签章可通过该安全启动凭证数据库验证,该固件存储区中存储有一固件应用程序模块,且该固件存储区预先通过安全性检查,并通过安全加密程序被附加安全加密签章。当该计算器设备在安全启动模式下且要执行该固件应用程序模块时,由该启动程序验证该固件存储区的该安全加密签章,且当该安全加密签章通过验证,该启动程序将该固件存储区中的固件应用程序模块加载到该缓冲存储器中,并且该启动程序进一步由该缓冲存储器读取并执行该固件应用程序模块。
[0012]该启动程序包含的该第一有效数字签章使得该启动程序能够在该计算器设备于安全启动模式下通过该安全启动凭证数据库的验证而被执行,该启动程序则进一步验证该固件存储区的安全加密签章,并在验证完成后将固件存储中的固件应用程序模块加载到缓冲存储器中,以供读取及执行。该启动程序的安全性被验证过的,而该启动程序则负责验证该固件存储区的安全加密签章,使得该固件应用程序模块在该启动程序的监督下执行而确保了其执行时的安全性,也因此能被现有的计算器设备的UEFI环境在安全启动的模式下允许执行,避免了在安全启动模式下无法执行任何未被安全启动凭证数据库验证的固件应用程序的不便。
[0013]此外,本专利技术还提供另一种安全执行可延伸固件应用程序的计算器设备,其与上述第一种计算器设备不同的是,该固件存储区与该启动程序合并。因此,当该计算器设备在安全启动模式下,且该计算器设备要执行该固件应用程序模块时,该安全启动凭证数据库验证该启动程序及该固件存储区的该第一有效数字签章,且当该第一有效数字签章通过验
证时,该启动程序将该固件存储区中的固件应用程序模块加载到该缓冲存储器中,并且该启动程序进一步由该缓冲存储器读取执行该固件应用程序模块。同样的,借由启动程序启动执行该固件应用程序模块确保了其执行的安全性,因此能被现有的计算器设备的UEFI环境在安全启动的模式下允许执行,避免了在安全启动模式下无法执行任何未被安全启动凭证数据库验证的固件应用程序的不便。
[0014]在此实施例中,该启动程序与该固件存储区共同受到该安全启动凭证数据库的验证,而一并确保了该启动程序及该固件存储区的安全性。通过验证后,则该启动程序同样负责加载、读取本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种安全执行可延伸固件应用程序的方法,由计算器设备执行,该计算器设备中包含固件存储区及启动程序,其中,该固件存储区包含待执行的固件应用程序模块,该固件存储区已通过安全性检查并通过安全加密而附加有安全加密签章;该启动程序附带的第一有效数字签章是通过该计算器设备的安全启动凭证数据库验证;该安全执行可延伸固件应用程序的方法包含以下步骤:当要执行该固件应用程序模块,验证该固件存储区的该安全加密签章;当该安全加密签章通过验证,由该启动程序将该固件应用程序模块加载到缓冲存储器;由该启动程序读取并执行该缓冲存储器中的该固件应用程序模块。2.根据权利要求1所述的安全执行可延伸固件应用程序的方法,其中,该应用程序模块包含主应用程序及非应用程序文件,且当该固件存储区的安全加密签章通过验证,该启动程序将该主应用程序及该非应用程序文件加载到该缓冲存储器中;当该启动程序执行该固件应用程序模块时,该主应用程序由该启动程序指定的缓冲存储器地址读取并执行该非应用程序文件。3.根据权利要求1所述的安全执行可延伸固件应用程序的方法,其中,在验证该固件存储区的该安全加密签章的步骤中,由该启动程序以固件存储区公钥验证该固件存储区包含的固件存储区私钥签章。4.根据权利要求1所述的安全执行可延伸固件应用程序的方法,其中,在验证该固件存储区的该安全加密签章的步骤中,由该启动程序要求该安全启动凭证数据库验证该固件存储区,其中,该固件存储区已利用第二有效数字签章签署。5.根据权利要求1所述的安全执行可延伸固件应用程序的方法,其中,该固件存储区与该启动程序合并,当该启动程序进行安全启动凭证签署程序以附加该第一有效数字签章时,连同该固件存储区进行安全凭证签署程序;其中,在验证该固件存储区的该安全加密签章的步骤,在该安全启动凭证数据库验证该启动程序的第一有效数字签章时同时完成。6.根据权利要求1或2所述的安全执行可延伸固件应用程序的方法,其中,当该启动程序将该固件应用程序模块加载到该缓冲存储器,该缓冲存储器受到只读保护。7.一...

【专利技术属性】
技术研发人员:吴文钦
申请(专利权)人:系微股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1