CN1287302C - 加密电路和解密电路以及数据处理装置 - Google Patents
加密电路和解密电路以及数据处理装置 Download PDFInfo
- Publication number
- CN1287302C CN1287302C CNB200410032525XA CN200410032525A CN1287302C CN 1287302 C CN1287302 C CN 1287302C CN B200410032525X A CNB200410032525X A CN B200410032525XA CN 200410032525 A CN200410032525 A CN 200410032525A CN 1287302 C CN1287302 C CN 1287302C
- Authority
- CN
- China
- Prior art keywords
- mentioned
- data
- circuit
- encryption
- ciphering unit
- 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
Links
- 230000009466 transformation Effects 0.000 claims description 57
- 230000000155 isotopic effect Effects 0.000 claims description 21
- 239000004065 semiconductor Substances 0.000 claims description 12
- 230000006870 function Effects 0.000 claims description 11
- 238000006243 chemical reaction Methods 0.000 claims description 4
- 239000000758 substrate Substances 0.000 claims description 2
- 238000010586 diagram Methods 0.000 description 15
- 101100532801 Caenorhabditis elegans sdn-1 gene Proteins 0.000 description 13
- 238000005516 engineering process Methods 0.000 description 10
- 238000000034 method Methods 0.000 description 9
- -1 SDn-2 ... Proteins 0.000 description 8
- 230000014509 gene expression Effects 0.000 description 7
- 230000008859 change Effects 0.000 description 6
- 238000004458 analytical method Methods 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 239000012467 final product Substances 0.000 description 4
- 230000006399 behavior Effects 0.000 description 3
- 230000015572 biosynthetic process Effects 0.000 description 3
- 238000006467 substitution reaction Methods 0.000 description 3
- 230000008676 import Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 230000005055 memory storage Effects 0.000 description 2
- 239000000203 mixture Substances 0.000 description 2
- 239000000178 monomer Substances 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 238000012937 correction Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
Images
Classifications
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61B—DIAGNOSIS; SURGERY; IDENTIFICATION
- A61B18/00—Surgical instruments, devices or methods for transferring non-mechanical forms of energy to or from the body
- A61B18/04—Surgical instruments, devices or methods for transferring non-mechanical forms of energy to or from the body by heating
- A61B18/12—Surgical instruments, devices or methods for transferring non-mechanical forms of energy to or from the body by heating by passing a current through the tissue to be heated, e.g. high-frequency current
- A61B18/1206—Generators therefor
-
- 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/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/82—Protecting input, output or interconnection devices
- G06F21/85—Protecting input, output or interconnection devices interconnection devices, e.g. bus-connected or in-line devices
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61B—DIAGNOSIS; SURGERY; IDENTIFICATION
- A61B17/00—Surgical instruments, devices or methods, e.g. tourniquets
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61B—DIAGNOSIS; SURGERY; IDENTIFICATION
- A61B18/00—Surgical instruments, devices or methods for transferring non-mechanical forms of energy to or from the body
- A61B18/04—Surgical instruments, devices or methods for transferring non-mechanical forms of energy to or from the body by heating
- A61B18/12—Surgical instruments, devices or methods for transferring non-mechanical forms of energy to or from the body by heating by passing a current through the tissue to be heated, e.g. high-frequency current
- A61B18/14—Probes or electrodes therefor
- A61B18/1477—Needle-like probes
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61B—DIAGNOSIS; SURGERY; IDENTIFICATION
- A61B17/00—Surgical instruments, devices or methods, e.g. tourniquets
- A61B2017/00743—Type of operation; Specification of treatment sites
- A61B2017/00747—Dermatology
- A61B2017/00761—Removing layer of skin tissue, e.g. wrinkles, scars or cancerous tissue
Landscapes
- Engineering & Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Surgery (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- Animal Behavior & Ethology (AREA)
- Nuclear Medicine, Radiotherapy & Molecular Imaging (AREA)
- Heart & Thoracic Surgery (AREA)
- Medical Informatics (AREA)
- Molecular Biology (AREA)
- Biomedical Technology (AREA)
- General Health & Medical Sciences (AREA)
- Public Health (AREA)
- Veterinary Medicine (AREA)
- Otolaryngology (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Plasma & Fusion (AREA)
- Storage Device Security (AREA)
- Information Transfer Systems (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
本发明的目的在于,提供能够实现存储器内部或总线上的信息不被解读的保密性高的数据处理装置及IC卡的加密电路。加密电路具有:被处理数据由2个数据块(B1)、(B0)组成,已处理数据由2个数据块(B1’)、(B0’)组成,对数据块(B1)进行第1加密处理、输出第1中间数据的第1加密单元(231);进行数据块(B0)与第1中间数据的“异或”运算,输出数据块(B1’)的第1运算单元(233);对数据块(B1’)进行第2加密处理、输出第2中间数据的第2加密单元(232)以及;进行第2中间数据与数据块(B1)的“异或”运算,输出数据块(B0’)的第2运算单元(234)。
Description
技术领域
本发明涉及数据处理装置的保密技术,尤其是涉及用半导体集成电路构成的数据处理装置保护其内部信息不被恶意攻击者用刺探方式读或改变半导体集成电路内部的信息,不被恶意攻击者用剥离分析技术读出半导体集成电路内部信息的保密技术。
背景技术
在存储个人信息等机密信息,并处理该信息的IC卡等的系统中所用的单片微型控制器上,要求其有高度的保密性,要保护其内部信息不因攻击者攻击(如对机密信息的分析行为)而被读出或改写。
以往是通过不规则地连接在包含存储器及单片微型控制器的逻辑电路之间传递信号的地址总线、数据总线的布线,使得难以确定各信号线所具有的功能,以此保护信息不受分析行为的攻击。但是,根据目前的分析技术,用剥离分析技术来确定信号线实际上己达到可能的水平。
对这一问题,在后述的特开平11-203237号公报中,公开了通过同步地改变总线上信号的顺序来进行总线加密的方法。上述公报所公开的技术示于图15。符号1表示半导体集成电路,其内部由CPU(中央处理装置)10、RAM(随机存取存储器)、ROM(只读存储器)30、E2PROM(可电擦除可编程的ROM)40等功能块构成,另外,还包括时序控制电路60。在各功能块10、20、30、40的I/O部(数据的输入输出部)及地址的输入输出部上,以与它们邻接的形式设置第1加密电路11、21、31及41。另外,配置有相互连接各个第1加密电路11、21、31及41的总线50。时序控制电路60以规定的时序输出时序控制信号,各个第1加密电路11、21、31及41根据此时序控制信号,更换总线50的各信号的连接以进行加密。也就是说,它是通过按时序进行加密,以使对总线50上传递的信号的分析变得更困难的方案。另外,在各个第1加密电路11、21、31及41的外部(总线50一侧),以更换信号的方式进行加密,但在其内侧(存储器RAM20、ROM30:E2PROM40一侧)则以还原成原来数据的方式进行加密。
这样,用图15所示的技术,虽然CPU10与存储器(RAM20、ROM30、E2PROM40)之间的数据被加密了,但并没有对存储器上的数据加密。也就是说,总线50上的数据可被保护,但对存储器上或被存储在其内部的数据被直接读出或改写的情况,设有设防。
这样,攻击者对IC内部的总线或存储器进行刺探,读出或改写数据、或用剥离分析的方法从构成单体的存储器中读出数据、解读原来的信息,对此,目前的保密措施不够充分,这是其缺点。
发明内容
本发明是鉴于上述问题而进行的,由于在对总线上传递的信号进行加密的同时,不仅对存储器上的,而对其内部也加密的数据进行保存,所以对总线或存储器上的任何数据进行直接读出或改写的入侵行为进行保护,使其不能解读原来的信息。
为达到此目的的本发明的加密电路是将4位以上的被处理数据经规定的加密处理变换成同位数的已处理的数据的加密电路,其特征在于:上述被处理数据被分割成2位以上的第1数据块和与上述第1数据块同位数的第2数据块,同时,上述已处理的数据被分割成分别与上述第1数据块同位数的第3数据块和第4数据块,上述加密电路具有:对上述第1数据块进行规定的第1加密处理,输出同位数的第1中间数据的第1加密单元;进行上述第2数据块与上述第1中间数据的每位的“异或”运算,输出上述第3数据块的第1运算单元;对上述第3数据块进行与上述第1加密处理相同或不同的第2加密处理,输出同位数的第2中间数据的第2加密单元;以及进行上述第2中间数据与上述第1数据块的每位的“异或”运算,输出上述第4数据块的第2运算单元。
另外,本发明的加密电路的特征在于:上述加密单元对输入数椐值根据被固定于该加密单元的变换规则变换成唯一决定的输出数据值。
根据具有以上特征的本发明的加密电路,可以得到对被处理数据进行了加密处理的已处理的数据,原来的信息变得不可推测。另外,通过适当设定第1及第2加密单元中的加密处理的变换规则,可以多种多样地、自由地变更加密处理的算法,以求提高保密性。
为达到此目的的本发明的解密电路是将4位以上的已加密处理的数据经规定的解密处理逆变换成同位数的处理前的数据的解密电路,其特征在于:上述已加密处理的数据被分割成2位以上的第5数据块和与上述第5数据块同比持数的第6数据块,同时,上述处理前的数据被分割成分别与上述第5数据块同位数的第7数据块和第8数据块,上述解密电路具有:对上述第5数据块进行规定的第3加密处理,输出同位数的第3中间数据的第3加密单元;进行上述第6数据块与上述第3中间数据的每位的“异或”运算,输出上述第7数据块的第3运算单元;对上述第7数据块进行与上述第3加密处理相同或不同的第4加密处理,输出同位数的第4中间数据的第4加密单元;以及进行上述第4中间数据与上述第5数据块的每位的“异或”运算,输出上述第8数据块的第4运算单元。
另外,本发明的解密电路的特征在于:上述加密单元对输入数椐值根据被固定于该加密单元的变换规则变换成唯一决定的输出数据值。
根据具有以上特征的本发明的解密电路,可以将用本发明的加密电路进行了加密处理的已加密处理的数据,逆变换成原来的处理前的数据。另外,本发明的解密电路可以用与加密电路同样的电路结构,通过将加密电路的第1加密单元用作第4加密单元,将加密电路的第2加密单元用作第3加密单元而简单地构成。
另外,本发明的加密电路及解密电路最好采取以下方式构成:加密单元将对应于输入数据各位的多个输入端子与对应于输出数据各位的输出端子之间的布线的一部分或全部进行改接,由上述布线的改接来固定上述变换规则。在这种场合下,经上述布线的改接,可对上述输入数据进行1位或2位以上的循环移位操作。另外,经上述布线的改接,可对上述输入数据的预定的2位进行替换操作。或者,经上述布线的改接,可对上述输入数据要做的1位或2位以上的循环移位操作以及对预定的2位要做的替换操作组合起来进行。尤其采用最后的构成方法时,可网罗布线改接的所有组合。
另外,本发明的加密电路及解密电路最好采取以下方式构成:加密单元具有对输入数据的一部分或全部的位进行规定逻辑运算的逻辑运算电路,由上述逻辑运算电路来固定上述变换规则。在这种场合下,上述逻辑运算电路被构成为可对上述输入数据的一部分或全部的位进行2位以上的逻辑运算。
另外,本发明的加密电路及解密电路最好被构成为:加密单元具有对输入数据的一部分或全部的位以及对上述输入数据在输入时的地址数据的一部分或全部的位进行规定逻辑运算的逻辑运算电路,上述变换规则最好被上述逻辑运算电路固定为,根椐上述地址数据的地址值被唯一地决定。
另外,本发明的加密电路及解密电路最好被构成为:加密单元具有对输入数据的一部分或全部的位以及对保存在规定的非易失性存储器中的变换规则固定用数据进行规定逻辑运算的逻辑运算电路,上述变换规则最好被上述逻辑运算电路固定为,根椐上述变换规则固定用数据的数据值被唯一地决定。
另外,本发明的加密电路及解密电路最好被构成为:加密单元具有根据预先被固定的变换规则将输入数据变换成被唯一决定的输出数据的上述变换规则相互不同的多个加密子单元以及根据随上述输入数据在输入时的预定信息而变化的选择规则,选择输入了相同输入数据的上述多个加密子单元的输出数据之一而进行输出的选择电路,固定于该加密单元的上述变换规则最好被固定为,根据按上述选择规则选择的上述加密子单元被唯一地决定。在这种场合下,加密电路最好被构成为:具有上述多个加密子单元的上述加密单元具有:根据向上述多个加密子单元输入上述输入数据时的预定信息生成选择码,与上述输入时的地址数据相关地在规定的非易失性存储器中存储的码生成电路;以及使上述选择码与上述多个加密子单元一一对应的查阅表,上述选择电路从上述码生成电路所生成的上述选择码和根据上述查阅表而决定的上述多个加密子单元中的1个来选择上述输出数据。另外,解密电路最好被构成为:具有上述多个加密子单元的上述加密单元具有:根据向上述多个加密子单元输入上述输入数据时的地址数据,读出存储在规定的非易失性存储器中的选择码的码读出电路;以及使上述选择码与上述多个加密子单元一一对应的查阅表,上述选择电路从上述码读出电路所读出的上述选择码和根据上述查阅表所决定的上述多个加密子单元中的1个来选择上述输出数据。
根据上述加密单元的各种构成方法,对作为在加密单元中成为加密处理基准的多种多样的变换规则可用硬件的形式规定。因此,加密处理前后的数据相关的解读变得不可能或极为困难。
本发明的数据处理装置的特征在于,多个功能块用内部总线连接,具有在上述内部总线与外部总线的第1总线接口部上,将上述内部总线上的一部分或全部数据作为上述被处理数据、将上述外部总线上的一部分或全部数据作为上述已处理的数据的本发明的加密电路。
根据具有上述特征的本发明的数据处理装置,对内部总线上的数据,经加密处理后传送到外部总线,例如可存储在外部的存储器等中,从而大大地提高数据的保密性。
另外,本发明的数据处理装置的特征在于,多个功能块用内部总线连接,具有在上述内部总线与外部总线的第2总线接口部上,将上述内部总线上的一部分或全部的数据作为上述处理前的数据,将上述外部总线上的一部分或全部的数据作为上述已加密处理过的数据的本发明的解密电路。
根据具有上述特征的本发明的数据处理装置,通过从外部接收用本发明的加密电路进行了加密处理的已加密处理的数据,用解密电路进行解密处理,可以逆变换成原来的处理前的数据,因而在确保数据的保密性的同时,可在内部总线上利用原来的处理前的数据。
再者,本发明的数据处理装置的特征在于,多个功能块用内部总线连接,具有在上述内部总线与外部总线的第1总线接口部上,将上述内部总线上的一部分或全部的数据作为上述被处理数据,将上述外部总线上的一部分或全部的数据作为上述已处理数据的本发明的加密电路,在上述内部总线与外部总线的第2总线接口部上,将上述内部总线上的一部分或全部的数据作为上述处理前的数据,将上述外部总线上的一部分或全部的数据作为上述已加密处理数据的本发明的解密电路。
根据具有上述特征的本发明的数据处理装置,内部总线上的数据经加密处理后传送到外部总线,例如可用外部存储器等存储起来,从而大大地提高数据的保密性。再者,通过从外部接收用本发明的加密电路加密处理过的已加密处理数据,用解密电路进行解密处理,可逆变换成原来的处理前的数据,从而在确保数据的保密性的同时,可在内部总线上利用原来的处理前的数据。
在这里,加密电路并不一定必须与对作为同一数据处理装置内的解密电路的解密处理对象的已加密处理的数据进行了加密处理的加密电路相同,但如果是同一电路,则可在同一数据处理装置内进行加密处理与解密处理这两方面的处理,从而可以将已加密处理的数据存储在外部的存储器中,将其读出进行再利用的操作。
但在后者的场合,也就是说解密电路对由同一数据处理装置内的加密电路做过加密处理的数据进行解密处理的场合,通过加密电路的第1加密单元用作解密电路的第4加密单元、将加密电路的第2加密单元用作解密电路的第3加密单元,即能简单地实现。
再者,本发明的数据处理装置的特征在于,具有:上述多个功能块用第2内部总线连接,在上述第2内部总线与第2外部总线的第3总线接口部上,将上述第2内部总线上的部分或全部数据作为上述被处理数据,将上述第2外部总线上的部分或全部数据作为上述己处理数据的本发明的加密电路。采用具有此特征的本发明的数据处理装置,更能提高数据及数据处理方面的保密性。
另外,本发明的数据处理装置也可构成为,将上述内部总线和上述外部总线,或上述第2内部总线和第2外部总线,分别分割成多个功能块,在上述每个功能块上都配备本发明的加密电路或解密电路。
再者,本发明的数据处理装置的特征在于:上述内部总线和上述外部总线是数据总线,上述第2内部总线和上述第2外部总线是地址总线。采用具有此特征的本发明的数据处理装置,将对数据总线进行加密处理的加密电路及进行解密处理的解密电路配备在同一数据处理装置内,可对数据总线上和存储器中的数据进行加密处理。另外,将对地址总线进行加密的加密电路配备在数据处理装置内,用已加密处理的地址访问存储器,从而可更安全地保护数据。
再者,本发明的数据处理装置的特征在于:上述多个功能块以及上述总线接口部用在同一块半导体基片上形成的半导体集成电路构成。另一特征在于:具有内含作为上述功能块的算术逻辑运算器,控制上述内部总线和上述外部总线的、作为单片微型计算机的功能。由于有这些特征,使攻击者不可能或很难刺探到IC内部的总线或存储器来读出或改写数据,或用剥离分析技术从成为单体的存储器中读出数据,解读原来的信息。
本发明的特征在于,IC卡可用作控制本发明的数据处理装置系统的单片微型计算机。采用具有此特征的本发明的IC卡,对数据总线和存储器上的数据进行加密处理,可实现高保密性的IC卡。
附图说明
图1为示出具有本发明的加密电路和解密电路的数据处理装置的一种实施形态中的内部结构之一例的方框结构图。
图2为示出具有本发明的加密电路和解密电路的数据处理装置的另一种实施形态中的内部结构之一例的方框结构图。
图3为示出本发明的加密电路和解密电路的一种实施形态的电路结构的方框结构图。
图4为示出在本发明的加密电路和解密电路中所用的加密单元的第1实施例的电路结构图。
图5为示出在本发明的加密电路和解密电路中所用的加密单元的第2实施例的电路结构图。
图6为示出在本发明的加密电路和解密电路中所用的加密单元的第4实施例的电路结构图。
图7为示出在本发明的加密电路和解密电路中所用的加密单元的第5实施例的电路结构图。
图8为示出在本发明的加密电路和解密电路中所用的加密单元的第6实施例的电路结构图。
图9为示出在本发明的加密电路中所用的加密单元的第7实施例的电路结构图。
图10为示出在本发明的解密电路中所用的加密单元的第8实施例的电路结构图。
图11为说明在本发明的加密电路和解密电路中的数据处理流程的图。
图12为示出本发明的加密电路的另一实施形态的方框结构图。
图13为示出本发明的解密电路的另一实施形态的方框结构图。
图14为本发明的IC卡的一种实施形态中的内部结构之一例的方框结构图。
图15为说明在现有公报中公布的加密技术的图。
具体实施方式
以下,就本发明的加密电路、解密电路以及备有这些电路的数据处理装置的一种实施形态,根据附图进行说明。
图1是具有本实施形态的加密电路220、230、解密电路240的半导体集成电路100(以下记作“IC”)的内部结构之一例。
图1所示的IC100具有:本发明的数据处理装置之一例的CPU200、用外部数据总线600及外部地址总线700与CPU200相互连接的ROM300、RAM400以及可电改写的闪速存储器E2PROM等的非易失性存储器500等外部存储器组,被构成为单片微型计算机。
在CPU200内部,经内部数据总线213,ALU(算术逻辑运算器)210、高速缓冲存储器211、指令解码器控制器212、寄存器组214及数据总线控制电路215等相互连接在一起。另外,寄存器组214与地址总线控制电路216连接。
在CPU200中,用第1加密电路230对内部数据总线213上的数据进行加密处理,并输出给外部数据总线600。另外,从外部数据总线600输入数据时,用解密电路240进行解密处理,尔后传递给内部数据总线213。
CPU200访问外部存储器组时的地址为经第2加密电路200加密处理过的地址,用此地址进行访问。另外,第1加密电路230和第2加密电路220的加密处理的算法相同也可以,不同也可以。也就是说,在第1及第2加密电路220、230之间,固定后述的加密电路的变换规则的加密单元的电路结构相同也可以,用其他结构也可以。
在图1所示的实施形态中,对地址总线进行了加密处理,但地址总线的加密处理并不是必需的。从而,如图2所示,仅对数据总线进行加密处理,而不设置第2加密电路220的结构也可以。这里,在图2所示的结构中,除了没有第2加密电路220外,与图1的实施形态的结构相同。
下面,就本发明的加密电路(第1加密电路230、第2加密电路220)以及解密电路240的电路结构进行说明。以下,对加密电路来说,因第1加密电路230与第2加密电路220的基本电路结构相同,故只对其中之一进行说明。图3(a)为加密电路230的电路图,图3(b)为解密电路240的电路图。
如图3(a)所示,将加密前的数据分割成第1数据块B1(n/2位~n-1位)和第2数据块B0(0位~n/2-1位)的两个数据块的数据输入到加密电路230中。另外,加密电路230将由第3数据块B1’(n/2位~n-1位)和第4数据块B0’(0位~n/2-1位)的两个数据块组成并进行加密处理后的同位数的数据输出出去。
加密电路230被构成为,具有:对输入B1进行第1加密处理的第1加密单元231;由对第1加密单元231的输出(第1中间数据)和对输入B0按每位进行“异或”运算的、多个“异或”电路组成的第1运算单元233;对第1运算单元233的输出即第3数据块B1’进行第2加密处理的第2加密单元232;以及由对第2加密单元232的输出(第2中间数据)和对输入B1按每位进行“异或”运算,输出第4数据块B0’的多个“异或”电路组成的第2运算单元234。
同样,如图3(B)所示,将解密前的已加密处理的数据分割成第5数据块B1’(n/2位~n-1位)和第6数据块B0’(0位~n/2-1位)的两个数据块的数据输入到解密电路1240中。另外,解密电路240将由第7数据块B1”(n/2位~n-1位)和第8数据块B0”(0位~n/2-1位)的两个数据块组成的并经解密处理,在加密处理前进行了逆变换的同位数的处理前数据输出出去。
解密电路240具有:对输入B1’进行第3加密处理(在本实施形态中,与上述第2加密处理相同)的第3加密单元232(在本实施形态中,与第2加密单元232相同);由对第3加密单元232的输出(第3中间数据)和对输入B0’按每位进行“异或”运算的多个“异或”电路组成的第3运算单元233;对第3运算单元233的输出即第7数据块B1”进行第4加密处理(在本实施形态中,与上述第1加密处理相同)的第4加密单元231(在本实施形态中,与第1加密单元231相同)以及由对第4加密单元231的输出(第4中间数据)和输入B1’按每位进行“异或”运算,输出第8数据块B0”的“异或”电路组成的第4运算单元234。
在这里,各个加密单元231、232所执行的各加密处理被构成为:对于输入数据值,根据被固定在该加密单元上的变换规则,变换成唯一决定的输出数据值。
在这里应该注意的是:加密电路230内的第1加密单元231和解密电路240内的第4加密单元231必须有按相同变换规则进行相同加密处理的电路结构。同样,加密电路230内的第2加密单元232与解密电路240内的第3加密单元232也必须有相同的电路结构。另外,第1、第4加密单元231和第2、第3加密单元232有相同的结构也可以,有其他结构也可以。但是,采用其他电路结构更能提高保密性。另外,第1~第4运算单元233、234在电路结构上相同。
下面,第1(第4)加密单元231的操作用S1函数表示,第2(第3)的加密单元232的操作用S2函数表示,以此来说明加密电路230及解密电路240的工作。
加密电路230的工作(加密处理)用下面的式1和式2表示。
(式1)
B1’=B0 xor S1(B1)
(式2)
B0’=B1 xor S2(B1’)
其次,用下面的式3及式4表示解密电路240的工作(解密处理)。
(式3)
B1”=B0 xor S1(B1’)
(式4)
B0”=B1’xor S1(B1”)
用式1~式4的数学式表示:经加密电路230进行了加密处理的数据经解密电路240的解密处理后实现逆变换,还原成原来的数据。如将式2的B0’代入式3的B0’中,消去B0’,则得到下述的式5。在这里,多变数的“异或”运算可得到同样的运算结果而与其运算顺序无关,另外,同值之间的“异或”逻辑为0,如式6所示。
(式5)
B1”=B1 xor S2(B1’) xor S2(B1’)
(式6)
B1”B1 xor 0=B1
再者,如将式1的B1’代入式4的B1’中,消去B1’,则得到下述的式7。进而,将式6的B1”代入式7的B1”中而消去之,多变数的“异或”运算,可得到相同的运算结果而与其运算顺序无关,另外,同值之间的“异或”逻辑为0,如式8所示。
(式7)
B1”=B0 xor S1(B1) xor S1(B1”)
(式8)
B1”=B0 xor S1(B1) xor S1(B1)=B0
如上所述,根据式1~式8可证明加密前的数据B0、B1与解密后的数据B0”、B1”相同。另外,为使上述运算成立而不依赖于函数S1及S2的运算内容,各个函数S1及S2如能满足“对输入的任意值,其输出被唯一地决定”的条件,则用第1及第2加密单元231、232执行的加密处理的内容可任意选择。从而,综合考虑保密强度、电路规模等的成本或实现难易等因素,加以折衷,选择最合适的处理作为函数S1及S2即可。
下面,就用于固定规定第1或第2加密单元231、232各自的加密处理的变换规则的电路结构进行说明。首先在图4中示出第1或第2加密单元231、232的电路结构的第1实施例。
相对于输入[Dn-1、Dn-2、...、D1、D0],输出[SDn-1、SDn-2、...、SD1、SD0]进行1位的右移。经这一操作,输出[SDn-1、SDn-2、...、SD1、SD0]可用下面的式9表示。另外,D0经循环,位移到左侧第1位。
(式9)
[SDn-1、SDn-2、...、SD1、SD0]
=[D0、Dn-1、...、D2、D1]
图5示出第1或第2加密单元231、232的电路结构的第2实施例。
相对于输入[Dn-1、Dn-2、...,D1、D0],进行输出[SDn-1、SDn-2、...、SD1、SD0]的每相邻的2位之间的替换。经这一操作,输出[SDn-1、SDn-2、...,SD1、SD0]可用下面的式10表示。
(式10)
[SDn-1、SDn-2、...、SD1、SD0]
=[Dn-2、Dn-1、...、D0、D1]
虽未图示,但作为第1或第2加密单元231、232的电路结构的第3实施例,通过对上述第1实施例与第2实施例的加密处理任意地进行组合,可实现更多种的布线替换。
图6示出第1或第2加密单元231、232的电路结构的第4实施例。在上述第1~第3实施例中,变换规则的固定是靠改接对应于输入数据的各位的多个输入端子与对应于输出数据的各位的输出端子之间的布线来实现的,但在图6所示的第4实施例中,是靠对输入数据的各位实施规定的逻辑运算来实现的。具体来说,相对于输入[Dn-1、Dn-2、...、D1、D0],在输出[SDn-1、SDn-2、...、SD1、SD2]的相邻的位之间进行nand(“与”)运算。通过这一操作,输出[SDn-1、SDn-2、...、SD1、SD0]可用下面的式11表示。
(式11)
[SDn-1、SDn-2、...、SD1、SD0]
=[D0 nand Dn-1、...、D1 nand D0]
在这里,逻辑运算的种类并不限于nand一种,执行运算的位数也可适当更改。
图7示出第1或第2加密单元231、232的电路结构的第5实施例。在上述第1~第4实施例中,从输入数据至输出数据的变换规则与地址数据的地址值无关,总是恒定的,但在图7所示的第5实施例中,对于输入数据,通过使用对应于该输入数据的存储器的地址来执行逻辑运算,可以实现对每个地址实施不同的加密。
具体而言,输出[SDn-1、SDn-2、...、SD1、SD0]是在输入[Dn-1、Dn-2、...、D1、D0]与地址[ADn-1、ADn-2、...、AD1、AD0]之间对每位执行xor(“异或”)运算的结果。经此操作,输出SD[n-1:0]可用下式12表示。
(式12)
[SDn-1、SDn-2、...、SD1、SD0]
=[Dn-1 xor ADn-1、...、D0 xor AD0]
如式12所示,对任意的地址值规定加密处理的变换规则是唯一决定的,因而在同一个加密单元231、232内,即使随着地址值的变化,变换规则也变化,在逆变换时通过使用同一地址值,可以保证被逆变换成加密处理前的数据。也就是说,地址值对规定加密处理的变换规则具有决定的密钥的功能。
在这里,逻辑运算的种类并不限于“异或”运算,密钥(在此实施例中为地址值)的位数或进行运算的位数亦可适当地变更。
图8是第1或第2加密单元231、232的电路结构的第6实施例。在上述第1~第5实施例中,只要加密单元内的布线的替换或逻辑运算电路等的硬件构成,或者逻辑运算电路与地址值的组合是相同的,则输入数据与输出数据之间的变换规则就总是恒定的。与之相对照,在图8所示的第6实施例中,通过使用保存在密钥保管用的非易失性存储器250中的密钥信息(变换规则固定用数据),对输入数据执行逻辑运算,即或是同一硬件构成或地址值,亦能实现对每个加密单元实施不同的加密处理。
具体而言,输出[SDn-1、SDn-2、...、SD1、SD0]是在输入[Dn-1、Dn-2、...、D1、D0]与密钥信息[Kn-1、Kn-2、...、K1、K0]之间对每位执行xor(“异或”)运算的结果。经此操作,输出SD[n-1:0]可用下式13表示。
(式13)
[SDn-1、SDn-2、...、SD1、SD0]
=[Dn-1 xor Kn-1、...、D0 xor K0]
保存在密钥保管用的非易失性存储器250中的密钥信息可以在含有此加密单元的装置的制作阶段固定,也可以通过使用可改写的非易失性存储器,另行设置写入装置,在制成后能使其设定成任意的值。
在这里,逻辑运算的种类并不限于“异或”运算,密钥信息的位数或进行运算的位数亦可适当变更。
图9及图10示出第1(第4)或第2(第3)加密单元231、232的电路结构的第7及第8实施例。在上述第1~第6实施例中,输入数据与输出数据之间的变换规则在同一个加密单元中总是恒定的,但在第7及第8实施例中,对输入数据准备了所使用的变换规则不同的多个加密子单元235,还备有:从准备好的各个加密子单元235输出的按各自的变换规则进行加密处理的、与加密子单元235的数目相同的输出数据(中间输出数据)中,根据随输入数据输入时预定的信息而变化的选择规则选择出1个数据并输出的选择电路236,因此,即使在同一加密单元中,被固定在该加密单元中的变换规则将随输入时预定的信息而逐次改变,从而可以实现更复杂的加密与解密处理。也就是说,变换规则不是加密单元所固有的,而根据输入时预定的信息被唯一地固定。
在这里,作为各个加密子单元235,可以用上述第1或第2加密单元231、232的电路结构的第1~第6实施例的加密单元,或者用具有将两个以上的这类变换规则复合而成的变换规则新的加密单元构成。
第7实施例示出限定于在加密电路230中所使用的第1或第2加密单元231、232的实施例,第8实施例示出限定于在解密电路240中所使用第3或第4加密单元232、231的实施例。第1~第6实施例的加密单元是加密电路230的第1或第2加密单元231、232和解密电路240的第4或第3加密单元231、232,各自对应的加密单元是相同的加密单元。在第7及第8实施例中,它们各自所使用的场所被固定下来。但是在加密电路230与解密电路240之间所对应的第7实施例的加密单元与第8实施例的加密单元中,被固定下来的变换规则相同。下面对各个电路的细节进行说明。
如图9所示,第7实施例的加密单元被构成为,具有:多个加密子单元235;选择电路236;根据输入数据输入时预定的信息,生成选择码,并将上述选择码与该输入时的地址数据的地址值相关地存储在选择码存储用的非易失性存储器260中的码生成电路237;以及使码生成电路237所生成的多个选择码与多个加密子单元235一一对应的查阅表238。在这里,非易失性存储器260是与后述的第8实施例的加密单元所共有的,所以可以设置在加密单元之外。
根据自输入数据输入时,即自启动时刻起随时间推移的信息和地址数据的地址值,码生成电路237每次都使用随机数等生成不同的选择码。另外,最好将所生成的选择码的数目事先限定于加密子单元235的个数。但是,即使选择码的数目与加密子单元235的个数不等,只要能在查阅表238上找出上述对应关系就无问题。码生成电路237将所生成的选择码与当时的地址数据的地址值一起存储在非易失性存储器260中。或者,将所生成的选择码存放在与此时的地址数据的地址值一对一对应的非易失性存储器260的地址区。
查阅表238生成指示选择与码生成电路237所生成的选择码对应的1个加密子单元235的选择指示信号,选择电路236从根据此选择指示信号而选择的加密子单元235中选择中间输出数据,作为加密单元的输出数据输出。
如图10所示,第8实施例的加密单元被构成为,具有:多个加密子单元235;选择电路236;根据输入数据输入时的地址数据的地址值,从选择码存储用的非易失性存储器260中读出选择码的码读出电路239;以及与第7实施例的加密单元有相同数目的多个选择码与多个加密子单元235一一对应的查阅表238。在这里,非易失性存储器260是与上述第7实施例的加密单元所共有的,所以可以设置在加密单元之外。
码读出电路239是根据输入数据输入时的地址数据的地址值从非易失性存储器260中读出与该地址值一起被存储的选择码。或者,读出存储在与该地址值一一对应的非易失性存储器260的地址区的选择码。
查阅表238生成指示选择与码读出电路239所读出的选择码对应的1个加密子单元235的选择指示信号,选择电路236从根据此选择指示信号而选择的加密子单元235中选择中间输出数据,作为加密单元的输出数据输出。
再者,虽未图示,但作为第1或第2加密单元231、232的电路结构的第9实施例,在内部,最好连接各加密子单元构成加密单元,使得在1个加密单元231、232内,例如从上述第1~第8实施例的加密单元中任意选择的多个作为加密子单元,至少对其中1个加密子单元输入第9实施例的加密单元的输入数据,至少从1个加密子单元输出第9实施例的加密单元的输出数据,至少对1个加密子单元输入其他至少1个加密子单元的输出数据的全部或一部分。采取这种结构可以实现更复杂多样的加密处理。
在图11(A)及(B)上,使用具体数值示出加密电路230和解密电路240中的各个处理流程。这里所用的第1至第4的加密单元231、232是:第1及第4的加密单元231有图4所示的第1实施例的结构;第2及第3的加密单元231有图5所示的第2实施例的结构。
首先,加密处理的流程如图11(A)所示。对原来的数据“10011010”,高位4位“1001”用第1加密单元231进行1位右移。结果为“1100”。接着如用第1运算单元233进行“1100”与原来数据的低位4位“1010”之间的“异或”运算,结果为“0110”。其次,用第2加密单元232对此“0110”进行相邻2位的互换。结果为“1001”。最后,用第2运算单元234进行“1001”与“1001”之间的“异或”运算,结果为“0000”。如上所述,经加密处理的己处理数据为“01100000”。
其次,解密处理的流程如图11(B)所示。对己加密处理的数据“01100000”的高位4位“0110”用第3(第2)加密单元232进行相邻2位的互换,结果为“1001”。然后,如用第3运算单元232进行“1001”与己加密处理数据的低位4位“0000”之间的“异或”运算,结果为“1001”。其次,用第4(第1)加密单元231对此“1001”进行1位右移。结果为“1100”。最后,用第4运算单元234进行“1100”与己加密处理数据的高位4位“0110”之间的“异或”运算,结果为“1010”。如上所述,经解密处理的数据为“10011010”,与加密处理前的原来数据一致。
下面,就本发明的数据处理装置的其他实施形态进行说明。
(1)在上述实施形态中,数据处理装置可以构成为,对n位宽度的总线配置1个加密电路220或230,对n位宽度的总线配置1个解密电路240,但也可以构成为,对n位宽度的总线配置2个以上的加密电路220、230和2个以上的解密电路240。
图12示出对被处理数据进行M等分时的加密电路230’的一例。在此场合下,对相邻的每2个数据块设置M/2个上述加密电路即可。另外,通过对每个数据块对改变各加密电路230内的第1及第2加密单元231、232,可进一步提高保密性。
同样,图13示出对已加密处理的数据进行M等分时的解密电路240’的一例。在此场合下,对相邻的每2个数据块设置M/2个上述解密电路240’即可。
(2)在上述实施形态中,例示了CPU200配置加密处理与解密处理成对的加密电路230和解密电路240而构成的形态,但加密电路230与解密电路240中,即使是只配置其中某一方的结构也可以。再者,解密电路240也可以对用自己的加密电路230以外的加密电路进行了加密处理的己处理数据进行解密处理。另外,在这种场合下,相当于成对的加密处理与解密处理变成分散在两个以上的数据处理装置中进行。
(3)图14示出本发明的数据处理装置被应用于IC卡时的结构例。
IC卡110具有CPU200、用外部数据总线600及外部地址总线700相互连接的ROM300、RAM400、非易失性存储器500等外部存储器组,还具有协处理器111、UART/IO112及定时器113。一般而言,IC卡被要求具有保密性,故对其布局要下工夫。为不让攻击者确定CPU、协处理器、或内部数据总线等在芯片上的何处,不要一块一块地分离,而应作为一整块布局在半导体集成电路上。因半导体制造工艺的微细化,对成为一整块的内部数据总线的刺探等攻击变得非常困难。于是,一般来说,攻击者往往尝试对诸如CPU与存储器之间的数据总线上的信号的分离了的块之间的信号进行刺探。在这里,通过对块之间的外部数据总线600和各存储器上的数据进行加密处理,可提供具备高度保密性的IC卡。
再者,作为本发明的应用,已对IC卡进行了说明,但本发明可广泛地用于处理个人信息等机密信息的设备或系统。
(4)图1、图2及图14所例示的本发明的数据处理装置示出将外部存储器组等周边块也包括在内,将半导体集成电路单片化的例子,但只要是在数据处理装置内部,对多个功能块用内部总线进行连接,在内部总线与外部总线的接口部设置本发明的加密电路或解密电路,数据处理装置与周边块就没有必要必须单片化。
(5)在上述实施形态中,用加密电路230及解密电路240处理的数据为偶数位,内部数据总线213及外部数据总线600等的数据总线宽度也被设定为偶数位,但在总线宽度为奇数位的场合,将被处理数据的仅仅1位部分排除在加密处理或解密处理的处理对象之外,或补上1位形成偶数位也可以。
(6)在上述实施形态中,用加密电路230及解密电路240处理的数据被设定为并行数据,但内部数据总线213和外部数据总线600的任一方或双方是串行总线亦无关系。在处理串行数据的场合,一旦数据经串行-并行变换后,使用本发明的加密电路230和解密电路240即可。另外,处理对象的数据是并行数据与串行数据的混合形式也可以。例如,在内部总线为8位、外部总线为16比持的场合,是将内部总线的8位数据分两次读入后,用加密电路230进行加密处理,将16位数据传送给外部总线的形态也可以。
如以上详细说明过的那样,采用本发明的加密电路、解密电路及数据处理装置,在CPU内部进行数据的加密处理、解密处理。也就是说,向CPU外部只传递通过数据总线信号进行了加密处理的数据,向与此总线连接的外部存储器也存储进行了加密处理的数据。从而,对于外部总线上的信号的刺探或存储器部件的剥离分析,都可以确保非常高的信息的机密性。又因地址总线信号也是加密的对象,而使分析更加困难。在加密电路或解密电路的内部,不仅有加密单元进行的信号加密处理,还进行伴随“异或”运算处理的保密处理(数据的秘密化),所以在实现不被解读的极高的保密性的同时,因在逻辑上确实能还原成原来的信息,所以可以提供数据可靠性极高的数据处理装置。
虽然本发明已用优选实施例进行了说明,但应该明白,在不偏离本发明的宗旨和范围的情况下,专业技术人员可对其进行种种修正和变更。因而,本发明应该用所附权利要求进行量度。
Claims (37)
1.一种加密电路,这是将4位以上的被处理数据经规定的加密处理变换成同位数的已处理的数据的加密电路,其特征在于:
上述被处理数据为偶数位且为并行数据,
上述被处理数据被分割成2位以上的第1数据块和与上述第1数据块同位数的第2数据块,同时,上述已处理的数据被分割成与上述第1数据块同位数的第3数据块和第4数据块。
上述加密电路具有:
对上述第1数据块进行规定的第1加密处理,输出同位数的第1中间数据的第1加密单元;
进行上述第2数据块与上述第1中间数据的每位的“异或”运算,输出上述第3数据块的第1运算单元;
对上述第3数据块进行与上述第1加密处理相同或不同的第2加密处理,输出同位数的第2中间数据的第2加密单元;以及
进行上述第2中间数据与上述第1数据块的每位的“异或”运算,输出上述第4数据块的第2运算单元。
2.如权利要求1的加密电路,其特征在于:
上述加密单元根据固定于该加密单元的变换规则,将输入数据值变换成被唯一决定的输出数据值。
3.如权利要求2的加密电路,其特征在于:
上述第1或第2加密单元将对应于输入数据各位的多个输入端子与对应于输出数据各位的输出端子之间的布线的一部分或全部进行改接,由上述布线的改接来确定上述变换规则。
4.如权利要求3的加密电路,其特征在于:
上述第1或第2加密单元经上述布线的改接,对上述输入数据进行1位或2位以上的循环移位操作。
5.如权利要求3的加密电路,其特征在于:
上述第1或第2加密单元经上述布线的改接,对上述输入数据的预定的2位进行替换操作。
6.权利要求3的加密电路,其特征在于:
上述第1或第2加密单元经上述布线的改接,对上述输入数据要做的1位或2位以上的循环移位操作以及对预定的2位要做的替换操作组合起来进行。
7.如权利要求2的加密电路,其特征在于:
上述第1或第2加密单元具有对输入数据的一部分或全部的位,进行规定逻辑运算的逻辑运算电路,由上述逻辑运算电路来确定上述变换规则。
8.如权利要求7的加密电路,其特征在于:
上述逻辑运算电路对上述输入数据的一部分或全部的位进行2位以上的逻辑运算。
9.如权利要求2的加密电路,其特征在于:
上述第1或第2加密单元具有逻辑运算电路,该逻辑运算电路对输入数据的一部分或全部的位和上述输入数据在输入时的地址数据的一部分或全部的位进行规定逻辑运算,通过上述逻辑运算电路,以根椐上述地址数据的地址值唯一决定的方式固定上述变换规则。
10.如权利要求2的加密电路,其特征在于:
上述第1或第2加密单元具有逻辑运算电路,该逻辑运算电路对输入数据的一部分或全部的位和保存在规定的非易失性存储器中的用于固定变换规则的数据进行规定逻辑运算,通过上述逻辑运算电路,以根椐上述用于固定变换规则的数据的数据值唯一决定的方式固定上述变换规则。
11.如权利要求2的加密电路,其特征在于:
上述第1或第2加密单元具有:
多个加密子单元,该多个加密子单元根据预先被固定的变换规则将输入数据变换成唯一决定的输出数据,该多个加密子单元的上述变换规则相互不同;以及
选择电路,该选择电路根据随上述输入数据在输入时的预定信息而变化的选择规则,选择输入了相同输入数据的上述多个加密子单元的输出数据之一而进行输出,
根据按上述选择规则选择的上述加密子单元,将固定于该加密单元的上述变换规则以唯一决定的方式进行固定。
12.如权利要求11的加密电路,其特征在于:
具有上述多个加密子单元的上述加密单元包含:
码生成电路,该码生成电路根据向上述多个加密子单元输入上述输入数据时的预定信息,生成选择码,并与上述输入时的地址数据相关地在规定的非易失性存储器中存储上述选择码;以及
使上述选择码与上述多个加密子单元一一对应的查阅表,
上述选择电路从上述多个加密子单元中的1个来选择上述输出数据,上述多个加密子单元中的1个是根据上述码生成电路所生成的上述选择码和上述查阅表决定的。
13.一种解密电路,这是将4位以上的已加密处理的数据经规定的解密处理逆变换成同位数的处理前的数据的解密电路,其特征在于:
上述已加密处理数据为偶数位且为并行数据,
上述已加密处理的数据被分割成2位以上的第5数据块和与上述第5数据块同位数的第6数据块,同时,上述加密处理前的数据被分割成分别与上述第5数据块同位数的第7数据块和第8数据块。
上述解密电路具有:
对上述第5数据块进行规定的第3加密处理,输出同位数的第3中间数据的第3加密单元;
进行上述第6数据块与上述第3中间数据的每位的“异或”运算,输出上述第7数据块的第3运算单元;
对上述第7数据块进行与上述第3加密处理相同或不同的第4加密处理,输出同位数的第4中间数据的第4加密单元;以及
进行上述第4中间数据与上述第5数据块的每位的“异或”运算,输出上述第8数据块的第4运算单元。
14.如权利要求13的解密电路,其特征在于:
上述加密单元根据固定于该加密单元的变换规则,将输入数椐值变换成被唯一决定的输出数据值。
15.如权利要求13的解密电路,其特征在于:
上述第3或第4加密单元将对应于输入数据各位的多个输入端子与对应于输出数据各位的输出端子之间的布线的一部分或全部进行改接,由上述布线的改接来确定上述变换规则。
16.如权利要求15的解密电路,其特征在于:
上述第3或第4加密单元经上述布线的改接,对上述输入数据进行1位或2位以上的循环移位操作。
17.如权利要求15的解密电路,其特征在于:
上述第3或第4加密单元经上述布线的改接,对上述输入数据的预定的2位进行替换操作。
18.如权利要求15的加密电路,其特征在于:
上述第3或第4加密单元经上述布线的改接,对上述输入数据要做的1位或2位以上的循环移位操作以及对预定的2位要做的替换操作组合起来进行。
19.如权利要求14的解密电路,其特征在于:
上述第3或第4加密单元具有对输入数据的一部分或全部的位进行规定逻辑运算的逻辑运算电路,由上述逻辑运算电路来确定上述变换规则。
20.如权利要求19的解密电路,其特征在于:
上述逻辑运算电路对上述输入数据的一部分或全部的位进行2位以上的逻辑运算。
21.如权利要求14的解密电路,其特征在于:
上述第3或第4加密单元具有逻辑运算电路,该逻辑运算电路对输入数据的一部分或全部的位以及上述输入数据在输入时的地址数据的一部分或全部的位进行规定逻辑运算,通过上述逻辑运算电路以根椐上述地址数据的地址值唯一决定的方式固定上述变换规则。
22.如权利要求14的解密电路,其特征在于:
上述第3或第4加密单元具有逻辑运算电路,该逻辑运算电路对输入数据的一部分或全部的位以及保存在规定的非易失性存储器中的用于固定变换规则的数据进行规定逻辑运算,
通过上述逻辑运算电路,以根椐上述用于固定变换规则的数据的数据值唯一决定的方式固定上述变换规则。
23.如权利要求14的解密电路,其特征在于:
上述第3或第4加密单元具有:
多个加密子单元,根据预先被固定的变换规则将输入数据变换成唯一决定的输出数据,该多个加密子单元的上述变换规则相互不同;以及
选择电路,该选择电路根据随上述输入数据在输入时的预定信息而变化的选择规则,选择输入了相同输入数据的上述多个加密子单元的输出数据之一而进行输出,
根据按上述选择规则选择的上述加密子单元,将固定于该加密单元的上述变换规则以唯一决定的方式进行固定。
24.如权利要求23的解密电路,其特征在于:
具有上述多个加密子单元的上述加密单元包含:
码读出电路,该码读出电路根据向上述多个加密子单元输入上述输入数据时的地址数据,读出存储在规定的非易失性存储器中的选择码;以及
上述选择码与上述多个加密子单元一一对应的查阅表,
上述选择电路从上述多个加密子单元中的1个来选择上述输出数据,上述多个加密子单元中的1个是根据上述码读出电路所读出的上述选择码和上述查阅表决定的。
25.一种数据处理装置,其特征在于:
多个功能块用内部总线连接,
将权利要求1所述的加密电路配置在上述内部总线与外部总线之间的第1总线接口部上,
上述加密电路将上述内部总线上的一部分或全部数据作为上述被处理数据输入,将由配置在上述第1总线接口部上的权利要求1所述的加密电路所加密处理的已加密数据输出到外部总线上。
26.如权利要求25的数据处理装置,其特征在于:
上述内部总线与上述外部总线被分割成多个小总线,在上述每个小总线中配置上述加密电路。
27.一种数据处理装置,其特征在于:
多个功能块用内部总线连接,
将权利要求13所述的解密电路配置在上述内部总线与外部总线之间的第2总线接口部上,
上述解密电路将上述外部总线上的一部分或全部的数据作为上述已加密处理的数据输入,将由配置在上述第2总线接口部上的权利要求13所述的解密电路所解密处理的已解密数据输出到内部总线上。
28.如权利要求25的数据处理装置,其特征在于:
将权利要求13所述的解密电路配置在上述内部总线与外部总线之间的第2总线接口部上,
上述解密电路将上述外部总线上的一部分或全部的数据作为上述已加密处理的数据输入,将由配置在上述第2总线接口部上的权利要求13所述的解密电路所解密处理的已解密数据输出到内部总线上。
29.如权利要求28的数据处理装置,其特征在于:
上述加密电路的上述第1加密单元与上述解密电路的上述第4加密单元根据同一变换规则进行相同的加密处理,上述加密电路的上述第2加密单元与上述解密电路的上述第3加密单元根据同一变换规则进行相同的加密处理。
30.如权利要求27的数据处理装置,其特征在于:
将上述内部总线与上述外部总线分割成多个小总线,在上述每个小总线中配置上述解密电路。
31.如权利要求25的数据处理装置,其特征在于:
上述内部总线和上述外部总线为数据总线。
32.如权利要求25的数据处理装置,其特征在于:
上述多个功能块用第2内部总线连接,
将权利要求1所述的加密电路配置在上述第2内部总线与第2外部总线之间的第3总线接口部上,
上述加密电路将上述第2内部总线上的一部分或全部的数据作为上述被处理数据输入,将由配置在上述第3总线接口部上的权利要求1所述的加密电路所加密处理的已加密数据输出到第2外部总线上。
33.如权利要求32的数据处理装置,其特征在于:
将上述第2内部总线与上述第2外部总线分割成多个小总线,在上述每个小总线中配置上述加密电路。
34.如权利要求32的数据处理装置,其特征在于:
上述第2内部总线和上述第2外部总线为地址总线。
35.如权利要求25的数据处理装置,其特征在于:
上述多个功能块以及上述总线接口部由在同一块半导体衬底上形成的半导体集成电路构成。
36.如权利要求35的数据处理装置,其特征在于:
具有单片微型计算机的功能,该单片微型计算机作为上述功能块包含算术逻辑运算器,并控制上述内部总线和上述外部总线。
37.一种IC卡,其特征在于:
将权利要求36所述的数据处理装置用作系统控制用的单片微型计算机。
Applications Claiming Priority (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP103739/2003 | 2003-04-08 | ||
JP103739/03 | 2003-04-08 | ||
JP2003103739 | 2003-04-08 | ||
JP152234/2003 | 2003-05-29 | ||
JP152234/03 | 2003-05-29 | ||
JP2003152234A JP2004361986A (ja) | 2003-04-08 | 2003-05-29 | スクランブル回路 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1536503A CN1536503A (zh) | 2004-10-13 |
CN1287302C true CN1287302C (zh) | 2006-11-29 |
Family
ID=32871246
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB200410032525XA Expired - Fee Related CN1287302C (zh) | 2003-04-08 | 2004-04-08 | 加密电路和解密电路以及数据处理装置 |
Country Status (7)
Country | Link |
---|---|
US (1) | US20040205352A1 (zh) |
EP (1) | EP1467274A3 (zh) |
JP (1) | JP2004361986A (zh) |
KR (1) | KR100549151B1 (zh) |
CN (1) | CN1287302C (zh) |
SG (1) | SG116536A1 (zh) |
TW (1) | TWI292869B (zh) |
Families Citing this family (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4551802B2 (ja) * | 2005-03-29 | 2010-09-29 | 株式会社東芝 | プロセッサ、メモリ、コンピュータシステムおよびデータ転送方法 |
US20070177363A1 (en) * | 2006-01-31 | 2007-08-02 | Symbol Technologies, Inc. | Multilayer printed circuit board having tamper detection circuitry |
JP2007251783A (ja) * | 2006-03-17 | 2007-09-27 | Nec Electronics Corp | 半導体装置の被処理データのスクランブル/デスクランブル方法、そのプログラム、スクランブル/デスクランブル回路、及びそれらを備える半導体装置 |
US8806227B2 (en) * | 2006-08-04 | 2014-08-12 | Lsi Corporation | Data shredding RAID mode |
JP4941144B2 (ja) * | 2007-07-17 | 2012-05-30 | 株式会社明電舎 | 通信制御装置 |
US7873803B2 (en) * | 2007-09-25 | 2011-01-18 | Sandisk Corporation | Nonvolatile memory with self recovery |
US7953930B2 (en) * | 2007-12-07 | 2011-05-31 | Sandisk Corporation | Device identifiers for nonvolatile memory modules |
TWI415130B (zh) * | 2009-06-02 | 2013-11-11 | Silicon Motion Inc | 快閃記憶體之控制器以及於快閃記憶體存取資料的方法 |
US8935589B2 (en) * | 2009-06-02 | 2015-01-13 | Silicon Motion, Inc. | Controller and data access method for flash memories |
US8255620B2 (en) | 2009-08-11 | 2012-08-28 | Texas Memory Systems, Inc. | Secure Flash-based memory system with fast wipe feature |
US9612978B2 (en) | 2010-12-31 | 2017-04-04 | International Business Machines Corporation | Encrypted flash-based data storage system with confidentiality mode |
KR101818445B1 (ko) * | 2011-07-08 | 2018-01-16 | 삼성전자주식회사 | 메모리 컨트롤러, 이의 동작 방법, 및 상기 메모리 컨트롤러를 포함하는 전자 장치들 |
KR101811298B1 (ko) * | 2011-12-28 | 2017-12-27 | 삼성전자주식회사 | 랜덤마이져로 씨드를 제공하는 씨드 컨트롤러 및 그것을 포함한 메모리 컨트롤러 |
KR20130080203A (ko) * | 2012-01-04 | 2013-07-12 | 삼성전자주식회사 | 셀 상태들의 비대칭 특성을 고려한 프로그램 데이터를 생성하는 방법 및 그것을 이용한 메모리 시스템 |
CN103457723B (zh) * | 2013-09-10 | 2016-08-10 | 徐光梅 | 一种加密方法及以其为基础的加密设备 |
IL234956A (en) * | 2014-10-02 | 2017-10-31 | Kaluzhny Uri | Data bus protection with enhanced key entropy |
US9792246B2 (en) * | 2014-12-27 | 2017-10-17 | Intel Corporation | Lower-power scrambling with improved signal integrity |
US10423492B2 (en) * | 2016-05-17 | 2019-09-24 | SK Hynix Inc. | Self error-handling flash memory device |
Family Cites Families (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4698617A (en) * | 1984-05-22 | 1987-10-06 | American Microsystems, Inc. | ROM Protection scheme |
US5351299A (en) * | 1992-06-05 | 1994-09-27 | Matsushita Electric Industrial Co., Ltd. | Apparatus and method for data encryption with block selection keys and data encryption keys |
JPH06243046A (ja) * | 1993-02-19 | 1994-09-02 | Sansei Denshi Japan Kk | 情報保護方法及び情報メディア |
US5515437A (en) * | 1993-08-23 | 1996-05-07 | Matsushita Electric Industrial Co., Ltd. | Scramble transmission apparatus and signal processing apparatus |
MY125706A (en) * | 1994-08-19 | 2006-08-30 | Thomson Consumer Electronics | High speed signal processing smart card |
US5675653A (en) * | 1995-11-06 | 1997-10-07 | Nelson, Jr.; Douglas Valmore | Method and apparatus for digital encryption |
US5892826A (en) * | 1996-01-30 | 1999-04-06 | Motorola, Inc. | Data processor with flexible data encryption |
US6236728B1 (en) * | 1997-06-19 | 2001-05-22 | Brian E. Marchant | Security apparatus for data transmission with dynamic random encryption |
JP2000090595A (ja) * | 1998-09-09 | 2000-03-31 | Victor Co Of Japan Ltd | デ・スクランブル装置 |
TW494306B (en) * | 1998-10-27 | 2002-07-11 | Winbond Electronics Corp | Secret code protection circuit capable of protecting read only memory data |
JP2001109667A (ja) * | 1999-10-13 | 2001-04-20 | Nec Ic Microcomput Syst Ltd | データ処理方法および装置 |
JP2001125483A (ja) * | 1999-10-25 | 2001-05-11 | Nec Corp | スクランブラ回路 |
EP1281254A4 (en) * | 2000-04-20 | 2003-06-04 | Noel D Matchett | CRYPTOGRAPHIC SYSTEM FOR DATA ENCRYPTION STANDARD |
US6792528B1 (en) * | 2000-05-17 | 2004-09-14 | Chien-Tzu Hou | Method and apparatus for securing data contents of a non-volatile memory device |
JP4683442B2 (ja) * | 2000-07-13 | 2011-05-18 | 富士通フロンテック株式会社 | 処理装置および集積回路 |
FR2819070B1 (fr) * | 2000-12-28 | 2003-03-21 | St Microelectronics Sa | Procede et dispositif de protection conte le piratage de circuits integres |
JP2002261751A (ja) * | 2001-03-02 | 2002-09-13 | Hitachi Ltd | 暗号処理方法 |
KR100428786B1 (ko) * | 2001-08-30 | 2004-04-30 | 삼성전자주식회사 | 내부 버스 입출력 데이터를 보호할 수 있는 집적 회로 |
EP1351430B1 (en) * | 2002-04-03 | 2005-10-05 | Matsushita Electric Industrial Co., Ltd. | Expansion key generating device, encryption device and encryption system |
US7215768B2 (en) * | 2002-06-25 | 2007-05-08 | Intel Corporation | Shared new data and swap signal for an encryption core |
US7035887B2 (en) * | 2002-07-17 | 2006-04-25 | Ltx Corporation | Apparatus and method for data shifting |
-
2003
- 2003-05-29 JP JP2003152234A patent/JP2004361986A/ja active Pending
-
2004
- 2004-04-05 SG SG200401883A patent/SG116536A1/en unknown
- 2004-04-06 EP EP04252039A patent/EP1467274A3/en not_active Ceased
- 2004-04-06 TW TW093109510A patent/TWI292869B/zh not_active IP Right Cessation
- 2004-04-07 US US10/819,281 patent/US20040205352A1/en not_active Abandoned
- 2004-04-07 KR KR1020040023678A patent/KR100549151B1/ko active IP Right Grant
- 2004-04-08 CN CNB200410032525XA patent/CN1287302C/zh not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
EP1467274A3 (en) | 2006-05-10 |
US20040205352A1 (en) | 2004-10-14 |
TWI292869B (en) | 2008-01-21 |
SG116536A1 (en) | 2005-11-28 |
KR20040087910A (ko) | 2004-10-15 |
KR100549151B1 (ko) | 2006-02-06 |
TW200426596A (en) | 2004-12-01 |
CN1536503A (zh) | 2004-10-13 |
JP2004361986A (ja) | 2004-12-24 |
EP1467274A2 (en) | 2004-10-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1287302C (zh) | 加密电路和解密电路以及数据处理装置 | |
CN1677922A (zh) | 保密可执行编码的系统和方法 | |
CN1917421A (zh) | 具加密设备和信息的解密装置制作方法及制作的解密装置 | |
TWI662474B (zh) | 用來對微控制器芯片進行韌體編程之方法與裝置、以及對應的微控制器芯片 | |
CN1638327A (zh) | 加密设备以及与之一起使用的程序和方法 | |
CN1655503A (zh) | 安全密钥认证和等级系统 | |
CN1758591A (zh) | 在加密系统中处理已屏蔽数据的方法、电路和程序产品 | |
CN1483271A (zh) | 安全通信包处理装置及其方法 | |
CN1540657A (zh) | 非易失性存储设备和数据处理系统 | |
CN1528066A (zh) | 进行kasumi计算的装置和方法 | |
CN1291744A (zh) | 扩充密钥发生器、加密/解密单元、扩充密钥产生方法和存储媒体 | |
CN1734475A (zh) | 半导体集成电路和信息处理设备 | |
CN1764881A (zh) | 协助处理密码消息的指令 | |
CN1949235A (zh) | 税控设备软件版本智能升级加密验证方法 | |
CN1691577A (zh) | 安全信息封装系统、大规模集成电路及安全信息封装方法 | |
CN1991870A (zh) | 数据删改防止方法及数据删改防止系统 | |
CN1737879A (zh) | 加密指令处理设备 | |
CN1108040C (zh) | 解密方法及电子装置 | |
CN1258148C (zh) | 高安全等级对称密钥算法的加密、解密方法及加密器 | |
CN1967482A (zh) | 程序开发方法、程序开发支援装置及程序安装方法 | |
CN1898623A (zh) | 使用动态实体的软件执行保护 | |
CN1180351C (zh) | 强化错乱的分组密码加密方法 | |
CN1719766A (zh) | 一种AES加解密电路中Sbox模块优化方法及优化电路 | |
CN1285227C (zh) | 短消息保密方法及用于实现短消息保密的sim卡 | |
CN1231871C (zh) | 在使用一种密钥动态加密算法的电子元件中的对抗方法 |
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: 20061129 Termination date: 20160408 |