CN100388245C - 多重任务执行系统 - Google Patents

多重任务执行系统 Download PDF

Info

Publication number
CN100388245C
CN100388245C CNB2005100804649A CN200510080464A CN100388245C CN 100388245 C CN100388245 C CN 100388245C CN B2005100804649 A CNB2005100804649 A CN B2005100804649A CN 200510080464 A CN200510080464 A CN 200510080464A CN 100388245 C CN100388245 C CN 100388245C
Authority
CN
China
Prior art keywords
data
task
key
stored
protection zone
Prior art date
Legal status (The legal status 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 status listed.)
Expired - Fee Related
Application number
CNB2005100804649A
Other languages
English (en)
Other versions
CN1716220A (zh
Inventor
稻村雄
江头彻
竹下敦
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NTT Docomo Inc
Original Assignee
NTT Docomo Inc
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 NTT Docomo Inc filed Critical NTT Docomo Inc
Publication of CN1716220A publication Critical patent/CN1716220A/zh
Application granted granted Critical
Publication of CN100388245C publication Critical patent/CN100388245C/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • G06F12/1416Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights
    • G06F12/145Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights the protection being virtual, e.g. for virtual blocks or segments before a translation mechanism
    • 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
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • G06F12/1408Protection against unauthorised use of memory or access to memory by using cryptography

Landscapes

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

Abstract

在提供多重任务环境的现代化的操作系统中,以较少的存储器资源高效地保护各个任务的重要信息。涉及本发明的多重任务执行系统具备加密处理功能模块,该加密处理功能模块使用比多个任务数量少的密钥数据、用于识别各个任务的任务ID、和来自值不减少而持续增加那样构成的单调增加计数器的各任务生成时的输出值,对各任务生成唯一的密钥流,使用生成的该密钥流对存储在各任务用存储器空间内的保护区域中的数据进行加密。

Description

多重任务执行系统
技术领域
本发明涉及一种并行执行多个任务的多重任务执行系统。
背景技术
近年来,从个人使用的个人计算机(PC)到提供电子商务(EC)等服务的服务器计算机,进而还包括超级计算机在内,事实上,所有的计算机都已成为提供多重任务环境的计算机。这里,所谓多重任务环境是指能够同时执行作为计算机进行处理的单位的“任务”的环境。
人们期待在近期的将来,即使是像移动电话这样资源有限的平台也实现该多重任务环境。
一般地,操作系统使用一种被叫做虚拟寻址的技术,通过对各个任务分配独立的存储器空间(各任务用存储器空间)来提供防止各任务之间的干扰的功能。
但是,如同程序的调试那样,由于存在某个任务必须访问其他任务用存储器空间的情况,所以各个任务并不是完全独立的。
因此,用于管理任务的必要数据等的重要信息,一般不存放在各任务用存储器空间,而是存放在操作系统为自己分配的存储器空间中(操作系统用存储器空间)。
但是,操作系统用存储器空间与各个任务用存储器空间相比,不易进行分页(一种通过将存储器空间上的数据暂时退回到硬盘等二次存储装置,从而能够利用比安装的存储器容量还要大的存储器空间的技术)等,缺乏灵活性,在具有这样性质的操作系统用存储区域上存放很多的信息,可能会带来性能上的影响。
为了解决上述问题,作为把上述重要信息安全地存放在各个任务用存储器空间中的方法,目前被认为是最有前途的方法是,通过把该重要信号加密来防止来自其他的任务的访问。
作为该方法之一,例如,在专利文献1中公开了下述技术:在外部存储及存储器中,把数据及代码以加密了的形式保存,通过在把该数据及代码读入到高速缓冲存储器区域时将其译码,来排除来自其他任务的非法的访问,上述高速缓冲存储器区域设置在中央处理器(CPU)内的物理上安全的区域中。
该技术通过把用于对加密了的数据及代码进行译码的密钥也同样放置在物理上安全的区域,来排除来自其他任务的非法的访问。
另外,在该技术中将译码后的平文数据仅存放在位于物理上安全的区域中的高速缓冲存储器区域,在通过CPU的高速缓冲存储器·写回而写回至存储器中时,通过自动进行加密来确保机密性。
另外,作为该方法之一,在专利文献2中公开了以下技术:在把存储器上的数据向高速缓冲存储器进行读出时进行译码处理,在向高速缓冲存储器写入时进行加密处理,之后在执行被称为“文脉切换”的操作系统的一个功能时,通过把执行寄存器等任务的固有的信息也进行加密,来防患利用调试程序的攻击。
但是,由于上述现有技术基本上必须对每个任务使用不同的加密密钥进行加密处理,因此就需要与可同时工作的任务数量相同个数的保持密钥的存储器区域。
而且,在上述现有的技术中,作为加密算法,使用能够高速执行的共通密钥加密算法,在作为共通密钥加密算法而使用一般的“CBC(Cipher BlockChaining)模式”的情况下,需要被称为“IV(Initializtion Vector)”的数据。
但是,有关密码技术的最近的研究结果指出:也要在称为“IV”的数据中求得不可预测性(例如,参照非专利文献1),所以为了安全利用这样的加密算法,要求更多的存储器区域。
这样的对于存储器的要求,即使对于近来的PC或者服务器计算机或者超级计算机等具有充分的存储器资源的平台来说不存在问题,但对于像PDA或者移动电话等那样存储器资源有限的平台来说就成为很大的问题。
为了解决该问题,在专利文献3中公开了下述技术:在微处理器的复位处理时使用作为随机数据而产生的单一的密钥,进行文脉数据的加密处理,通过这样来保护该文脉数据。
专利文献1美国专利第5,224,166号说明书
专利文献2特开2001-318787号公报
专利文献3特开2001-51819号公报
非专利文献1“SP 800-38A Recommendation for Block Cipher Modes ofOperation-Methods and Technique”,美国商务部技术标准局,2001年12月
发明内容
但是,如专利文献3所公开的技术那样,作为保护各个任务中重要信息的方法而单纯使用单一密钥进行加密处理的方式中存在下述缺点,存在在一般的多重任务环境下不可能安全的问题。
即,在通过使用了单一密钥的加密处理对任务上的重要信息进行了保护的情况下,如图11(a)和(b)所示,攻击者通过使用2个任务B以及C进行以下这样的操作,能够读出攻击对象的任务A的重要信息。
第1,正在执行的任务B通过操作系统提供的接口,停止任务A及任务C的执行。
第2,任务B把存储有任务A的重要信息的保护区域(在该时刻已经由操作系统完成了加密处理)复制(参照图11(a))到任务C的保护区域中(同样,在该时刻已经由操作系统完成了加密处理)。
第3,任务B重新开始任务C的执行,输出存储在任务C自身的保护区域的重要信息(参照图11(b))。由于在任务C下执行该操作,所以存储在保护区域的重要信息由操作系统进行译码,其结果为输出任务A的重要信息。
因此,本发明是鉴于上述各点而作出的,其目的在于提供一种多重任务执行系统,在提供多重任务环境的现代化的操作系统中,能够以较少的存储器资源高效率地保护各个任务的重要信息。
本发明的第1特征在于,是一种并行执行多个任务的多重任务执行系统,其要点在于具备以下加密处理功能模块:使用比上述多个任务数量少的密钥数据,用于识别各个任务的任务ID,和来自值不减少而是持续增加的单调增加计数器的各任务生成时的输出值,对各任务产生唯一的密钥流,使用生成的该密钥流,对存储在各任务用存储器空间内的保护区域中的数据进行加密,其中所述加密处理功能模块具备:密钥流生成功能模块,通过以使用了所述密钥数据的规定的加密方式对包括所述任务ID和所述输出值的计数器值进行加密,来生成所述密钥流,数据块化功能模块,将存储在所述保护区域中的数据分割成规定数据块,和按位加运算功能模块,在生成的所述密钥流的位串和分割的所述规定数据块的位串之间运算按位加,并将运算出的按位加存储在所述保护区域。
根据该发明,因为能够使用比多个任务数量少的密钥数据对各任务产生唯一的密钥流,所以即使特定的任务的重要信息被复制到其他任务中,在复制目的地的任务上也无法正确译码该重要信息,能够以较少存储资源高效率地保护各任务的重要信息。
在本发明的第1特征中,具备在规定的定时使用上述密钥流对存储在上述保护区域的数据进行译码的译码处理功能模块,也可以构成上述加密处理功能模块以使其对通过上述译码处理功能模块进行译码的存储在上述保护区域的数据,使用利用更新了的上述密钥数据所产生的上述密钥流进行加密。
在本发明的第1特征中,上述译码处理功能模块使用利用过了有效期的上述密钥数据所生成的密钥流对存储在上述保护区域的数据进行译码,也可以构成上述加密处理功能模块以使其使用利用与过了有限期的上述密钥数据不同的其他密钥数据所生成的上述密钥流,对由上述译码处理功能模块进行译码的存储在上述保护区域的数据进行加密。
在本发明的第1个特征中,来自上述单调增加计数器的输出值是由操作系统所提供的时刻值,在上述操作系统中也可以如此地构成:禁止将上述时刻值返回到过去的操作。在本发明的第1特征中,也可以作为硬件提供上述单调增加计数器。
如以上说明的那样,根据本发明能够提供一种多重任务执行系统,在提供多重任务环境的现代化的操作系统中,以较少的存储器资源高效率地保护各个任务的重要信息。
附图说明
图1是涉及本发明第1实施方式的多重任务执行系统的功能框图;
图2作为数据块加密算法一种的CTR模式的概念的说明图;
图3是涉及本发明第1实施方式的多重任务执行系统的加密/译码处理功能的说明图;
图4是用于说明在涉及本发明第1实施方式的多重任务执行系统中,对存储在保护区域中的数据进行加密的动作的流程图;
图5是用于说明在涉及本发明第1实施方式的多重任务执行系统中,更新密钥数据的动作的流程图;
图6是表示涉及本发明第2实施方式的多重任务执行系统的加密/译码处理功能中的管理内容的一个例子的图;
图7表示涉及本发明的第2的实施方式的多重任务执行系统的任务信息存储功能中的管理内容的一个例子的图;
图8是用于说明在涉及本发明第2实施方式的执行系统中,更新密钥数据的动作的流程图;
图9用于说明涉及本发明的变更例1的多重任务执行系统的图;
图10用于说明涉及本发明的变更例2的多重任务执行系统的图;
图11用于说明涉及现有技术的多重任务执行系统的问题点的图。
具体实施方式
(实施方式1)
参照图1至图5,对于涉及本发明第1实施方式的多重任务执行系统进行说明。
涉及本发明的多重任务执行系统是在能够并行执行多个任务的现代化的操作系统(OS)中安装的系统,构成该系统使其即使在存储器资源有限的计算环境中,也能够提供对于各个任务的重要信息的保护。
图1表示涉及本实施方式的多重任务执行系统被载入操作系统用存储器空间的状态。
如图1所示,涉及本实施方式的多重任务执行系统具备:密钥生成功能201、密钥存储功能202、单调增加计数器功能203、任务信息存储功能204和加密/译码处理功能205。
密钥生成功能201生成用于对存储在各个任务的保护区域内的数据(重要信息)进行加密的单一的密钥数据。
例如,密钥产生功能201使用硬件式的随机数发生器等安全的模拟随机数生成功能,生成无法由攻击者预测的密钥数据(根据使用的算法不同而不同,但一般是128位-256位左右)。
另外,构成密钥生成功能201使其在规定的定时(例如从系统启动时或者密钥数据生成时起经过规定期间后等)更新上述的密钥数据。
密钥存储功能202是保持由密钥产生功能201所产生的单一的密钥数据并管理利用状况的功能。
单调增加计数器功能203是被设定为值不会被减少而是持续增加的计数器。
另外,也可以构成来自单调增加计数器功能203的输出值,使其为由操作系统所提供的时刻值。在该情况下,在操作系统的时刻调整功能中必须进行如此的构成,禁止如同将该时刻值返回到过去那样的操作。
因此,在操作系统的对时功能中,当需要在将时刻值返回到过去的方向上进行对时的情况下,需要采取不变更时刻值自身,而是通过调整时刻间隔来渐进地进行对时的这种结构。
另外,单调增加计数器功能203不限于安装在操作系统内,也可以作为硬件被提供。
还有,单调增加计数器功能203中的单调增加计数器值的增加间隔,如下所述,被维持在满足攻击者进行的攻击不会成功的条件。
任务信息存储功能204将用于识别各任务的任务ID与来自各任务生成时的单调增加计数器功能203的输出值(单调增加计数值)相关联地存储。
加密/译码处理功能205在适当的定时,使用比同时工作着的多个任务数量少的密钥数据和任务ID以及各任务生成时的单调增加计数器值,对各任务生成唯一的密钥流,使用生成的该密钥流,对存储在各任务用的存储器空间内的保护区域的数据进行加密。
在本实施方式中,加密/译码处理功能205为了实现当在一个任务用存储器空间内的保护区域里加密存储的重要信息被复制到其他任务用存储器空间内的保护区域时,即使两个保护区域中的加密处理所使用的密钥数据相同,复制目的地的任务也无法正确地进行译码的性质,作为加密方式使用在上述非专利文献中公开的数据块密码的CTR(Counter)模式。
该CTR模式是近年来被倡导的数据块密码的操作模式中的一种。参照图2,对于该CTR模式进行简单地说明。
如图2所示,第1,在CTR模式中,将维持为决不取同一值的计数器值301输入给与利用的加密算法相对应的加密处理器302。
第2,通过运算出由加密处理器302进行加密的各计数器值(密钥流)的各位与构成平文数据的各数据块的各位之间的按位加,来进行该平文数据的加密。
另外,在CTR模式中,通过算出密钥流的各位和构成密码文数据的各数据块的各位之间的按位加,可以对该加密数据进行译码。
在图2的例子中,把计数器值301的上位部分设为固定值,把计数器值301的下位部分设为变动值X。变动值X是与各数据块对应从0依次加一这样的值。
在此,计数器值301如果保证每个对应的数据块不重复,对于下位部分使用什么变动值都可以。
此外,如果所利用的加密算法是充分安全的,而且如果将对计数器值301进行加密的密钥流看作随机的话,那么即使是在利用了相同的密钥数据的情况下,只要计数器值的初始值不是完全一致的,通过CTR模式进行的加密结果就会变得完全不同。
图3表示利用了该CTR模式的加密/译码处理功能205的结构。如图3所示,该加密/译码处理功能205具备:密钥流生成功能205a、数据块化功能205b、XOR运算功能205c。
密钥流生成功能205a以使用了密钥数据的规定的加密方式对包括任务ID和该任务生成时的单调增加计数器值的计数器值301进行加密,由此来生成密钥流。
具体来说,密钥流生成功能205a使用任务ID及该任务生成时的单调增加计数器值作为上述CTR模式的计数器值301中的固定值。
有关具有由系统生成可能性的所有的任务为不同的值,如果可以这样地运用此处所使用的固定值,那么即使加密存储在特定的任务用存储器空间内的保护区域中的重要信息,被复制到其他任务用存储器空间内的保护区域,也可使其他任务无法正确地对该重要信息进行译码。
能够像上述那样运用的条件为关于多个任务,任务ID及该任务生成时的单调增加计数器值双方不一致。
一般地,作为任务ID,由于使用固定大小的值,在反复进行多个任务的产生及消除的时候,特定的任务ID具有可以由不同的任务轮流使用的性质。
因此,可知为了满足上述的条件,在单调增加计数器值表示相同值的期间,同样的任务ID不使用2次或者2次以上就可以。
例如,在假设作为UNIX(注册商标)系操作系统的一般结构即“15位整数(最大32768)的任务ID”及“作为每隔10微秒进行更新的时刻值的单调增加计数器值”的情况下,攻击者为了完成将对于系统相同的CTR模式的计数器值中的固定值分配给多个任务,就必须在单调增加计数器值维持相同值的10微秒之内,生成或者消除30,000个左右的任务。
即,意味着只要不满足该条件,攻击者的攻击就不会成功。
一般地,由于在任务的生成和消除中必须要有操作系统的介入,因此,像那样高速地执行足够次数的任务生成处理以及消除处理,在目前一般的硬件环境下几乎是不可能的。
数据块化功能205b是将存储在保护区域的数据(平文数据或者加密数据)分割成规定数据块的功能。
XOR运算功能205c在生成的密钥流的位串与分割的规定数据块的位串之间运算按位加(XOR),并将运算出的该按位加存储在保护区域中。
另外,加密/译码处理功能205的结构为:在规定的定时(例如,在密钥数据被更新等情况下),使用上述的密钥流对存储在所有的任务用存储器空间内的保护区域中的数据进行译码。
这时,加密/译码处理功能205的结构为:使用利用更新的密钥数据产生的密钥流,对像上述那样被译码的存储在保护区域的数据再次进行加密。
然后,参照图4及图5对涉及本实施方式的多重任务执行系统的动作进行说明。
第一,参照图4对在涉及本实施方式的多重任务执行系统中,对存储在各个任务用存储器空间内的保护区域中的数据进行加密的动作进行说明。
如图4所示,在步骤S101中,操作系统生成新的任务并对该任务分配任务用存储器空间。在此,任务信息存储功能204存储有关该任务用存储器空间内的保护区域的信息、任务ID、和来自该任务生成时的单调增加计数器功能203的输出值(单调增加计数器值)。
在步骤S102中,加密/译码处理功能205的密钥流生成功能205a生成由存储在任务信息存储功能204中的任务ID和该任务生成时的单调增加计数器值以及变动值X所构成的计数器值301。
而且,密钥流生成功能205a使用存储在密钥存储功能202中的密钥数据,以规定的加密方式通过对计数器值301进行加密来生成密钥流。
在此,密钥流生成功能205a通过将变动值X从0开始依次加1,生成与存储在上述保护区域的数据(平文数据)被分割成规定的数据块的数量相对应的长度的密钥流。
在步骤S103中,XOR运算功能205c在密钥流的位串和平文数据的位串之间运算按位加,并将运算出的按位加作为加密数据存储在保护区域。
第2,参照图5对在涉及本实施方式的多重任务执行系统中,更新密钥数据的动作进行说明。
一般地,在比较短的期间(1天以内左右)在像进行系统的重新启动这样的运行环境下,即使不更新单一密钥而持续使用也不损害安全性。
这时,密钥存储功能202在系统启动时和最初需要密钥数据的时刻,可以只具有存储由密钥生成功能201所生成的密钥数据的功能。
但是,在像服务器计算机那样进行长时间连续运行的运用环境下,不更新单一密钥而持续使用可能会带来安全性的显著下降,因此需要在适当的定时进行所使用的密钥数据的更新处理。
因此,在步骤S201中,加密/译码处理功能205在适当的定时,使用密钥流对被加密的全部保护区域内的数据进行译码,上述密钥流是使用目前正在使用的密钥数据而生成的。
在步骤S202中,密钥生成功能201更新所使用的密钥数据,密钥存储功能202存储被更新的密钥数据。
在步骤S203中,加密/译码处理功能205使用利用被更新的密钥数据生成的密钥流对全部保护区域内的数据进行加密。
根据涉及本实施方式的多重任务执行系统,因为可以使用单一的密钥数据对各任务产生唯一的密钥流,所以即使特定的任务的重要信息被复制到其他任务中,在复制目的地的任务上也无法对该重要信息正确地进行译码,可以用较少的存储器资源有效地保护各任务的重要信息。
即,根据涉及本实施方式的多重任务执行系统,因为可以使必须放在操作系统用存储器空间中的数据为单一的密钥数据等最小限度的数据,所以即使在PDA、移动电话等存储器资源有限的平台中,也能够实现可保护各任务的重要信息的多重任务环境。
(实施方式2)
参照图6至图8对涉及本发明第2实施方式的多重任务执行系统进行说明。以下,关于涉及本实施方式的多重任务执行系统,主要对与上述涉及第1实施方式的多重任务执行系统的不同点进行说明。
一般地,在各任务持有多个重要信息的情况下,该重要信息的一部分可能退回到了硬盘等二次存储装置中。
因此,涉及本实施方式的多重任务执行系统的目的在于,即使在该情况下也能够实现高效的密钥更新。
在本实施方式中,如图6所示,密钥存储功能202存储有多个密钥数据。具体而言,密钥存储功能202对于各个密钥数据,将用于识别该密钥数据的密钥号码、该密钥数据、该密钥数据的生成时间、现行标志、和参照数相关联地存储。
在此,现行标志是表示该密钥数据是否为当前密钥数据的标志。仅对多个密钥数据中的一个进行设定,使其为用于进行新的加密处理而使用的现行密钥数据。其他的密钥数据具有“未使用”或者“现存有过去使用该密钥数据进行了加密的数据”中的一个属性。
另外,参照数对于现行密钥以及具有“现存有过去使用该密钥数据进行了加密的数据”的属性的密钥数据,表示该密钥数据被用于对多少个保护区域进行加密。
在此,具有“现存有过去使用该密钥数据进行了加密的数据”的属性的密钥数据,使用该密钥数据对存储在保护区域的重要信号进行译码后结果是当参照数变为0时成为未使用状态。
另外,现行密钥数据从生成时开始在经过了规定时间(例如1个小时)的时刻变为无效。而且,然后在需要重要信息的加密处理时,密钥存储功能202对由密钥生成功能201所生成的新密钥数据作为现行密钥数据进行设定。
另外,本实施方式中,任务信息存储功能204,如图7所示,对于各保护区域,将识别该保护区域的保护区域号码、该保护区域的各任务用地址空间内的起始地址、该保护区域的大小、表示存储在该保护区域内的数据(重要信息)是加密文还是平文的状态信息、和识别在该保护区域内的数据(重要信息)的加密处理中所使用的密钥数据的使用密钥数据号码相关联地存储。
在此,参照图8对在涉及本实施方式的多重任务执行系统中更新密钥数据的动作进行说明。
在步骤301中,加密/译码处理功能205判断目前正在使用的密钥数据是否超过了有效期。
在判断为超过了有效期的情况下,在步骤S302中,加密/译码处理功能205使用利用超过了有效期的密钥数据所生成的密钥流,对被加密的存储在全部保护区域中的数据进行译码。
在步骤S303中,密钥存储功能202从由密钥生成功能201所生成的密钥数据中,将所使用的密钥数据作为现行密钥数据进行设定并存储。
在步骤S304中,加密/译码处理功能205使用利用与超过了有效期的密钥数据不同的密钥数据(即,作为现行密钥数据设定的密钥数据)所生成的密钥流,对存储在全部保护区域中的数据进行加密。
根据涉及本实施方式的多重任务执行系统,通过将多个密钥数据保存在密钥存储功能202中,可以使密钥数据更新时所必须的处理最小化。
变更例1
参照图9,对本发明的变更例1进行说明。
如图9所示,在本变更例中,操作系统使用在操作系统用存储器空间700中放置的单一的加密密钥(密钥数据)701,对存储在通过文脉开关被中止的任务用存储器空间702-1~702-N中的重要信息进行加密。
另一方面,在本变更例中,操作系统使用在操作系统用存储器空间700中放置的单一的加密密钥(密钥数据)701,对存储在通过文脉开关被重新开始执行的任务用存储器空间703中的重要信息进行译码。
根据涉及本变更例的多重任务执行系统,作为加密方式,通过使用基于任务ID及该任务生成时的单调增加计数器值的CTR模式,安全地实现通过由单一的加密密钥701对多个任务的重要信息进行加密的保护。
另外,涉及本变更例的多重任务执行系统适用于比较频繁地反复进行停止、启动的运行方式的系统。
变更例2
参照图10,对于本发明的变更例2进行说明。在本变更例中,与上述的变更例1的情况不同,不是使用单一的加密密钥,而是使用比所有任务的数量少的加密密钥。
如图10所示,在本变更例中,操作系统在操作系统用存储器空间800中所放置的多个加密密钥之中,使用现行的加密密钥(现行密钥数据)801-3对通过文脉开关被中止的任务用存储器空间802-2~802-N中所存储的重要信息进行加密。
在此,正在中止的任务802-1在现行的加密密钥变为有效之前在被加密的状态下被中断执行,所以操作系统在重新开始执行任务802-1时,必须使用过去的加密密钥801-1对存储在该任务802-1用存储器空间中的数据进行译码。
涉及本变更例的多重任务执行系统因为可以用比较低的成本来实现加密密钥的更新处理,所以即使在长时期处于启动状态的运行环境中也能适用。

Claims (5)

1.一种多重任务执行系统,并行地执行多个任务,其特征在于,
具备加密处理功能模块,使用比所述多个任务数量少的密钥数据、用于识别各任务的任务ID、和来自值不减少而持续增加那样构成的单调增加计数器的各任务生成时的输出值,对各任务生成唯一的密钥流,使用生成的该密钥流对存储在各任务用存储器空间内的保护区域中的数据进行加密,其中
所述加密处理功能模块具备:密钥流生成功能模块,通过以使用了所述密钥数据的规定的加密方式对包括所述任务ID和所述输出值的计数器值进行加密,来生成所述密钥流,
数据块化功能模块,将存储在所述保护区域中的数据分割成规定数据块,和
按位加运算功能模块,在生成的所述密钥流的位串和分割的所述规定数据块的位串之间运算按位加,并将运算出的按位加存储在所述保护区域。
2.根据权利要求1所述的多重任务执行系统,其特征在于,
具备译码处理功能模块,在规定的定时使用所述密钥流对存储在所述保护区域中的数据进行译码,
所述加密处理功能模块使用利用更新的所述密钥数据所生成的所述密钥流,对由所述译码处理功能模块进行了译码的存储在所述保护区域中的数据进行加密。
3.根据权利要求2所述的多重任务执行系统,其特征在于,
所述译码处理功能模块使用利用超过了有效期的所述密钥数据所生成的密钥流,对存储在所述保护区域中的数据进行译码,
所述加密处理功能模块使用利用与超过了有效期的所述密钥数据不同的其他密钥数据所生成的所述密钥流,对由所述译码处理功能模块进行了译码的存储在所述保护区域中的数据进行加密。
4.根据权利要求1所述的多重任务执行系统,其特征在于,
来自所述单调增加计数器的输出值是由操作系统所提供的时刻值,
在所述操作系统中也可以如此地构成:禁止将上述时刻值返回到过去的操作。
5.根据权利要求1所述的多重任务执行系统,其特征在于,所述单调增加计数器作为硬件被提供。
CNB2005100804649A 2004-07-02 2005-07-01 多重任务执行系统 Expired - Fee Related CN100388245C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2004197157 2004-07-02
JP2004197157A JP4490192B2 (ja) 2004-07-02 2004-07-02 マルチタスク実行システム

Publications (2)

Publication Number Publication Date
CN1716220A CN1716220A (zh) 2006-01-04
CN100388245C true CN100388245C (zh) 2008-05-14

Family

ID=35058881

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2005100804649A Expired - Fee Related CN100388245C (zh) 2004-07-02 2005-07-01 多重任务执行系统

Country Status (5)

Country Link
US (1) US7577851B2 (zh)
EP (1) EP1612671B1 (zh)
JP (1) JP4490192B2 (zh)
CN (1) CN100388245C (zh)
DE (1) DE602005013611D1 (zh)

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4469783B2 (ja) 2005-11-28 2010-05-26 株式会社東芝 メモリ保護装置、メモリ保護システムおよびメモリ保護方法
JP4498295B2 (ja) * 2005-11-30 2010-07-07 株式会社東芝 アクセス制御装置、アクセス制御システム、プロセッサ、アクセス制御方法
US7681050B2 (en) * 2005-12-01 2010-03-16 Telefonaktiebolaget L M Ericsson (Publ) Secure and replay protected memory storage
JP4643479B2 (ja) * 2006-03-22 2011-03-02 株式会社東芝 アクセス制御装置、アクセス制御システム、プロセッサ、アクセス制御方法およびメモリアクセス制御方法
US20090193527A1 (en) * 2006-08-03 2009-07-30 Freescale Semiconductor, Inc. Method for monotonically counting and a device having monotonic counting capabilities
KR101369748B1 (ko) * 2006-12-04 2014-03-06 삼성전자주식회사 데이터 암호화 방법 및 그 장치
US8370644B2 (en) * 2008-05-30 2013-02-05 Spansion Llc Instant hardware erase for content reset and pseudo-random number generation
US8379846B2 (en) * 2009-05-21 2013-02-19 Freescale Semiconductor, Inc. Encryption apparatus and method therefor
US8184812B2 (en) * 2009-06-03 2012-05-22 Freescale Semiconductor, Inc. Secure computing device with monotonic counter and method therefor
JP5167374B2 (ja) * 2011-01-21 2013-03-21 シャープ株式会社 データ暗号化装置、及び、メモリカード
CN103597456B (zh) * 2011-06-15 2017-05-10 诺基亚技术有限公司 用于在分布式存储器环境中实施存储器段访问控制的方法和装置
US9053233B2 (en) * 2011-08-15 2015-06-09 Freescale Semiconductor, Inc. Method and device for controlling debug event resources
WO2013040241A1 (en) 2011-09-13 2013-03-21 Privatecore, Inc. Software cryptoprocessor
US9798695B2 (en) 2012-08-07 2017-10-24 Nokia Technologies Oy Access control for wireless memory
KR101458479B1 (ko) * 2012-10-12 2014-11-07 한국전자통신연구원 세션상태정보의 암호화 및 복호화 방법
US9477603B2 (en) 2013-09-05 2016-10-25 Facebook, Inc. System and method for partitioning of memory units into non-conflicting sets
US9983894B2 (en) 2013-09-25 2018-05-29 Facebook, Inc. Method and system for providing secure system execution on hardware supporting secure application execution
US10049048B1 (en) 2013-10-01 2018-08-14 Facebook, Inc. Method and system for using processor enclaves and cache partitioning to assist a software cryptoprocessor
US9747450B2 (en) 2014-02-10 2017-08-29 Facebook, Inc. Attestation using a combined measurement and its constituent measurements
US9734092B2 (en) 2014-03-19 2017-08-15 Facebook, Inc. Secure support for I/O in software cryptoprocessor
US10305689B2 (en) * 2014-12-04 2019-05-28 Nec Corporation Encryption apparatus, decryption apparatus, cryptography processing system, encryption method, decryption method, encryption program, and decryption program
US9904807B2 (en) * 2015-01-09 2018-02-27 Toshiba Memory Corporation Memory system and information processing system
US9798678B2 (en) 2015-04-02 2017-10-24 International Business Machines Corporation Protecting storage from unauthorized access
US9715462B2 (en) 2015-04-02 2017-07-25 International Business Machines Corporation Protecting contents of storage
JP2018205817A (ja) * 2017-05-30 2018-12-27 富士通株式会社 情報処理装置、および管理プログラム
CN111431888B (zh) * 2020-03-19 2020-11-27 深圳市道旅旅游科技股份有限公司 关键信息屏蔽的方法、装置、设备及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5224166A (en) * 1992-08-11 1993-06-29 International Business Machines Corporation System for seamless processing of encrypted and non-encrypted data and instructions
JP2001051819A (ja) * 1999-08-12 2001-02-23 Canon Inc 画像制御装置および画像制御方法およびコンピュータが読み出し可能なプログラムを格納した記憶媒体
JP2001318787A (ja) * 2000-05-08 2001-11-16 Toshiba Corp マイクロプロセッサ、これを用いたマルチタスク実行方法、およびマルチレッド実行方法
WO2001095554A1 (en) * 2000-06-02 2001-12-13 Bbnt Solutions Llc Methods and systems for supplying encryption keys
CN1445680A (zh) * 2002-03-20 2003-10-01 株式会社东芝 内部存储器型抗篡改处理器及保密方法

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5940508A (en) * 1997-04-07 1999-08-17 Motorola, Inc. Method and apparatus for seamless crypto rekey system
US6345359B1 (en) * 1997-11-14 2002-02-05 Raytheon Company In-line decryption for protecting embedded software
GB2319102B (en) * 1998-01-30 1998-12-23 Ibm A security system for a transaction processing system
US6226618B1 (en) * 1998-08-13 2001-05-01 International Business Machines Corporation Electronic content delivery system
US7360252B1 (en) * 1999-04-30 2008-04-15 Macrovision Corporation Method and apparatus for secure distribution of software
US6966002B1 (en) * 1999-04-30 2005-11-15 Trymedia Systems, Inc. Methods and apparatus for secure distribution of software
US7270193B2 (en) * 2000-02-14 2007-09-18 Kabushiki Kaisha Toshiba Method and system for distributing programs using tamper resistant processor
JP3864798B2 (ja) * 2000-03-09 2007-01-10 株式会社日立製作所 共通鍵暗号の復号装置
US6889378B2 (en) * 2000-07-24 2005-05-03 Sony Corporation Information processing method, inter-task communication method, and computer-executable program for the same
US6978375B1 (en) * 2000-09-08 2005-12-20 International Business Machines Corporation System and method for secure authentication of external software modules provided by third parties
US6981077B2 (en) * 2000-12-22 2005-12-27 Nortel Networks Limited Global access bus architecture
US6665755B2 (en) * 2000-12-22 2003-12-16 Nortel Networks Limited External memory engine selectable pipeline architecture
JP2003051819A (ja) * 2001-08-08 2003-02-21 Toshiba Corp マイクロプロセッサ
EP1292109A1 (en) * 2001-08-27 2003-03-12 Ricoh Company, Ltd. Information processing system
JP4226816B2 (ja) * 2001-09-28 2009-02-18 株式会社東芝 マイクロプロセッサ
JP4115759B2 (ja) 2002-07-01 2008-07-09 株式会社東芝 耐タンパプロセッサにおける共有ライブラリの使用方法およびそのプログラム
JP3880933B2 (ja) * 2003-01-21 2007-02-14 株式会社東芝 耐タンパマイクロプロセッサ及びキャッシュメモリ搭載プロセッサによるデータアクセス制御方法
US8005710B2 (en) * 2004-09-28 2011-08-23 Microsoft Corporation Methods and systems for caching and synchronizing project data

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5224166A (en) * 1992-08-11 1993-06-29 International Business Machines Corporation System for seamless processing of encrypted and non-encrypted data and instructions
JP2001051819A (ja) * 1999-08-12 2001-02-23 Canon Inc 画像制御装置および画像制御方法およびコンピュータが読み出し可能なプログラムを格納した記憶媒体
JP2001318787A (ja) * 2000-05-08 2001-11-16 Toshiba Corp マイクロプロセッサ、これを用いたマルチタスク実行方法、およびマルチレッド実行方法
WO2001095554A1 (en) * 2000-06-02 2001-12-13 Bbnt Solutions Llc Methods and systems for supplying encryption keys
CN1445680A (zh) * 2002-03-20 2003-10-01 株式会社东芝 内部存储器型抗篡改处理器及保密方法
JP2003280989A (ja) * 2002-03-20 2003-10-03 Toshiba Corp 内部メモリ型耐タンパプロセッサおよび秘密保護方法

Also Published As

Publication number Publication date
EP1612671A3 (en) 2008-04-09
DE602005013611D1 (de) 2009-05-14
CN1716220A (zh) 2006-01-04
EP1612671A2 (en) 2006-01-04
JP4490192B2 (ja) 2010-06-23
US20060020941A1 (en) 2006-01-26
US7577851B2 (en) 2009-08-18
EP1612671B1 (en) 2009-04-01
JP2006018685A (ja) 2006-01-19

Similar Documents

Publication Publication Date Title
CN100388245C (zh) 多重任务执行系统
JP3880933B2 (ja) 耐タンパマイクロプロセッサ及びキャッシュメモリ搭載プロセッサによるデータアクセス制御方法
CN100386707C (zh) 生成用在隔离执行环境中的密钥层组
CN103299315B (zh) 用于原位加密的系统和方法
CN101477612B (zh) 保护从中央处理器发送的以供处理的安全数据的安全性
CN103069428B (zh) 不可信云基础设施中的安全虚拟机引导
CN1914849B (zh) 受信移动平台体系结构
US8190917B2 (en) System and method for securely saving and restoring a context of a secure program loader
US20150294123A1 (en) System and method for sharing data securely
CN102362280A (zh) 在电子设备中安全地存储数据的系统和方法
CN1662869A (zh) 休眠保护
US20140189373A1 (en) Method for hard partitioning the resources of a secure computer system
CN109768862B (zh) 一种密钥管理方法、密钥调用方法及密码机
US20170063544A1 (en) System and method for sharing data securely
CN104883256A (zh) 一种抵抗物理攻击和系统攻击的密钥保护方法
CN107563226B (zh) 一种存储器控制器、处理器模块及密钥更新方法
JPH09204360A (ja) 機密データの保護方法
JP6899308B2 (ja) 情報処理装置および情報処理装置のデータ処理方法
US20220398339A1 (en) Protection of stored and communicated secret data against side-channel attacks
CN103870769A (zh) 一种对磁盘进行保护的方法及系统
JP2006120089A (ja) データ管理システム及びデータ管理方法
CN116028958B (zh) 一种密钥加解密方法、装置、安全机以及介质
US20240176638A1 (en) Register protection for confidential computing environment
CN110598403B (zh) 一种进程数据保护方法
JP7307400B2 (ja) 電子情報記憶媒体、カウンタ更新方法及びカウンタ更新プログラム

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20080514

Termination date: 20190701