TWI783176B - 用來管理支援資料儲存的安全程式庫的方法與電子裝置 - Google Patents

用來管理支援資料儲存的安全程式庫的方法與電子裝置 Download PDF

Info

Publication number
TWI783176B
TWI783176B TW108134225A TW108134225A TWI783176B TW I783176 B TWI783176 B TW I783176B TW 108134225 A TW108134225 A TW 108134225A TW 108134225 A TW108134225 A TW 108134225A TW I783176 B TWI783176 B TW I783176B
Authority
TW
Taiwan
Prior art keywords
area
data
program library
processor
port
Prior art date
Application number
TW108134225A
Other languages
English (en)
Other versions
TW202109332A (zh
Inventor
賴俊元
Original Assignee
大陸商雅特力科技(重慶)有限公司
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 大陸商雅特力科技(重慶)有限公司 filed Critical 大陸商雅特力科技(重慶)有限公司
Publication of TW202109332A publication Critical patent/TW202109332A/zh
Application granted granted Critical
Publication of TWI783176B publication Critical patent/TWI783176B/zh

Links

Images

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/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • 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/78Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data
    • G06F21/79Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data in semiconductor storage media, e.g. directly-addressable memories
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/604Tools and structures for managing or administering access control systems
    • 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
    • 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/82Protecting input, output or interconnection devices
    • G06F21/85Protecting input, output or interconnection devices interconnection devices, e.g. bus-connected or in-line devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/062Securing storage systems
    • G06F3/0623Securing storage systems in relation to content
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/0644Management of space entities, e.g. partitions, extents, pools
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0659Command handling arrangements, e.g. command buffers, queues, command scheduling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Human Computer Interaction (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Health & Medical Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Automation & Control Theory (AREA)
  • Mathematical Physics (AREA)
  • Storage Device Security (AREA)

Abstract

本發明提供一種用來管理支援資料儲存的安全程式庫的方法與電子裝置。所述方法包含:分別將一非揮發性記憶體中的一安全程式庫區中的至少一第一子區與至少一第二子區配置成為所述安全程式庫的一指令區與一資料區;於所述安全程式庫被啟用以後,利用一記憶體控制器禁止任何寫入操作以及任何抹除操作被施加於所述安全程式庫區,以保護分別位於所述指令區與所述資料區的預定指令與預定資料;以及於所述安全程式庫被啟用以後,利用至少一處理器分別透過所述至少一處理器的一指令埠與一資料埠,讀取所述指令區與所述資料區。

Description

用來管理支援資料儲存的安全程式庫的方法與電子裝置
本發明有關於電子產品的控制,尤其關於一種用來管理支援資料儲存的安全程式庫(secure library)的方法與電子裝置。
相關技術中的程式庫(library)可儲存程式碼(program code),以供進一步使用。例如,這些程式碼可被執行,但無法被用戶讀取或改寫。方案商(solution provider)可販賣已預先燒錄這些程式碼的積體電路產品給系統廠商,以供進行二次開發。由於這些程式碼無法被讀取或改寫,這樣的機制有助於保護這些程式碼不被竊取,以維持這樣的商業模式。然而,可能發生某些問題。例如,相關技術中的程式庫只能存放指令。於典型情況下,資料必須存放在其它的地方。在二次開發的期間,這些資料可能被無意間破壞,甚至被故意竄改。因此,需要一種新穎的架構,以改進保護機制且提升電子系統的整體效能。
本發明的一目的在於提供一種用來管理支援資料儲存的安全程式庫(secure library)的方法與電子裝置,以解決上述問題。
本發明的另一目的在於提供一種用來管理支援資料儲存的安全程式 庫的方法與電子裝置,以改進保護機制且達到電子裝置的優化(optimal)效能。
本發明的至少一實施例提供一種用來管理支援資料儲存的安全程式庫的方法,其中所述方法可應用於一電子裝置。所述方法可包含:分別將一非揮發性記憶體中的一安全程式庫區中的至少一第一子區與至少一第二子區配置成為所述安全程式庫的一指令區與一資料區,其中於所述安全程式庫被啟用(enable)以前,屬於所述安全程式庫的預定指令與預定資料透過至少一處理器的一資料埠(data port)分別被寫入所述指令區與所述資料區,以於所述安全程式庫區中建立所述安全程式庫,以及所述至少一處理器與所述非揮發性記憶體是位於所述電子裝置中;於所述安全程式庫被啟用以後,利用一記憶體控制器禁止任何寫入操作以及任何抹除(erase)操作被施加於(applied to)所述安全程式庫區,以保護分別位於所述指令區與所述資料區的所述預定指令與所述預定資料,其中所述記憶體控制器是位於所述電子裝置中;以及於所述安全程式庫被啟用以後,利用所述至少一處理器分別透過所述至少一處理器的一指令埠(instruction port)與所述資料埠,讀取所述指令區與所述資料區。依據某些實施例,所述預定指令可包含至少一函數(function),並且所述預定資料可包含所述至少一函數的常量(constant)。
本發明的至少一實施例提供一種電子裝置。所述電子裝置可包含至少一處理器、一非揮發性記憶體以及一記憶體控制器,且所述至少一處理器具有一資料埠與一指令埠,其中所述記憶體控制器耦接至所述至少一處理器與所述非揮發性記憶體。所述至少一處理器可用來控制所述電子裝置的操作,且所述非揮發性記憶體可用來為所述電子裝置儲存資訊且提供支援資料儲存的安全程式庫給所述電子裝置。另外,所述記憶體控制器可用來分別將所述非揮發性記憶體中的一安全程式庫區中的至少一第一子區與至少一第二子區配置成為所述安全程式庫的一指令區與一資料區,其中於所述安全程式庫被啟用以前,屬 於所述安全程式庫的預定指令與預定資料透過所述至少一處理器的所述資料埠分別被寫入所述指令區與所述資料區,以於所述安全程式庫區中建立所述安全程式庫。例如:於所述安全程式庫被啟用以後,所述記憶體控制器禁止任何寫入操作以及任何抹除操作被施加於所述安全程式庫區,以保護分別位於所述指令區與所述資料區的所述預定指令與所述預定資料;以及於所述安全程式庫被啟用以後,所述至少一處理器分別透過所述至少一處理器的所述指令埠與所述資料埠,讀取所述指令區與所述資料區。依據某些實施例,所述預定指令可包含至少一函數,並且所述預定資料可包含所述至少一函數的常量。
本發明能在不降低整體效能的狀況下實現支援資料儲存的安全程式庫,並且達到電子裝置的優化效能。
100:電子裝置
110:處理器
120:記憶體控制器
122:暫存器電路
124:邏輯電路
130:非揮發性記憶體
132:儲存區
DEBUG_PORT:除錯埠
D_PORT:資料埠
I_PORT:指令埠
SET:設定操作
W:寫入操作
R1、R2:讀取操作
sLIB_Region:安全程式庫區
sLIB_D_Region:資料區
sLIB_I_Region:指令區
200:工作流程
210、220、230:步驟
第1圖為依據本發明一實施例的一種電子裝置的示意圖。
第2圖繪示依據本發明一實施例的於第1圖所示的電子裝置中的記憶體控制器的實施細節。
第3圖為依據本發明一實施例的一種用來管理支援資料儲存的安全程式庫的方法的控制方案。
第4圖繪示依據本發明一實施例的於第3圖所示方法的工作流程。
第1圖為依據本發明一實施例的一種電子裝置100的示意圖。電子裝置100可包含至少一處理器(例如一或多個處理器)諸如處理器110、一記憶體控制器120以及一非揮發性記憶體130,其中上述至少一處理器諸如處理器110可 具有一除錯埠(debug port)DEBUG_PORT、一資料埠D_PORT與一指令埠I_PORT。例如,非揮發性記憶體130可為一快閃記憶體(Flash memory),但本發明不限於此。另外,記憶體控制器120可耦接至上述至少一處理器諸如處理器110與非揮發性記憶體130。尤其,處理器110可透過匯流排耦接至記憶體控制器120,以在記憶體控制器120的控制下存取(access)非揮發性記憶體130。基於第1圖所示架構,處理器110可分別透過除錯埠DEBUG_PORT、資料埠D_PORT與指令埠I_PORT進行除錯相關傳輸(例如從處理器110以外接收除錯命令或回傳(return)除錯資訊)、資料存取(例如讀取或寫入)與指令讀取。電子裝置100的例子可包含(但不限於):多功能行動電話、筆記型電腦、平板電腦、以及可穿戴裝置。
依據本實施例,上述至少一處理器諸如處理器110可控制電子裝置100的操作,以使電子裝置100具備各種功能。在記憶體控制器120的控制下,非揮發性記憶體130可為電子裝置100儲存資訊,且提供支援資料儲存的安全程式庫給電子裝置100,以供實現上述各種功能。由於所述安全程式庫能支援資料儲存,故本發明的保護機制能妥善地保護所述安全程式庫所需的重要資料,以確保這些重要資料不會被破壞或竄改。
第2圖繪示依據本發明一實施例的於第1圖所示的電子裝置100中的記憶體控制器120的實施細節。記憶體控制器120可包含一暫存器電路(register circuit)122以及一邏輯電路124,且暫存器電路122可包含多個暫存器。處理器110可透過資料埠D_PORT進行設定操作SET、寫入操作W以及讀取操作R1,尤其,對暫存器電路122進行設定操作SET以及在邏輯電路124的控制下對非揮發性記憶體130進行寫入操作W以及讀取操作R1。另外,處理器110可透過指令埠I_PORT在邏輯電路124的控制下對非揮發性記憶體130進行讀取操作R2。舉例來說,上述至少一處理器諸如處理器110可透過資料埠D_PORT對暫存器電路122 進行設定操作SET以指定非揮發性記憶體130中的儲存區132的多個子區的各自的各種存取限制,使邏輯電路124依據設定操作SET的設定結果(例如儲存在暫存器電路122中的設定結果)來控制寫入操作W以及讀取操作R1與R2的各自的權限,但本發明不限於此。依據本實施例,記憶體控制器120可透過比對存取位址的方式來限制存取,使所述安全程式庫支援資料儲存,並且可以只允許資料埠D_PORT讀取所述安全程式庫中的重要資料,以維持所述安全程式庫的保護功能。這可帶來許多好處。舉例來說,假設只是以延遲的方式來暫時屏蔽不許可的資料埠存取,延遲時間與處理器架構之間的相依性可造成程式庫內容的不安全,尤其,若透過其它主控(master)裝置諸如直接記憶體存取(Direct Memory Access,DMA)電路發動讀取則有漏洞。本發明的架構能完全避免這些問題。
第3圖為依據本發明一實施例的一種用來管理支援資料儲存的安全程式庫的方法的控制方案。所述方法可應用於第1圖所示的電子裝置100,尤其,可應用於上述至少一處理器諸如處理器110、記憶體控制器120與非揮發性記憶體130。如第3圖所示,儲存區132可包含一安全程式庫區sLIB_Region與其它區(例如系統廠商專用區、用戶區等),並且安全程式庫區sLIB_Region可包含一指令區sLIB_I_Region與一資料區sLIB_D_Region。於所述安全程式庫被啟用以前,例如在第1圖所示架構中的積體電路(例如包含處理器110、記憶體控制器120、非揮發性記憶體130與匯流排的積體電路產品)的一生產階段期間,上述至少一處理器諸如處理器110可將屬於所述安全程式庫的預定指令與預定資料透過資料埠D_PORT分別寫入指令區sLIB_I_Region與資料區sLIB_D_Region,以於安全程式庫區sLIB_Region中建立所述安全程式庫。例如,於所述安全程式庫被啟用以後,記憶體控制器120禁止任何針對安全程式庫區sLIB_Region的修改,以保護分別位於指令區sLIB_I_Region與資料區sLIB_D_Region的所述預定指令與所述預定資料。依據某些觀點,安全程式庫區sLIB_Region可代表所述安全程式庫,但本發 明並不限於此。
第4圖繪示依據本發明一實施例的於第3圖所示方法的工作流程200。為了便於理解,電子裝置100(例如上述至少一處理器諸如處理器110、記憶體控制器120與非揮發性記憶體130)可在上述積體電路(例如包含處理器110、記憶體控制器120、非揮發性記憶體130與匯流排的所述積體電路產品)的所述生產階段的至少一後續階段(例如一或多個後續階段)的期間進行步驟210、220與230的操作中的至少一部分(例如一部分或全部),且可在執行步驟210以前進行所述生產階段中的操作,但本發明並不限於此。舉例來說,上述至少一後續階段可包含一第一後續階段諸如二次開發階段,尤其,可還包含一第二後續階段諸如用戶階段。於所述安全程式庫被啟用以後,不論在這些後續階段中的哪一個階段,依據所述方法來操作的電子裝置100能妥善地保護所述安全程式庫所需的重要資料,以確保這些重要資料不會被破壞或竄改。
在步驟210中,電子裝置100(例如記憶體控制器120)可分別將非揮發性記憶體130中的安全程式庫區sLIB_Region中的至少一第一子區(例如一或多個第一子區)與至少一第二子區(例如一或多個第二子區)配置成為所述安全程式庫的指令區sLIB_I_Region與資料區sLIB_D_Region,其中於所述安全程式庫被啟用以前,屬於所述安全程式庫的所述預定指令與所述預定資料透過處理器110的資料埠D_PORT分別被寫入指令區sLIB_I_Region與資料區sLIB_D_Region,以於安全程式庫區sLIB_Region中建立所述安全程式庫。
在步驟220中,於所述安全程式庫被啟用以後,電子裝置100可利用記憶體控制器120禁止任何寫入操作以及任何抹除操作被施加於安全程式庫區sLIB_Region,以保護分別位於指令區sLIB_I_Region與資料區sLIB_D_Region的所述預定指令與所述預定資料。
在步驟230中,於所述安全程式庫被啟用以後,電子裝置100可利用 處理器110分別透過處理器110的指令埠I_PORT與資料埠D_PORT,讀取指令區sLIB_I_Region與資料區sLIB_D_Region。
針對資料埠D_PORT,例如透過資料埠D_PORT的操作,電子裝置100可利用記憶體控制器120允許讀取資料區sLIB_D_Region,而非指令區sLIB_I_Region。尤其,電子裝置100可利用記憶體控制器120禁止上述至少一處理器諸如處理器110透過資料埠D_PORT讀取指令區sLIB_I_Region。另外,電子裝置100可利用記憶體控制器120允許上述至少一處理器諸如處理器110透過指令埠I_PORT讀取指令區sLIB_I_Region。例如,電子裝置100可利用記憶體控制器120禁止上述至少一處理器諸如處理器110透過任何其它埠讀取指令區sLIB_I_Region,其中所述任何其它埠包含資料埠D_PORT。又例如,電子裝置100可利用記憶體控制器120禁止電子裝置100中的任何其它元件讀取指令區sLIB_I_Region。為了簡明起見,本實施例與前述實施例相仿的內容在此不重複贅述。
依據某些實施例,在所述生產階段的期間,上述方案商可透過一生產工具觸發(trigger)於安全程式庫區sLIB_Region中建立所述安全程式庫(例如將所述預定指令與所述預定資料透過資料埠D_PORT分別寫入指令區sLIB_I_Region與資料區sLIB_D_Region),尤其,透過所述生產工具啟用所述安全程式庫,並且可將上述積體電路(例如包含處理器110、記憶體控制器120、非揮發性記憶體130與匯流排的所述積體電路產品)販賣給上述系統廠商,以供所述系統廠商在二次開發階段的期間進行二次開發。於所述系統廠商完成所述二次開發以後,所述系統廠商可將電子裝置100販賣給用戶,以供所述用戶在所述用戶階段的期間使用。為了簡明起見,這些實施例與前述實施例相仿的內容在此不重複贅述。
依據某些實施例,所述預定指令可包含至少一函數(例如一或多個 函數)諸如函數Function_A(),並且所述預定資料可包含上述至少一函數的常量,諸如函數Function_A()的常量。例如,函數Function_A()可具有下列格式:Function_A(){...}其中上列格式中的符號“...”可代表函數Function_A()的內容,但本發明不限於此。另外,所述系統廠商在所述二次開發階段的期間所開發的程式可被儲存於所述其它區(例如所述系統廠商專用區)中,且可包含至少一其它函數(例如一或多個其它函數),諸如呼叫函數Function_A()的函數Function_B()。例如,函數Function_B()可具有下列格式:Function_B(){Function_A();…}其中上列格式中的符號“...”可代表函數Function_B()的內容,但本發明不限於此。為了簡明起見,這些實施例與前述實施例相仿的內容在此不重複贅述。
以上所述僅為本發明之較佳實施例,凡依本發明申請專利範圍所做之均等變化與修飾,皆應屬本發明之涵蓋範圍。
110:處理器
120:記憶體控制器
130:非揮發性記憶體
132:儲存區
DEBUG_PORT:除錯埠
D_PORT:資料埠
I_PORT:指令埠
W:寫入操作
R1、R2:讀取操作
sLIB_Region:安全程式庫區
sLIB_D_Region:資料區
sLIB_I_Region:指令區

Claims (10)

  1. 一種用來管理支援資料儲存的安全程式庫的方法,該方法應用於一電子裝置,該方法包含:分別將一非揮發性記憶體中的一安全程式庫區中的至少一第一子區與至少一第二子區配置成為該安全程式庫的一指令區與一資料區,其中於該安全程式庫被啟用以前,屬於該安全程式庫的預定指令與預定資料透過至少一處理器的一資料埠分別被寫入該指令區與該資料區,以於該安全程式庫區中建立該安全程式庫,以及該至少一處理器與該非揮發性記憶體是位於該電子裝置中;於該安全程式庫被啟用以後,利用一記憶體控制器禁止任何寫入操作以及任何抹除操作被施加於該安全程式庫區,以保護分別位於該指令區與該資料區的該預定指令與該預定資料,其中該記憶體控制器是位於該電子裝置中;於該安全程式庫被啟用以後,利用該至少一處理器分別透過該至少一處理器的一指令埠與該資料埠,讀取該指令區與該資料區,其中該指令埠與該資料埠屬於彼此獨立操作的多個埠;以及針對該資料埠,利用該記憶體控制器允許讀取該資料區,而非該指令區。
  2. 一種用來管理支援資料儲存的安全程式庫的方法,該方法應用於一電子裝置,該方法包含:分別將一非揮發性記憶體中的一安全程式庫區中的至少一第一子區與至少一第二子區配置成為該安全程式庫的一指令區與一資料區,其中於該安全程式庫被啟用以前,屬於該安全程式庫的預定指令與預定資料透過至少一處理器的一資料埠分別被寫入該指令區與該資料 區,以於該安全程式庫區中建立該安全程式庫,以及該至少一處理器與該非揮發性記憶體是位於該電子裝置中;於該安全程式庫被啟用以後,利用一記憶體控制器禁止任何寫入操作以及任何抹除操作被施加於該安全程式庫區,以保護分別位於該指令區與該資料區的該預定指令與該預定資料,其中該記憶體控制器是位於該電子裝置中;於該安全程式庫被啟用以後,利用該至少一處理器分別透過該至少一處理器的一指令埠與該資料埠,讀取該指令區與該資料區,其中該指令埠與該資料埠屬於彼此獨立操作的多個埠;以及利用該記憶體控制器禁止該至少一處理器透過該資料埠讀取該指令區。
  3. 一種用來管理支援資料儲存的安全程式庫的方法,該方法應用於一電子裝置,該方法包含:分別將一非揮發性記憶體中的一安全程式庫區中的至少一第一子區與至少一第二子區配置成為該安全程式庫的一指令區與一資料區,其中於該安全程式庫被啟用以前,屬於該安全程式庫的預定指令與預定資料透過至少一處理器的一資料埠分別被寫入該指令區與該資料區,以於該安全程式庫區中建立該安全程式庫,以及該至少一處理器與該非揮發性記憶體是位於該電子裝置中;於該安全程式庫被啟用以後,利用一記憶體控制器禁止任何寫入操作以及任何抹除操作被施加於該安全程式庫區,以保護分別位於該指令區與該資料區的該預定指令與該預定資料,其中該記憶體控制器是位於該電子裝置中;於該安全程式庫被啟用以後,利用該至少一處理器分別透過該至少一處理 器的一指令埠與該資料埠,讀取該指令區與該資料區,其中該指令埠與該資料埠屬於彼此獨立操作的多個埠;以及利用該記憶體控制器允許該至少一處理器透過該指令埠讀取該指令區。
  4. 如請求項3所述的方法,另包含:利用該記憶體控制器禁止該至少一處理器透過任何其它埠讀取該指令區,其中該任何其它埠包含該資料埠。
  5. 如請求項3所述的方法,另包含:利用該記憶體控制器禁止該電子裝置中的任何其它元件讀取該指令區。
  6. 一種電子裝置,包含:至少一處理器,用來控制該電子裝置的操作,其中該至少一處理器之彼此獨立操作的多個埠包含一資料埠與一指令埠;一非揮發性記憶體,用來為該電子裝置儲存資訊且提供支援資料儲存的安全程式庫給該電子裝置;以及一記憶體控制器,耦接至該至少一處理器與該非揮發性記憶體,用來分別將該非揮發性記憶體中的一安全程式庫區中的至少一第一子區與至少一第二子區配置成為該安全程式庫的一指令區與一資料區,其中於該安全程式庫被啟用以前,屬於該安全程式庫的預定指令與預定資料透過該至少一處理器的該資料埠分別被寫入該指令區與該資料區,以於該安全程式庫區中建立該安全程式庫;其中:於該安全程式庫被啟用以後,該記憶體控制器禁止任何寫入操作以及 任何抹除操作被施加於該安全程式庫區,以保護分別位於該指令區與該資料區的該預定指令與該預定資料;於該安全程式庫被啟用以後,該至少一處理器分別透過該至少一處理器的該指令埠與該資料埠,讀取該指令區與該資料區;以及針對該資料埠,該記憶體控制器允許讀取該資料區,而非該指令區。
  7. 一種電子裝置,包含:至少一處理器,用來控制該電子裝置的操作,其中該至少一處理器之彼此獨立操作的多個埠包含一資料埠與一指令埠;一非揮發性記憶體,用來為該電子裝置儲存資訊且提供支援資料儲存的安全程式庫給該電子裝置;以及一記憶體控制器,耦接至該至少一處理器與該非揮發性記憶體,用來分別將該非揮發性記憶體中的一安全程式庫區中的至少一第一子區與至少一第二子區配置成為該安全程式庫的一指令區與一資料區,其中於該安全程式庫被啟用以前,屬於該安全程式庫的預定指令與預定資料透過該至少一處理器的該資料埠分別被寫入該指令區與該資料區,以於該安全程式庫區中建立該安全程式庫;其中:於該安全程式庫被啟用以後,該記憶體控制器禁止任何寫入操作以及任何抹除操作被施加於該安全程式庫區,以保護分別位於該指令區與該資料區的該預定指令與該預定資料;於該安全程式庫被啟用以後,該至少一處理器分別透過該至少一處理器的該指令埠與該資料埠,讀取該指令區與該資料區;以及該記憶體控制器禁止該至少一處理器透過該資料埠讀取該指令區。
  8. 一種電子裝置,包含:至少一處理器,用來控制該電子裝置的操作,其中該至少一處理器之彼此獨立操作的多個埠包含一資料埠與一指令埠;一非揮發性記憶體,用來為該電子裝置儲存資訊且提供支援資料儲存的安全程式庫給該電子裝置;以及一記憶體控制器,耦接至該至少一處理器與該非揮發性記憶體,用來分別將該非揮發性記憶體中的一安全程式庫區中的至少一第一子區與至少一第二子區配置成為該安全程式庫的一指令區與一資料區,其中於該安全程式庫被啟用以前,屬於該安全程式庫的預定指令與預定資料透過該至少一處理器的該資料埠分別被寫入該指令區與該資料區,以於該安全程式庫區中建立該安全程式庫;其中:於該安全程式庫被啟用以後,該記憶體控制器禁止任何寫入操作以及任何抹除操作被施加於該安全程式庫區,以保護分別位於該指令區與該資料區的該預定指令與該預定資料;於該安全程式庫被啟用以後,該至少一處理器分別透過該至少一處理器的該指令埠與該資料埠,讀取該指令區與該資料區;以及該記憶體控制器允許該至少一處理器透過該指令埠讀取該指令區。
  9. 如請求項8所述的電子裝置,其中該記憶體控制器禁止該至少一處理器透過任何其它埠讀取該指令區,其中該任何其它埠包含該資料埠。
  10. 如請求項8所述的電子裝置,其中該記憶體控制器禁止該電子裝置中 的任何其它元件讀取該指令區。
TW108134225A 2019-08-23 2019-09-23 用來管理支援資料儲存的安全程式庫的方法與電子裝置 TWI783176B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201910782325.2 2019-08-23
CN201910782325.2A CN112417528A (zh) 2019-08-23 2019-08-23 用来管理支持数据存储的安全程序库的方法与电子装置

Publications (2)

Publication Number Publication Date
TW202109332A TW202109332A (zh) 2021-03-01
TWI783176B true TWI783176B (zh) 2022-11-11

Family

ID=74645327

Family Applications (1)

Application Number Title Priority Date Filing Date
TW108134225A TWI783176B (zh) 2019-08-23 2019-09-23 用來管理支援資料儲存的安全程式庫的方法與電子裝置

Country Status (3)

Country Link
US (1) US20210055870A1 (zh)
CN (1) CN112417528A (zh)
TW (1) TWI783176B (zh)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW201805817A (zh) * 2016-08-04 2018-02-16 旺宏電子股份有限公司 電子裝置及其記憶體電路與其操作方法
US20180278418A1 (en) * 2016-08-04 2018-09-27 Macronix International Co., Ltd. Physical unclonable function for security key
CN108958650A (zh) * 2017-05-22 2018-12-07 旺宏电子股份有限公司 电子系统及其操作方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004287541A (ja) * 2003-03-19 2004-10-14 Matsushita Electric Ind Co Ltd 不揮発性メモリのアクセス制御システム
US8316192B2 (en) * 2009-10-08 2012-11-20 Honeywell International Inc. Multiple-port memory systems and methods
EP2372538A1 (en) * 2010-03-23 2011-10-05 ST-Ericsson SA Processing IC with embedded non volatile memory
US9395993B2 (en) * 2013-07-29 2016-07-19 Intel Corporation Execution-aware memory protection
CN107734176A (zh) * 2017-10-25 2018-02-23 深圳市金立通信设备有限公司 移动终端的丢失保护方法、终端及计算机可读存储介质

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW201805817A (zh) * 2016-08-04 2018-02-16 旺宏電子股份有限公司 電子裝置及其記憶體電路與其操作方法
US20180278418A1 (en) * 2016-08-04 2018-09-27 Macronix International Co., Ltd. Physical unclonable function for security key
CN108958650A (zh) * 2017-05-22 2018-12-07 旺宏电子股份有限公司 电子系统及其操作方法

Also Published As

Publication number Publication date
CN112417528A (zh) 2021-02-26
TW202109332A (zh) 2021-03-01
US20210055870A1 (en) 2021-02-25

Similar Documents

Publication Publication Date Title
KR100444537B1 (ko) 데이타처리장치
CN104011733B (zh) 在系统预引导期间具有改进的只读存储器锁定的安全数据保护
WO2017020647A1 (zh) 基于新型存储器的嵌入式文件系统及其实现方法
CN110908932B (zh) 数据处理装置及其数据保护方法
KR20150033695A (ko) 메모리 보호
JP6157637B2 (ja) リードライトメモリデバイスのデータイメージ中の仮想境界コード
JP2008009721A (ja) 評価システム及びその評価方法
TW201706856A (zh) 具有增強指令集之中央處理單元
CN107567629A (zh) 在可信执行环境容器中的动态固件模块加载器
US9542113B2 (en) Apparatuses for securing program code stored in a non-volatile memory
US8914602B2 (en) Display controller having an embedded non-volatile memory divided into a program code block and a data block and method for updating parameters of the same
CN116578327B (zh) 一种程序更新方法、装置及电子设备和存储介质
CN113557500A (zh) 多模式受保护存储器
TWI783176B (zh) 用來管理支援資料儲存的安全程式庫的方法與電子裝置
JPWO2006040798A1 (ja) 半導体集積回路装置および電子システム
US11055237B2 (en) Method of access to a memory
US6738887B2 (en) Method and system for concurrent updating of a microcontroller's program memory
CN104765626A (zh) 一种固件程序烧写方法及装置
KR20180066601A (ko) 메모리 시스템의 구동 방법
JPH09146774A (ja) パーソナルコンピュータシステム
JP2005107608A (ja) 電子機器、不揮発性メモリ及び不揮発性メモリのデータ書き換え方法
CN116702233B (zh) 一种基于ucb的flash空间的安全访问控制方法
JP2007328825A (ja) メモリシステム
KR101113342B1 (ko) 이동통신 단말기의 부트로더 버전 관리 방법
JPH11161484A (ja) 情報処理装置