随机数生成设备及控制方法、存储器存取控制设备及通信设备的制作方法

文档序号:6609830阅读:128来源:国知局
专利名称:随机数生成设备及控制方法、存储器存取控制设备及通信设备的制作方法
技术领域
本发明涉及随机数生成设备、随机数生成控制方法、存储器存 耳又控制设备以及通信设备,具体地,涉及用于防止将可容易估计出 的值i殳置为在置乱lt据时〗吏用的置乱密钥(scramble key )的随枳4t 生成设备、随机数生成控制方法、存储器存取控制设备以及通信设 备。
背景技术
已经提出了一种技术(例如,参见日本未审查专利申请7>开第 2005-249969号),其中,通过识别随机数串中连续相同的数字,并 基于随机数串中的相同数字或相同数字组的数量检查将被输出的 随机数的周期性,确定随4几数生成电路是否发生故障。

发明内容
存在随机数被用作在置乱各种类型的数据时使用的置乱密钥 的情况。例如,当将诸如000…000和111... 111的具有连续相同数字
的位串以及诸如0101...0101、 0101...010、 1010... 1010和1010...101
的不同的数字组交替重复的位串设置为置乱密钥时,存在这样的一
种可能性通过解析如何置乱凄t据,与i殳置其他位串的情况相比可 以容易地估计置乱密钥的值。
然而,在曰本未审查专利申请公开第2005-249969号中7>开的 技术没有考虑到检查随机数是否适合作为置乱密钥,这是因为所公 开的技术旨在检查由随机数生成电路生成的随机数的周期性的异常。
考虑到上述情况提出了本发明。期望防止将可容易估计出的位 串值设置为置乱密钥。
才艮据本发明第 一 实施例的随才几数生成i殳备生成并输出随才几凄t 或伪随机数。随机数生成设备包括随机数生成装置,用于生成随 机数或伪随机数;以及随机数输出控制装置,用于当由随机数生成 装置生成的随机数或伪随机数等于预定值时,控制随机数生成装
随扭4t生成装置可以生成Gold序列伪随枳4t作为生成的伪随机数。
随机数输出控制装置可控制随机数生成装置以生成并输出不 同于具有连续相同数字的位串以及不同的数字组交替重复的位串 的随枳4t或伪随枳4t作为新的随积4t或伪随积4t 。
才艮据本发明第二实施例的随枳4t生成控制方法用于包括生成 并输出随机数或伪随机数的随机数生成器的随机数生成设备,该方 法包括以下步骤当由随4几数生成器生成的随枳4t或伪随积4t等于
预定值时,控制随机数生成器,以生成并输出不同于该预定值的新 的随机数或伪随才几数。
根据本发明第三实施例的存储器存取控制设备通过使用置乱 密钥来置乱输入逻辑地址,将存储器中#皮实际访问的物理地址分配
给输入逻辑地址。存储器存取控制设备包括随机数生成装置,用 于生成随机数或伪随才几数;以及随机数输出控制装置,用于当由随 机数生成装置生成的随机数或伪随机数等于预定值时,控制随机数
作为置乱密钥。
^4居本发明第四实施例的通信设备与具有非接触集成电路卡 功能的设备通信。通信设备包括存储器存取控制装置,用于通过 使用置乱密钥来置乱输入逻辑地址,将存储器中^皮实际访问的物理 地址分配给输入逻辑地址;随枳^t生成装置,用于生成随枳4t或伪 随机数;以及随机数输出控制装置,用于当由随机数生成装置生成 的随机数或伪随机数等于预定值时,控制随机数生成装置,以生成 并输出作为置乱密钥的不同于该预定值的新的随机数或伪随机数。
在本发明的第一和第二实施例中,当生成的随枳4史或伪随才几数 等于预定值时,控制随机数生成设备来生成并输出不同于该预定值 的新的随机i数或伪随枳4t 。
在本发明的第三实施例中,当生成的随机4t或伪随机:数等于预 定值时,控制存储器存取控制设备来生成并输出不同于预定值的新 的随一几数或伪随扭4t作为置乱密钥。
在本发明的第四实施例中,当生成的随初4t或伪随初4t等于预 定值时,控制通信设备来生成并输出不同于预定值的新的随机数或 伪随积4t作为置乱密钥。
在本发明的第 一至第四实施例中,可以输出其值不同于预定值
的随积4t。另外,#4居本发明的第一至第四实施例,可以防止4夸可 容易估计出的位串值设置为用于置乱数据的置乱密钥。


