编码器的制作方法

文档序号:6411011阅读:533来源:国知局
专利名称:编码器的制作方法
在同一系统两个单元间所进行的数据传递中,例如在一个可移动部分如一个集成电路板,和一个固定部分如一个读出装置之间,由于对传送数据的了解可使入侵者有机会去操纵由传送数据控制的操作,所以,对要被传送的数据编码显得日益重要。一个编码操作可以下述方式进行,首先,一个数据从一个单元被传送到另一个单元,在那里,数据由一个编码器进行编码处理,经编码的数据再由编码单元被送回到发送单元,在发送单元,编码数据要么被解码,这种情况出现在同时应用对称算法和不对称算法的处理过程中,要么以与移动部分相同的方式编码并与所接收到的编码数据相比较。
虽然上面提到的方法不能用于任何有效信息的传送,但因为终端接收器必须预先已经知道这些信息,所以该方法可用于以极有利的方式鉴定,因为负责对所接收数据编码并将编码数据发送回固定装置的可移动部分,必须由此证实具有正确的算法和正确的编码器,并从而鉴定自身。当然,固定部分或读出器也可以同样的方式进行鉴定,因为只有当两个部分具有同样的编码器或同样的编码算法时,两部分间的编码数据相比较时才能完全符合。
对于多数编码算法,其中编码数据在接收器中被重新解码,都需要有复杂的计算单元,计算单元通常由一个微处理器和一个特殊的协处理器组成,并且需要可观的计算时间。简单得多的是伪随机发生器,不过,它只能执行上述的第二种方法,这是因为伪随机发生器对输入数据的编码过程是不可逆的,所以一个系统的两个部分都只能执行编码操作,并互相比较彼此的编码操作结果。
通常,要被编码的数据和密码组成一个编码器的输入数据,不过,为提高安全性,可能要用到更多的数据,特别是时变数据,如计数器中所存内容,例如错误计数器。为保证机密,所有这些输入数据经一种算法被处理成编码输出数据。既然如此,该算法可利用硬件来实现,例如象在移位寄存器的例子中,可以利用移位寄存器所处状态的一些逻辑组合来实现。
因为在任何情况下,数据总是以数字形式表示的,所以在对数据编码时就需要有一个时钟信号来保证各单步操作间的同步。入侵者可以试图从一个编码操作中出现的时钟信号脉冲的个数来得知一编码操作的类型。
本发明的目的是详细说明一种编码器,其生成编码数据所需的时间无法由时钟信号确定。
该目的是通过权利要求1所述的编码器实现的。本发明的改进之处在子权利要求中声明。
以下,参考一个典型实施例,借助于图形,对本发明作一详细介绍。图形包括

