TWI468971B - 安全軟體下載 - Google Patents
安全軟體下載 Download PDFInfo
- Publication number
- TWI468971B TWI468971B TW97147538A TW97147538A TWI468971B TW I468971 B TWI468971 B TW I468971B TW 97147538 A TW97147538 A TW 97147538A TW 97147538 A TW97147538 A TW 97147538A TW I468971 B TWI468971 B TW I468971B
- Authority
- TW
- Taiwan
- Prior art keywords
- data item
- item
- decryption
- storage medium
- data
- 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/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
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/60—Digital content management, e.g. content distribution
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/80—Wireless
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Storage Device Security (AREA)
Description
此說明書一般係關於資訊管理。
在眾多嵌入式系統以及許多安全符記中,諸如智慧卡(例如行動電話中的用戶識別模組(SIM)卡、用於視訊轉換器的用戶卡等)或通用串列匯流排(USB)密鑰,可將軟體遠端下載至現場已安裝的器件。此類下載之目地可以係更新現有嵌入式軟體或新增或修改器件功能性。如此,可透過一介面器件或其他標準器件通信介面將新軟體及/或其他內容下載至在一目標器件內的記憶體。
在將下載軟體發送至目標器件期間,該軟體可能會曝露於一潛在竊聽者。為了防止竊聽,可加密下載軟體,之後將其發送至器件並接著在接收處在器件內部解密。該解密在將軟體儲存於記憶體內之前發生。因而,下載軟體在儲存於記憶體內時完全解密並在一稍後時間在需要時可存取以加以執行。雖然加密可保護下載軟體免於在發送期間竊聽,但嵌入於目標器件內的惡意軟體可等待直至軟體解密並儲存於記憶體內,之後啟動一特洛伊木馬程式(Trojan horse)或記憶體傾印攻擊。因而,下載軟體仍易受攻擊影響,儘管發送前加密。
可使用一多重加密方法來安全地下載軟體,其中在執行該軟體時完成解密。在一態樣中,接收一多重加密資料項目。解密在該多重加密資料項目上的該等加密之一或多個者,產生一部分解密資料項目。將該部分解密資料項目儲存於一儲存媒體之一保留部分內。從該儲存媒體中擷取該部分解密資料項目並解密以產生該資料項目。可使用一或多個電路來實行該解密,該等電路實施多個解密程序,包括多個演算法密鑰組合。
此說明書中所說明之標的之特定具體實施例可實施以實現下列優點之一或多個者。加密下載軟體並保護直至執行時間。使下載軟體在目標器件處較少易受特洛伊木馬程式攻擊或記憶體傾印影響。可使用加密演算法及密鑰之多個組合之任一者來保護下載軟體。
在該等附圖及下面說明中提出本發明之一或多個具體實施例之細節。根據說明及圖式並根據申請專利範圍將會明白本發明之其他特徵及優點。
圖1係解說一種用於使用一多重加密方法將資料項目(例如軟體)從一來源器件下載至一目標器件之系統200的一方塊圖。系統200可操作以下載(例如)系統升級或更新、新功能性、修改功能性、其他系統特徵或其他資料、資訊或內容。例如,系統200可上傳軟體的一新版本,其可在現場為設備提供程式錯誤修復。一般情況下,可將一或多個資料項目從一來源器件發送至一目標器件。
系統200操作以藉由防止竊聽或提取下載軟體內容內的資料項目來保護資料項目之下載。特定言之,系統200可在儲存期間以及在發送期間保護資料項目。例如,系統200可在一加密狀態下儲存敏感軟體,直至一經授權系統請求使用該軟體。作為一範例,若系統200接收一用以執行儲存軟體之請求,則可執行一驗證步驟以決定請求者系統是否係一經授權系統。在此範例性系統200中的驗證可包括一保護機構,其使用在該系統中可用的硬體。例如,該驗證可包括一可選擇、硬佈線演算法及密鑰組合,其不可供該軟體存取。若接受該驗證,則系統200可在執行時解密該被請求軟體。
在一些實施方案中,系統200提供一使用現有系統硬體構建的單向機構。例如,該保護機構可放置於一記憶體讀取路徑(例如可用於擷取或檢索)內以阻止資料(例如軟體)之未經授權下載。因而,在系統200內的嵌入式軟體可能不使用相同的保護結構來加密新軟體。較有利的係,可阻止現有軟體的一覆寫。例如,由於該保護機構係放置於記憶體讀取路徑內,故系統200可防止一"特洛伊木馬程式"在一未經授權位置內安裝一不良軟體。
在一些實施方案中,系統200包括一來源器件202與一目標器件204。來源器件202可(例如)實施為一視訊轉換器、一電腦、一手持電腦、一個人數位助理、一蜂巢式電話、一網路器具、一相機、一智慧型電話或其他電子器件或該些資料處理器件之任兩個或多個之一組合或其他資料處理器件。目標器件204可(例如)實施為一智慧卡、一SIM卡、一USB密鑰、一用戶卡或其他能夠接收並儲存資料的媒體。在操作中,來源器件202可通信耦合至目標器件204。該耦合可以係有線或無線的。例如,來源器件202與目標器件204可在一有線電纜上,或在無線電頻率(RF)通道上無線地,或在網際網路上來通信耦合。可在該通信耦合上傳輸資料(例如資料項目)。
來源器件202可包括電路及軟體以加密並儲存資料項目。來源器件202還可包括處理器、網路介面、驗證軟體及用於連接器件202上的項目或檢視其的其他埠。例如,來源器件202可包括作業系統軟體與應用軟體,其可由一CPU用以實行來源至目標器件通信(例如驗證、版本檢查、下載控制等)。
目標器件204可包括電路及軟體以解密並儲存資料項目。在一些實施方案中,目標器件204可儲存任一數目的解密密鑰及演算法用於解碼或解密接收的資料項目。一般情況下,各種密鑰及演算法可用於一單一目標器件(例如智慧卡、SIM卡)。另外,多個卡可使用不同安全配置來潛在地組態。因而,多個密鑰及演算法安全配置可體現於相同器件上。在一些實施方案中,可在製程期間安裝該等多個組態。
目標器件204可實施若干密鑰及演算法之一者。在一範例中,器件204可程式化以選擇一特定演算法及密鑰組合以解密一資料項目。在一些實施方案中,該製程可包括硬佈線一或多個解密演算法。例如,若干演算法可實施於目標器件204電路內的電晶體上的閘內。解密密鑰可在該器件運送之前安裝至目標器件204內並程式化至記憶體內(例如由一鑄造廠、經銷者、包裝者、系統整合者等安裝)。例如,一批次的目標器件204之每一者可具有該軟體之一加密執行體,其係在該器件運送或整合至另一器件內之前決定。對於該器件之每一實施方案,可實施數個演算法,但選擇一演算法用於使用。由此,可使用截然不同的演算法來加密實體完全相同的目標器件。在一替代性實施方案中,各種目標器件可使用一完全相同加密演算法,但實施截然不同的密鑰。
該等加密演算法可包括對稱密鑰演算法(例如專用密鑰密碼學)、不對稱密鑰演算法(公用密鑰密碼學)、橢圓加密、變換表、雜湊函數或其他密碼方法。在一些實施方案中,該等演算法一般包括一密鑰以解密加密資料。在一對稱密鑰演算法(例如DES與AES)中,發送者與接收者預先設定一共用密鑰設置並向所有其他方隱瞞該密鑰秘密。在一不對稱密鑰演算法(例如RSA)中,存在兩個單獨密鑰。例如,發佈一公用密鑰並使任何發送者能夠實行加密且由接收者保密一專用密鑰並使接收者能夠實行正確的解密。
實施的加密演算法可包括具有不同程度的密碼編譯強度之密鑰。密碼編譯密鑰可包括(但不限於)專用簽名密鑰、公用簽名核實密鑰、對稱驗證密鑰、專用驗證密鑰、公用驗證密鑰、對稱資料加密密鑰、對稱密鑰包裝密鑰、對稱及不對稱隨機數產生密鑰及其他。
在操作中,系統200可用以下載一資料項目,然後在執行時解密該等接收資料項目。而且,該等資料項目可保持加密直至被請求。例如,加密資料項目可儲存於一或多個儲存媒體內,直至一目標器件請求該資料項目。在接收請求之際,該目標器件可解密並執行該資料項目。系統200提供的一優點在於,該等資料項目在儲存於一記憶體或儲存媒體內時不可存取,因為解密正好在執行該資料項目之前發生。如此,系統200防止一駭客,其可能存取系統200內的一記憶體以讀取未加密的下載程式碼。
參考所解說的系統200,來源器件202可包括一資料項目206。資料項目206可接收自一服務提供者、一視訊轉換器製造者、一電腦、一本人上傳或其他第三方提供者。資料項目206可包括軟體及/軟體修補程式、系統資料、安全資訊、可執行程式、供應用程式使用的資料、電子媒體內容或任一其他可下載內容。
來源器件202在資料項目206上實行一第一加密(箭頭207)。該第一加密可產生一加密資料項目,諸如資料項目208。在一些具體實施例中,可實行該第一加密以保證內容或用於在該目標器件內之內容之位置資訊的安全。例如,該第一加密可加密資料內容以及用於在目標器件204上程式化該資料內容的索引資訊。在一些實施方案中,可能不加密該索引資訊。
來源器件202施加一第二加密至該加密資料項目208(箭頭209)。該第二加密可產生一雙重加密資料項目210。在一些實施方案中,可執行該第二加密以保護在來源器件202與目標器件204之間的通信傳輸。例如,該第二加密可能係一驗證步驟以確保加密資料檔案208在於目標器件204內接收檔案208之前不被攔截並修改,或"電子欺騙"。可在需要時新增額外加密步驟。
接下來,將雙重加密資料項目210從來源器件202傳輸(例如下載)至目標器件204(箭頭211)。在目標器件204內接收雙重加密資料項目210,並由目標器件204內的嵌入式軟體來加以解密。該解密產生一加密資料項目212(箭頭213)。特定言之,在213處的解密可解碼在以上加密209中所實行之驗證加密。
在第一解密213之後,目標器件204可將加密資料項目212寫入至器件記憶體或一儲存媒體內,諸如非揮發性記憶體(NVM)(例如,快閃記憶體、EEPROM記憶體)(箭頭214)。在某時刻,在目標器件204內的嵌入式軟體可請求下載加密資料項目212之至少一部分(箭頭216)。如此,目標器件204從器件記憶體中擷取該加密資料項目,並使用在目標器件204內的解密電路來解密資料項目212(箭頭218)。將關於下面圖3A至7來說明解密電路。
解密加密資料項目212產生原始資料項目206以及任一加密或解密密鑰、索引或指令。所得內容為資料項目220。在完成解密之際,目標器件204可使用或執行該等資料項目內容220(箭頭222)。例如,資料項目220可能包括軟體修補程式、升級或可在目標器件204上使用的其他媒體。
在一些具體實施例中,可使用一可移除儲存媒體將一雙重加密資料項目210從來源器件202傳輸至目標器件204。例如,將雙重加密資料項目210複製至來源器件202處的一可移除儲存媒體(例如一快閃記憶棒或記憶卡、一可移除碟片)。接著將該可移除儲存媒體通信耦合至目標器件204(例如透過一通用串列匯流排(USB)埠、透過一記憶卡讀取器、透過一可移除磁碟機)。目標器件204從該可移除儲存媒體中讀取雙重加密資料項目210,並將雙重加密資料項目210複製至目標器件204。
圖2係解說一種用於安全下載軟體至一目標器件之範例性程序300的一流程圖。例如,程序300包括來源器件202所實行之操作(302至306)與目標器件204所實行之操作(308至318)。一般情況下,程序300包括多重加密(例如雙重加密)資料項目並應用一軟體及硬體解密技術來擷取一或多個多重加密資料項目。應瞭解,雖然下面參考雙重加密資料項目來說明程序300,但程序300可更一般地應用並適用於多重加密資料項目。
程序300開始於施加一第一加密至一資料項目(302)。該第一加密可產生一加密資料項目,諸如資料項目208。來源器件202接下來施加一第二加密至該加密資料項目(304)。該第二加密可產生一雙重加密資料項目,諸如資料項目210。接著將該雙重加密資料項目傳輸至目標器件(306)。目標器件204接收該雙重加密資料項目(308)。
在接收該雙重加密資料項目之後,目標器件204施加該第二解密至雙重加密資料項目210(310)。該解密可產生加密資料項目212。接著將加密資料項目212寫入至器件204上的一儲存媒體之一保留部分,直至由目標器件204或另一外部系統請求(312)。
在某時刻,目標器件204可能請求加密資料項目212。例如,器件204可能針對軟體升級執行一例行檢查並可能發現項目212正位於一系統儲存媒體內。目標器件204從該儲存媒體擷取加密資料項目212(314)。在擷取項目212之後,將該第一解密施加至加密資料項目(316)。例如,該解密可產生加密資料項目220。在完成該解密之際,目標器件204使用或執行該資料項目(318)。
圖3A至3B解說可用以安全下載軟體至一目標器件之範例性架構400a至b之方塊圖。在一些實施方案中,該等架構400a至b可用以將軟體內容從一來源器件下載至一目標器件。一般情況下,架構400a至b之若干部分可用於此揭示案中所說明之下載方法中。
應明白,圖3A至3B中所示之架構僅包括用於此揭示案中所揭示之系統之一架構的一範例,且可利用除所示者外的更多或更少組件,或可使用一不同組態的組件。圖3A至3B中所示之各種組件可採用硬體、軟體或硬體與軟體的一組合來加以實施,包括一或多個信號處理及/或應用特定積體電路。另外,應瞭解,雖然下面參考雙重加密資料項目來說明架構400a至b,但架構400a至b可更一般地應用並適應於多重加密資料項目。
參考圖3A,架構400a包括一來源器件402與一目標系統404,其係經由網路介面406來連接。來源器件402可(例如)實施為一視訊轉換器(set-top box)、一電腦、一手持電腦、一個人數位助理、一蜂巢式電話、一網路器具、一相機、一智慧型電話或其他電子器件或該些資料處理器件之任兩個或多個之一組合或其他資料處理器件。目標器件404可(例如)實施為一視訊轉換器、一電腦、一手持電腦、一個人數位助理、一蜂巢式電話、一網路器具、一相機、一智慧型電話或其他電子器件或其他資料處理器件。在一些實施方案中,來源器件402係來源器件202之一實施方案而目標器件404係目標器件204之一實施方案。
來源器件402與目標裝置404兩者均包括網路介面406a至b、處理器408a至b、儲存媒體410a至b及輸入/輸出介面412a至b。該等組件406a至b、408a至b、410a至b及412a至b之每一者係使用一系統匯流排414a至b來在每一個別器件402及404內互連。網路介面406a將來源器件402連接至目標系統404內的網路介面406b。該等處理器408a及408b能夠處理指令用於在個別系統402及404內執行。在一些實施方案中,該等處理器408a及408b為單執行緒處理器。在一些實施方案中,該等處理器408a及408b為多執行緒處理器。該等處理器408a及408b能夠處理儲存於儲存媒體410a或410b內的指令以顯示圖形資訊用於在該等輸入/輸出介面412a或412b上的一使用者介面。
儲存媒體410a及410b在每一個別系統402及404內儲存資訊。在一些實施方案中,儲存媒體410a及410b為電腦可讀取媒體。在一些實施方案中,儲存媒體410a至b為揮發性記憶體單元。在一些其他實施方案中,儲存媒體410a及410b為非揮發性記憶體單元。在各種不同實施方案中,儲存媒體410a及/或410b為一軟碟器件、一硬碟器件、一光碟器件或一磁帶器件。
如所示,儲存媒體410b包括一嵌入式解密軟體模組416。嵌入式解密軟體模組416可包括若干指令,其可由(若干)處理器408b來執行。在一範例中,該等指令一般包括用以在一雙重加密資料項目上解密一第一加密以產生一加密資料項目的指示。
目標系統404還包括一解密模組418。例如,解密模組418可包括電路,其能夠解密接收自來源器件402之資料檔案或程式軟體。解密模組418係經由網路介面406b來耦合至處理器匯流排414b。在一些實施方案中,解密模組418可包括於目標系統404內以在接收資料上實行一第一解密。
該等輸入/輸出介面412a及412b在每一個別系統402及404內提供輸入/輸出操作。在一些實施方案中,該等輸入/輸出介面412a包括一鍵盤及/或指向器件。在另一實施方案中,輸入/輸出介面412a包括一顯示單元,用於顯示圖形使用者介面。
現參考圖3B,再次顯示系統400b,其包括來源器件402與目標系統404,其係經由網路介面406來連接。類似於圖3A,器件402及404兩者均包括網路介面406a至b、處理器408a至b、儲存媒體410a至b及輸入/輸出介面412a至b。該等組件406a至b、408a至b、410a至b及412a至b之每一者係經由系統匯流排414a及414b來在每一個別器件402及404內互連。在一些實施方案中,來源器件402係來源器件202之一實施方案而目標器件404係目標器件204之一實施方案。
在圖3B範例中,目標系統404額外包括一安裝的積體電路卡(ICC)420。ICC 420可(例如)實施為一智慧卡、一SIM卡、一USB密鑰、一用戶卡或其他能夠接收並儲存資料的媒體。ICC 420可藉由目標系統404、來源器件402或另一器件來加以程式化。程式化資訊可用以在一網路上識別目標系統404,執行器件功能性或另外啟用系統404來操作。
ICC 420可安裝於目標系統404內。ICC 420可由一使用者移除及/或使用一相似器件或另一器件來替換。例如,一服務操作者可使用一測試器件來替換ICC 420,該測試器件具有更多功能性用於故障排除、升級或修復之用途。在一些實施方案中,在系統404內安裝ICC 420有效地插入ICC 420作為系統404內的一或多個電路之一部分。例如,安裝時,ICC 420可連接性耦合至目標系統404內的一或多個信號線。如所示,ICC 420係透過輸入/輸出介面412b來耦合至目標系統404。如此,例如,目標系統404可存取儲存於ICC 420內的資訊之一部分。
ICC 420包括在ICC 420內的一或多個嵌入式積體電路模組。該嵌入式電路可以係能夠存取目標系統404以解密接收資訊的任何電路。例如,該電路可操作以透過輸入/輸出介面412b來存取目標系統404並與其交換資訊。在一範例中,可實行該存取以解密一先前儲存的加密資料項目。在一些實施方案中,ICC 420可包括一解密密鑰,其係連結至目標系統404內的一特定解密器件。
如所示,ICC 420包括一解密模組422、一儲存媒體424及視需要包括一處理器426。解密模組422、儲存媒體424及處理器426係經由輸入/輸出介面412b來耦合至一處理器匯流排428。在一些實施方案中,可選處理器426可包括於解密模組422內。在一些實施方案中,ICC 420可能不包括一處理器,而可能相反存取處理器408b以獲得方向。
解密模組422包括電路,其能夠保護並解密接收自來源器件402之資料檔案或程式軟體。一般情況下,解密模組422可授權目標系統404以藉由核實一適當加密密鑰匹配一特定解密演算法來在ICC 420上解密內容,由此使得更難以在除一經授權器件外的任一器件上解密資料。在一些實施方案中,例如,解密模組422係一種用於從一受保護儲存媒體424讀取資料之系統。一般情況下,解密模組422可在從儲存媒體424檢索解密密鑰時充當一解密器件。
在操作中,解密模組422可從ICC 420讀取解密密鑰並決定該解密密鑰是否可接受(例如形成一匹配密鑰及演算法組合)用於目標系統404。若該解密密鑰匹配在ICC 420上的加密演算法,則模組422可在將資料提供至目標系統404之前從受保護ICC 420中解密資料。
在一些實施方案中,解密模組422可用以提供具有一產業標準介面(諸如PCMCIA或USB)的一硬體解密模組,其可嵌入於一主機之電路內或插入至該主機之一介面內。特定言之,模組422可使用一供應的加密密鑰來實行實際資料或媒體解密功能以初始化該解密電路。
儲存媒體424包括嵌入式解密軟體430。解密軟體430可執行儲存於儲存媒體424內的指令。例如,該等指令可經組態用以供該一或多個處理器408b或426來執行。該等指令一般包括用以在一雙重加密資料項目上解密一第一加密以產生一加密資料項目的指示。在一些實施方案中,ICC 420可組合嵌入式解密軟體430來運用一或多個電路(例如解密模組422)以解密該加密資料項目,以產生原始資料項目。
在一範例中,系統400可操作以在網路介面406上將加密資料內容及軟體從來源器件402發送至安裝的ICC 420。特定言之,軟體(例如資料檔案及程式軟體)可從來源器件402下載至安裝的ICC 420。例如,可使用嵌入式解密軟體430及解密模組電路422之一組合來解密該下載資訊。
在一些實施方案中,該ICC 420電路之一部分係包括於目標系統404上,而不是整個包括於安裝的ICC 420內。例如,解密模組422可位於目標系統404內,而嵌入式解密軟體430仍在ICC 420上。在其他實施方案中,該解密模組422電路可組合目標系統404內的電路來使系統404可供一最終使用者操作。
在一些實施方案中,目標系統404包括一主動防護(未顯示)。該主動防護可藉由在器件上已發生篡改(例如打開器件)時偵測一短路來向器件404電路及軟體提供安全性。例如,該主動防護可用以防止聚焦離子束修改或微探針。
以上所說明的特徵可實施於數位電子電路或電腦硬體、韌體、軟體或其組合內。該裝置可實施於一電腦程式產品內,其有形地體現於一資訊載體內,例如在一機器可讀取儲存器件內或在一傳播信號內,以供一可程式化處理器執行;且若干方法步驟可藉由一可程式化處理器來實行,該可程式化處理器執行一指令程式以藉由在輸入資料上操作並產生輸出來實行所說明具體實施方案之若干功能。所說明特徵可較有利地實施於一或多個電腦程式內,該等電腦程式可在一可程式化系統上執行,包括至少一可程式化處理器或可程式化目標器件,其係耦合以從一資料儲存系統、至少一輸入器件及至少一輸出器件接收資料及指令並向其發送資料及指令。
該等特徵可實施於一電腦系統內,該電腦系統包括一後端組件,諸如一資料伺服器;或包括一中間軟體組件,諸如一應用程式伺服器或一網際網路伺服器;或包括一前端組件,諸如一用戶端電腦,其具有一圖形使用者介面或一網際網路瀏覽器或其任一組合。該系統之組件可藉由數位資料通信的任一形式或媒體來連接,諸如一通信網路。通信網路之範例包括LAN、WAN及形成網際網路的該等電腦及網路。
圖4係解說至一目標器件之一安裝下載之一範例的一方塊圖。該下載一般包括使用一索引(I)506與一啟用位元(EN)508將一加密資料項目502(其可使用一或多個加密步驟來加密)儲存於一儲存媒體504內。加密資料項目502可包括加密軟體修補程式、系統資料、安全資訊或其他可下載內容。
儲存媒體504可以係非揮發性記憶體(NVM)、隨機存取記憶體(RAM)或唯讀記憶體(ROM)。在此範例中,儲存媒體504包括一受保護記憶體窗口(W)510,其中儲存加密資料項目502。窗口510係使用一上限(Wmax)與一下限(Wmin)來加以描述。該上限與該下限可表述為在該儲存媒體內的位址。因而,該上限與該下限可定義在該儲存媒體內的一位址範圍,其組成受保護記憶體窗口510;窗口510定義該儲存媒體之一保留部分。例如,窗口510可儲存接收自一來源器件402的一些或所有加密軟體。在一些實施方案中,儲存媒體504包括多個、非重疊受保護記憶體窗口,每一者具有其自己的上限及下限。
索引(I)506可用以選擇用以解密加密資料項目502的任一數目演算法及密鑰組合之一者。例如,索引506可供系統硬體用以選擇一適當演算法及密鑰組合用於特定軟體。在一些實施方案中,索引506可表示一整數值,其對應於一演算法及密鑰組合。在一些實施方案中,索引506可對應於該演算法及密鑰組合之位置。
一或多個啟用位元508可用以指示是否針對特定下載區域啟用或停用使用該演算法及密鑰組合之一保護機構(例如一硬體解密機構)。例如,一單一啟用位元508可供系統硬體用以啟用或停用該保護機構。在此範例中,該下載區域係在受保護窗口510內。因而,啟用位元508指示啟用該保護機構。換言之,啟用位元508指示下載至該下載區域內的軟體之一資料保護狀態。若啟用該保護機構,則該資料保護狀態為正。否則,該資料保護狀態為負。
該演算法及密鑰組合之索引506與啟用位元508可與加密資料項目502序連以建立一記憶體結構512。在序連之後,可將記憶體結構512寫入至受保護窗口510內的特定位址位置。在一些實施方案中,受保護窗口510之位址位置為(例如)目標器件416之硬體以及欲下載軟體之開發者所了解。在一些實施方案中,索引值506與啟用位元值508係序連至窗口510之開頭或末尾。
圖5係一範例性系統600,其解說在一非揮發性記憶體區塊周圍實施的多個演算法及密鑰組合之一示意性表示。系統600係經組態用以啟用或停用一硬體解密機構。例如,系統600可啟用該硬體保護機構以確保一未經授權使用者(例如一駭客)無法獲得直觀存取儲存於系統記憶體內的下載資料項目。因而,該保護機構可確保資料之一未經授權解密較不可能發生於系統600內。
系統600包括儲存媒體504、一位址偵測器區塊602及一演算法密鑰組合區塊604。如上所說明,儲存媒體504可以係NVM、RAM、ROM或其他類型記憶體,並可儲存加密資料項目、索引及其他資料內容。
位址偵測器區塊602包括一位址偵測器606與解碼邏輯608。在一些實施方案中,解碼邏輯608為一AND閘。位址偵測器606可接收一Wmax限值610與一Wmin限值612以決定在受保護窗口614內的位址。另外,位址偵測器606可偵測一目前擷取位址616是否位於受保護窗口614內。若擷取位址616係位於窗口614內,則位址偵測器606可傳送一信號,其向解碼邏輯608指示如此。例如,位址偵測器606可在線W_on 618上傳送一高位準信號(邏輯1)。若擷取位址616不位於窗口614內,則位址偵測器606可傳送一信號,其向解碼邏輯608指示如此。例如,位址偵測器606可在線W_on 618上傳送一低位準信號(邏輯0)。
解碼邏輯608(例如一AND閘)可接收W_on信號618與一ENreg信號620。ENreg信號620可以係一啟用信號(例如高位準信號)或一停用信號(例如低位準信號)。ENreg信號620可用以啟用或停用系統600內的解密機構。在接收信號618及620兩者之際,解碼邏輯608可解碼W_on信號618與ENreg信號620。例如,若該解碼邏輯為一AND閘,則該AND閘實施W_on信號618與ENreg信號620之一邏輯結合。
在一些其他實施方案中,除了或取代一AND閘,解碼邏輯608可包括其他類型的解碼邏輯。
演算法組合區塊604包括一或多個演算法及密鑰組合603(例如1至N個演算法/密鑰組合)。如圖5中所示,可在系統600中同時實施多個演算法及密鑰組合603。該等演算法及密鑰組合603提供一密碼編譯機構用於阻止竊聽並資料提取窗口614內的內容。演算法組合區塊604可使用複數個演算法及密鑰組合603之每一者來解密擷取自儲存媒體504之一資料項目並輸出多個輸出至一多工器區塊624內,每一輸出係使用該等演算法及密鑰組合603之一者來解密該擷取資料項目的一結果。
在一些實施方案中,該等演算法及密鑰組合603之一或多個者可經組態用以解密多個加密步驟(例如用於從儲存媒體504中擷取時仍多重加密的一資料項目)。例如,一演算法及密鑰組合603可實施一組多個演算法及密鑰組合。該組多個演算法及密鑰組合可用以解密一多重加密資料項目。
系統600還包括一多工器區塊624與一多工器區塊626。該等多工器624、626可選擇系統600內的許多類比或數位資料來源之一者並可輸出該來源至一單一通道內。
在某時刻,系統600可能經歷一冷或暖重設。該重設可調用系統600內的硬體以從儲存媒體504中讀取該索引(例如索引506)與該啟用位元(例如EN 508)。索引值506可儲存至一數位暫存器"Ireg" 622與數位暫存器ENreg 620內。在一些實施方案中,例如,IReg暫存器622與ENreg暫存器620可能不可由嵌入式解密軟體430來讀取或寫入,以確保系統600內的更高安全性。
系統600內的操作可開始於一系統重設、一記憶體擷取、一軟體下載、一使用者互動或其他事件。例如,目標器件404可試圖擷取系統600內的一記憶體位址。若擷取位址616係位於記憶體窗口614內,則系統600將W_On信號618設定為高位準。
取決於儲存於Ireg暫存器622內的值,多工器區塊624可從演算法及密鑰組合603之一者中選擇一輸出。例如,Ireg暫存器622可包括來自一製造者的資料,該製造者選擇一特定演算法及密鑰組合。如此,由於施加適當演算法及密鑰組合至擷取自儲存媒體504之一資料項目所產生的輸出係由多工器624來選擇並輸出至多工器626。
多工器區塊626可接收藉由選定演算法及密鑰組合603所解密的一資料項目(例如軟體)、一信號DO 628及來自解碼邏輯608的一信號。多工器626可取決於儲存於ENreg暫存器620內的值來決定使用信號DO 628或多工器624之輸出。例如,若該ENreg暫存器係高位準且該擷取位址係在窗口614內,則多工器區塊626可使用該選定演算法及密鑰組合603來解密並輸出一指令輸出(或一般為資料輸出)信號630。在此範例中,適當演算法及密鑰組合603係(由多工器區塊624)選擇,並可使用該選定演算法及密鑰組合603來實行該軟體之一解密。
在另一範例中,擷取位址616可位於記憶體窗口614外。在擷取位址616係在記憶體窗口614外的情況下,信號DO 628可返回請求的記憶體內容,由此繞過該解密機構。由於在系統600內的記憶體窗口614外的內容未受保護,故允許繞過。類似地,若W_on信號618由偵測器606設定為低位準,則系統600繞過該解密結構並提供請求的資料內容或加密資料。在一些實施方案中,若W_on信號618設定為低位準且擷取位址616係在記憶體窗口614內,則由於在受保護記憶體窗口614內請求一讀取存取,可啟動該解密機構。
在一些實施方案中,選定演算法及對應密鑰可單獨儲存於一目標系統或一安裝的ICC 420上。例如,N個不同演算法可藉由一目標系統404上的硬體來加以固定,同時(例如)該密鑰可在一嵌入式軟體不可讀取的區域內個別地儲存於安裝的ICC 420上(例如在系統製造期間)。作為一優點,演算法及密鑰之單獨儲存可根據器件提供密鑰多樣化,從而進一步加強該保護機構之能力。在一範例中,可固定該密鑰之一部分,而該密鑰之另一部分係可程式化。
在一些實施方案中,可藉由硬體來固定N個演算法,但可包括可程式化部分。例如,一演算法可取決於器件而包括若干可變參數。該等參數可藉由在一特定目標系統內下載的值來加以程式化。例如,儲存的演算法可包括用於建立一獨特硬體可程式化演算法的自訂參數。該等參數可包括查找表、雜湊表、算術係數等。
在一些實施方案中,儲存媒體504可具有多個保護窗口614。該些多個保護窗口之每一者可相關聯於其自己的演算法密鑰組合區塊604、一或多個演算法密鑰組合及對應Ireg及ENreg暫存器。
圖6係解說圖5中所示之示意圖之一簡化方塊圖的一範例。一般情況下,圖6係在啟用該解密機構(例如將該ENreg暫存器設定為高位準,由此選擇"演算法密鑰組合i")702且另外擷取位址616係位於受保護記憶體窗口614內時圖5的一等效圖。圖6之圖式係在多工器區塊626將多工器624輸出連接至指令輸出或資料輸出信號630時建立。此外,多工器624輸出係由多工器區塊624來產生。例如,多工器區塊624基於Ireg值622來選擇"演算法密鑰組合i"輸出匯流排。作為一範例,若Ireg等於"2",則將"演算法密鑰組合2"輸出連接至多工器區塊624之輸出。在一些實施方案中,啟用的解密機構702可解密多個加密步驟以獲得已使用多個加密步驟加密的一資料項目。
圖7係解說圖5中所示之示意圖之另一簡化方塊圖的一範例。一般情況下,圖7係在停用該解密機構(例如將該ENreg暫存器設定為低位準)或擷取位址616係位於受保護記憶體窗口614外時圖5的一等效圖。因而,停用該解密機構且指令輸出或資料輸出信號630相當於DO信號628。
在此說明書中所說明的本發明及所有功能操作可實施於數位電子電路或電腦硬體、韌體、軟體或其組合內。本發明之裝置可實施於一電腦程式產品內,其有形地體現於一機器可讀取儲存器件內以供一可程式化處理器執行;且本發明之方法步驟可藉由一可程式化處理器來實行,該可程式化處理器執行一指令程式以藉由在輸入資料上操作並產生輸出來實行本發明之功能。
本發明可較有利地實施於一或多個電腦程式內,該等電腦程式可在包括至少一可程式化處理器的一可程式化系統上執行,該可程式化處理器係耦合以從一資料儲存系統、至少一輸入器件及至少一輸出器件接收資料及指令並向其發送資料及指令。每一電腦程式可以一高階程序或物件導向程式化語言或需要時以組譯或機器語言來實施;且在任一情況下,該語言可以係一編譯或轉譯語言。
藉由範例方式,適當處理器包括通用及專用微處理器兩者。一般,一處理器將會從一唯讀記憶體及/或一隨機存取記憶體接收指令及資料。一般,一電腦將會包括一或多個大量儲存器件用於儲存資料檔案;此類器件包括磁碟,諸如內部硬碟及可移除碟片;一磁光碟;及光碟。適用於有形體現電腦程式指令及資料的儲存器件包括所有形式的非揮發性記憶體,藉由範例方式包括半導體記憶體器件,諸如EPROM、EEPROM及快閃記憶體器件;磁碟,諸如內部硬碟及可移除碟片;磁光碟;及CD-ROM碟片。前述之任一者可由ASIC(特定應用積體電路)來補充或併入其。
為了提供用於與一使用者互動,本發明可實施於一電腦系統上,該電腦系統具有一顯示器件,諸如一監視器或LCD螢幕,用於向使用者顯示資訊;及一鍵盤及一指向器件,諸如一滑鼠或一軌跡球,藉由鍵盤及該指向器件可向該電腦系統提供輸入。該電腦系統可程式化以提供一圖形使用者介面,透過該圖形使用者介面,電腦程式與使用者互動。
已說明本發明之若干具體實施例。但是,應明白,可進行各種修改而不脫離本發明之精神及範疇。據此,其他具體實施例均在隨附申請專利範圍的範疇內。
200...系統
202...來源器件
204...目標器件
206...資料項目
208...資料項目/加密資料檔案
210...雙重加密資料項目
212...加密資料項目
220...資料項目
400a至b...架構
402...來源器件/系統
404...目標器件/系統
406a至b...網路介面
408a至b...處理器
410a至b...儲存媒體
412a至b...輸入/輸出介面
414a至b...系統匯流排
416...嵌入式解密軟體模組
418...解密模組
420...積體電路卡(ICC)
422...解密模組
424...儲存媒體/解密軟體
426...處理器
428...處理器匯流排
430...嵌入式解密軟體
502...加密資料項目
504...儲存媒體
506...索引(I)
508...啟用位元(EN)
510...受保護記憶體窗口(W)
512...記憶體結構
600...系統
602...位址偵測器區塊
603...演算法及密鑰組合
604...演算法密鑰組合區塊
606...位址偵測器
608...解碼邏輯
610...Wmax限值
612...Wmin限值
614...受保護窗口
616...目前擷取位址
620...暫存器ENreg
622...IReg暫存器/Ireg值
624...多工器區塊
626...多工器區塊
702...解密機構
圖1係解說一種用於使用一雙重加密方法將軟體從一來源器件下載至一目標器件之系統的一方塊圖。
圖2係解說一種用於安全下載軟體至一目標器件之範例性程序的一流程圖。
圖3A至3B解說一種用以安全下載軟體至一目標器件之範例性架構之方塊圖。
圖4係解說至一目標器件之一安全下載之一範例的一方塊圖。
圖5係解說在一非揮發性記憶體區塊周圍實施的多個演算法及密鑰組合之一示意性表示的一範例性系統。
圖6係解說圖5中所示之示意圖之一簡化方塊圖的一範例。
圖7係解說圖5中所示之示意圖之另一簡化方塊圖的一範例。
各圖式中相同參考符號指示相同元件。
(無元件符號說明)
Claims (18)
- 一種用於安全下載資料之方法,該方法包含:擷取儲存於一儲存媒體之一保留部分內之一資料項目;產生複數個候選資料項目,該複數個候選資料項目之每一者係藉由施加複數個解密程序之一個別者至該擷取資料項目來加以產生;以該資料項目讀取儲存於該儲存媒體之該保留部分內之一值,該值係於該產生之前被選擇,該值係獨立於該擷取資料項目;從該等候選資料項目與該擷取資料項目中使用該值選擇一者;以及輸出該選定資料項目。
- 如請求項1之方法,其中一個別解密程序包含一或多個演算法密鑰組合。
- 如請求項1之方法,其中從該等候選資料項目與該擷取資料項目當中選擇一者包含:在滿足一或多個準則時,從該等候選資料項目中選擇一者;以及在不滿足該等準則之任一者時選擇該擷取資料項目。
- 如請求項3之方法,其中該準則包含:從該儲存媒體之該保留部分中擷取該擷取資料項目;以及用於該擷取資料項目的一資料保護狀態為正。
- 如請求項4之方法,其中該資料項目係儲存於該儲存媒體之該保留部分內,該方法進一步包含在該擷取之前,接收用於該資料項目的一請求,用於該資料項目的該請求包含一擷取位址,其識別在其中儲存該資料項目的該儲存媒體之該保留部分內的一位址;以及其中擷取該資料項目包含從該擷取位址中擷取該資料項目。
- 如請求項3之方法,其中從該等候選資料項目當中選擇一者包含:從該複數個解密程序中識別相關聯於該擷取資料項目的一解密程序;以及選擇一個別候選項目,其係施加該已識別解密程序至該擷取資料項目的一結果。
- 一種用於安全下載資料之方法,其包含:接收一多重加密資料項目,該多重加密資料項目具有施加至一加密資料項目的一或多個第一加密,該加密資料項目具有施加至一資料項目的一或多個第二加密;在該多重加密資料項目上解密該等第一加密以產生該加密資料項目;以及將該加密資料項目儲存於一儲存媒體之一部分內;從該儲存媒體之該部分內擷取該加密資料項目;以及在該擷取加密資料項目上解密該等第二加密以產生該資料項目,其中解密該等第二加密包括:產生複數個候選資料項目,該複數個候選資料項目 之每一者係藉由施加複數個不同解密程序之一個別者至該擷取加密資料項目來加以產生;以該加密資料項目讀取儲存於該儲存媒體之該部分內之一值,該值係於該產生之前被選擇,該值係獨立於該擷取加密資料項目;從該等候選資料項目與該擷取加密資料項目中使用該值選擇一者;以及輸出該選定資料項目,其中該方法係由一資料處理裝置來實行。
- 如請求項7之方法,其進一步包含儲存於該儲存媒體之該保留部分內,資料識別複數個解密演算法密鑰組合之一或多個者,該等已識別演算法密鑰組合對應於第二加密。
- 如請求項8之方法,其中解密該等第二加密包含:使用該複數個演算法密鑰組合來解密該等第二加密,產生該複數個候選資料項目;以及選擇對應於該等已識別演算法密鑰組合的該複數個候選資料項目之一候選資料項目。
- 一種用於安全下載資料之裝置,其包含:一儲存媒體,該儲存媒體可操作以儲存一資料項目;一或多個第一電路,其可操作以接收該資料項目,並藉由施加複數個解密程序之每一者至該接收資料項目來從該接收資料項目中產生複數個候選資料項目,其中每一候選資料項目係施加該複數個解密程序之一個別解密 程序至該接收資料項目的一結果;以及一或多個第二電路,其可操作以該資料項目讀取儲存於該儲存媒體之一保留部分內之一值並使用該值從該等候選資料項目與該接收資料項目當中選擇一者並輸出該選定資料項目,其中該值係於該產生之前被選擇,該值係獨立於該接收資料項目。
- 如請求項10之裝置,其中一個別解密程序包含一或多個演算法密鑰組合,每一演算法密鑰組合包含一解密密鑰與一解密演算法。
- 如請求項11之裝置,其中該等解密程序之每一者之至少一部分係硬佈線至該一或多個第一電路內。
- 如請求項11之裝置,其中該解密密鑰之至少一部分係可程式化的。
- 如請求項11之裝置,其中在一個別演算法密鑰組合內的一解密演算法可使用一或多個參數來程式化。
- 如請求項10之裝置,其中該儲存媒體進一步可操作以儲存識別該複數個解密程序之一者與一資料保護狀態指示符的資料。
- 如請求項15之裝置,其中可操作以從該等候選資料項目與該接收資料項目當中選擇一者的該一或多個電路係可操作以:在該資料保護狀態指示符指示該資料保護狀態為正時且在該接收資料項目係接收自該儲存媒體之該保留部分時,選擇對應於該已識別解密程序的該等候選資料項目 之一個別者;以及在該資料保護狀態指示符指示該資料保護狀態為負時或在該接收資料項目係不接收自該儲存媒體之該保留部分時,選擇該接收資料項目。
- 一種用於安全下載資料之系統,其包含:一或多個處理器;一儲存媒體;一解密模組,其可操作以使用複數個解密演算法密鑰組合之任一者來解密加密;以及指令,其係儲存於該儲存媒體內並經組態用於供該一或多個處理器執行,該等指令包含指令以:接收一多重加密資料項目,該多重加密資料項目具有施加至一加密資料項目的一或多個第一加密,該加密資料項目具有施加至一資料項目的一或多個第二加密;在該多重加密資料項目上解密該等第一加密以產生該加密資料項目;以及將該加密資料項目儲存於一儲存媒體之一部分內;從該儲存媒體之該部分中擷取該加密資料項目;以及在該擷取加密資料項目上解密該等第二加密以產生該資料項目,其中解密該等第二加密包括:產生複數個候選資料項目,該複數個候選資料項目之每一者係藉由施加複數個不同解密程序之一個別者至該擷取加密資料項目來加以產生; 以該加密資料項目讀取儲存於該儲存媒體之該部分內之一值,該值係於該產生之前被選擇,該值係獨立於該擷取加密資料項目;從該等候選資料項目與該擷取加密資料項目中使用該值選擇一者;以及輸出該選定資料項目。
- 一種用於安全下載資料之系統,其包含:接收構件,其用於接收一多重加密資料項目,該多重加密資料項目具有施加至一加密資料項目的一或多個第一加密,該加密資料項目具有施加至一資料項目的一或多個第二加密;解密構件,其用於在該多重加密資料項目上解密該等第一加密以產生該加密資料項目;以及儲存構件,其用於將該加密資料項目儲存於一儲存媒體之一部分內;擷取構件,其用於從該儲存媒體之該部分中擷取該加密資料項目;以及解密構件,其用於在該擷取加密資料項目上解密該等第二加密以產生該資料項目,其中解密該等第二加密包括:產生複數個候選資料項目,該複數個候選資料項目之每一者係藉由施加複數個不同解密程序之一個別者至該擷取加密資料項目來加以產生;以該加密資料項目讀取儲存於該儲存媒體之該部分 內之一值,該值係於該產生之前被選擇,該值係獨立於該擷取加密資料項目;從該等候選資料項目與該擷取加密資料項目中使用該值選擇一者;以及輸出該選定資料項目。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/952,880 US8213612B2 (en) | 2007-12-07 | 2007-12-07 | Secure software download |
Publications (2)
Publication Number | Publication Date |
---|---|
TW200937248A TW200937248A (en) | 2009-09-01 |
TWI468971B true TWI468971B (zh) | 2015-01-11 |
Family
ID=40718216
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW97147538A TWI468971B (zh) | 2007-12-07 | 2008-12-05 | 安全軟體下載 |
Country Status (3)
Country | Link |
---|---|
US (1) | US8213612B2 (zh) |
TW (1) | TWI468971B (zh) |
WO (1) | WO2009073863A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI782147B (zh) * | 2017-12-22 | 2022-11-01 | 瑞士商納格維遜股份有限公司 | 安全軟體定義的無線電晶片 |
Families Citing this family (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4631935B2 (ja) * | 2008-06-06 | 2011-02-16 | ソニー株式会社 | 情報処理装置、情報処理方法、プログラム及び通信システム |
US8838332B2 (en) | 2009-10-15 | 2014-09-16 | Airbiquity Inc. | Centralized management of motor vehicle software applications and services |
US8831823B2 (en) | 2009-10-15 | 2014-09-09 | Airbiquity Inc. | Centralized management of motor vehicle software applications and services |
US9002574B2 (en) | 2009-10-15 | 2015-04-07 | Airbiquity Inc. | Mobile integration platform (MIP) integrated handset application proxy (HAP) |
US8942888B2 (en) | 2009-10-15 | 2015-01-27 | Airbiquity Inc. | Extensible scheme for operating vehicle head unit as extended interface for mobile device |
US9798898B2 (en) * | 2010-05-25 | 2017-10-24 | Via Technologies, Inc. | Microprocessor with secure execution mode and store key instructions |
US9967092B2 (en) * | 2010-05-25 | 2018-05-08 | Via Technologies, Inc. | Key expansion logic using decryption key primitives |
US9911008B2 (en) * | 2010-05-25 | 2018-03-06 | Via Technologies, Inc. | Microprocessor with on-the-fly switching of decryption keys |
US9892283B2 (en) * | 2010-05-25 | 2018-02-13 | Via Technologies, Inc. | Decryption of encrypted instructions using keys selected on basis of instruction fetch address |
KR101747954B1 (ko) | 2010-12-10 | 2017-06-27 | 한국전자통신연구원 | 실시간 암호키 분배 방식을 이용하여 보안 프로그램을 처리하는 서버와 클라이언트 및 그 제어 방법 |
TW201404636A (zh) | 2012-06-08 | 2014-02-01 | Airbiquity Inc | 遠程識別機動車輛及監測駕駛員行爲之電子感測器資料的評估 |
TWI582633B (zh) * | 2012-10-15 | 2017-05-11 | 宏碁股份有限公司 | 顯示系統及顯示方法 |
CN103780956B (zh) * | 2012-10-19 | 2017-02-15 | 宏碁股份有限公司 | 显示系统及显示方法 |
US8898769B2 (en) | 2012-11-16 | 2014-11-25 | At&T Intellectual Property I, Lp | Methods for provisioning universal integrated circuit cards |
US8959331B2 (en) | 2012-11-19 | 2015-02-17 | At&T Intellectual Property I, Lp | Systems for provisioning universal integrated circuit cards |
CN104919833B (zh) | 2012-12-20 | 2019-11-08 | 爱尔比奎特公司 | 高效头单元通信集成 |
US9036820B2 (en) | 2013-09-11 | 2015-05-19 | At&T Intellectual Property I, Lp | System and methods for UICC-based secure communication |
US9124573B2 (en) | 2013-10-04 | 2015-09-01 | At&T Intellectual Property I, Lp | Apparatus and method for managing use of secure tokens |
US9208300B2 (en) | 2013-10-23 | 2015-12-08 | At&T Intellectual Property I, Lp | Apparatus and method for secure authentication of a communication device |
US9240994B2 (en) | 2013-10-28 | 2016-01-19 | At&T Intellectual Property I, Lp | Apparatus and method for securely managing the accessibility to content and applications |
US9240989B2 (en) | 2013-11-01 | 2016-01-19 | At&T Intellectual Property I, Lp | Apparatus and method for secure over the air programming of a communication device |
US9313660B2 (en) | 2013-11-01 | 2016-04-12 | At&T Intellectual Property I, Lp | Apparatus and method for secure provisioning of a communication device |
US9413759B2 (en) | 2013-11-27 | 2016-08-09 | At&T Intellectual Property I, Lp | Apparatus and method for secure delivery of data from a communication device |
US9713006B2 (en) | 2014-05-01 | 2017-07-18 | At&T Intellectual Property I, Lp | Apparatus and method for managing security domains for a universal integrated circuit card |
US10205710B2 (en) * | 2015-01-08 | 2019-02-12 | Intertrust Technologies Corporation | Cryptographic systems and methods |
TWI560575B (en) * | 2015-10-15 | 2016-12-01 | Via Tech Inc | Microprocessor and method for securely executing instructions therein |
CN109214168B (zh) * | 2018-08-27 | 2020-08-18 | 阿里巴巴集团控股有限公司 | 固件升级方法及装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4440976A (en) * | 1981-06-17 | 1984-04-03 | Motorola, Inc. | Automatic selection of decryption key for multiple-key encryption systems |
TW200632711A (en) * | 2004-11-15 | 2006-09-16 | Microsoft Corp | Method and apparatus for provisioning software |
US20070255941A1 (en) * | 2006-04-18 | 2007-11-01 | Advanced Communication Concepts | Method and system for securing data utilizing reconfigurable logic |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6292874B1 (en) * | 1999-10-19 | 2001-09-18 | Advanced Technology Materials, Inc. | Memory management method and apparatus for partitioning homogeneous memory and restricting access of installed applications to predetermined memory ranges |
GB9930145D0 (en) * | 1999-12-22 | 2000-02-09 | Kean Thomas A | Method and apparatus for secure configuration of a field programmable gate array |
US6961858B2 (en) * | 2000-06-16 | 2005-11-01 | Entriq, Inc. | Method and system to secure content for distribution via a network |
US6970565B1 (en) * | 2000-12-22 | 2005-11-29 | Xm Satellite Radio Inc. | Apparatus for and method of securely downloading and installing a program patch in a processing device |
US7400729B2 (en) * | 2001-12-28 | 2008-07-15 | Intel Corporation | Secure delivery of encrypted digital content |
US7213268B2 (en) * | 2003-07-25 | 2007-05-01 | Aviation Communication And Surveillance Systems, Llc | Method for controlling customer-implemented data updates |
US8045707B2 (en) * | 2003-08-15 | 2011-10-25 | Broadcom Corporation | System and method for securing data |
US20070083491A1 (en) * | 2004-05-27 | 2007-04-12 | Silverbrook Research Pty Ltd | Storage of key in non-volatile memory |
JP2006229881A (ja) * | 2005-02-21 | 2006-08-31 | Toshiba Corp | 鍵管理システムおよび鍵管理方法 |
US8165302B2 (en) * | 2005-06-07 | 2012-04-24 | Sony Corporation | Key table and authorization table management |
US7865019B2 (en) * | 2005-07-27 | 2011-01-04 | Siemens Corporation | On optimizing template matching via performance characterization |
US8275132B2 (en) * | 2006-05-15 | 2012-09-25 | Buchen Neil B | System and method for dynamically allocating stream identifiers in a multi-encryption transport system |
US8532293B2 (en) * | 2007-09-27 | 2013-09-10 | The Directv Group, Inc. | Method and system for securely providing and storing content in a multiple dwelling unit system |
-
2007
- 2007-12-07 US US11/952,880 patent/US8213612B2/en not_active Expired - Fee Related
-
2008
- 2008-12-05 WO PCT/US2008/085747 patent/WO2009073863A1/en active Application Filing
- 2008-12-05 TW TW97147538A patent/TWI468971B/zh active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4440976A (en) * | 1981-06-17 | 1984-04-03 | Motorola, Inc. | Automatic selection of decryption key for multiple-key encryption systems |
TW200632711A (en) * | 2004-11-15 | 2006-09-16 | Microsoft Corp | Method and apparatus for provisioning software |
US20070255941A1 (en) * | 2006-04-18 | 2007-11-01 | Advanced Communication Concepts | Method and system for securing data utilizing reconfigurable logic |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI782147B (zh) * | 2017-12-22 | 2022-11-01 | 瑞士商納格維遜股份有限公司 | 安全軟體定義的無線電晶片 |
Also Published As
Publication number | Publication date |
---|---|
TW200937248A (en) | 2009-09-01 |
WO2009073863A1 (en) | 2009-06-11 |
US8213612B2 (en) | 2012-07-03 |
US20090150681A1 (en) | 2009-06-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI468971B (zh) | 安全軟體下載 | |
US9954826B2 (en) | Scalable and secure key management for cryptographic data processing | |
TWI407745B (zh) | 安全與重播受保護之記憶儲存 | |
US10110380B2 (en) | Secure dynamic on chip key programming | |
US9195806B1 (en) | Security server for configuring and programming secure microprocessors | |
US8281115B2 (en) | Security method using self-generated encryption key, and security apparatus using the same | |
EP2989741B1 (en) | Generation of working security key based on security parameters | |
US8347114B2 (en) | Method and apparatus for enforcing a predetermined memory mapping | |
US8417963B2 (en) | Secure read-write storage device | |
US9703945B2 (en) | Secured computing system with asynchronous authentication | |
US20030196096A1 (en) | Microcode patch authentication | |
WO2009079112A2 (en) | Secure programmable hardware component | |
KR20100120671A (ko) | 스마트 카드의 보안 | |
US20070153580A1 (en) | Memory arrangement, memory device, method for shifting data from a first memory device to a second memory device, and computer program element | |
US8774407B2 (en) | System and method for executing encrypted binaries in a cryptographic processor | |
CN110659506A (zh) | 基于密钥刷新对存储器进行重放保护 | |
JP2008033512A (ja) | セキュリティチップ及びプラットフォーム | |
WO2019142307A1 (ja) | 半導体装置、更新データ提供方法、更新データ受取方法およびプログラム | |
CN110932853B (zh) | 一种基于可信模块的密钥管理装置和密钥管理方法 | |
CN103532712B (zh) | 数字媒体文件保护方法、系统及客户端 | |
WO2012126483A1 (en) | Data protection using distributed security key | |
JP4593207B2 (ja) | ソフトウェア無線システム | |
GB2486635A (en) | Detecting corruption of a cryptographic key stored in a memory | |
CN115935444A (zh) | 安全固件上传 | |
CN117763587A (zh) | 一种算法加密的处理方法、装置、设备及介质 |