图1是示出根据本发明实施例的读取器-写入器的框图2是示出图1中所示控制模块的功能结构的框图3是示出图2中所示随机数输出单元的第一实例的功能结构 的框图4是示出图2中所示随机数输出单元的功能结构的详细框
图5是示出由图1中所示读取器-写入器执行的置乱密钥生成处 理的流程图6是示出由图1中所示读取器-写入器执行的存储器存取控制 处理的流禾呈图7是示出图2中所示随机数输出单元的第二实例的功能结构 的冲匡图;以及
图8是示出当包括图7中所示随机数输出单元时,由图1中所 示读取器-写入器执行的置乱密钥生成处理的流程图。
具体实施例方式
在描述本发明的实施例之前,下面讨论权利要求的特征和本发 明实施例中公开的特定元件之间的对应关系。这些描述旨在保证在 该说明书中描述了支持所要求的发明的实施例。因此,即使在随后 实施例中的元件没有被描述为与本发明的某一特4正相关,也不一定 表示该元件与权利要求的该特征不相关。相反,即使本文中将某元
件描述为与^K利要求的某一特4i相关,也不一定表示该元件与^K利 要求的其他特征不相关。
根据本发明第一实施例的随机数生成设备(例如,图7中所示 的随机数字输出单元42)生成并输出随才几数或伪随才几数。该随机数 生成设备包括随机数生成装置(例如,图7所示的随机数生成器 101),用于生成随机数或伪随机数;以及随机数输出控制装置(例 如,图7所示的位串冲企查器201),用于当由随才几数生成装置生成的 随机数或伪随机数等于预定值时,控制随机数生成装置,以生成并 输出不同于该预定值的新的随才几数或伪随才几数。
根据本发明第二实施例的随机数生成控制方法用于包括随机 数生成器(例如,图7所示的随枳4t生成器101)的生成并输出随 才几^t或伪随枳4t的随枳i数生成i殳备(例如,图7所示的随机数输出 单元42),该方法包括以下步艰A:当由随扭4t生成器生成的随才几凄t 或伪随机数等于预定值时,控制随机数生成器,以生成并输出不同 于该预定4直的新的随^4t或伪随冲几凄t (例如,图8中所示的步-骤 S102和S103 )。
根据本发明的第三实施例的存储器访问控制设备(例如,图2 中所示的存储器访问控制器32 )通过使用置乱密钥来置乱输入逻辑 地址,将存储器(例如,图2中所示的存储器33)中将^^皮实际访问 的物理地址分配给输入逻辑地址。该存储器访问控制设备包括随 机数生成装置(例如,图7中所示的随机数生成器101 ),用于生成 随机数或伪随机数;以及随机数输出控制装置(例如,图7中所示 的位串检查器201),用于当由随机数生成装置生成的随机数或伪随
机数等于预定值时,控制随机数生成装置,以生成并输出作为置乱 密钥的不同于该预定值的新的随机数或伪随机数。
才艮据本发明第四实施例的通信设备(例如,图1中所示的读取 器-写入器1)与具有非接触集成电路卡功能的装置(例如,图1中
所示的IC卡2)进行通信。该通信设备包括存储器访问控制装置 (例如,图2中所示的存储器存取控制器32),用于通过使用置乱 密钥来置乱输入逻辑地址,将存储器(例如,图2所示的存储器33 ) 中被实际访问的物理地址分配给输入逻辑地址;随才几数生成装置 (例如,图7所示的随机数生成器101),用于生成随机数或伪随机 数;以及随机数输出控制装置(例如,图7所示的位串检查器201), 用于当由随机数生成装置生成的随机数或伪随机数等于预定值时, 控制随机数生成装置,以生成并输出作为置乱密钥的不同于该预定 值的新的随才几数或伪随枳4史。
下面参照附图描述本发明的实施例。
图1是示出根据本发明实施例的读取器-写入器1的框图。根据 该实施例的读取器-写入器1包括天线11、 RF (射频)驱动基纟反12、 以及控制才莫块13。
RF驱动基才反12经由天线11通过4吏用具有单一频率的载波扭i 行与非接触型的IC (集成电路)卡2的电》兹感应邻近通信。对于由 RF驱动基板12使用的载波频率,例如,可使用13.56 MHz (兆赫) 的ISM(工业、科学和医学)频段等。邻近通信表示当两个装置之 间的距离在几十厘米内时,两个装置能够4皮此通信的通信。邻近通 信包括两个装置(的外壳)相互接触而4丸行通信的一种通信。
控制模块13执行用于实现使用IC卡2的服务的处理。如果需 要的话,控制才莫块13通过天线11和RF驱动基板12将用于服务的
数据写在IC卡2上以及从IC卡2读取用于服务的数据。另外,控 制模块13可并行执行多种类型的服务处理。具体地,读取器-写入 器1可使用非接触类型的IC卡2单独提供多种服务,例如,电子 货币服务、预付卡服务、以及各种运输的票卡服务。
图2是示出图1中所示控制模块13的功能结构的框图。控制 模块13包括CPU 31、存储器存取控制器32、存储器33、以及复 位电路34。存储器存取控制器32包括置乱密钥改变命令单元41、 随机数输出单元42、以及总线置乱单元43。总线置乱单元43包括 置乱密钥存储部51和地址总线置乱电路52。置乱密钥存储部51包 括置乱密钥緩冲器61和内部存储器62。
CPU 31和地址总线置乱电^各52通过具有n位总线宽度的地址 总线35互相连接。地址总线置乱电路52和存储器33通过具有等 于地址总线35的总线宽度的n位总线宽度的地址总线36互相连接。 CPU 31和存储器33通过具有m位总线宽度的数据总线37相互连接。
通过执行预定程序,CPU 31执行用于实现使用IC卡2的服务 的处理。另外,CPU31可并行执行对应于服务的程序。换句话说, CPU 31可并行执行用于多种服务的处理。
CPU 31将用于每种服务的数据写入存储器33以及从存储器33 读取用于每种服务的数据。当CPU 31将数据写入存储器33时,CPU 31使用地址总线35来为地址总线置乱电路52提供表示逻辑地址的 逻辑地址信号,该逻辑地址表示逻辑数据写入位置,以及使用凄t据 总线37来为存储器33提供写入信号,该写入信号包括写入数据并 表示数据写入命令。当CPU 31从存储器33读取数据时,CPU 31 -使用地址总线35来为地址总线置乱电^各52 ^是供表示逻辑地址的逻
辑地址信号,该逻辑地址表示逻辑数据读取位置,以及4吏用凄t据总
线37来为存储器33提供表示数据读取命令的读取信号。
存储器存取控制器32通过CPU 31控制存储器33的存取。
在存储器存取控制器32中包含的部件之中,例如,置乱密钥 改变命令单元41包括4姿4丑和开关。例如,在改变存储在置乱密钥 存储部51中的置乱密钥的情况下,用户使用置乱密钥改变命令单 元41来输入置乱密钥改变命令。
当置乱密钥改变命令单元41为随才几数输出单元42提供表示置 乱密钥改变命令的信号时,随机数输出单元42生成由n位串形成 的伪随机数,并将生成的伪随机数作为置乱密钥输出至置乱密钥緩 冲器61。
总线置乱单元43执行用于将由CPU 31提供的逻辑地址表示的 逻辑地址转换为在存储器33中将被实际访问的物理地址。
在包括总线置乱单元43中的部件中,从随机数输出单元42提 供的伪随机数被作为置乱密钥存储在置乱密钥存储部51中。具体 地,置乱密钥存储部51中的置乱密钥緩冲器61将由随机数输出单 元42提供的伪随机数作为置乱密钥进行存储。另外,置乱密钥緩 冲器61还提供置乱密钥并将其存储在内部存储器62中。内部存储 器62由诸如闪存的非易失性存储器或由电池支持的RAM (随机存 取存储器)等形成。即使控制模块13的电源处于关闭状态,内部 存储器62仍持续地存储置乱密钥。另外,当控制模块13的电源从 关闭状态变为开启状态时,置乱密钥緩沖器61读取并存储在内部 存储器62中存储的置乱密钥。到在控制模块13的电源开启后完成 从内部存储器62读取置乱密钥为止,置乱密钥緩沖器61向复位电 路34提供复位命令信号。
通过4吏用存储在置乱密钥緩冲器61中的置乱密钥来置乱由/人 CPU 31纟是供的逻辑地址信号所表示的逻辑地址,地址总线置乱电 路52将该逻辑地址转换为在存储器33中将^皮实际访问的物理地 址。换句话说,通过置乱输入逻辑地址,地址总线置乱电路52将 物理地址分配给逻辑地址。地址总线置乱电路52为存储器33提供 表示通过转换所获得的物理地址的物理地址信号。
例如,存储器33由诸如闪存、EEPROM (电可4察除可编程只 读存储器)、HDD (硬盘驱动器)、MRAM (》兹阻随机存取存储器)、 FeRAM (铁电随机存取存储器)、以及OUM (双向通用存储器)的 非易失性存储器中的一种形成。当#皮4是供有来自CPU 31的写入信 号时,存储器33写入包括在由地址总线置乱电路52提供的物理地 址信号表示的存储器33中的物理地址处的写入信号中的数据。另 外,当被提供有来自CPU31的读取信号时,存储器33读取由地址 总线置乱电路52提供的物理地址信号表示的存储器33中的物理地 址处的凄t据,并通过数据总线37将读耳又的H据一是供纟会CPU 31。
当将复位命令信号从置乱密钥緩冲器61提供给复位电路34 时,复位电路34通过向CPU 31提供复位信号来初始化CPU 31的 状态。
图3是示出随机数输出单元42的第 一 实例的功能结构的框图。 随机数字输出单元42包括随机数字生成器101和开关102。
随机数生成器101包括LFSR (线性反馈移位寄存器)随机 数输出单元lll,包括具有Ll位的移位寄存器;LFSR随机数输出 单元112,包括具有L2位的移位寄存器;以及EXOR(异或)电路 113。
LFSR随机数输出单元111和112基于已知的LFSR原理,其 中,具有由移位寄存器中预定数目的位所表示的值的异或逻辑和被 作为反馈值输入移位寄存器。随机数生成器101通过使用异或电路 113以获得由LFSR随才几生成单元111和112生成的两个不同的M 序列伪随机数的每一位的异或逻辑和,来生成Gold序列随机数。 包括在随机数生成器101中的LFSR随机数输出单元的数目并不限 于两个,而可以是三个或更多。
当从置乱密钥改变命令单元41接收表示置乱密钥改变命令的 输入信号时,开关102被接通,从而通过开关102将表示由随机数 生成器101生成的Gold序列随机数的位串输出到置乱密钥緩冲器 61。
图4是示出总线置乱单元43的功能结构的详细框图。
置乱密钥緩沖器61包括具有n位的串行输入和并行输出移位 寄存器。在置乱密钥緩沖器61中,将从随机数输出单元42中作为 串行信号提供的伪随机数存储为置乱密钥。
地址总线置乱电路52通过使用EXOR电路151-1 ~ 151-n将逻
辑地址转换为具有位SA1 ~ SAn的n位物理地址,乂人而获得具有位 Al ~ An的并且由通过地址总线35从CPU 31提供的逻辑地址信号 所表示的n位逻辑地址的每一位与具有位Kl ~ Kn并且存储在置乱 密钥緩沖器61中的n位置乱密钥的每一位之间的异或逻辑和。地 址总线置乱电路52为存储器33提供表示通过转换而获得的物理地 址的物理地址信号。
下面,将参照图5和图6描述读取器-写入器1的处理。
首先,下面参照图5所示的流程图描述由读取器-写入器l执行 的置乱密钥生成处理。例如,在接通读取器-写入器1的电源时的情 况下,用户使用置乱密钥改变命令单元41输入置乱密钥改变命令 以改变置乱密钥开始置乱密钥生成处理。
在步骤S1中,随机数输出单元42输出伪随机数。具体地,置 乱密钥改变命令单元41通过向开关102提供表示置乱密钥改变命 令的信号来接通开关102。当读取器-写入器1的电源接通时,随机 数生成器101持续生成伪随机数。开关102的接通开始了通过开关 102将伪随冲几数从随才几数生成器101输出至置乱密钥緩冲器61。当 从随机数生成器101输出了 n位伪随机数时,开关102断开。
在步骤S2中,总线置乱单元43设置置乱密钥。之后,置乱密 钥生成处理结束。具体地,在置乱密钥緩冲器61中,由n位串形 成并由随枳』数输出单元42提供的伪随枳4t被作为置乱密钥存储在 内部寄存器中。置乱密钥緩沖器61提供置乱密钥并将其存储在内 部存储器62中。换句话说,置乱密钥通过内部存储器62备份。
这使得当读取器-写入器1的数量为多个时可以为每个控制模 块13都i殳置具有不同值且难以预测的置乱密钥。例如在从工厂运 送读取器-写入器1之前纟丸行置乱密钥生成处理。
接下来,下面参照图6所示的流程图描述由读取器-写入器1 执行的存储器存取控制处理。例如当读取器-写入器1的电源接通时 开始存储器存取控制处理。
在步骤S31中,接通读取器-写入器1的电源并接通控制模块 13的电源,从而置乱密钥緩沖器61开始向复位电路34提供复位命 令信号。
在步骤S32中,复位电路34通过开始向CPU 31提供复位信号 来复位CPU31。这初始化了 CPU31的状态。
在步骤S33中,置乱密钥緩冲器61读取存储在内部存储器62 中的置乱密钥。置乱密钥緩冲器61将读取的置乱密钥存储在内部 寄存器中。
在步骤S34中,置乱密钥緩沖器61停止向复位电路34提供复 位命令信号。因此,复位电路34停止向CPU31提供复位信号,并 且CPU 31开始程序才丸4亍。
在步骤S35中,CPU 31确定是否写入凄t据。在4丸行禾呈序的过 程中,如果在下一步骤中没有执行数据写入,则CPU31确定不写 入凄t据,并且处理前进到步骤S36。
在步骤S36中,CPU 31决定是否读取数据。在扭^亍程序的过 程中,如果在下一步骤中没有4丸行数据读取,贝"CPU31确定不读 取数据,并且处理返回至步骤S35。
之后,重复执行步骤S35和S36,直到CPU 31在步骤S35中
确定写入#:才居或在步-骤S36中确定读取凄t:梧。
在执行程序的过程中,如果在下一步骤中执行数据写入,则在 步骤S35中,CPU31确定写入数据,并且处理前进到步骤S37。
在步骤S37中,CPU31命令写入数据。具体地,CPU31使用 地址总线35来为地址总线置乱电路52 ^是供表示逻辑地址的逻辑地 址信号,该逻辑地址表示逻辑数据写入位置。另夕卜,CPU 31使用 数据总线37来为存储器33提供包括写入数据并表示数据写入命令 的写入信号。
在步骤S38中,地址总线置乱电3各52将逻辑地址转换成物理 地址。具体地,地址总线置乱电路52通过获得由逻辑地址信号表 示的逻辑地址的每一位与存储在置乱密钥緩冲器61中的置乱密钥 的每一位之间的异或逻辑和以及置乱逻辑地址来将逻辑地址转换 成物理地址。地址总线置乱电3各52使用地址总线36来为存储器33 才是供表示通过转换所获得的物理地址的物理地址信号。
在步骤S39中,将数据写入存储器33中。具体地,存储器33 将包括在由CPU 31提供的写入信号中的数据写入到由物理地址信 号表示的存储器33中的物理地址处。即〗吏通过CPU31命令存储器 33在连续的物理地址处写入数据,而实际上将数据写入存储器33 以-陂随才几配置。因此,难以解才斤和篡改存^f渚在存^f诸器33中的凝:才居 内容。
然后,处理返回步骤S35,并才丸4于步4f S35和随后的步-骤。
在执行程序的过程中,如果在下一步骤执行数据读取,则在步 骤S36中,CPU31确定读取凄t据,并且处理前进到步骤S40。
在步骤S40中,CPU31命令读取数据。具体地,CPU31使用 地址总线35为地址总线置乱电^各52提供表示逻辑地址的逻辑地址 信号,该逻辑地址表示逻辑数据读取位置。另外,CPU 31使用数 据总线37为存储器33提供表示数据读取命令的读取信号。
类似于步骤S38,在步骤S41中,将逻辑地址转换成物理地址, 并通过地址总线36将表示通过转换所获4寻的物理地址的物理地址 信号从地址总线置乱电路52提供给存储器33。
在步骤S42中,存储器33读取数据。具体地,存储器33读取 存储在由物理地址信号表示的物理地址处的数据,并使用数据总线 37将读取的数据提供给CPU 31。
之后,处理返回至步骤S35,并执行步骤S35和随后的步骤。
如上所述,当读取器-写入器1的数量是多个时,可容易地为每 个控制模块13设置不同的置乱密钥。即使解析了为一个控制模块 13设置的置乱密钥,仍然难以使用该置乱密钥来解析和篡改存储在 不同控制模块13的存储器33中的数据。因此,可使基于数据分配 和篡改数据的破坏最'J 、化。
另外,对于用于生成伪随积4t的方法和用于置乱地址的方法, 可以在不进行修改的情况下使用相关技术,而不需要设置新的复杂 电路。因此,除输入置乱密钥改变命令之外,不需要用户的其它努 力。因而,可容易地提高存储在存储器33中的数据的安全性。
接下来,下面参照图7和图8描述随机数输出单元42的第二实例。
图7是示出随机数输出单元42的第二实例的功能结构的框图。 图7中所示的随机数输出单元42包括随机数生成器101、位串检查 器201、开关202、由具有n位的移位寄存器形成的随机数寄存器 203、以及开关204。在图7中,对应于图3中所示那些部分的部分 由相同的参考标号表示,并且处理相同的部分由于它们的描述是重 复的而不再进行描述。
位串检查器201从置乱密钥改变命令单元41获取表示置乱密 钥改变命令的信号。当置乱密钥改变命令单元41为位串检查器201 提供置乱密钥改变命令时,位串检查器201接通开关202。从而, 通过开关202从随枳4t生成器101 :提供由随机4t生成器101生成的 Gold序列伪随机数表示的位串并将其存储在随机数寄存器203中。
另夕卜,位串检查器201检查存储在随机数寄存器203中的伪随 机数是否等于被禁止用作置乱密钥的预定值。如果存储在随机数寄 存器203中的伪随机数等于被禁止用作置乱密钥的预定值,则位串 检查器201接通开关202,以将具有预定位数的伪随才几数乂人随枳4史 生成器101输出至随机数寄存器203,从而改变了存储在随机数寄 存器203中的伪随枳i数的值。如果存储在随枳4t寄存器203中的伪 随机数不等于被禁止用作置乱密钥的预定值,则位串检查器201接 通开关204。这使存储在随机数寄存器203中的伪随机数(由n位 串形成)通过开关204输出至置乱密钥緩沖器61。换句话说,如果 由随机数生成器101生成的伪随机数等于被禁止用作置乱密钥的预 定值,则位串检查器201控制随机数生成器101,使得随机数生成 器101生成新的伪随积4t并将生成的不同于^皮禁止用作置乱密钥的 值的伪随机数输出至置乱密钥緩冲器61。
接下来,下面参照图8中所示的流程图描述当读取器-写入器1 包括图7中所示的随机数输出单元42时,代替图5中所示的置乱 密钥生成处理的由读耳又器-写入器1执行的置乱密钥生成处理。例 如,在读取器-写入器1的电源接通时的情况下,用户使用置乱密钥 改变命令单元41输入置乱密钥改变命令开始图8中所示的置乱密 钥生成处理。
在步骤S101中,随枳4t输出单元42生成伪随枳4t。具体地, 置乱密钥改变命令单元41为位串检查器201提供表示置乱密钥改 变命令的信号。位串检查器201接通开关202。在读取器-写入器l 的电源接通时,随机数生成器IOI持续生成伪随机数。开关202的 接通开始了通过开关202将伪随冲几tt从随积4t生成器101输出至随 机数寄存器203。当通过随枳4欠生成器101输出n位伪随才几数时, ^立串4全查器201断开开关202。
在步骤S102中,位串检查器201确定伪随机数是否是被禁止 用作置乱密钥的值。具体地,位串检查器201将存储在随机数寄存 器203中的伪随机数与被禁止用作置乱密钥的值进行比较。例如, 用户预先设置与其它值比较起来容易被估计的值作为禁止用作置 ^L密钥的^f直,例3口, i者4口 000…000和111... 111的具有连续相同凄史字 的位串以及诸如0101…0101、 0101....010、 1010... 1010、和1010... 101 的不同的数字组交替重复的位串。如果位串检查器201确定存储在 随机数寄存器203中的伪随机数是^皮禁止用作置乱密钥的值中的一 个,则处理前进到步骤S103。
在步骤S103中,位串检查器201生成新的伪随机数。具体地, 通过4妄通开关202,位串4全查器201控制随枳4t生成器101,以向 随机数寄存器203输出具有预定位数的伪随机数。随机数寄存器203 将所存储的位串向上移位输入至随机数寄存器203的新的伪随机数 的位数,并将新的伪随机数加到存储的位串的末尾。换句话说,由 随枳4t生成器101生成的新的伪随枳4M皮存^f诸在随扭4t寄存器203 中。
之后,处理返回步骤S102,并重复扭i行步骤S102和S103,直
到在步骤S102中确定伪随机数不是被禁止用作置乱密钥的值。
在步骤S102中,如果确定伪随机数不是被禁止用作置乱密钥 的值,则处理前进到步骤S104。
在步骤S104中,随机数输出单元42输出伪随机数。具体地, 位串检查器201接通开关204。这使得通过开关204将存储在随机 数寄存器203中的伪随机数输出至置乱密钥緩冲器61。
类似于图5中的步骤S2,在步骤S105中,设置置乱密钥,并 结束图8中所示的置乱密钥生成处理。
如上所述,防止将可容易估计出的值i殳置成置乱密钥。因此,
难以解析和篡改存储在存储器33中的数据,从而提高了存储在存 储器33中的数据的安全性。另外,例如,通过以交换或初始化存 储器33的定时改变置乱密钥,使得更加难以解析置乱密钥。
前面的描述描述了 Gold序列伪随积4b皮用作置乱密钥的情况。 然而,用作置乱密钥的随机数或伪随机数并不限于上述实施例,而
是例如可以使用在仅使用 一个LFSR的情况下获得的M序列伪随扭i 数,以及可以使用利用热噪声的物理伪随积4史。
另外,用于置乱地址的方法不限于上述实例。然而,还可以4吏 用基于随机数或伪随机数设置的置乱密钥的另 一种方法。
前面的描述举例说明了作为与读取器-写入器l通信方的IC卡 2。显然,读取器-写入器l可与非接触IC卡功能装置进行通信,例 如,具有非接触IC卡功能的便携式电话、PDA(个人数字助理)、 计时器、以及计算才几。
另外,图2中所示的存储器存取控制器32可应用于不同于读 取器-写入器1的存储数据读取/写入装置。
此外,除上述禁止图7中所示的随才几数输出单元42输出可容 易估计出的值作为置乱密钥之外,可以根据需要设置禁止输出的任 意值。
另外,尽管前面的描述描述了图2中所示的存储器33是非易 失性存储器的情况,但是很显然,可将随机数输出单元42用作易 失性存储器。
本领域的技术人员应该理解,根据设计要求和其他因素,可以 有多种修改、组合、子组合和改进,均应包含在本发明的权利要求 或等同物的范围之内。
权利要求
1.一种用于生成并输出随机数或伪随机数的随机数生成设备,所述随机数生成设备包括随机数生成装置,用于生成所述随机数或伪随机数;以及随机数输出控制装置,用于当由所述随机数生成装置生成的所述随机数或伪随机数等于预定值时,控制所述随机数生成装置,以生成并输出不同于所述预定值的新的随机数或伪随机数。
2. 根据权利要求1所述的随机数生成设备,其中,所述随机数生 成装置生成Gold序列伪随枳^t作为所述伪随枳4t。
3. 根据权利要求1所述的随机数生成设备,其中,所述随机数输 出控制装置控制所述随机数生成装置,以生成并输出不同于具 有连续相同数字的位串以及不同的数字组交替重复的位串的 随机数或伪随机数作为所述新的随机数或伪随机数。
4. 一种用于随枳4t生成i殳备的随积4欠生成控制方法,所述随积4史成器,所述随积4t生成控制方法包括以下步骤当由所述随枳^ 数生成器生成的所述随机数或伪随机数等于预定值时,控制所 述随机数生成器,以生成并输出不同于所述预定值的新的随枳j 凄t或伪随々几凄t。
5. —种存储器存取控制设备,用于通过使用置乱密钥来置乱输入 逻辑地址,将存储器中被实际访问的物理地址分配给所述输入 逻辑地址,所述存储器存取控制设备包括随机数生成装置,用于生成随机数或伪随机数;以及随机数输出控制装置,用于当由所述随机数生成装置生 成的所述随才几数或伪随枳^t等于预定值时,控制所述随枳4史生 成装置,以生成并输出不同于所述预定值的新的随机数或伪随 机数作为所述置乱密钥。
6. —种用于与具有非接触集成电路卡功能的设备进行通信的通 信设备,所述通信设备包括存储器存取控制装置,用于通过使用置乱密钥来置乱输 入逻辑地址,将存储器中被实际访问的物理地址分配给所述输 入逻辑地址;随机数生成装置,用于生成随机数或伪随才几数;以及随机数输出控制装置,用于当由所述随机数生成装置生 成的所述随4几凄t或伪随4几数等于预定值时,控制所述随枳4t生 成装置,以生成并输出不同于所述预定值的新的随机数或伪随 才几数作为所述置乱密钥。
7. —种用于生成并输出随枳4t或伪随枳4史的随枳4t生成i殳备,所 述随机数生成设备包括随机数生成器,用于生成所述随机数或伪随机数;以及随机数输出控制器,用于当由所述随机数生成器生成的 所述随机数或伪随一几数等于预定值时,4丸行所述随一几数生成器 的控制,以生成并输出不同于所述预定值的新的随积j数或伪随 机数。
8. —种存储器存取控制设备,用于通过使用置乱密钥来置乱输入逻辑地址,将存储器中被实际访问的物理地址分配给所述输入逻辑地址,所述存储器存取控制设备包括随机数生成器,用于生成随机数或伪随机数;以及随机数输出控制器,用于当由所述随机数生成器生成的 所述随机数或伪随一几数等于预定值时,4丸行所述随^i4t生成器 的控制,以生成并输出不同于所述预定值的新的随枳i数或伪随 机数作为所述置乱密钥。
9. 一种用于与具有非接触集成电路卡功能的设备进行通信的通 信设备,所述通信设备包括存储器存取控制器,用于通过使用置乱密钥来置乱输入 逻辑地址,将存^f诸器中^皮实际访问的物理地址分配^会所述车lr入 逻辑地址;随机数生成器,用于生成随机数或伪随机数;以及随机数输出控制器,用于当由所述随机数生成器生成的 所述随机数或伪随纟几数等于预定值时,纟丸行所述随枳^t生成器 的控制,以生成并输出不同于所述预定值的新的随枳4t或伪随 机数作为所述置乱密钥。
全文摘要
随机数生成设备生成并输出随机数或伪随机数。随机数生成设备包括随机数生成器,用于生成随机数或伪随机数;以及随机数输出控制器,用于当由随机数生成器生成的随机数或伪随机数等于预定值时,控制随机数生成器,以生成并输出不同于预定值的新的随机数或伪随机数。
文档编号G06F7/58GK101097510SQ20071011246
公开日2008年1月2日 申请日期2007年6月26日 优先权日2006年6月26日
发明者村冈如竹 申请人:索尼株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1