TW201413491A - 更新用於安全元件之操作系統 - Google Patents

更新用於安全元件之操作系統 Download PDF

Info

Publication number
TW201413491A
TW201413491A TW102125961A TW102125961A TW201413491A TW 201413491 A TW201413491 A TW 201413491A TW 102125961 A TW102125961 A TW 102125961A TW 102125961 A TW102125961 A TW 102125961A TW 201413491 A TW201413491 A TW 201413491A
Authority
TW
Taiwan
Prior art keywords
operating system
secure element
volatile memory
updater device
updater
Prior art date
Application number
TW102125961A
Other languages
English (en)
Other versions
TWI510959B (zh
Inventor
Christophe Giraud
Olivier Chamley
Gregoire Godel
Original Assignee
Oberthur Technologies
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Oberthur Technologies filed Critical Oberthur Technologies
Publication of TW201413491A publication Critical patent/TW201413491A/zh
Application granted granted Critical
Publication of TWI510959B publication Critical patent/TWI510959B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • G06F21/77Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information in smart cards
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/51Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems at application loading time, e.g. accepting, rejecting, starting or inhibiting executable software based on integrity or source reliability
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/575Secure boot
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/54Link editing before load time
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/22Microcontrol or microprogram arrangements
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • G11C16/102External programming circuits, e.g. EPROM programmers; In-circuit programming or reprogramming; EPROM emulators
    • G11C16/105Circuits or methods for updating contents of nonvolatile memory, especially with 'security' features to ensure reliable replacement, i.e. preventing that old data is lost before new data is reliably written

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Stored Programmes (AREA)
  • Storage Device Security (AREA)

Abstract

本發明揭示一種安全元件(30),其包括至少一微處理器(31)、一非揮發性記憶體(34)及一通信介面(36),該安全元件(30)能夠經由該通信介面(36)而與一更新器裝置(10)通信,該非揮發性記憶體(34)儲存至少一啓動程式(38),該微處理器(31)經組態以在該安全元件(30)之起動期間執行該啓動程式(38),該安全元件(30)之特徵在於該啓動程式(38)包括用於執行以下步驟之指令:-用於判定該非揮發性記憶體(34)是否儲存一作用中操作系統(35)且若為肯定的則開始該操作系統(35)之執行之一起動步驟(E1、E12);-作為由該安全元件(30)判定之第一鑑認資料(AUTH30)及自該更新器裝置(10)接收之第二鑑認資料(AUTH10)之一函數之更新器裝置(10)之一鑑認步驟(E4、E5、E6、E7、E13、E14);-回應於該鑑認步驟,該非揮發性記憶體(34)中之自該更新器裝置(10)接收之一新操作系統之一儲存步驟(E9、E10)及該新操作系統之一啓動步驟(E11),當由該微處理器(31)執行該等指令時執行上述步驟。

Description

更新用於安全元件之操作系統
本發明係關於板載安全元件(諸如智慧卡)之領域。
一板載安全元件(例如一智慧卡)通常具有一電腦之材料架構且尤其包括一微處理器及一非揮發性記憶體,該非揮發性記憶體包括可由該微處理器執行之電腦程式。特定言之,該非揮發性記憶體包括在其可供一使用者使用之前由安全元件之製造者載入之一操作系統。
較佳地,可在將安全元件提供給使用者之後更新操作系統。
文件WO 2012/062632 A1描述一種嵌入板載元件中之軟體更新程序。此程序包括軟體之抹除、載入取代軟體之一更新管理程式,其載入在板載元件啟動時更新之一促發(priming)程式。此解決方案之安全性僅基於軟體之印記。因此,此解決方案不適合於需要一高度安全性之應用。此外,該程序需要重新啟動該安全元件兩次。
因此,需要一種用於一安全元件之軟體之可靠安全的更新方法。
本發明提出一種安全元件,其包括至少一微處理器、一非揮發性記憶體及一通信介面,該安全元件能夠經由該通信介面而與一更新器裝置通信,該非揮發性記憶體儲存至少一啟動程式,該微處理器經組態以在該安全元件之起動期間執行該啟動程式,此安全元件之特徵在於該啟動程式包括用於執行以下步驟之指令: -用於判定該非揮發性記憶體是否儲存一作用中操作系統且若為肯定的則開始該操作系統之執行之一起動步驟;-作為由該安全元件判定之第一鑑認資料及自該更新器裝置接收之第二鑑認資料之一函數之該更新器裝置之一鑑認步驟;-回應於該鑑認步驟,該非揮發性記憶體中之自該更新器裝置接收之一新操作系統之一儲存步驟及該新操作系統之一啟動步驟,當由該微處理器執行該等指令時執行上述步驟。
因此,啟動程式能夠安全可靠地更新操作系統。事實上,由於此更新需要鑑認更新器裝置,所以一第三方無法將操作系統之一損壞版本供應至安全元件。
根據一實施例,更新器裝置之鑑認步驟包括:-將含有一變數之訊息發送至更新器裝置之一步驟;-接收第二鑑認資料之一步驟;-作為該變數及儲存於該非揮發性記憶體中之一金鑰之一函數之第一鑑認資料之一判定步驟;及-第一鑑認資料與第二鑑認資料之一比較步驟。
以此方式,啟動程式本身包括完成更新器裝置之鑑認所需之全部指令。因此,當非揮發性記憶體不包含操作系統時或當已(例如)在其尚未成功之一先前更新嘗試期間停用操作系統時,可初始化或繼續操作系統之更新。
啟動程式亦可包括用於執行以下步驟之指令:將作為該金鑰及該變數之一函數之含有一加密資料之一訊息發送至更新器裝置之一步驟。
此允許更新器裝置鑑認安全元件。因此,完成安全元件與更新器裝置之間之相互鑑認。以此方式,僅一安全經鑑認元件可獲得操作系統之新版本。
根據一實施例,非揮發性記憶體包括一操作系統,其包含用於執行以下步驟之指令:-將含有變數之一訊息發送至更新器裝置之一步驟;-接收第二鑑認資料之一步驟;-將作為金鑰及變數之一函數之含有一加密資料之一訊息發送至更新器裝置之一選用步驟。
在此情況中,若非揮發性記憶體包括一作用中操作系統,則後者包括與啟動程式合作之使其參與鑑認之指令。因此,當由操作系統管理安全元件之操作時,可在安全元件之正常操作期間初始化操作系統之更新。
儲存步驟可包括接收新加密操作系統。
以此方式,攔截更新器裝置與安全元件之間之通信之一第三方無法獲得操作系統之新版本。
在此情況中,鑑認步驟可包括判定作為該金鑰及該變數之一函數之一會期金鑰,及儲存步驟可包括接收經該會期金鑰加密之新操作系統。
由於相同會期金鑰用於加密鑑認及通信,所以安全元件中之所需密碼編譯資源係受限制的。
出於安全性及可靠性之原因,啟動程式較佳地經儲存使得其無法被修改。
例如,將啟動程式儲存於非揮發性記憶體之一不可重寫部分中。
作為一變體,將啟動程式儲存於非揮發性記憶體之一可重寫部分中,該非揮發性記憶體含有經組態以阻止該啟動程式上之寫入命令之一操作系統。
本發明亦提出一種終端機,其包括至少一微處理器、一非揮發 性記憶體及根據本發明之一安全元件,該終端機之該非揮發性記憶體包括經設計以使用由該安全元件提供之一服務之一更新管理程式及一應用程式,該更新管理程式具有用於執行以下步驟之指令:-包括接收更新器裝置之新操作系統及將所接收之新操作系統發送至安全元件之一傳輸步驟;-在至少該傳輸步驟期間之該服務之一停用步驟,當由該終端機之該微處理器執行該等指令時執行上述步驟。
本發明亦提供一種系統,其包括根據本發明之至少一安全元件及儲存操作系統之新版本之一更新器裝置。
10‧‧‧更新器裝置
11‧‧‧微處理器
12‧‧‧通信介面
13‧‧‧揮發性記憶體
14‧‧‧非揮發性記憶體
20‧‧‧終端機
21‧‧‧微處理器
22‧‧‧通信介面
23‧‧‧揮發性記憶體
24‧‧‧非揮發性記憶體
25‧‧‧操作系統
26‧‧‧通信介面
30‧‧‧安全元件
31‧‧‧微處理器
33‧‧‧揮發性記憶體
34‧‧‧非揮發性記憶體
35‧‧‧操作系統
36‧‧‧通信介面
37‧‧‧使用者資料
38‧‧‧啟動程式
39‧‧‧狀態指示符
40‧‧‧可重寫部分
41‧‧‧不可重寫部分
42‧‧‧箭頭
43‧‧‧箭頭
44‧‧‧非利用區
45‧‧‧箭頭
46‧‧‧箭頭
47‧‧‧箭頭
50‧‧‧箭頭
51‧‧‧箭頭
52‧‧‧箭頭
53‧‧‧箭頭
54‧‧‧箭頭
55‧‧‧箭頭
56‧‧‧箭頭
57‧‧‧箭頭
60‧‧‧印記
61‧‧‧密碼
62‧‧‧大小
63‧‧‧版本
64‧‧‧填充資料
70‧‧‧變數
E0‧‧‧步驟
E1‧‧‧步驟
E2‧‧‧步驟
E3‧‧‧步驟
E4‧‧‧步驟
E5‧‧‧步驟
E6‧‧‧步驟
E7‧‧‧步驟
E8‧‧‧步驟
E9‧‧‧步驟
E10‧‧‧步驟
E11‧‧‧步驟
E12‧‧‧步驟
E13‧‧‧步驟
E14‧‧‧步驟
E15‧‧‧步驟
F2‧‧‧步驟
F3‧‧‧步驟
F4‧‧‧步驟
F5‧‧‧步驟
F8‧‧‧步驟
參考繪示不具限制性之一實施例之附圖,將自【實施方式】明白本發明之其他特性及優點,其中:圖1繪示包含根據本發明之一實施例之一安全元件之一系統;圖2繪示對應於圖1之安全元件之啟動程式之執行之主要步驟;圖3繪示在安全元件之操作系統之更新期間之圖1之系統中之互動;圖4A、圖4B、圖4C及圖4D繪示不同時間之圖1之安全元件之非揮發性記憶體之狀態;圖5A、圖5B、圖5C及圖5D繪示圖1之安全元件之非揮發性記憶體以繪示命令之處理;及圖6及圖7繪示用於判定含有一操作系統之一新加密版本之區塊之一實例。
圖1繪示一系統,其包括一更新器裝置10、一終端機20及板載於終端機20中之一安全元件30。
更新器裝置10具有一電腦之材料架構且尤其包括一微處理器11、 一通信介面12、揮發性記憶體13及非揮發性記憶體14。藉由使用揮發性記憶體13作為一工作區,微處理器11能夠執行儲存於非揮發性記憶體14中之電腦程式。通信介面12與終端機20通信。
非揮發性記憶體14尤其儲存用於安全元件之一操作系統之一新版本(標示為OS(V2)),以及一密鑰K。
更新器裝置10例如為建立於安全元件之一製造者之設施上之一更新伺服器。在此情況中,通信介面12藉由通過一電信網絡(例如經由網際網絡)而建立與終端機20之通信。作為一變體,更新器裝置10本身可為一安全元件,例如一SD卡、一NFC卡或一USB記憶體。在此情況中,通信介面12藉由通過一安全元件讀取器而建立與終端機20之通信。
終端機20例如為屬於一使用者之一可攜式終端機,例如一可攜式電話。
終端機20具有一電腦之材料架構且尤其包括一微處理器21、一通信介面22、揮發性記憶體23、非揮發性記憶體24及一通信介面26。藉由使用揮發性記憶體23作為一工作區,微處理器21執行儲存於非揮發性記憶體24中之電腦程式。通信介面22與更新器裝置10通信。通信介面26與安全元件30通信。
非揮發性記憶體24尤其儲存終端機20之操作系統25、一更新管理程式P1、及使用者之資料及應用程式(圖中繪示其之應用程式A1)。
程式P1之功能為管理安全元件30與用於更新安全元件30之操作系統之更新器裝置10之間之通信。程式P1較佳為整合至終端機20之操作系統25中之一模組,如圖1中所繪示。
安全元件30例如為可移除地容置於終端機20中之一智慧卡。
安全元件30具有一電腦之材料架構且尤其包括一微處理器31、一通信介面36、揮發性記憶體33及非揮發性記憶體34。藉由使用揮發 性記憶體33作為工作區,微處理器31執行儲存於非揮發性記憶體34中之電腦程式。通信介面36與終端機20通信。
非揮發性記憶體34尤其儲存一啟動程式38(標示為BL「啟動載入器」)、一操作系統35、使用者資料37、一MKi金鑰、一序號Ni、操作系統35之一狀態指示符39及表示一鑑認計數器C之值之一變數70。
在所繪示狀態中,操作系統35為不同於由更新器裝置10儲存之版本OS(V2)之一第一版本(標示為OS(V1))。
操作系統35之狀態指示符39可採用一「作用」或「非作用」值。狀態指示符39可例如為儲存於操作系統35中或非揮發性記憶體34中之一狀態位元。下文中描述狀態指示符39之任務。
鑑認計數器C被初始化為一判定值,例如50。在操作系統之更新程序期間,使計數器C遞減。在完成更新程序之後,若後者已成功,則重新初始化計數器。若計數器C之值減小至低於某一臨限值(例如3),則此意謂:操作系統35之太多數量更新嘗試已失敗。在此情況中,阻止更新程序。無法再藉由與更新器裝置10通信而更新操作系統35。然而,可重新初始化安全元件且藉由求助於具有特定存取權之一服務提供者而將一新操作系統載入至該安全元件上。
金鑰MKi及序號Ni對應於由更新器裝置10儲存之密鑰K,且例如儲存於啟動程式38中。更精確而言,更新器裝置10包括根據一保密程序而判定對應於一安全元件i之序號Ni之一金鑰MKi之導出構件。在一未繪示變體中,更新器裝置10儲存複數個安全元件之金鑰MKi及序號Ni。在兩種情況中,更新器裝置10可判定與一序號Ni相關聯之金鑰MKi
使用者資料37尤其包括應用程式,圖中繪示該等應用程式之一應用程式A2且繪示一集合D1之個人資料。操作系統35能夠管理儲存於安全元件30上之應用程式。此等應用程式例如為准許進入支付及運 輸服務之安全應用程式,且利用NFC類型之終端機20之一通信介面。
啟動程式38尤其含有一程式化介面API以允許其執行期間之啟動程式38與操作系統35之間之互動。
經由通信介面26及36之終端機20與安全元件30之間之通信例如基於與標準ISO/IEC 7816-4保持一致之ADPU單元交換。
微處理器31經組態以在安全元件30之起動期間執行啟動程式38。在正常操作中,啟動程式38開始操作系統35之執行。操作系統35管理應用程式之執行及由介面36接收之命令之解譯。
不可修改地儲存啟動程式38。例如,將啟動程式38儲存於ROM類型之非揮發性記憶體34之一部分中。在此情況中,啟動程式38可為初始執行程式之部分,該初始執行程式被安全元件30之製造者用於在安全元件30之試運轉期間載入操作系統35。作為一變體,將啟動程式38儲存於(例如)快閃記憶體類型之可重寫非揮發性記憶體24之一部分中。在此情況中,操作系統35經組態以阻止記憶體之此部分中之任何寫入命令。
現將描述圖1之系統之操作,特定言之,將描述操作系統35之更新以由第二版本OS(V2)替換第一版本OS(V1)。
圖2係繪示對應於啟動程式38之執行之安全元件30之一操作程序之主要步驟的一步驟圖。圖3係繪示圖2之一操作程序期間之在更新器裝置10、終端機20及安全元件30之間交換之訊息的一圖式。
在安全元件30之起動期間,此操作程序開始於步驟E0。如前文所解釋,微處理器31經組態以開始在安全元件30之起動期間執行啟動程式38。例如,啟動程式38位於微處理器31最初指向之非揮發性記憶體34之一預定部位(稱為起動扇區)處。
接著,在步驟E1中,安全元件30判定操作系統35是否在作用中。更精確而言,若非揮發性記憶體34含有操作系統35且狀態指示符 39顯示「作用」值,則可認為操作系統35係作用中的。相反地,若非揮發性記憶體34不含操作系統35或若狀態指示符39顯示「非作用」值,則可認為操作系統35係非作用中的。
若操作系統35係作用中的,則在步驟E12中,啟動程式38開始執行操作系統35。此對應於安全元件30之正常操作模式,在該操作模式期間,操作系統35管理應用程式及通信介面36上所接收之命令之執行。
相反地,若操作系統35係非作用中的,則啟動程式38不會開始執行操作系統35。換言之,啟動程式38保持控制。此之結果尤其在於:通信介面36上所接收之命令由啟動程式38管理。
以此方式,當終端機20之更新管理程式P1發送意欲使操作系統35之更新程序開始之訊息M3及M4時,若操作系統35係非作用中的,則由啟動程式38接收此等訊息M3及M4(步驟E2),或若操作系統35係作用中的,則由操作系統35接收此等訊息M3及M4(步驟F2)。若操作系統35係非作用中的,則下文中首先描述操作系統35之更新程序(步驟E2至步驟E11),接著,在其中操作系統35係作用中的之情況中描述操作系統35之更新程序(步驟F2至步驟F5、步驟E13、步驟E14、步驟F8、步驟E15及步驟E9至步驟E11)。
參考圖3,終端機20將一訊息M1發送至更新器裝置10以向其索要操作系統之最新可用版本。發送訊息M1形成程式P1之執行之部分且(例如)被週期性進行或當滿足一預定條件時進行。
更新器裝置10藉由指定可用版本:V=V2之一訊息M2而對訊息M1作出回應。
接著,終端機20將一訊息M3發送至安全元件30以選擇更新應用程式,即,負責執行步驟E2及後續步驟或步驟F2及後續步驟之啟動程式38或操作系統35之部分。訊息M3例如為新定義之ADPU類型之一 命令(稱為「OS載入器應用程式選擇」)。
接著,終端機20將一訊息M4發送至安全元件30以通知其新版本V2可用。在步驟E2中,由安全元件30接收訊息M4。更精確而言,在其中操作系統係非作用中的之本實例中,由啟動程式38直接管理訊息M4。訊息M4例如為新定義之ADPU類型之一命令(稱為「推播可用版本(PUSH AVAILABLE VERSION)」)。
接著,在步驟E3中,安全元件30判定操作系統之版本。例如,啟動程式38藉由使用API程式化介面而訊問操作系統35。若操作系統35存在,則其藉由給出其版本V而作出回應。若操作系統35不存在,則啟動程式38考量一預設版本V,啟動程式38儲存該預設版本V且該預設版本V對應於由製造者最初載入於安全元件30中之操作系統35之版本。安全元件30驗證:訊息M4中所接收之版本V優於操作系統35之當前版本,即,此實例中之V1。
若訊息M4中所接收之版本V優於操作系統35之當前版本,則在步驟E4中安全元件30藉由終端機20而將一訊息M5發送至更新器裝置10,終端機20藉由一訊息M5'而延長訊息M5。訊息M5含有安全元件30之序號Ni、一隨機數RAND及鑑認計數器C之值(變數70)。
作為訊息M5'中所含之序號Ni之一函數,更新器裝置10根據以上導出程序或藉由諮詢與所接收之序號Ni對應之更新器裝置10儲存之金鑰MKi而判定作為序號Ni及密鑰K之一函數之對應金鑰MKi。接著,更新器裝置10判定作為經判定之金鑰MKi及所接收之隨機數RAND之一函數之一會期金鑰SK及藉由用該會期金鑰SK加密隨機數RAND之鑑認資料AUTH10。更新器裝置10藉由終端機20而將含有鑑認資料AUTH10之一訊息M6發送至安全元件30,終端機20在一訊息M6'中延長訊息M6。訊息M6'例如為新定義之ADUP類型之一命令(稱為「相互鑑認」)。
在步驟E5中,由安全元件30接收訊息M6'。回應於訊息M6'之接收,安全元件30在步驟E6中判定作為主金鑰MKi及隨機數RAND之一函數之通常與由更新器裝置10判定之會期金鑰SK相同之一會期金鑰SK,及藉由用經判定之會期金鑰SK加密隨機數RAND之鑑認資料AUTH30。安全元件30亦使鑑認計數器C遞減。
接著,在步驟E7中,安全元件30比較鑑認資料AUTH10與AUTH30。若為一致,則已由安全元件30完成更新器裝置10之鑑認,即,判定一會期金鑰SK。
若為鑑認,則在步驟E8中安全元件30藉由終端機20而將一訊息M7發送至更新器裝置10,終端機20在一訊息M7'中延長訊息M7。訊息M7'經會期金鑰SK加密且含有步驟E3中所判定之操作系統35之當前版本V1。
接收訊息M7'允許更新器裝置10鑑認安全元件30。例如,若版本編碼於兩個八位元組上且未加密訊息包括16個八位元組,則更新器裝置10可藉由驗證未加密訊息M7'之14個第一八位元組為0而鑑認安全元件。因此,已完成安全元件30與更新器裝置10之間之相互鑑認。
接著,更新器裝置10判定N個區塊OSB1、OSB2、...OSBN。各區塊包括經會期金鑰SK加密之操作系統之部分。數目N經選擇使得一區塊之大小充分受限制以被傳輸至ADPU類型之一單一命令中。在一或多個訊息M8中,更新器裝置10將經判定之區塊傳輸至終端機20。終端機20儲存所接收之區塊,直至全部區塊被接收。
接著,終端機20將一連串訊息M91、M92、...M9N發送至安全元件30,各訊息M91、M92、...M9N含有區塊OSB1、OSB2、...OSBN之一者。各區塊藉由使用會期金鑰SK而未經安全元件30加密,且儲存於操作系統35之版本V1之位置處。
各訊息M9j(j為自1至N-1)例如為新定義之ADPU類型之一命令(稱 為「載入區塊」),安全元件30經由一確認訊息M9j'而對訊息M9j作出回應。訊息M9N例如為新定義之ADPU類型之一命令(稱為「載入最後區塊」)。由安全元件30接收訊息M91、M92、...M9N構成操作系統之新版本之一接收步驟E9。
在接收最後訊息M9N之後,在步驟E10中,安全元件30例如藉由一循環冗餘控制測試而完成所接收操作系統之新版本之驗證。
若在步驟E11中驗證測試,則安全元件30重新初始化計數器C,啟動操作系統35,及開始操作系統35之執行。在此階段中,操作系統35之新版本因此由安全元件30執行。
在其中步驟E1判定操作系統35係作用中的之情況中,操作類似於前文所描述之操作且現將描述主要差異。在步驟E12中,安全元件30執行操作系統35。以此方式,如前文所解釋,由操作系統35管理所接收之訊息M4。圖2之步驟F2至步驟F5對應於前文所描述之步驟E2至步驟E5,但對應於操作系統35之指令之執行,而非對應於啟動程式38之指令之執行。
在接收鑑認資料AUTH10之後,操作系統35藉由程式化介面API而查詢啟動程式38,使得其在類似於步驟E6及步驟E7之步驟E13及步驟E14期間驗證鑑認資料AUTH10。接著,操作系統35經由步驟F8中之訊息M7而作出回應。接著,操作系統35在步驟E15中交遞至啟動程式38。
在步驟E15中,啟動程式38停用操作系統35。例如,啟動程式清除非揮發性記憶體34之操作系統35,或將狀態指示符39之值修改為「非作用」。後續步驟E9至步驟E11類似於前文所描述之步驟。
步驟E1至步驟E15對應於由微處理器31執行啟動程式38之指令。步驟F2至步驟F5及步驟F8對應於由微處理器31執行操作系統35之指令。
圖4A至圖4D繪示在安全元件30之製程之不同瞬間及操作系統35之更新之不同瞬間之非揮發性記憶體34之內容。圖4A及圖4B展示:在此實例中,非揮發性記憶體34包括(例如)快閃記憶體類型之一可重寫部分40及ROM類型之一不可重寫部分41。
圖4A繪示非揮發性記憶體34之初始狀態。部分40係空的及部分41包括卡之製造者之初始啟動程式。在此初始狀態中,微處理器31經組態以開始在安全元件30之起動期間執行此初始啟動程式,如由箭頭42所繪示。該初始啟動程式之功能為能夠在藉由製造者之安全元件30之個人化期間將啟動程式38、操作系統35及使用者資料37載入至非揮發性記憶體34之部分40中。
圖4B繪示在由製造者個人化安全元件30之後之非揮發性記憶體34之狀態。部分40包括啟動程式38、操作系統35(版本OS(V1))、使用者資料37及一非利用區44。部分41之初始啟動程式已被停用且微處理器31經組態以在安全元件30之起動期間開始執行啟動程式38,如由箭頭43所繪示。在此狀態中,操作系統35被啟動且啟動程式38因此開始執行操作系統35,如由箭頭45所繪示。此對應於前文所描述之步驟E0、步驟E1及步驟E12。
圖4C繪示在操作系統35之更新程序期間之非揮發性記憶體34之部分40。更精確而言,在圖4C之狀態中,已藉由刪除或藉由修改狀態指示符39而停用操作系統35(圖2之步驟E15)。啟動程式38接收訊息M9i(如由箭頭46所繪示)且將此等訊息中所含之區塊OSBi儲存於操作系統35之早前版本之位置處(如箭頭47所繪示)。此對應於圖2之步驟E9。
圖4D繪示在更新操作系統35之後之非揮發性記憶體34之部分40(圖2之步驟E11)。部分40包括啟動程式38、操作系統35(版本OS(V2))、使用者資料37及一非利用區44。由於操作系統35之版本 OS(V1)及OS(V2)無需具有相同大小,所以圖4D與圖4B之間之非利用區44可具有一不同大小。在所繪示狀態中,啟動操作系統35。微處理器31經組態以在安全元件之起動期間開始執行啟動程式38,如由箭頭43所繪示。在此狀態中,操作系統35被啟動且啟動程式38因此開始執行操作系統35,如由箭頭45所繪示。
圖5A至圖5D繪示藉由安全元件30之訊息M4(命令ADPU「推播可用版本」)及訊息M6'(命令ADPU「相互鑑認」)之處理之一實例。
特定言之,圖5A繪示在操作系統35係作用中時之一訊息M4(命令ADPU「推播可用版本」)之處理。因此,接收訊息M4對應於圖2之步驟F2。回應於訊息M4,操作系統35查詢啟動程式38以判定操作系統35之版本(箭頭50)。接著,啟動程式38諮詢操作系統35中之版本資訊(箭頭51)且對操作系統作出回應(箭頭52)。由程式化介面API完成此等交換。接著,操作系統35經由一訊息M5而作出回應,其對應於圖2之步驟F4。
藉由比較,圖5B繪示在操作系統35係非作用中時之一訊息M4(命令ADPU「推播可用版本」)之處理。在此實例中,已清除操作系統35。接收訊息M4對應於圖2之步驟E2。回應於訊息M4,啟動程式38嘗試查詢操作系統35以判定操作系統35之版本(箭頭53)。由於操作系統35已被清除,所以啟動程式38未接收到回應且因此使用其儲存之預設版本。接著,啟動程式38經由一訊息M5而作出回應,其對應於圖2之步驟E4。
圖5C繪示在操作系統35係作用中時之一訊息M6'(命令ADPU「相互鑑認」)之處理。因此,接收訊息M6'對應於圖2之步驟F5。回應於訊息M6',操作系統35查詢啟動程式38以驗證更新器裝置10之鑑認資料AUTH10(箭頭54)。啟動程式38藉由使用主金鑰MKi而驗證鑑認資料AUTH10(箭頭56)。此對應於圖2之步驟E13及步驟E14。啟動程式38確 認操作系統之鑑認(箭頭55)。接著,操作系統35經由一訊息M7而作出回應,其對應於圖2之步驟F8。
藉由比較,圖5D繪示在操作系統35係非作用中時之一訊息M6'(命令ADPU「相互鑑認」)之處理。因此,接收訊息M6'對應於圖2之步驟E5。回應於訊息M6',啟動程式38藉由使用主金鑰MKi而驗證鑑認資料AUTH10(箭頭57)。此對應於圖2之步驟E6及步驟E7。啟動程式38確認鑑認且經由一訊息M7而作出回應,其對應於圖2之步驟E8。
參考圖2及圖3,圖中描述安全元件30與更新器裝置10之間之相互鑑認及加密通信之實現。專家能夠選擇金鑰之格式及適合於實施此等函數之密碼編譯演算法。下文中給出此之一非限制性實例。
更新器裝置10儲存32個八位元組之一密鑰K。當更新器裝置10接收16個八位元組之一序號Ni時,更新器裝置10可判定作為K及Ni之一函數之對應於序號為Ni之安全元件30之32個八位元組之金鑰MKi。用於計算作為K及Ni之一函數之MKi之演算法可由系統之設計者選擇且被保密以改良安全性。序號Ni之使用區分鑑認資料與不同安全元件之加密。安全元件直接儲存金鑰MKi且因此不必計算作為K及Ni之一函數之MKi
可藉由使用演算法AES-256而判定作為金鑰MKi及32個八位元組之隨機數RAND之一函數之會期金鑰SK。更新器裝置10及安全元件30兩者計算:SK=AES-256(MKi,RAND)。
可使用另一變數(偽隨機變數、日期、遞增數...)來取代隨機數RAND。
亦可藉由使用演算法AES-256而判定作為會期金鑰SK及隨機數RAND之一函數之鑑認資料AUTH10及AUTH30。以此方式,更新器裝置10計算AUTH10=AES-256(SK,RAND)。對應地,安全元件30計算AUTH30=AES-256(SK,RAND)。藉由比較所接收之鑑認資料AUTH10 與經判定之鑑認資料AUTH30,安全元件30完成更新器裝置10之鑑認。
由安全元件30發送至更新器裝置10之訊息M7包括藉由使用演算法AES-256-CBC-ISO9797-M1而由會期金鑰SK加密之操作系統35之當前版本V1:M7=AES-256-CBC-ISO9797-M1(SK,V1)。此允許由更新器裝置10鑑認安全元件30。為此,使用模式CBC(「密碼塊鏈接」)且使用被判定為作為隨機數RAND之一函數之一ICV密碼電文。例如,藉由將演算法AES-256應用於隨機數RAND之16個中央八位元組而判定ICV。
以此方式,可完成安全元件30與更新器裝置10之間之相互鑑認。
圖6及圖7繪示由更新器裝置10判定含有操作系統35之加密新版本OS(V2)之區塊OSB1、OSB2、...OSBN之一實例。
操作系統之編碼(標示為OS(V2))為尤其含有可由微處理器31執行之指令之一組未加密資料。更新器裝置10在編碼OS(V2)之端部處添加一印記60。例如藉由使用演算法SHA-512而判定印記60。
接著,更新器裝置10將一密碼61、編碼OS(V2)之大小62及編碼OS(V2)之操作系統之版本63添加至編碼OS(V2)之開頭部分。密碼61例如編碼於4個八位元組上且為更新器裝置10及安全元件30所知。密碼61在經由安全元件30之所接收操作系統之驗證期間提供額外安全性。大小62例如編碼於四個八位元組上。編碼OS(V2)之操作系統之版本63例如編碼於兩個八位元組上。
接著,更新器裝置10將填充資料64(例如值「0」之八位元組)添加至由密碼61、大小62、版本63、編碼OS(V2)及印記60形成之集合之端部以達成八位元組之一總數(其為16之N倍)。因此,可分解形成於含有未加密編碼OS(V2)之16個八位元組之N個區塊Data1、 Data2、...DataN中之全部資料。
更新器裝置10自區塊Data1、Data2、...DataN判定含有加密編碼OS(V2)之區塊OSB1、OSB2、...OSBN,例如圖7中所繪示。
在圖7中,ICV為被判定為作為隨機數RAND之一函數之一密碼電文。例如,藉由將演算法AES-256應用於隨機數RAND之16個中央八位元組而判定ICV。
接著,藉由使用金鑰SK及ICV密碼電文而由CBC(「密碼塊鏈接」)模式中之演算法AES-256實施區塊Data1、Data2、...DataN之加密。以此方式,由一XOR操作(OU互斥)組合ICV密碼電文及區塊Data1。接著,藉由使用會期金鑰SK及演算法AES-256來判定區塊OSB1而加密此操作XOR之結果。
對於以下各區塊Data(i),以類似方式但藉由使用取代ICV密碼電文之區塊OSB(i-1)而判定對應區塊OSB(i)。
在已接收各區塊OSB(i)之後,在圖2之步驟E9中,安全元件30可用會期金鑰SK解密所接收之資料。接著,在步驟E10中,尤其是印記60及密碼61之驗證偵測任何損壞。
圖1之系統具有若干優點。
特定言之,可更新安全元件30之操作系統35。可在一使用者準備操作終端機20中之安全元件30時完成此更新。在終端機20與更新器裝置10之間通過一電信網絡通信之情況中,使用者不必到達一判定地點(諸如一服務提供者之商店)。可整體地替換操作系統35。在更新期間,未修改使用者資料37。以此方式,在更新之後,使用者仍具有其應用程式及其個人資料。此外,不必中斷終端機20之操作。
由於更新器裝置10與安全元件30之相互鑑認及更新器裝置10與安全元件30之間之加密通信,一第三方無法獲得操作系統之新版本OS(V2)或無法藉由使其自身仿冒為更新器裝置10而將一損壞版本提 供至安全元件30。特定言之,若終端機20之程式P1由一損壞版本替換,則此版本至多可獲得加密區塊OSB(i)。換言之,操作系統之機密性及完整性係受保護的。此等特性可實現安全元件及/或系統之認證。
更新器裝置10可計數已失敗之相互鑑認之嘗試。若此數字達到一判定臨限值,則更新器裝置10可採取一保護步驟,例如發送一警報或將安全元件列入黑名單。
由於相互鑑認及加密係基於安全元件之一序號,所以其等經由安全元件而多樣化。因此,一故障不影響鏈接至更新器裝置之全部安全元件。
隨機數RAND由安全元件產生,而非由更新器裝置10產生。此限制強加於更新器裝置之工作負荷,其在與諸多安全元件相關之一更新器裝置之情況中尤其明顯。
使用相同會期金鑰SK用於相互鑑認及安全元件與更新器裝置之間之加密通信會限制依安全元件之等級之所需資源。但在一變體實施例中,相互鑑認及加密通信使用不同金鑰。
終端機20上之程式P1之存在適應終端機20在操作系統之更新期間之效能。例如,可在更新期間停用採用安全元件30之應用程式之終端機20之應用程式。
10‧‧‧更新器裝置
11‧‧‧微處理器
12‧‧‧通信介面
13‧‧‧揮發性記憶體
14‧‧‧非揮發性記憶體
20‧‧‧終端機
21‧‧‧微處理器
22‧‧‧通信介面
23‧‧‧揮發性記憶體
24‧‧‧非揮發性記憶體
25‧‧‧操作系統
26‧‧‧通信介面
30‧‧‧安全元件
31‧‧‧微處理器
33‧‧‧揮發性記憶體
34‧‧‧非揮發性記憶體
35‧‧‧操作系統
36‧‧‧通信介面
37‧‧‧使用者資料
38‧‧‧啟動程式
39‧‧‧狀態指示符
70‧‧‧變數

Claims (11)

  1. 一種安全元件(30),其包括至少一微處理器(31)、一非揮發性記憶體(34)及一通信介面(36),該安全元件(30)能夠經由該通信介面(36)而與一更新器裝置(10)通信,該非揮發性記憶體(34)儲存至少一啟動程式(38),該微處理器(31)經組態以在該安全元件(30)之起動期間執行該啟動程式(38),該安全元件(30)之特徵在於該啟動程式(38)包括用於執行以下步驟之指令:用於判定該非揮發性記憶體(34)是否儲存一作用中操作系統(35)且若為肯定的則開始執行該操作系統(35)之一起動步驟(E1、E12);作為由該安全元件(30)判定之第一鑑認資料(AUTH30)及自該更新器裝置(10)接收之第二鑑認資料(AUTH10)之一函數之該更新器裝置(10)之一鑑認步驟(E4、E5、E6、E7、E13、E14);回應於該鑑認步驟,該非揮發性記憶體(34)中之自該更新器裝置(10)接收之一新操作系統之一儲存步驟(E9、E10)及該新操作系統之一啟動步驟(E11),當由該微處理器(31)執行該等指令時執行上述步驟。
  2. 如請求項1之安全元件(30),其中該更新器裝置之該鑑認步驟包括:將含有一變數(RAND)之一訊息(M5)發送至該更新器裝置(10)之一步驟(E4);接收該第二鑑認資料(AUTH10)之一步驟(E5);作為該變數(RAND)及儲存於該非揮發性記憶體(34)中之一金鑰(MKi)之一函數之該第一鑑認資料(AUTH30)之一判定步驟(E6、E13);及 該第一鑑認資料(AUTH30)與該第二鑑認資料(AUTH10)之一比較步驟(E7、E14)。
  3. 如請求項2之安全元件(30),其中該啟動程式(38)包括用於執行以下步驟之指令:將作為該金鑰(MKi)及該變數(RAND)之一函數之含有一(V1)加密資料之一訊息(M7)發送至該更新器裝置(10)之一步驟(E8)。
  4. 如請求項2或3之安全元件(30),其中該非揮發性記憶體(34)包括一操作系統(35),該操作系統(35)包含用於執行以下步驟之指令:將含有該變數(RAND)之一訊息(M5)發送至該更新器裝置(10)之一步驟(F4);該第二鑑認資料(AUTH10)之一接收步驟(F5)。
  5. 如請求項4之安全元件(30),其中該操作系統(35)包含用於執行以下步驟之指令:將作為該金鑰(MKi)及該變數(RAND)之一函數之含有一加密資料(V1)之一訊息(M7)發送至該更新器裝置(10)之一步驟(F8)。
  6. 如請求項1至5中任一項之安全元件(30),其中該儲存步驟包括:接收經加密之該新操作系統。
  7. 如請求項2及6之安全元件(30),其中該鑑認步驟包括判定作為該金鑰(MKi)及該變數之一函數之一會期金鑰(SK),該儲存步驟包括接收經該會期金鑰(SK)加密之該新操作系統。
  8. 如請求項1至7中任一項之安全元件(30),其中該啟動程式(38)儲存於該非揮發性記憶體(34)之一不可重寫部分(41)中。
  9. 如請求項1至7中任一項之安全元件(30),其中該啟動程式(38)儲存於該非揮發性記憶體(34)之一可重寫部分(40)中,該非揮發性記憶體(34)含有經組態以阻止該啟動程式(38)上之寫入命令之一 操作系統(35)。
  10. 一種終端機(20),其包括至少一微處理器(21)、一非揮發性記憶體(24)及如請求項1至9中任一項之安全元件(30),該終端機(20)之該非揮發性記憶體(24)包括一更新管理程式(P1)及用於使用由該安全元件(30)提供之一服務之一應用程式(A1),該更新管理程式(P1)具有用於執行以下步驟之指令:包括自該更新器裝置(10)接收該新操作系統及將該新接收之操作系統發送至該安全元件之一傳輸步驟;在至少該傳輸步驟期間之該服務之一停用步驟,當由該終端機(20)之該微處理器(21)執行該等指令時執行上述步驟。
  11. 一種系統,其包括如請求項1至9中任一項之至少一安全元件(30)及儲存該操作系統之新版本之一更新器裝置(10)。
TW102125961A 2012-07-20 2013-07-19 更新用於安全裝置之操作系統 TWI510959B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR1257062A FR2993682B1 (fr) 2012-07-20 2012-07-20 Mise a jour d'un systeme d'exploitation pour element securise

Publications (2)

Publication Number Publication Date
TW201413491A true TW201413491A (zh) 2014-04-01
TWI510959B TWI510959B (zh) 2015-12-01

Family

ID=47003055

Family Applications (1)

Application Number Title Priority Date Filing Date
TW102125961A TWI510959B (zh) 2012-07-20 2013-07-19 更新用於安全裝置之操作系統

Country Status (10)

Country Link
US (1) US9779246B2 (zh)
EP (1) EP2688010B1 (zh)
JP (1) JP6214259B2 (zh)
KR (1) KR101517286B1 (zh)
CN (1) CN103577221B (zh)
BR (1) BR102013020063B1 (zh)
ES (1) ES2795101T3 (zh)
FR (1) FR2993682B1 (zh)
RU (1) RU2643457C2 (zh)
TW (1) TWI510959B (zh)

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102011015710A1 (de) * 2011-03-31 2012-10-04 Giesecke & Devrient Gmbh Verfahren zum Aktualisieren eines Datenträgers
FR3019347B1 (fr) 2014-03-25 2017-07-21 Oberthur Technologies Securisation du chargement de donnees dans une memoire non-volatile d'un element securise
EP2930641B1 (en) 2014-04-07 2019-04-03 Nxp B.V. Method of Programming a Smart Card, Computer Program Product and Programmable Smart Card
FR3023951B1 (fr) * 2014-07-15 2016-08-05 Oberthur Technologies Procede d'etablissement d'une session de communication via une interface swp
US9934014B2 (en) * 2014-08-22 2018-04-03 Apple Inc. Automatic purposed-application creation
DE102014220616A1 (de) * 2014-10-10 2016-04-14 Bundesdruckerei Gmbh Verfahren zum Laden von ausführbaren Programminstruktionen in eine Chipkarte im Wirkbetrieb
DE102014224278A1 (de) * 2014-11-27 2016-06-02 Bundesdruckerei Gmbh Verfahren zum Nachladen von Software auf eine Chipkarte durch einen Nachladeautomaten
KR102459703B1 (ko) * 2014-12-29 2022-10-27 엘지디스플레이 주식회사 유기발광다이오드 표시장치와 그 구동방법
KR101662947B1 (ko) * 2015-03-25 2016-10-05 (주)에이티솔루션즈 보안운영체제를 이용한 세션보안 제공 방법
EP3086254A1 (en) * 2015-04-22 2016-10-26 Gemalto Sa Method of managing applications in a secure element when updating the operating system
JP2017033149A (ja) 2015-07-30 2017-02-09 株式会社東芝 情報処理装置、コントローラ、及び、情報処理装置の制御方法
JP6602102B2 (ja) * 2015-08-21 2019-11-06 三菱電機株式会社 プログラム更新制御装置、情報家電機器、プログラム更新システム、プログラム更新方法およびプログラム
EP3160166A1 (en) * 2015-10-19 2017-04-26 Gemalto Sa Method for managing applications in a secure element
EP3176695A1 (en) * 2015-12-04 2017-06-07 Gemalto Sa Method for managing a package in a secure element
EP3208717A1 (en) * 2016-02-17 2017-08-23 Gemalto Sa Method for managing objects in a secure element
WO2017171749A1 (en) * 2016-03-30 2017-10-05 Ford Global Technologies, Llc Vehicle computer update authentication
WO2018227729A1 (zh) * 2017-06-14 2018-12-20 华为技术有限公司 一种嵌入式通用集成电路卡配置文件的管理方法及装置
KR102057665B1 (ko) * 2017-07-04 2020-01-22 주식회사 웨인 리눅스 계열 운영체제 배포시스템
US10769279B2 (en) * 2017-08-24 2020-09-08 Apple Inc. Secure element operating system update notification
JP6988444B2 (ja) * 2017-12-20 2022-01-05 大日本印刷株式会社 初期設定方法、セキュアエレメント、デバイス及びプログラム
US10789364B2 (en) * 2018-05-02 2020-09-29 Nxp B.V. Method for providing an authenticated update in a distributed network
CN108874418B (zh) * 2018-05-23 2022-04-05 北京五八信息技术有限公司 Ui组件的更新方法、装置、终端及计算机可读存储介质
EP3736716B1 (en) * 2019-05-10 2021-12-22 Aptiv Technologies Limited Method for protecting an electronic control unit
US11240634B1 (en) * 2020-01-02 2022-02-01 II Leon Tyrone Cain Systems and methods for initiating a secure media session between mobile computing devices during image capture
EP4113341A1 (en) * 2021-06-30 2023-01-04 Giesecke+Devrient Mobile Security GmbH Encryption scheme for providing software updates to an update agent
EP4307142A1 (en) * 2022-07-13 2024-01-17 Giesecke+Devrient Mobile Security Germany GmbH Update agent for multiple operating systems in a secure element

Family Cites Families (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4216914B2 (ja) 1997-10-17 2009-01-28 株式会社リコー ネットワークシステム
US5987605A (en) * 1998-02-28 1999-11-16 Hewlett-Packard Co. Methods and apparatus for dual-boot memory selection, update, and recovery in a programmable device
DE19925389A1 (de) * 1999-06-02 2000-12-21 Beta Res Gmbh Verfahren und Vorrichtung zur Übertragung von Daten auf SmartCards
DE19926389B4 (de) 1999-06-10 2008-02-07 Behr Gmbh & Co. Kg Luftführungsanordnung für eine Kraftfahrzeug-Klimatisierungsanlage
US20030182414A1 (en) * 2003-05-13 2003-09-25 O'neill Patrick J. System and method for updating and distributing information
US6944854B2 (en) * 2000-11-30 2005-09-13 International Business Machines Corporation Method and apparatus for updating new versions of firmware in the background
CN1734418A (zh) * 2004-08-09 2006-02-15 上海乐金广电电子有限公司 存储器程序更新方法
US7698698B2 (en) * 2004-09-30 2010-04-13 Smith Micro Software, Inc. Method for over-the-air firmware update of NAND flash memory based mobile devices
JP2006127267A (ja) * 2004-10-29 2006-05-18 Toshiba Corp 情報処理装置およびブート制御方法
US7522732B2 (en) * 2004-11-09 2009-04-21 Lexmark International, Inc. Method for controlling the distribution of software code updates
US7865740B2 (en) * 2005-09-27 2011-01-04 Intel Corporation Logging changes to blocks in a non-volatile memory
KR100778293B1 (ko) * 2005-10-10 2007-11-22 삼성전자주식회사 디지털방송처리장치 및 디지털방송처리장치 부트로더의업그레이드 방법
JP2007213494A (ja) 2006-02-13 2007-08-23 Ntt Docomo Inc 更新起動装置及び更新起動制御方法
KR101426710B1 (ko) * 2006-07-14 2014-09-23 삼성전자주식회사 휴대단말기의 버전정보 갱신 장치 및 방법
KR20080039046A (ko) 2006-10-31 2008-05-07 삼성전자주식회사 펌웨어 업데이트 장치 및 방법
JP2008276555A (ja) 2007-04-27 2008-11-13 Toshiba Corp 情報処理装置、およびファームウェア更新方法
US8635608B2 (en) 2007-09-04 2014-01-21 Teradata Us, Inc. Software update system and method
US8429643B2 (en) * 2007-09-05 2013-04-23 Microsoft Corporation Secure upgrade of firmware update in constrained memory
US8162227B2 (en) * 2007-11-12 2012-04-24 Micron Technology, Inc. Intelligent controller system and method for smart card memory modules
US8286883B2 (en) * 2007-11-12 2012-10-16 Micron Technology, Inc. System and method for updating read-only memory in smart card memory modules
US8522354B2 (en) * 2008-05-24 2013-08-27 Via Technologies, Inc. Microprocessor apparatus for secure on-die real-time clock
US8055893B2 (en) * 2008-08-28 2011-11-08 Lenovo (Singapore) Pte. Ltd. Techniques for booting a stateless client
JP5113700B2 (ja) * 2008-09-24 2013-01-09 株式会社日立ソリューションズ ファームウェア更新装置及び方法
TW201027324A (en) * 2009-01-14 2010-07-16 Giga Byte Tech Co Ltd Embedded electronic device free from being stuck in update failure and method of making the same
JP5220675B2 (ja) 2009-04-07 2013-06-26 株式会社日立製作所 シンクライアントマスタの書換システム、シンクライアントマスタの書換方法、およびシンクライアント
JP2012058803A (ja) 2010-09-06 2012-03-22 Dainippon Printing Co Ltd シンクライアントシステム、およびオペレーティングシステム更新方法
US8756409B2 (en) * 2010-10-13 2014-06-17 International Business Machines Corporation System, method and computer program product for retrieving data at boot time
EP2453352A1 (en) * 2010-11-08 2012-05-16 Gemalto SA Software updating process for an embedded device
CA2806488A1 (en) * 2011-05-09 2012-11-15 I Think Security Ltd. System, apparatus and method for securing electronic data independent of their location

Also Published As

Publication number Publication date
FR2993682B1 (fr) 2014-08-22
JP6214259B2 (ja) 2017-10-18
BR102013020063A2 (pt) 2015-10-20
JP2014029688A (ja) 2014-02-13
US20140025940A1 (en) 2014-01-23
KR101517286B1 (ko) 2015-05-04
TWI510959B (zh) 2015-12-01
FR2993682A1 (fr) 2014-01-24
EP2688010B1 (fr) 2020-03-04
CN103577221B (zh) 2018-12-18
US9779246B2 (en) 2017-10-03
EP2688010A1 (fr) 2014-01-22
RU2643457C2 (ru) 2018-02-01
KR20140011998A (ko) 2014-01-29
ES2795101T3 (es) 2020-11-20
RU2013133975A (ru) 2015-01-27
CN103577221A (zh) 2014-02-12
BR102013020063B1 (pt) 2021-10-13

Similar Documents

Publication Publication Date Title
TWI510959B (zh) 更新用於安全裝置之操作系統
CN110968844B (zh) 离线状态下的软件授权方法、服务器及可读存储介质
TWI598814B (zh) 用於管理及診斷配備有統一可延伸韌體介面(uefi)相容韌體的計算裝置之系統與方法
CN103593621B (zh) 用于管理安全元件的方法、安全元件和移动通信装置
US9787663B2 (en) Replaying a batch of secure commands in a secure channel
CN110688660B (zh) 一种终端安全启动的方法及装置、存储介质
CN106133739B (zh) 数据到安全元件的非易失性存储器中的加载的安全保护
CN108270739B (zh) 一种管理加密信息的方法及装置
US11102014B2 (en) Method for handling data in a secure container
EP2378414A2 (en) Remote update method for firmware
EP2051181A1 (en) Information terminal, security device, data protection method, and data protection program
CN112257093B (zh) 数据对象的鉴权方法、终端及存储介质
JP4226556B2 (ja) プログラム実行制御装置、os、クライアント端末、サーバ、プログラム実行制御システム、プログラム実行制御方法、プログラム実行制御プログラム
CN104868998A (zh) 一种向电子设备供应加密数据的系统、设备和方法
CN115859267A (zh) 一种应用程序安全启动的方法、存储控制芯片和电子设备
EP3292654B1 (en) A security approach for storing credentials for offline use and copy-protected vault content in devices
JP7296390B2 (ja) 電子デバイスの無欠性検査
CN110313005B (zh) 用于设备应用的安全性架构
CN108228219B (zh) 一种带外刷新bios时验证bios合法性的方法及装置
EP4254855A1 (en) A device and a method for controlling use of a cryptographic key
WO2022144438A1 (en) A system, apparatus and method for memory efficient updating of firmware
CN117708896A (zh) 用于保护嵌入式设备固件数据的方法以及嵌入式设备
JP5180264B2 (ja) 装置鍵