TW201109969A - Method and system for securely updating field upgradeable units - Google Patents
Method and system for securely updating field upgradeable units Download PDFInfo
- Publication number
- TW201109969A TW201109969A TW099126719A TW99126719A TW201109969A TW 201109969 A TW201109969 A TW 201109969A TW 099126719 A TW099126719 A TW 099126719A TW 99126719 A TW99126719 A TW 99126719A TW 201109969 A TW201109969 A TW 201109969A
- Authority
- TW
- Taiwan
- Prior art keywords
- memory
- information
- update
- updated
- network device
- Prior art date
Links
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/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/3247—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 digital signatures
-
- 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/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
- G06F21/572—Secure firmware programming, e.g. of basic input output system [BIOS]
-
- 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/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
- G06F21/575—Secure boot
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4406—Loading of operating system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/08—Payment architectures
- G06Q20/12—Payment architectures specially adapted for electronic shopping systems
- G06Q20/123—Shopping for digital content
- G06Q20/1235—Shopping for digital content with control of digital rights management [DRM]
-
- 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/14—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
-
- 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/30—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
-
- 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
- Y04—INFORMATION OR COMMUNICATION TECHNOLOGIES HAVING AN IMPACT ON OTHER TECHNOLOGY AREAS
- Y04S—SYSTEMS INTEGRATING TECHNOLOGIES RELATED TO POWER NETWORK OPERATION, COMMUNICATION OR INFORMATION TECHNOLOGIES FOR IMPROVING THE ELECTRICAL POWER GENERATION, TRANSMISSION, DISTRIBUTION, MANAGEMENT OR USAGE, i.e. SMART GRIDS
- Y04S40/00—Systems for electrical power generation, transmission, distribution or end-user application management characterised by the use of communication or information technologies, or communication or information technology specific aspects supporting them
- Y04S40/20—Information technology specific aspects, e.g. CAD, simulation, modelling, system security
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Business, Economics & Management (AREA)
- Accounting & Taxation (AREA)
- Computing Systems (AREA)
- Finance (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- Stored Programmes (AREA)
- Storage Device Security (AREA)
Description
201109969 六、發明說明: 【發明所屬之技術領域】 本發明所揭示之實施例一般係有關於保護計算系統安 全之領域,特別是關於執行安全之程式升級。 【先前技術】 在農置付諸實際使用之後,可能會想要增強或更新其 功此。因此’有必要安全地更新「現場可升級單元 upgradeable unit)」中的軟體或韌體(firmware),使得攻擊者 無法以偽造的資訊修改該等單元。 現有之系統係藉由在軟體中簽認密碼金鑰 (cryptographic key)以保護軟體免於假造之修改。例如,一 ^央機房可以發出一個附含一簽章之更新至一現場可升級 早疋。該簽章及一中央機房之私鑰(private key)可以一起使 用以認證該更新之有效性以及其來源。#發出一更新之 時’上述之現場可升級單元利用公鑰(_& k…認證該更 新。若㈣相符,則現場可升級單元可以安裝該更新。若 更新簽章無法被認證,則現場可核單元決定該更新係偽 造的並拒絕其安裝。 更新之認證有賴於假設中央機房之私輪被用以產生— 有效的簽章’其可以在現場可升級單元中與公鍮之複本進 仃遇證。雖然公鑰及私鑰可以被安全地儲存,但攻擊者可 能取得密鑰。例如,只要給予充分的時間和計算資源,攻 擊者可能經由對公鑰的暴力式攻擊而解以 201109969 經由涉入現場可升級單元生產的人員竊取該密鑰的「鼴鼠 式攻擊(mole attack)」而被破解。實體之攻擊則是藉由取得 一個現場可升級單元並置換其整個記憶體而使得其可以存 取公鑰。 擁有中央機房私鑰的攻擊者可以破解—整個網路。舉 例而言,該攻擊者可以使用私鑰散佈一假造之更新。由= 攻擊者的假造更新係以有效的密瑜簽章及/或加密,現場可 升、.及單TL使用纟公錄解密並認、證該假s t新。如此一來 〇、致月b節點軟體或動體被更新成無^^及且亞 意的軟體。 ’心 日抵不此等攻擊的辦法之—係週期性地更新儲存於每一 破級早A之中的中央機房公鑰,從而避免使用已被 ’ A機房私鑰。換言之,若想要抵禦暴力式攻擊, 、、機房A矯的更新速度應比該密錄被攻擊者推導出來 =,快。對於龜鼠式攻擊的抵抗,中央機房公錄應在 元細體之前更新。、機房私鑰置換—現場可升級單 L努、明内容】 中的Π明揭示用於安全升級例如現場可升級單元之裝置 以判定I二糸統及方法。接收—更新物件之後,-裝置可 值::隱體I—預先定義之位置是否包含-特定之數 值,咳裝置,疋之指令。依據該預先定義位置中之該數 /、可以將該接㈣的更新物件儲存於記憶體中之 201109969 一驗證部分。在驗證該更新物件之真實性之後,該裝置可 以自上述記憶體中之驗證部分將該更新物件複製到安全記 憶體中之一非活躍(inactive)部分。記憶體之該非活躍部分 可以與女全記憶體之一活躍(active)部分互換,使得該非活 躍部分變成活躍。 【實施方式】 本說明書揭示之系統及方法係對網路裝置進行資訊更 新。在一些示範性實施例之中,被更新之資訊可以包含裝 置中的密碼金鑰、軟體及/或韌體。藉由更新裝置中的資訊, 可乂防止攻擊者利用竊取之密输將假造之資訊定期地置放 於裝置上。例如,在一攻擊者取得中央機房私鑰之複本之 事件中或者預期-攻擊者取得中央機房㈣之複本時,本 說明書所揭不之示範性實施例允許一網路操作者產生至少 一新的私鑰並在該攻擊者可以使用竊取的私鑰之前更新網 路裝置中對應的公錄。此外,示範性實施例阻擋存在於網 路裝置中之公鑰之破解。 圖1係例示一示範性系統1〇〇之方塊圖示範性系統 wo包含現場可升級單元110A_U0D(共同稱為「現場可升 單元110」) 主機120以及網路130。一現場可升級單 凡110可以是任何可程式資料處理裝置。舉例而言,一現 场可升級單元110彳以是一 一般用途電腦、一伺服器、— 、用路裝置(例如’間道器(gateway)、終端設備' 交換機、中 繼器(repeater)、路由器(刚㈣)' 一特定用途裝置(例如, 201109969 住家設施儀錶(residential utility meter)、遠端感測器、機上 盒(set-top box)、遊戲裝置、行動電話)、或是一家用電器(例 如,電冰箱或洗碗機)。主機120可以是任何計算及/或通訊 裝置,用以透過鏈結112傳送及/或接收資訊。例如,主機 120可以是一祠服器、一工作站、一大型電腦(mainframe computer)、一微型電腦(mini_franie computer)、一桌上型電 月6)、一膝上型電腦、一個人數位助理(pers〇nal以目丨⑷ assistant)、或者任何其它計算或通訊裝置。 現場可升級單元1 1 〇可以透過鏈結1 i 2通訊耦接至其 匕現场可升級早元以及主機12〇。在本揭示之中,「通訊耗 接」一詞係指介於二或多個元件之間的任何直接或間接通 訊,無論該等元件彼此之間是否實體接觸。通訊鏈結丨12 可以是使用各種通訊協定之有線形式、固定無線形式、或 是行動無線鏈結。通訊鏈結112可以包含任何硬體、軟體、 韌體、或該等項目之組合。舉例而言,通訊鏈結1 i 2可以 包含一雙絞線電話線路、一光纖線路、一數位用戶線路 (Digital Subscriber Line ; DSL)、一無線鏈結、—通用序列 匯流排(USB)、一 PCI匯流排、一乙太網路介面、或任何其 它用以辅助對現場可升級單元i 10收送資訊的適當介面。 此外,資訊可以是以内含於依據封包交換協定之資料封包 内的形式在通訊鏈結i 12上傳送,諸如傳輸控制協定 (Transaction Control Pr〇t〇c〇1 ; Tcp)/網際網路協定 Protocol ; ip)、χ.25、以及訊框中繼(Frame ReUy)。 網路1 30可以包含任何無線網路、有線網路、或是無 201109969 線和有線網路之組合’其能夠使用地面式及/或空中式元件 支援網路構件之間的通訊。例如,網路13 0可以是—有線 電視網路(cable television network)、一衛星通訊網路、一 感測器網路(sensor network)、或一隨意式無線通訊網路 (ad-hoc wireless communications network)、一數據網路 (data network)、一 公用交換式電話網路(pub]ic switched telephone netw〇rk ; PSTN)、一整合式服務數位網路 (integrated services digital network; ISDN)、一區域網路 (LAN)、一廣域網路(WAN)、一都會區域網路(metr〇p〇Hian area network ; MAN)、通稱網際網路(Internet)之全球電腦網 於一或多個場所處的其它通訊
它裝置交換資訊。 路的整體或一部分、及/或位於一 系統或通訊系統之組合。圖1所
元1 1 υ乙万塊圖。 具有控制器 控制器210 2 10之示範性現場可升級單 可以包含任何硬體,配合軟 8 201109969 體及/或韌體,以處理儲存於現場可升級單元11〇中的至I 一部分程式。在一些實施例之中,控制器21〇 ^ 〇〇 』从疋一系 統單晶片(system-on-chip),其中控制器21〇之大致所有 件均整合入單一積體元件(意即,晶片)之中。將控::有 的所有7L件實施於單一晶片上(例如,矽晶片)可以藉由使得 攻擊者實際存取及修改該控制器之元件變得極為^時及= 責而阻止攻擊》此外,如本文以下將展示,此單一晶片實 施方式使得控制器之所有元件可以同日寺立即重置(Γ:),以 在控制器運作的安全性上提供更為有效的管控。 如圖2所示’控制器210可以具有一中央處理單元 (central processing unit; ”cpu”)222 通訊連結至—隨機存取 記憶體(RAM)224、一唯讀記憶體(R〇M)226、時脈、— 通訊介面230、以及-資料匯流排加。⑽如係一電子 資料處理裝置,其執行儲存於電腦可讀取記憶體裝置(例 如’RAM 224、ROM 226或記憶體裝置28〇)中的程式指令。 CPU 222可以是一—般用途處理器(例如,INTEL)或是-專 用、欲入式處理器(例如’ ARM)。雖然圖2將控制器21〇描 繪成單:處理裝置,但_ 21〇可以包含多個處理器、 器处理态陣列或疋任何其它適當之處理器或複數個處理 I °凡"面230可以包含硬體(例如,數據機(modem)、 網::面卡、等等)、軟體(例如,多層協定支援、協定轉換、 :料處理、資料調變、編解碼器、等等)、勒體、資料或該 員目之''且口 ’以遂行與位於現場可升級單元1 I 0外部之 201109969 一或多個組件之通訊。在一些實施例之中,通訊介面23〇 與CPU 222交換資訊以對透過通訊連結112傳送之訊息進 行編碼及解碼。例如,通訊介面230可以自CPU 222接收 一訊息並將該資訊轉換成資料封包以依據TCP/IP資料傳輸 協定在通訊連結U2上傳輸。同樣地,通訊介面23〇可以 透過通訊連結11 2自另一節點11 〇接收TCP/IP資料封包並 將遠等封包組合成訊息以提供資訊予cpu 222。用以配置及 控制通訊介面230以及現場可升級單元110中其它元件之 操作參數可以是儲存於現場可升級單元110之電腦可讀取 資料記錄裝置之中,諸如RAM 224、R〇M 226或記憶體裝 置 280 〇 在一些實施例之中’記憶體裝置280之更新可以受一 狀態機270管制。狀態機27〇可以阻擋控制器210改變非 揮發性記憶體28〇的内容。以此種方式,舉例而言,狀態 機270可以保護非揮發性記憶體28〇,使得更新只有在特定 條件下方能執行。 狀態機270可以是一具有有限數目之預先定義狀態、 ^等狀態間之轉換、以及動作之數位邏輯裝置。狀態機 y以受一硬體數位電路控制,舉例而言,該電路包含—或 夕個可耘式邏輯裝置(Programmable logic device)、可裎式 k輯控制器、資料暫存器(data register)、邏輯閘 gate)、以及正反器(flip flop)。 位於非揮發性記憶體280中之一開機載入器 (b〇〇tl〇ader)282包含控制n 21〇處於一初始化狀態時控制 10 201109969 益10所執打的指令,例如當控制器21〇首次開機或重新 啟動或以其它方式被重置之時,現場可升級單元110 執行非揮發性記憶體280中之開機載入_ 282之更新,其 可^而要狀態機270係處於一致能記憶體裝f 28〇之存取 及/或變更的特別狀能。♦ 、 心田處於此一狀態,控制器210可能 被禁止執行軟體,立可沐丁一入π 丁秋菔具了牝不安全及/或已被一攻擊者竄改。 例如,在現場可升級單元11〇被重置之後,控制器21〇可 =執行储存於ROM 226中更新記憶體裝置内容之勤體。該 :體可以在放手讓控制11 210執行軟體之前禁能對記憶體 裝置280之變更。 .在-些實施例之中,儲存於R〇M 226中之韌體可以, 在被執仃後,使其在現場可升級單元ιι〇之硬體重置之後 字狀心機270置於更新狀態。韌體可以藉由儲存一預定數 :’例如一特定指令,而觸發狀態機27(M吏其進入更新狀 :例如,韌體可以將數值寫入RAM 224中之一特定暫存 :’而後重置單元110。儲存於該暫存器中的數值在重置動 作之後仍保持不變。 在一些實例之令,勃體可以僅是觸發狀態機270以離 更新狀態’但反向則不行。依此觀點而言,致能更新之 唯機制係經由控制器210之重置。藉由如此,呈可以確 t現場可升級單元11〇在執行更新之前係處於一、安全狀 u 揮發丨生°己憶體裝置2 8 0可以包含硬體、軟體、韌體、
或前數須Η + 4 A 、 ’且δ以儲存及擷取資訊,包含電腦可讀取程 二曰7及資料。例如,記憶體裝置280可以是一半導體、 201109969 磁丨生或光干式資訊儲存/擷取裝置(例如,快閃記憶體(flash memory)、硬碟機、CD_R〇M、快閃隨機存取記憶體)。雖然 記憶體裝置280被描繪成單一媒體,但記憶體裝置28〇可 以包含多個儲存媒體。記憶體裝置280可以完全位於控制 器21〇之内部,或者在其它實施例中,其一部分可以位於 控制器21 〇之外部。在一些實施例之中,其需要至少一部 分之非揮發性記憶體裝置280位於控制器21〇之内部。 儲存於記憶體裝置280上的資訊可以包含,舉例而言, 軟體、韌體、代碼、部分代碼 '資料彙編、前述及/或其它 種類資訊之組合。如圖2所示,記憶體裝置28〇可以包含 開機載入器282以及更新模組284。在一些實施例之中(未 顯示於圖中),部分或整體更新模組284可以是r〇m 226中 之固線邏輯(hardwired logic)以確保該模組的安全且不會被 攻擊者改變。記憶體裝置28〇亦可以儲存一或多個在加密 運异之中使用之密鑰。在一些實施例之中,儲存於記憶體 裝置280上的密鑰包含公鑰287,對應至例如主機12〇或一 些其匕受彳§任機關之私鑰。此外,記憶體裝置2 8 〇可以儲 存現場可升級單元110之機密及/或私有密鑰287。記憶體 裝置280同時亦可以儲存使用於現場可升級單元丨丨〇所執 行之加密運算之其它資訊。 在一些實施例之中’開機載入器282可以自記憶體裝 置280載入一次級開機載入器,只要該次級開機載入器經 過適當地簽認。「適當地簽認」係以一相關於記憶體裝置 2 80中公鑰287之一(例如,使用於諸如「有線等效保密 12 201109969 (Wired Equivalent Privacy) 管理協定之「現行密鑰」或「 主機1 2 0之私鑰)簽認。 」專無線網路安全標準之密錄 下一密鑰」)的一個私餘(例如, 現場可升級單元110可以被週期性地、隨機地及/或手 動地(意即’透過指令)進行更新。例如,於網路13〇(例如, 自另一節點U0或主機12〇)接收到的資訊可以觸發節點"Ο 執仃-更新。該更新資訊可以推存至現場可升級單元"Ο 或由:取出。在一些實施例之中,對現場可升級單元"〇 更新貧訊之提供可以是由網# 130起始(例如,自另一節點 或主機12G)。現場可升級單元11()可以替代性地或是進 一步從網路1 3 〇擷取更新之資訊。 現%可升級單A i 1G可以自各種來源接收更新資訊。 例=,技術人員可以將包含更新物件之裝置手動地耦接至 見琢可升級單⑦11G °在另外的實例中,現場可升級單元 。可X於肩路130上,透過一通訊連結112,自主機12〇 f另—個現場可升級單A 110接收該更新資訊。例如,當 二更新物件儲存於網路i 3〇之另一裝置時,經由網路1 執行收送該更新資訊。 級。為长簡單明瞭’示範性實施例描述了相當於現場可升 、單兀110之開機載入器282之更新資訊。當然,此揭示 並非受限於此。槊仓丨工 私 舉例而言,上述之更新資訊可以包含任何 秋體、細1¾、迫 能 、,届碼、密鑰、資料彙集、軟體應用、硬體狀 心、(例如,和^ 工制接腳之電壓位準)、及/或此等或任何其它形 式資訊之組合。 13 201109969 圖3係一現場可升級單元no之一示範性記憶體配置 之功能示意圖。在此實例之中’配置的記憶體包含位於記 憶體裝置2 8 0中的安全非揮發性記憶體、以及非安全記憶 體’例如,硬體重置後維持原狀之揮發性記憶體。如圖中 所例示,記憶體裝置280可以被功能性地區分成數個部分, 包含一活躍部分305與一非活躍部分3 1(^最初,記憶體裝 置280之活躍部分3〇5可以儲存兩個密鑰,其中之第一密 鑰係一現行密鑰而第二密鑰係下一密鑰,該二者或其中之 一均可用以對韌體進行簽認及認證。圖3同時亦顯示一更 新物件320,其可以用以升級儲存於現場可升級單元u 〇之 記憶體裝置280中的資訊《更新物件32〇可以包含被格式 化成數個區段之更新資訊,包含:更新資訊(例如,開機載 入的程式指令)、密鑰i、密鑰2、密鑰3、簽章1、簽章 2'以及簽章3。在一些實施例之中,更新物件32〇可以具 有一相關更新簽章321,其可以被提供予(例如被附加至)更 新物件320。密鑰1、密鑰2、密鑰3、簽章i、簽章2、及 簽章3,舉例而言’可以支援網路13〇之操作者所使用的密 錄管理協定。 安全非揮發性記憶體裝置280可以以一「唯讀」記憶 體之形式運作’除了特定狀況之外,@如當現場可升級單 元110處於-「更新模式」及/或狀態機270係處於「更新 狀態」之時。在一些實施例之中,現場可升級單元110在 重置之後進入更新模式。重置動作之發生可以是在遠端或 是在本地端。重置亦可以由另—現場可升級單A 110、主機 201109969 或中央管理機構(未顯示於圖中)透過網路i3〇於遠端 下達扎7。此外,重置可以藉由一實體介面由本地端下達 指令,諸如特定之接腳及/或連接器(例如,一聯合測試工作 組(JTAG)連接埠)。更具體言之,控制器21〇硬體可以被配 置成經由例如監測一特定訊號、接腳或記憶體暫存器以偵 測更新模式之請求。 自记憶體褒置280是否可以更新可以由狀態機27〇之狀 態控制。例如’只要狀態機27〇未處於更新狀態,則非揮 發性記憶體裝i雇可以以唯讀裝置之形式運作。當從控 制'210接收到一特定指令時’例如由於收到一更新物件 而執行更新模組284’狀態機27〇可以將記憶體設成一 更新狀態’使得資訊可以被寫入非揮發性記憶體裝置28〇 在-些實施例之中,一旦現場可升級單元ιι〇係處於 更新模式,及/或狀態機27G係處於更新㈣,控制器21〇 :以自記憶體裝置謂抹除所有密输287。上述之抹除動作 ^如同揭示於標題「」Integmed s 入〇此for a NetW()rk Node(針對網路節點之整合式加密安 =模組^」之編號12/493,7()7之共同待審中請案#之形式 更:模mr下’若現場可升級單元"°因故被設成
Hr 須被重新認證以在之後重新連上網路⑽ ^路f S ’若―攻擊者意欲起始更新模式,則在未於 網路重新認證及/或未自主機12〇、另一節點"Ο或一中央 15 201109969 e理機構(未顯不於圖中)收到一新的憑證及/或密输287之 前,現場可升級110單元將無法重新連上網路13〇。 *、立更新模且284可以藉由將更新物件320及其相關更新 簽早32 1 ’右存在的話,儲存至位於記憶體裝置外部的 ㈣全記憶體315之中而將現場可升級單丨⑽設成更新 杈式之後更新模組284可以藉由將一例如更新指令之預 定數值寫入記憶體315中之一預先定義之位置317,例如_ 特定指令暫存器,而起始一更新。 在實把例中,狀態機可以是一雙狀態裝置。該雙狀 態可以標4「寫入·致能(Write_Enable)」,於此狀態資料允 許被寫入非揮發性記憶體裝置,以及「寫入-禁能 (Write-Disabie)」,其使得該記憶體裝置如同唯讀記憶體運 作。 所有的中斷(imerrupt)及例外(excepti〇n)均可以由控制 器210執行一更新模組284而被禁能。舉例而言,更新模 、且284可以使控制器2 1 〇重置並利用儲存於R〇M 226或記 憶體裝置280中並未包含及/或致能令斷或例外處置軟體的 韌體重新起始。或者,更新模組284可以控制cpu 222使 其中止任何中斷或例外處置的程序,諸如中斷處置器 及例外處置器288。 若現場可升級單元110係處於更新模式,則控制器21〇 可以執行儲存於例如ROM 226中的專用升級程式執行碼。 否則控制器2 1 0可以執行正常的起始程式碼(例如,開機 載入器)。或者,更新模組284可以藉由觸發狀態機27〇讀 16 201109969 取記憶體315中的預先定義之位£ 317而起始更新模式。 控制器210可以監測位置317並在上述情形發生時立即切 換至^新模式。更新模組284接著可以驗證在驗證區域319 中的貢訊係真實的(例如,由—網路13G之操作者所提供及/ 或接收自一可信任來源之開機載入器)。 以下撝述上述驗證流程之一實例,其參照例示於圖3 中之=Iil性更新物件32()。如先前所述,更新資訊包含待更 新現場可升級單元11Q所用m體或軟體,例如,開 機載入益程式執行碼。在儲存於記憶體裝置的公鑰 :中’密们相當於「現行密鑰」而密鑰2相當於「下一 密鑰」。密鑰3係更新所提供之一新的密鑰。簽章丄係利 用相對於公鑰1之主機120的私鑰,產生自更新資訊(諸如 由主機120或者,舉例而言,應主機12〇之請求)。在一實 ,例中’更新資訊本身可以簽認私瑜以產生簽章。在另一 實施例中,如本文以下所述,其首先建立該更新資訊之_ ' ^ h)而後此雜凑被簽認私錄以產生簽章1。以類似 =式藉由對更新資訊或該更新資訊之-雜凑簽認相對於 密鑰2及密鑰3之私鑰而產生簽章2和簽章3。在一些實施 幻之中(同樣地,舉例而言,例如由主機12〇)亦可以藉由 建立更新物件之所有其它元素(意即更新資訊、密鑰卜密 餘2 /鑰3、簽章1、簽章2以及簽章3)之雜凑’並對該 雜凑簽S忍相對於密㉟丨之主機12()的 更新物件32〇之-更新簽章32卜 "於 接收到更新物件320之時,更新物# 320以及簽章 17 201109969 32卜若存在的話,被載入非安全記憶體之一驗證部分。 一更新指令被載入上述之預先定義之位置317,例如,一指 令暫存器。而後控制H 210被指示執行一硬體重置。就採 用具有二個狀態的狀態機之實施例而言,該重置使得狀態 機被設成上述之「寫入·致能」狀態。重置之後,控制器21〇 首先執行儲存於安全位置之受信任程式碼,例如,r〇m 226 中的固線式韌體。該程式碼先檢查是否已有發出一執行更 新之請求,例如,一更新指令儲存於指令暫存器319之中。 若沒有,則該程式碼將狀態機重置成「寫入_禁能」狀態, 並將控制權轉移給儲存於安全非揮發性記憶體裝置280之 活躍部分305中之開機載入器軟體。 若儲存於預先定義位置317中的數值指出一更新動作 待執行’則控制器21 〇驗證該指令,例如,檢查其是否 位於一有效指令列表之上。對於更新物件伴隨有更新簽章 的實施例,在指令確認之後,控制器將其現行公鑰(相當於 密錄1)套用至儲存於驗證部分3丨9中的更新簽章32丨,以決 定一雜湊數值,稱為「雜湊丨」以供參考之用。控制器另外 從更新物件320之内容’意即更新資訊、密鑰1、密鑰2、 密鑰3、簽章丨、簽章2及簽章3,產生一雜湊數值稱為 「雜凑2」。雜凑丨和雜湊2被進行比較,若其相等,則判 定該更新物件係真實的。 之後’控制器210計算更新資訊之一雜湊,稱為「雜 凑3」°密鑰1被套用至簽章1以決定一雜湊數值,稱為「雜 凑4」雜凑3與雜凑4進行比較以檢視其彼此是否相符。 18 201109969 以類似方式,其使用密鑰2自簽章2產生一雜湊數值,並 使用密鑰3自簽章3產生一雜湊數值。該等產生之雜湊數 值各自均與雜湊3比較以決定其是否相符。若雜湊3之計 算數值與產生自簽章的每一雜湊數值均相符,則更新物件 320驗證成功。 右上述之驗證在任一點失敗,則更新模組284可以使 更新模式中止並使得節點開始(或重新開始)正常運作 而不更新或影響記憶體裝置28〇之内容。更新模組284亦 可以利用記憶體裝置280之活躍部分305中的現有資訊重 新起始控制器2 1 〇。 若所有的驗證均通過,則更新模組284將密鑰2、密鑰 3。以及更新資訊(如上所述,更新資訊可以是一新的開機載 入器)複製到安全記憶體裝S 280之非活躍部分31〇。其可 乂執仃另-個驗證以確認所有的資料均已正確地複製。若 :無失敗發生,則更新模組284 #送一指令以互換活躍部 :3〇5和非活躍部分31〇。其可以藉由將活躍部分3〇5之内 ::寫為非活躍部& 310之内容而實際執行上述之互換。 其可以邏輯式地執行,藉由將-參照數值,例如-記憶體部分3G5之起始位址改變成記憶體部 ::::::從而將部"。設成新的活躍部分。此互換 該變成現行密鑰,密们變成下一密鍮, 去棄不=機載人器變成現行開機載人器282,而密W則被 為了進一步鞏固記憶體裝置 280之更新安全性 若更 19 201109969 新模組284進入更新模式之後偵測到任何對控制器2i〇「升
模組284或者從任何進入點執行控制器21〇之内部程式碼。 級-安全裝 置280可 置280之ί 憶體區塊( 之重新編系 實體存取右 外,可能辱 制器2 1 0 當驗證以及將更新物件轉移至記憶體之活躍部分完成 之後,受信任之程式碼將狀態機重置成「寫人禁能」狀態, ^將控制權轉移至開機載入器軟體。藉由在更新時無^現 場變更的梵信任程式碼(例如,固線式R〇M韌體)中執行此 等動作,並在執行轉移至其它可更新韋刃體之前將狀態機重 置成”寫入-禁能”,其強化了對未經授權變動密鑰以及其它 可更新物件之防護。 ’、匕 在前述實例之中,當該機制起始一更新時運用了控制 :之硬體重置。在另一實施例中,該更新程序之起始可以 是,..呈由呼叫一儲存於R〇M或其它安全記憶體中的安 T-/» 新 此。在此實施方式之中,被呼叫的受信任程式碼自已 狀態機设成「寫入-致能」狀態,並禁能所有中斷和例外: 倣為更新程序的一部分。 , 在又另一實施例中,該安全更新功能不一定在發 生重 20 201109969 置之後自動地執行。而是在重置之後,控制器可以先檢杳 記憶體中的預先定義位置3 17,並判定一更新指八β 〜 於該處。若是如此,其首先驗證該指令,而後繼續執行儲 存於ROM中的更新程式碼。在此實施例之中,該更新程气 碼亦可以將狀態機設成「寫入-致能」狀態,而非由硬體= 置將其自動地設成該狀態。為了確保更新程式碼的正確運 作’其可以使用一程式計數器,以在其起始於該程式碼第 一個指令行的記憶體位址之外的任何位置時禁止节程式碼 之執行。以該種方式,狀態機將在任何其它需要存 發性記憶體裝置280之動作執行前被設定成「寫入-致能 狀態。 月」 圖4係例示由一示範性現場可升級單元ιι〇所執行之 步驟之流程圖。f先,於步驟4〇5,現場可升級單元m可 以接收-已簽章之更新物件32〇和選擇性的更新簽章,社 合一或多個密鑰(例如,卜密鑰2、密鑰3)。如前所 該物件可以是由例如—技術人員操作的主機裝置直接 提供,或是經由網路丨3()間接提供。 …在—些實施例之中,現場可升級單元UG可以僅在一 預疋數值錯存於記情㈣ 一 土… 新模式(步驟407二 广之位置317時進入更 記憶體之"牛二;)。否則’更新物件不能被儲存入 甲(V驟408)。此外,狀態機27〇 預定數值是否儲存於圮恃俨梦晋f以依據以 .,7 ^ , 、°己隐體裝置280之該預先定義之位置 3 1 7而被觸發以推 ^ ^ 入—更新狀態。當狀態機270並非處於更 聊狀態,可以林,L k 「尺 ^控制器210和其所執行的軟體,例如更 21 201109969 新模組284,修改儲存於記憶體裝置28〇中的資訊。 在安裝更新物件之前,現場可升級單元丨〗〇可以將自 己設成更新模式(步驟4 1 〇),於此模式之中,現場可升級單 元1 10禁能其中斷處理器286以及例外處置器288(步驟41 5) 以避免更新期間該單元被竄改。例如,在收到一更新物件 之後,現場可升級單元丨1〇可以以一安全、更新模式重新 起始’其中例外及中斷均被禁能。 在更新物件320及選擇性的更新簽章321被儲存於驗 證部分319中之後,更新模組284可以認證驗證部分319 中的資料(步驟420),如先前所述。若認證失敗(步驟425, 「否」),則升級程序中止及/或重新起始(步驟43〇)。若認 證通過(步驟425,「是」),則開機載入器282及/或密鑰2 及密錄3被複製至記憶體襄置280之非活躍部分31〇(步驟 435)。在一些實施例之中,位於非活躍部分3ι〇中之複本被 再次驗證以確保複製期間未發生改變(步驟440)。 若更新模組284判定開機載入器282、密鑰2及密鑰3 成功地被複製至非活躍部分31〇(步驟445,「是」),則更 :模組284將記憶體裝£ 28〇之非活躍部分31〇及活躍部 为305互換,使得包含新密鑰及開機載入器的非活躍部分 310自動地變成活躍(步驟450)。現場可升級單元110從而 可以使用新的開機載入器282及密鑰重新起始(意即,重新 啟動)°此外’執行—更新之後,現場可升級單元可能需要 重新加入網路1 3 Π4 t 匕括,舉例而言,自另一節點i丨0或主 機120取得—個新的網路憑證。 22 201109969 j述之不範性系統及方法係提供予網路裝置之安全更 /使侍右網路密鑰遭到攻擊者竊取,則該等密鑰可以在 ί攻擊者有機會使用它們之前先被置換。此外,藉由提供 月1J述之力α麥沾 ^ 呈序的以及物理的安全性,該示範性網路 裝置防制攻擊去& & $ s + =、 有在裝置更新時破解裝置密鑰或更新物件。 本說明書所揭示之本發明實施例及功能可以經由電腦 或軟體實施而成。雖然本發明之例示性實施例已然 =述之形式闈明如上,但相關領域之熟習者依據本揭示 ^理解,進-步的實施例可以包含等效組件、修改、省 :结合⑽如,各種實施例特徵之結合)、調整 月書之檢閱以及所揭示之本發明實施例之實作,習 所揭1人士將能輕易推得本發明之其它實施例。此外, 晏不方法之步料以在未脫離本發明之原理下以許多方 ^ σ以修改,包括改變步驟的順序及/ 4 β it tT *+· - a 貞序及/或插入或刪除步驟。 '八體說明及實施例應僅視為示範性質。 【圖式簡單說明】 圖1係例示包含數個現場 . 之功能方塊圖; 彳及早…不範性系統 圖2係例示一示範性現場可升級單元之功能方塊圖. 圖3係一現場可升級單 _ , 功能示意圖;以及 中之-不範性記憶體裝置之 圖4係例示由—示範性現場可一 之流程圖。 升級早儿所執行之步驟 23 201109969 【主要元件符號說明】 100 系統 110、110A-D 現場可升級單元 112 鏈結 120 主機 130 網路 210 控制器 222 中央處理單元 224 隨機存取記憶體 226 唯讀記憶體 228 時脈 2 3 0 通訊介面 232 資料匯流排 270 狀態機 280 非揮發性記憶體 282 開機載入器 284 更新模組 286 中斷處置器 287 公鑰&私鑰 288 例外處置器 305 活躍部分 310 非活躍部分 315 非安全記憶體 24 201109969 317 預 先 定 義之位置 319 驗 證部 份 320 更 新 物 件 321 更 新 簽 章 405 儲 存 步 驟 407 檢 查 步 驟 408 停 止 步 驟 410 模 式 步 驟 415 禁 能 步 驟 420 授 權 步 驟 425 檢 查 步 驟 430 停 止 步 驟 435 拷 貝 步 驟 440 驗 證 步 驟 445 檢 查 步 驟 447 停 止 步 驟 450 交換步 驟 25
Claims (1)
- 201109969 七、申請專利範圍: 1 · 一種網路裝置,包含: 一處理器:以及 '己隱體,具有程式指令儲 行之時’使得該裝置在接收到一且處理⑼ 新物件後執行以下之動作1具有4目關更新簽章之更 判疋該記憶體之-預先定義之位置是否包含—預定盡 值 依據該判定 之中; 將該接收到之更新物件儲存於該記憶體 J用》玄接收到之更新簽章驗證儲存於言玄記憶體中之該 更新物件之真實性;以及 執行一動作使該處理器使用位於經過驗證之該更新物 件中之更新資訊取代儲存於該記憶體中之其它資訊。 2.如申請專利範圍第1項所述之網路裝置,其中: 該記憶體更具有程式指令使該裝置執行以下的更多動 作: 將包含於該經過驗證之更新物件中之資訊從該記憶體 之一第一部分複製到該記憶體之一第二部分; 且其中使該處理器使用位於經過驗證之該象新物件中 之更新資訊取代儲存於該記憶體中之其它資訊之動作係包 含使該處理器使用該被複製至該記憶體之該第二部分之資 訊取代儲存於該記憶體之一第三部分中之資訊。 3 ·如申請專利範圍第1項所述之網路裝置,其中驗證該 26 201109969 更新物件之真實性的該動作包含: ▲比較-第一資料與—第二資料,該第一資料係藉由將 一公鑰套用至結合該更新物件-起收到之-更新簽早而決定,該第二資料係藉處 — 貝t叶你錯甶慝理该更新物件而 疋 〇 更新=申利範圍第1項所述之網路裝置,其中驗證該 更新物件之真實性的該動作包含: 利用該經過驗證之更新物件 ^^ ^ 卞n J,、匕育訊驗證該經過 驗a之更新物件内的更新資訊之真實性。 5.如申請專利範圍第 审鉍〜貝料之、,同路裝置,其中驗證該 更新貝讯之真貫性的該動作包含·· 利用包含於該經過驗證之更新物件 章以及該更新資訊。 ^ ^ 6 ·如申請專利範圍第 .^ 士一 孭所迷之網路裝置,其中驗證該 更新-貝訊之真貫性的該動作包含· 比較一第一資料盘—坌一 ^ ^ '第一貧科’该第—資料係藉由將 3亥岔鑰套用至該簽章而決 _次 新資訊而決定。 A 4 —貝料係藉由處理該更 7·如申請專利範圍第5項所述之網路裝置,直中. 該密錄係一第—密绩且該簽章係—第-簽章’I且 驗證該更新資畔夕亩_ t > 嗲唑過驗〜“ ° /貫’的§亥動作更包含利用包含於 。亥絰過驗證之更新物件 該更新資I 帛H -第二簽章以及 8+中請專利範圍第 只凋路裝置,其中,依據 27 201109969 一個該預先定義之位置包含該預定數值之判定該等裎 指令使該裝置禁止該處理器處理中斷及例外。 9.如申請專利範圍第1項所述之網路裳置,其中,佐 一個該預先定義之位置包含該預定數值之判定,該等程 指令使該裝置致能該記憶體記錄資訊。 10 ·如申凊專利範圍第1項所述之網路裝置,其中,等 程式指令使該裝置使用對應於該接收到的密鑰之_私鑰簽 認該接收到之更新物件。 11.如申凊專利範圍第2項所述之網路農置,其中,^ 憶體之該第二及第三部分係位於該裝置之一安全區域中 12 _如申凊專利範圍第1項所述之網路裝置,其中哕譽 置係一智慧型電網(smart grid network)中之一節點。 13. 如申凊專利範圍第1項所述之網路裝置’其中執〜 上述之使該處理器使用位於該經過驗證之更新物件中之哕 更新資訊取代儲存於該記憶體中之其它資訊之動作係包含 使該裝置利用在該更新物件中接收之該資訊重新啟動。 14. 如申請專利範圍第13項所述之網路裝置,其中在該 資料物件中接收之該資訊包含一開機載入器之程式指令。 1 5.如申睛專利範圍第14項所述之網路裝置,其中該等 程式指令使該裝置在重新啟動之後利用該更新物件中接收 之忒資訊傳送—請求以加入該網路。 16 ·如申凊專利範圍第1項所述之網路裝置,更包含一 由複數狀態所描繪之狀態機,該複數狀態包含一第—狀 在玄第狀態之中,該裝置被配置成禁止該處理器修 28 201109969 改記錄於該記憶體中之資訊。 ^丨7.如申請專利範圍第16項所述之網路褒置,其中該狀 態機之該複數狀態包含一第二狀態’在該第二狀態之中, 該裝置被配置成致能該處理器修改記錄於該記憶體中之該 資訊。 18.如申請專利範圍第17項所述之網路裝置,其中該狀 態機被配置成使得位於該記憶體之該預先定義之位置中的 該預定數值觸發該狀態機進入該第二狀態以致能該處理器 修改記錄於該記憶體中之該資訊。 1 9.如申請專利範圍第2項所述之網路裝置,其中使該 處理器使用被複製至該記憶體之該第二部分之該資訊的該 動作包含: 將該記憶體之該第三部分之該内容置換為該記憶體之 該第二部分之該内容。 20. 如申請專利範圍第2項所述之網路裝置,其中使該 處理器使用被複製至該記憶體之該第二部分之該資訊的該 動作包含: 在該等程式指令之中,將一指向該記憶體之該第三部 刀之4曰彳示置換為一指向該記憶體之§玄第一部分之指標。 21. —種用於更新一網路裝置的方法’該網路裝置包含 一處理器及—記憶體,該方法包含: 接收一更新物件之後’判定該§己憶體之_預先定義之 位置是否包含一預定數值; 依據該判定,儲存該接收到之更新物件於該記憶體之 29 201109969 一第一部分中; 利用結合該更新物件接收到之一密鑰驗證儲存於該記 憶體之該第一部分之該更新物件之真實性; 將包含於該經過驗證之更新物件中之資訊從該記憶體 之該第一部分複製到該記憶體之一第二部分;以及 使複製至該記憶體之該第二部分之該資訊取代儲存於 該記憶體之一第三部分中之資訊而被使用。 22.如申請專利範圍第21項所述之方法,其包含依據— 個該預先定義之位置包含該預定數值之判定,禁止該處理 器處理中斷及例外。 23.如申請專利範圍第21項所述之方法,其中,依據— 個該減定義之位置包含該預定數值之判定,該裝置致# 該記憶體記錄資訊。 & ι 24. 如申請專利範圍第2丨項所述 乃古,其中利用對應 於該接收到的密鑰之一私鑰簽認該接收到之更新物件。 25. 如申請專利範圍第21項所述之 ^ H m ^ ^ 去其中该記憶體 之該第一及第二。卩分係位於該裝置之一安全區域中 26·如申請專利範圍第21項 ^ ^ 忠其中該裝置# 一曰慧型電網中之一節點。 27·如申請專利範圍第21項所述之方法, 部分與該第三部分互換之後’該裝置利用在該::: 接收之該資訊重新啟動。 ,斤物件中 28.如申請專利範圍第27項所述之方法,宜 物件中接收之該資訊包含一開機載入器之程式指,該資料 30 201109969 29. 如申請專利範圍第28項所述之方法,其中在該第二 部分與該第三部分互換之後,該裝置傳送一請求以加入網 路0 30. —種網路裝置,包含: 一記憶體; 一用以在接收一更新物件之後,判定該記憶體之一預 先定義之位置是否包含一預定數值之裝置; 一用以依據該判定’將接收到之該更新物件儲存於該 記憶體之一第一部分之裝置; 一用以利用結合該更新物件接收到之一密鑰驗證儲存 於邊s己憶體之該第一部分之該更新物件之真實性之裝置; 一用以將包含於該經過驗證之更新物件中之資訊從該 °己憶體之該第一部分複製到該記憶體之一第二部分之裝 置;以及 一用以使被複製至該記憶體之該第二部分之該資訊取 代储存於該記憶體之一第三部分中之資訊而被使用之裝 置。 ’ 3 1.—種儲存程式指令之電腦可讀取資料儲存裝置,當 由一處理器執行時,其控制一網路裝置以: 在接收一更新物件之後,判定一記憶體之一預先定義 <位置是否包含一預定數值; 依據該判定,將接收到之該更新物件儲存於該記憶體 之一第一部分之中; 利用結合該更新物件接收到之一密鑰驗證儲存於該記 31 201109969 憶體之該第—部分之該更新物件之真實性; >將包含於該經過驗證之更新物件中之資訊從該記憶體 之該第—部分複製到該記憶體之-第二部分;以及 使該處理器使用被複製至該記憶體之該第二部分之該 資訊以取Α儲存於該記憶體之一第三部分中之資訊。 32·—種網路裝置,包含: 一處理器;以及 °己隐體’具有程式指令儲存其中,當由該處理器執 灯之時,使得該裝置在接收到包含各自具有一相關私鑰之 複數個Λ錄'以及各自基於該更新物件之該内容之一部分 及個別私鑰之複數個對應簽章之一更新物件後,執行以下 之動作: 利用該複數個簽章中的每一個簽章及其包含於該更新 物件中之對應公鍮,驗證該更新物件之真實性;以及 若該更新物件之真實性驗證成功,則執行一動作使該 處理器使用位於經過驗證之該更新物件中之更新資訊取代 儲存於該記憶體中之其它資訊。 33.如申請專利範圍第32項所述之網路裝置,其中該程 式指令更使得該裝置執行以下動作: 將該接收到的更新物件儲存於該記憶體之一第一區域 以驗證該更新物件之真實性; 致能資料寫入記憶體之一第二區域; 將包含於該經過驗證之更新物件中之資訊從該記憶體 之該第一部分複製到該記憶體之一第二部分;以及 32 201109969 在複製該資訊之後以及執行使該4理器使用ι經過驗 證之更新物件中之該更新資訊之前,資料寫入該記憶 體之該第二部分。 34. 如申請專利範圍第33項所述之網路裝置,其中—更 新簽章係肖該更新物件相關且係基於該更新物件之整體内 合和5亥等私鑰其中之-,且其中該等程式指令更使得該裝 置利用該更新簽章驗證該更新物件之真實性。 35. —種用於更新一網路裝置的方法,該網路裝置包含 一處理器及一記憶體,該方法包含: 在接收到包含各自具有一相關私鑰之複數個公鑰、以 及各自基於該更新物件之該内容之—部分及個別私矯之複 數對應簽章之一更新物件後: 將接收到之該更新物件儲存於該記憶體之中; 利用該複數個簽章中的每一個簽章及其包含於該更新 物件中之對應公鑰,驗證該更新物件之真實性;以及 若該物件之真實性驗證成功,則使包含於該經過驗證 之更新物件中之資訊取代儲存於該記憶體中之資訊而被使 用。 36. 如申請專利範圍第35項所述之方法,更包含以下步 驟: 執行該驗證時,將該接收到之更新物件儲存於該記憶 體之一第一部分; 致能資料寫入該記憶體之—第二部分; 若該更新物件之真實性驗證成功,則將包含於該經過 33 201109969 驗證之更新物件中之資訊從該記憶體之該第一部分複製到 該記憶體之該第二部分;以及 在該經過驗證之更新物件被複製到該記憶體之該第二 部分之後,禁能資料寫入該記憶體之該第二部分。 37.—種自一第一裝置提供資料至一第二裝置的方法, 包含: 在該第一裝置處: 利用具有一相關第一公鑰之一第一私鑰,自代表該資 料之資訊產生一第一簽章; 建立一包含該資料、該第一公鑰和該第一簽章之物件; 利用該第一私鑰,自代表該建立的物件之資訊產生一 物件簽章; 將該物件及該物件簽章傳送至該第二裝置。 %·如申請專利範圍第37項所述之方法,更包含以下步 驟: 利用具有—相關第二公鑰之一第二私鑰’自代表該資 料之資訊產生一第二簽章;以及 在產生該物件簽章之前,將該第二公鑰及該第二簽章 納入該建立物件之中。 3 9 ·如申請專利範圍第3 7項所述之方法,其中代表該資 料之該資訊包含該資料本身。 如·如申請專利範圍第37項所述之方法,其中代表該資 料之忒資sfL包含自該資料計算之一雜湊數值。 41·如申請專利範圍第37項所述之方法,其中代表該建 34 201109969 立的物件之該資 值。 訊包含自該建 立的物件計算 之一雜凑數 一處理器; ;-記憶體’具有程式指令儲存 该處理器執行以下動作: 利用具有一相關第 料之資訊產生一第一簽章, 公瑜之一第 中,當執行之時,使 一私鑰,自代表該資—包含該資料 件,且 該第—公鑰和該第一簽章之物 利用該第一私錄 物件簽章;以及 自代表该建立的物件之資訊產生一 一通訊介面 —網路裝置。 配置成將該物件及該 物件簽章傳送至另 其中該程 代表該資 43.如申請專利範圍第42項所述之網路裝置 式指令更使得該處理器執行以下動作: 利用具有-相關第二公鑰之一第二私鑰,| 料之資訊產生一第二簽章;以及 將該第二公鑰及該第二簽章納入該建立的物件。 ‘ 44.如申請專利範圍第42項所述之網路裝置, 破資料之該資訊包含該資料本身。 45. 如申請專利範圍帛42ί員所述之網路裝置,其中代表 該資料之該資訊包含自該資料計算之—雜凑數值。、 46. 如申請專利範圍第42項所述之網路裝置,其令代表 35 201109969 該建立的物件之該資訊包含自該建立物件計算之一雜湊數 值。 八、圖式: (如次頁) 36
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US23305709P | 2009-08-11 | 2009-08-11 | |
US12/854,117 US9652755B2 (en) | 2009-08-11 | 2010-08-10 | Method and system for securely updating field upgradeable units |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201109969A true TW201109969A (en) | 2011-03-16 |
TWI436236B TWI436236B (zh) | 2014-05-01 |
Family
ID=43031525
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW099126719A TWI436236B (zh) | 2009-08-11 | 2010-08-11 | 安全更新現場可升級單元之方法與系統 |
Country Status (4)
Country | Link |
---|---|
US (2) | US9652755B2 (zh) |
AR (1) | AR077857A1 (zh) |
TW (1) | TWI436236B (zh) |
WO (1) | WO2011019390A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI467485B (zh) * | 2011-06-07 | 2015-01-01 | Insyde Software Corp | Verification of the basic input and output system update method, the computer can read the recording media and computer program products |
TWI720694B (zh) * | 2019-11-18 | 2021-03-01 | 中華電信股份有限公司 | 具時間序列演算之燒錄認證裝置及方法 |
Families Citing this family (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102010062908B4 (de) * | 2010-12-13 | 2012-10-31 | Siemens Aktiengesellschaft | Verfahren zum Parametrisieren eines Gerätes, parametrisierbares Gerät und Parametrisierungsvorrlchtung |
US9026805B2 (en) | 2010-12-30 | 2015-05-05 | Microsoft Technology Licensing, Llc | Key management using trusted platform modules |
US9111099B2 (en) * | 2011-05-31 | 2015-08-18 | Red Hat, Inc. | Centralized kernel module loading |
US9021246B2 (en) * | 2011-10-28 | 2015-04-28 | GM Global Technology Operations LLC | Method to replace bootloader public key |
US8281119B1 (en) * | 2011-11-22 | 2012-10-02 | Google Inc. | Separate normal firmware and developer firmware |
US9008316B2 (en) * | 2012-03-29 | 2015-04-14 | Microsoft Technology Licensing, Llc | Role-based distributed key management |
WO2014177904A1 (en) * | 2013-04-29 | 2014-11-06 | Freescale Semiconductor, Inc. | Memory controller |
US9086985B2 (en) | 2013-07-16 | 2015-07-21 | Honeywell International Inc. | Unpowered data-transfer device |
EP3031195B1 (en) * | 2013-08-05 | 2022-03-02 | Nokia Technologies Oy | Secure storage synchronization |
US9510195B2 (en) * | 2014-02-10 | 2016-11-29 | Stmicroelectronics International N.V. | Secured transactions in internet of things embedded systems networks |
WO2015147879A1 (en) * | 2014-03-28 | 2015-10-01 | Hewlett-Packard Development Company, L.P. | Allowing use of a test key for a bios installation |
TW201619866A (zh) | 2014-11-20 | 2016-06-01 | 萬國商業機器公司 | 客製化資訊設備的方法 |
CN104503786B (zh) * | 2014-12-15 | 2020-10-16 | 小米科技有限责任公司 | 固件刷新方法及装置 |
EP3576436B1 (en) * | 2014-12-29 | 2021-02-17 | Visa International Service Association | Over-the-air provisioning of application library |
US10114747B2 (en) * | 2015-05-13 | 2018-10-30 | Lenovo Enterprise Solutions (Singapore) Pte. Ltd. | Systems and methods for performing operations on memory of a computing device |
US10282189B2 (en) * | 2016-06-30 | 2019-05-07 | Synaptics Incorporated | Updating program code stored in an external non-volatile memory |
US10241803B2 (en) * | 2016-10-03 | 2019-03-26 | Schneider Electric It Corporation | System and method for updating device software |
US20180375730A1 (en) * | 2017-06-23 | 2018-12-27 | Infinera Corporation | Technique for verification of newtork state after device upgrades |
US11042138B2 (en) * | 2018-10-09 | 2021-06-22 | Johnson Controls Technology Company | Auto detection of signature and native reference changes from data sources |
KR102567097B1 (ko) | 2018-12-05 | 2023-08-14 | 삼성전자주식회사 | 임베디드 시스템의 부트 롬 업데이트 방법 및 부팅 방법 |
CN113141259B (zh) * | 2019-09-12 | 2022-04-29 | 腾讯科技(深圳)有限公司 | 在区块链网络中更换身份证书的方法和装置 |
JP7362583B2 (ja) * | 2020-09-23 | 2023-10-17 | 株式会社東芝 | 情報処理装置 |
US11816076B2 (en) * | 2021-01-14 | 2023-11-14 | Salesforce, Inc. | Declarative data evacuation for distributed systems |
TWI784500B (zh) * | 2021-04-28 | 2022-11-21 | 威鋒電子股份有限公司 | 電子裝置及其安全韌體更新方法 |
CN115421756B (zh) * | 2022-09-16 | 2023-07-18 | 杭州云动智能汽车技术有限公司 | 一种服务型网关升级方法 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5826015A (en) | 1997-02-20 | 1998-10-20 | Digital Equipment Corporation | Method and apparatus for secure remote programming of firmware and configurations of a computer over a network |
US6243809B1 (en) | 1998-04-30 | 2001-06-05 | Compaq Computer Corporation | Method of flash programming or reading a ROM of a computer system independently of its operating system |
US6223284B1 (en) * | 1998-04-30 | 2001-04-24 | Compaq Computer Corporation | Method and apparatus for remote ROM flashing and security management for a computer system |
US7111292B2 (en) | 2001-09-10 | 2006-09-19 | Texas Instruments Incorporated | Apparatus and method for secure program upgrade |
EP1357454A1 (en) | 2002-04-23 | 2003-10-29 | Hewlett-Packard Company | Data processing system and method with protected BIOS |
WO2005004160A2 (de) | 2003-06-24 | 2005-01-13 | Robert Bosch Gmbh | Verfahren zur durchführung eines software-updates eines elektronischen steuergerätes durch eine flash-programmierung über eine serielle schnittstelle und ein entsprechender zustandsautomat |
US7774619B2 (en) | 2004-11-17 | 2010-08-10 | Broadcom Corporation | Secure code execution using external memory |
US20060159269A1 (en) | 2005-01-20 | 2006-07-20 | Matsushita Electric Industrial Co., Ltd. | Cryptographic system for resource starved CE device secure upgrade and re-configuration |
US9627081B2 (en) | 2007-10-05 | 2017-04-18 | Kinglite Holdings Inc. | Manufacturing mode for secure firmware using lock byte |
-
2010
- 2010-08-10 US US12/854,117 patent/US9652755B2/en active Active
- 2010-08-11 AR ARP100102950A patent/AR077857A1/es unknown
- 2010-08-11 WO PCT/US2010/002210 patent/WO2011019390A1/en active Application Filing
- 2010-08-11 TW TW099126719A patent/TWI436236B/zh not_active IP Right Cessation
-
2017
- 2017-04-13 US US15/486,348 patent/US20170250818A1/en not_active Abandoned
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI467485B (zh) * | 2011-06-07 | 2015-01-01 | Insyde Software Corp | Verification of the basic input and output system update method, the computer can read the recording media and computer program products |
TWI720694B (zh) * | 2019-11-18 | 2021-03-01 | 中華電信股份有限公司 | 具時間序列演算之燒錄認證裝置及方法 |
Also Published As
Publication number | Publication date |
---|---|
TWI436236B (zh) | 2014-05-01 |
US20170250818A1 (en) | 2017-08-31 |
US9652755B2 (en) | 2017-05-16 |
AR077857A1 (es) | 2011-09-28 |
WO2011019390A1 (en) | 2011-02-17 |
US20110040960A1 (en) | 2011-02-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TW201109969A (en) | Method and system for securely updating field upgradeable units | |
TWI667586B (zh) | 用以核對uefi認證變量變化之系統及方法 | |
CN111213171B (zh) | 用于安全离线支付的方法和装置 | |
US20190253417A1 (en) | Hardware device and authenticating method thereof | |
WO2020192406A1 (zh) | 数据存储、验证方法及装置 | |
US8510572B2 (en) | Remote access system, gateway, client device, program, and storage medium | |
JP4278327B2 (ja) | コンピュータ・プラットフォームおよびその運用方法 | |
JP4067985B2 (ja) | アプリケーション認証システムと装置 | |
CN102063591B (zh) | 基于可信平台的平台配置寄存器参考值的更新方法 | |
US8156331B2 (en) | Information transfer | |
CN105718807B (zh) | 基于软tcm和可信软件栈的安卓系统及其可信认证系统与方法 | |
JP2004295271A (ja) | カード及びパスコード生成器 | |
US20090287917A1 (en) | Secure software distribution | |
JP2005260676A (ja) | セキュリティ装置、情報処理装置、セキュリティ装置の制御方法、情報処理装置の制御方法、該制御方法を実行させるための装置実行可能なプログラムおよびチケット・システム | |
JP6735872B2 (ja) | コンピュータシステム及びコンピュータシステムを初期化する方法 | |
CN110795126A (zh) | 一种固件安全升级系统 | |
WO2018166163A1 (zh) | Pos终端控制方法、pos终端、服务器及存储介质 | |
US7921270B2 (en) | Methods and systems for controlling access to a storage device | |
JP6387908B2 (ja) | 認証システム | |
CN108292340A (zh) | 在运行时间期间向安全数据存储设备安全地写入数据 | |
KR102663133B1 (ko) | 전자 장치의 무결성 검사 | |
CN114925336A (zh) | 一种激活软件的方法及系统 | |
KR20150030047A (ko) | 애플리케이션 인증 방법 및 그 시스템 | |
WO2018092289A1 (ja) | 情報処理装置 | |
CN109951319B (zh) | 备份加密机管理员锁的方法和加密机设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MM4A | Annulment or lapse of patent due to non-payment of fees |