图1示出本发明专用编码器的框图及图2示出本发明编码器部分设计方面的变动。
图1示出了本发明的一个编码器,其核心部分是编码单元VE。输入数据E送入编码单元VE。在所示的例子中,这些输入数据E串行输入并包括,例如,要被编码的输入数据,密码,进一步,最好有时变数据,诸如从错误计数器中读出的当前数据。当然,在任何情况下,也可能将这些数据以并行方式输入,并以这种或那种方式逻辑组合。在所示的例子中,编码单元VE由移位寄存器SR组成,并为其分配了一个反馈单元RK,反馈单元RK对移位寄存器SR的一些逻辑状态进行组合,并将组合结果回送到移位寄存器SR的输入端,在那里,与输入数据E组合,例如与输入数据相加。移位寄存器SR还被分配有一个提取单元AK,它将移位寄存器SR的一些状态进行非线性组合,例如可以是相乘,并将组合结果送入开关元件SE,SE由提取单元AK所产生的信号来控制。通过开关元件SE,移位寄存器SR的输出数据送到编码单元VE的输出端,作为输出数据A。
这样,依靠输入数据E及反馈单元RK的硬件实现,移位寄存器SR产生连续的一系列数据字节,不过,其中只有一部分根据提取单元AK作为输出数据A被送到编码单元VE的输出端。
这些输出信号A被送到开关S2的第一个输入端,开关S2的输出端与一个输出寄存器AR的输入端相连。输出寄存器AR的输出一方面形成编码器的输出,另一方面被送回到开关S2的第二个输入端。在这种情况下输出寄存器可以是一串行寄存器,例如移位寄存器;也可以是一并行寄存器,它可通过多重通道写入。在这个输出寄存器AR中,输出数据A被缓冲存储并且只能在编码操作结束后才能被读出。为保证编码单元VE和输出寄存器AR的同步性,本发明编码器的这两个部分都加了时钟信号C1。不过,时钟信号是通过开关S1加到编码单元VE上的,两个开关S1和S2分别是由这样的信号控制的,该信号是由产生持续一定时间的信号Sτ1和Sτ2的装置产生的。这样,开关S1是由信号Sτ1激励的,Sτ1持续一段时间τ1。开关S2是由信号Sτ2激励的,Sτ2持续一段时间τ2,τ2位于时间段τ1内。装置Z可以很方便地由一个记数器来实现,当到达一定的可调整时间段τ1、τ2后,发送信号Sτ1、 Sτ2来激励开关S1、S2。为实现上述目的,这些计数装置Z也同样加入时钟信号C1。
编码器〔原文如此〕是这样工作的当编码器接通时,开关S1是闭合的,开关S2处于将编码单元VE的输出端与输出寄存器AR的输入端连接起来的位置。这时,编码单元VE开始与时钟信号C1同步地产生输出数据A,数据A经开关S2写入输出寄存器。当时间段T2结束时,信号Sτ2改变其状态,因此,开关S2随之转换状态,并使输出寄存器AR的输出经转换开关S2与其输入相接。因为时间段τ1比时间段τ2长,所以开关S1仍保持闭合。于是,编码单元继续产生输出数据A,但该数据不再被写入输出寄存器AR,因而对编码数据没有任何影响。而输出寄存器AR中的数据被循环移位。时间段τ1结束后,信号Sτ1改变状态,于是开关S1断开,编码单元VE不再接收时钟信号,因而,不再生成任何输出数据A。
该编码操作的观察者只能从外部对含有编码器的半导体芯片的功耗进行测量,并从中得出有关编码操作执行时间区间的结论。不过,因为加到编码器的时钟信号持续时间比实际编码操作时间长,输出寄存器的功耗也未中断,并且因为输出寄存器继续被加以时钟信号且继续进行循环移位操作,所以,外部观察者不可能知道确切的编码操作时间。
时间段τ1和τ2的值可以存储在非易失存储器中,而该存储器则同编码装置一样一同包含在半导体芯片上,并在每次编码操作开始时将时间段T1、T2的值加载给计数装置Z。τ1、τ2值与送入编码单元VE的密码一起,作为编码器的密码,应该作适当的保密预处理,以使外界无法得到它。
还很可理解到,给计数器Z馈以第三时间段,使得在第一时间段时启动第三时间段,T1开始后的第三时间段结束后启动第二时间段T2。
图2示出了图1中与开关S2连接的输出寄存器AR的另一种备选方案。这里,输出寄存器AR被细分为由AR1…ARn部分组成的多元寄存器,每部分都配有一个转换开关U1…Un。这样,编码单元VE的输出数据A被送入第一个转换开关U1的第一个输入端,U1的输出端与第一个输出寄存器部分AR1的输入端连接。第一个输出寄存器部分AR1的输出端一方面与第二个转换开关U2的第一个输入端连接,另一方面与第一个转换开关U1的第二个输入端连接。以后各转换开关U2…Un及输出寄存器部分AR2…ARn的接法与前面相同。输出寄存器ARn的输出作为整个输出寄存器的输出。每个转换开关U1…Un都被加以信号Sτ2,持续第二个时间段τ2。另外,每个输出寄存器都加以时钟信号C1。在这种输出寄存器更换的情况下,输出寄存器中所有内容的移位不是经过整个的寄存器,而是只通过单个部分。极端的情况,这些部分可以仅仅是单个的数据位,这样,即使时间段τ2结束后,输出寄存器中的编码数据的序列也不会改变。
就图1和图2所示的情况而言,输出寄存器必须设计为移位寄存器,但是,输出寄存器的这种结构形式并非实现本发明基本思想所必须的。最基本的条件只是,即使当第二时间段T2结束后,输出寄存器的功率损耗仍不改变,这样,外部观察者就无法确定到底从什么时候开始,数据不再写入输出寄存器。
权利要求
1一种编码器具有一个编码单元(VE),它至少要具有一个数据输入端和一个数据输出端并有一个时钟输入端,时钟信号(C1)可通过第一开关(S1)加到时钟输入端,具有一个输出寄存器(AR),它有一个数据输入端和一个数据输出端并有一个可加入时钟信号(C1)的时钟输入端,编码单元(VE)的数据输出端通过第二开关(S2)与输出寄存器(AR)的数据输入端连接,具有装置(Z)以产生第一时间段τ1及第二时间段τ2,分别用来激励第一开关(S1)和第二开关(S2),第二时间段(τ2)包含在第一时间段(τ1)以内,在时间段(τ1),编码单元(VE)在时钟信号(C1)的作用下,由输入数据(E)产生输出数据(A),这些输出数据在时间段(τ2),通过第二开关(S2)送入输出寄存器(AR)。
2如权利要求1所述的编码器,其特点在于用于产生第一和第二时间段(τ1,τ2)的装置(Z)是由可调计数器形成的,它有一个时钟输入端以输入时钟信号(C1)。
3如权利要求1和权利要求2所述的编码器,其特点在于输出寄存器AR被设计成一个移位寄存器,在于第二开关(S2)是一个有两个输入和一个输出的转换开关,还在于输出寄存器(AR)的数据输出端与转换开关的第二个输入端相连接。
4如权利要求3所述的编码器,其特点在于移位寄存器被细分为由移位寄存器部分(AR1…ARn)组成的多元寄存器,在于每个移位寄存器部分(AR1…ARn)都配有一个转换开关(U1…Un),转换开关的输出与移位寄存器的输入相连,其第二个输入端与移位寄存器块(A1…A1n)的输出相连,其第一个输入端与上游移位寄存器块的输出相连,或者直接与编码单元(VE)连接,每个转换开关(U1…Un)都由时间段产生装置(Z)控制。
5如前面权利要求所述的编码器,其特点在于编码单元(VE)是一个配有一非线性提取单元(AK)的反馈移位寄存器。
6如前面权利要求所述的编码器,其特点在于输出寄存器中的内容不能被提前读出。
全文摘要
本发明涉及一种带有一个编码单元(VE)及一个放在其后的输出寄存器(AR)的编码器。在时间段τ2内,由送入编码单元(VE)的输入数据(E)产生经编码的输出数据(A),输出数据(A)进而写入输出寄存器(AR)。当时间段τ2结束后,不再有数据送入输出寄存器(AR),但此刻输出寄存器的功耗并不改变。编码单元继续生成输出数据,直到时间段τ1结束。本发明所述编码器可防止外部观察者根据编码器的当前功耗得出任何有关在输出寄存器(AR)中的生成编码输出数据的确切时间段的结论。
文档编号G06K19/073GK1174641SQ96191953
公开日1998年2月25日 申请日期1996年1月23日 优先权日1995年2月15日
发明者R·赖纳 申请人:西门子公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1