“编码约定控制变换式”信息认证法和信息加解密法_2

文档序号:8546054阅读:来源:国知局
据12345-67890,-- >12位34型5辽。
[0038] 所述的"运算",是指"控制码"不同的编码值,将确定着对(对应被控的)"基本 码"进行不同的运算控制,所述的"运算"可以是算术运算,也可以是逻辑运算,这种运算控 制,其编码所对应的,可以是(单一的)运算符,也可以是(直接的)算式,所述的算式,可 以是单项式也可以是多项式。
[0039]例如:"控制码"1、2、3、4、5、6、……的编码:一、分别代表"加、减、乘、除"等算术运 算符,或"与、或、非"等逻辑运算符;二、或者分别代表"+6、一 11、X3、/2等"单步(单项) 运算;三、或"(m-1)X3、(m+3)/3、(m-1)X3+3等"多项式预算,等等。
[0040] 所述的"映射",是指"控制码"不同的编码值,将确定着对(对应被控的)"基本 码"进行不同的码值变换,这种"(数-数)映射",可以是固定式的,也可以是寻址式的,其 "映射"可以是一对一的,也可以是一位或者多位数据。
[0041] 所谓的"固定式",是指可以(依据"控制码"的编码)固定地映射为相应的值,不 同的"控制码"有不同的映射,但同一"控制码"下,其映射是一定的,例如:"控制码" =2, 则,"基本码" 1变3, 2变4, 3变5,4变6……。
[0042] 所谓的"寻址式",是指可以(依据"控制码"的编码)先在包括"基本码"在内的 整个"码串"中进行寻址,在其相应的位置中找出相应的值,作为变换的控制,这样,先经过 ("位置"相应的值"的)寻址后,再变换,可以使变化更加不确定。
[0043]例如:当"控制码" =8, 数据("码串") 为XXXXXXX16XXXXXXXXXXX,则第八位开始的值为地址,寻找到该地址 的内容(即对应编码)为16,再以控制编码为"16"的控制方法进行变换。如果第八位开始 的值为02,则以控制编码为"02"的控制方法进行变换。
[0044] 所述的"重复",是指"控制码"不同的编码值,将确定着对(对应被控的)"基本 码"进行不同的次数的重复变换。
[0045] 例如:"控制码" =2,则相应的"基本码"要重复变换2次。
[0046] 概括地说,以上这些控制方式,每一种不同编码的"控制码",都将(按人为定义的 方式)对(对应被控的)"基本码"进行一种(特定的)变换控制,而且由于"控制码"是 可以并列或嵌套使用,其编码值,在字符串(数据)中不同的编码值在不同的位置可以有不 同的变换约定【也即字符串中的字符不同位置上的不同的值代表不同的选择、分组、移位、 运算、映射或重复方式】,而且字符串(数据)中的"基本码""控制码"的划分也不是恒定不 变的,前面的控制不同,后面的划分就不同。
[0047] 这些"控制码"也可以是部分缺省的,变换时可以让"基本码"固定地映射为相应 的值、或者相应的控制方式。
[0048] 在数码中可以让一部分"控制码"缺省,不直接表现出来,这样,可以减少硬件开 销。(相对的可靠性会降低,不过部分缺省,不会造成问题。)
[0049] 例如:缺省"控制码",所有的码都直接是,5位一组:13156,70298,98367-- >13+56,70-98,98*67。
[0050] 这种变换的过程,是可以分步骤的,它可以有内层变换、中层变换、外层变换几个 步骤,也可以是缺省其中的一步或者几步。(如:在具体实施中,可以只有内层变换、中层变 换,而没有外层变换;或者只有中层变换,而没有内层变换、外层变换等等。)
[0051] 在内层变换中,"公码"和"母码"合并成"组合码";在"组合码"中定义出"控制码" 和"基本码";"控制码"可分为"预控码"和"外控码"。
[0052] "预控码"可以直接对"组合码"中的"基本码"进行控制,确定出"初选码"。(这 种约定的控制可以是码值的映射,也可以是模式选择、长度的选择或入口地址的选择。)
[0053] "初选码"可以包含有"中间过程码"和"重复次数控制码",(即"初选码"中的"基 本码"和"控制码")
[0054] 在中层变换中,"中间过程码"又可以再分为"控制码"和"基本码","控制码"依 据编码定义了的(相应的)控制方式,对"基本码"进行(选择、分组、移位、运算、映射或重 复)变换,相互间可以并列或者嵌套地进行,生成新的"中间过程码",
[0055] 生成的"中间过程码",又可以分为"控制码"和"基本码",重新按上述方法进行变 换,重复次数由"重复次数控制码"决定,最终生成"子码"。
[0056]在外层变换中,"子码"与"公码"合并成"联合码",
[0057] "联合码"可以直接输出,也可以"外控码"控制下变换成"混合码",
[0058]这种变换可以是(人为约定的)数据的"映射",也可以是数据的"移位"。
[0059] "编码约定控制变换"其理论依据类似于:对于函数F(x,y,z,……)=A,如果 知道函数F(x,y,z,……),一定可以推出结果"A",但如果知道结果"A",不可能推出函数 F(x,y,z,??????)。
[0060] 让"公码"和"母码"通过变换产生出"子码",如果使这种变换存在一定的约定关 系,则知道"公码"和"母码" 一定可以推出结果"子码",反过来知道了公开的"公码"与"子 码",不可能推出"母码",仅仅知道"公码"也不可能推出结果"子码"。(这类似于"密钥"与 "公钥"存在一定的函数关系,一定可以推出结果"密码",相反的,知道了公开的"公钥"与结 果"密码",不可能推出"密钥"。)
[0061]在"编码约定控制变换"系统中,"母码"在一般情况下是固定不变的、是静态的, 是"定码",也是需要保密的,这相当于是"密钥";"公码"每一次都是变化的、是动态,是"变 码",它是不需要保密,是公开的,这相当于是"明钥";这样,所产生的"子码"每一次也是不 同的、是动态的。
[0062]在变换过程中,所有的约定,都可以是公开的,只要"母码"是秘密的,系统就是安 全的。
[0063]补充说明一下的是,"公码"、"母码"、"基本码"、"控制码"等等各数码的名称、各方 法的名称,都是人为命名的,只是为了在叙述方便,是为了描述变换过程中不至于混淆,能 够相互区别而为的。(如"组合码""联合码"都指的是两个码的合并,是为区分"公码"与 "母码"的合并结果和"公码"与"子码"的合并结果而分别命名的。各种"码"本质上都是 长短不一的字符串,"控制码"、"基本码"只是在变换过程中可以区别为"约定控制"和"被 控制"的两种情形。)
[0064] 二、本发明为其中的"编码约定控制变换"式信息认证方法系统所采用的技术方案 如下:
[0065]进一步的,根据"数码约定控制变换"这一变换法则,构成"编码约定控制变换式" 信息认证方法,其系统具有"求证方"(甲方)和"验证方"(乙方)。【注:在本文中有(甲) 或(乙)的,分别表示是甲方或者乙方的产物】
[0066] "求证方"与"验证方"均需要预先持有"母码",双方均需要及时记录下最近使用过 的"序列号",如果有"名称码",则均需要记录。
[0067] 每次求证时,"求证方"先产生出"公码","公码"可以是特别设定的,也可以是随机 产生的。但其中的"序列码"有一定限制(如果"序列号"的设置是递增的话,下一次的"序 列号"必须大于上一次的"序列号";如果设置是递减的话,就必须是小于上一次的)。
[0068] 使"公码"与预先持有的"母码"组合成"组合码",然后通过"数码约定控制变换" 方法产生出"子码(甲)"子码(甲)"再和"公码",合并成"联合码"。
[0069] "求证方"的"联合码"还可以先在"外控码"的控制下,通过正向的变换(可以是 "数控正映射"或"数控正向移位"),产生出"混合码","混合码"和"外控码"一起发送到"验 证方",
[0070]"验证方"根据接收的"混合码"和"外控码",通过逆向的变换(由于两个过程是相 反的,需要的变换也是相反的,可以是"数控逆映射"或"数控逆向移位",详见后叙"洗牌式 数控移位法"的说明),反推出"联合码",并分离出"子码(甲)"与"公码"。
[0071] "验证方"再把分离出的"公码"与预存的"母码"通过"数码约定控制变换法"产 生出"子码(乙)",
[0072]比对"子码(乙)"的值和"子码(甲)"的值是否相等,以完成认证过程,如果相 等,则说明是正确的,如果不相等则说明是错误的。【有外层变换的情况】
[0073] 或者,"求证方"可以把"联合码"是直接输出而发送到"验证方",则"验证方"直接 把接收到的"联合码"分离出"子码(甲)"与"公码","公码"与预存的"母码"也通过"数 码约定控制变换法"产生出"子码(乙)"。
[0074] 比对"子码(乙)"的值和"子码(甲)"的值是否相等,以完成认证过程,如果相 等,则说明是正确的,如果不相等则说明是错误的。【没有外层变换的情况】
[0075]以上原理的根据是:知道"公码",不知道"母码"是不可能推出"子码"这一常识的。
[0076] 在信息验证系统中,"公码"中的"序列号"一般是不可少的,它主要是为了确保每 次验证是不被重复的。
[0077] 三、本发明为其中的"编码约定控制变换"式加解密法采用的技术方案如下:<
当前第2页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1