一种基于虚拟基因组的密码系统(VGC)技术方案

技术编号:4983757 阅读:338 留言:0更新日期:2012-04-11 18:40
本发明专利技术涉及一种信息安全技术,尤其是一种基于虚拟基因组的密码系统。本密码系统有两个互相匹配的密匙,一个是由随机DNA序列组成的虚拟基因组数据库(VGDB),另一个是VGDB中虚拟基因在2维微阵列中随机分布的位置表,即虚拟基因芯片(VDMC)。任意明文信息可自由地在VDMC上“书写”,也就是在VDMC微阵列上选择组成明文信息的“点”。这些挑选出来的“点”对应着VGDB中的虚拟基因,在这些虚拟基因中随机挑选一个小片段DNA序列,并用生物信息学常用工具BLAST或其它字符串搜索算法如KMP算法确认其在VGDB中唯一性。密文就是由这些小片段DNA序列组合而成。解密过程只需用这些小片段DNA序列对VGDB进行BLAST,即可找出组成明文信息的“点”,根据VDMC即可恢复出明文信息。密文中可以随意插入任意非VGDB序列而对解密没有任何影响,因而VGC是一个很好的信息隐藏系统。此外,VGC密匙可自我更新,从而实现不可破译的一次一密系统。本发明专利技术不仅可用于实时快速的秘密信息通信,也可用于数字签名与身份认证。

【技术实现步骤摘要】
一种基于虚拟基因组的密码系统(VGC)
本专利技术属于信息安全领域,特别是涉及一种基于虚拟基因组的密码系统。技术背景密码系统是信息安全的核心。传统的密码系统基本都是依赖于数学的密码系 统,也就是说它们只具有数学计算上的安全性。目前仅有所谓的一次一密的密码系统具 有理论上不可破译的安全性。但是,一次一密的密码系统由于存在密匙管理和分配问 题,因此实际上难以应用。现在密码学家们正在探索新的密码系统,比如量子密码和 DNA密码。由于DNA具有超大规模并行性、超低的能量消耗和超高密度的存储容量,DNA 现已被用于计算、数据储存以及密码学等领域。DNA密码在理论和实践上都远没有成 熟,有效的DNA密码系统并不多。目前,DNA密码系统并不特别重视编码方法,往往采 用G、A、T、C四个碱基字母编码二进制信息或者以3个碱基字母编码1个英文字母、数 字或标点等其它信息,这使得这种编码方式本身极容易被破解。DNA密码系统的安全性 自然也就不在于这种编码方式,而在于DNA操作本身的生物学困难问题。比如Celland等 专利技术了一种DNA微点技术。Gehani等设计了一个基于DNA的一次一密密码系统方案, 该方案虽然理论上是不可破译的,但也存在明显的缺陷构建这样一个一次一密乱码本 DNA不仅成本巨大,加密和解密费时费力,而且DNA操作容易污染,从而造成这种方案 实际上不可用。事实上,现行的基于DNA的密码系统都是直接把信息“写入” DNA分子,使得 这种编码方式非常脆弱,而生物学操作都要经过DNA的合成、提取、克隆、PCR扩增、 DNA测序、分子杂交等复杂过程,需要昂贵的实验仪器,同时还费时费力,此外还存在 DNA污染、PCR和测序有一定的出错几率、没有正对照(比如预先不知携带消息的DNA 分子的序列和片段大小)等问题。DNA密码系统所传递的DNA分子只能依赖物理运输 方式传送,不能通过电线、光纤和无线信道传输,因而不能用于实时通信,只能用于在 对实时性要求不高的大规模并行数据加密、安全数据存储,以及身份认证、数字签名和 信息隐藏等密码学应用领域。
技术实现思路
本专利技术的目的是要建立一种基于虚拟基因组的新型密码系统,该系统利用了生 物信息学的BLAST (Basic Local Alignment Search Tool)算法,避免了直接对DNA分子的生物学操作,不仅可以达到“一次一密”这样的理论上不可破译的安全性,又可以在电 子和网络媒体上实时快速地进行通信,同样也可以用于数字签名与认证。为了达到本专利技术的目的,“基于虚拟基因组的密码系统”采取如下步骤和方法 (图 1)(1)首先,产生大量随机DNA序列,并随机编号或命名(每个随机DNA序列编号或命名为一个虚拟基因),每个虚拟基因采用FASTA格式,所有这些虚拟基因组成 “虚拟基因组”,生成“虚拟基因组数据库”(Virtual Genome Database,VGDB)。也可 根据需要,方便地将“虚拟基因组数据库”转换成“虚拟蛋白质数据库”(Virtual Protein Database, VPDB)。( 然后,将“虚拟基因组数据库”中的所有虚拟基因随机分配在一个2维 阵列表上,得到一个虚拟基因分布位置表,该表即为“虚拟基因芯片”(VirtualDNA Microarray Chip, VDMC)。(3)信息发送方可在“虚拟基因芯片”(VDMC)上“书写”任何所要传递的 秘密信息,这种“书写”就是在拥有巨大点阵的VDMC上挑选用于组成秘密信息的“占”(4)由于VDMC上的每个点对应于“虚拟基因组数据库”(VGDB)中的一个虚 拟基因,因此在VDMC上挑选组成秘密信息的点,对应地就是找出了 VGDB中的虚拟基 因。(5)然后,从每个找出的虚拟基因中随机地挑选一个DNA序列小片段,利用 本地BLAST程序对VGDB进行相似性搜索,确认随机挑选的这个小片段DNA序列在 VGDB中是唯一的。也就是说,该小片段DNA序列与所挑选的虚拟基因是一一对应的, 在其它的虚拟基因中没有相同的DNA序列存在。(6)将所有这些随机挑选出来的DNA序列不分先后顺序地随机组合起来(每个 小片段DNA序列用逗号或其它间隔方式如空格、分号等等区隔开来)就成了密文信息。(7)信息接收方收到密文后,将以逗号等方式区隔开来的各小片段DNA序列对 VGDB进行BLAST,找出各自对应的虚拟基因,再在VDMC上把这些虚拟基因标记出 来,秘密信息自然就显现出来了。为了增强保密性能,可以采取如下两种方法(1)在密文中随机插入非VGDB数据库的随机DNA序列。由于密文中的非 VGDB数据库的随机DNA序列经BLAST分析不会得到任何结果,因此它们不会影响解 密结果。这种可随意性的插入冗余DNA序列的特性,使得本密码系统具有无限的密匙空 间。(2)密匙可以自我更新,VGC密码系统成为一次一密的密码系统。比如,随机 选择的小片段DNA序列处于某个虚拟基因的第i个位置,而该虚拟基因在VDMC上处于 第m行、第η列。那么,经过加密或解密之后,随机小片段序列从虚拟基因的第i位置 删除并重新插入到第(i+j)个位置,重排后的虚拟基因从VDMC上的第m行、第η列位置 上删除并重新插入到第(m+a)行、第(n+b)列位置上。j,a, b的数值发送方和接收方 可以自由地约定。因此,每次加密和解密过程完成之后,密匙就自动更新一次。这样, VGC密码系统就成了一次一密的密码系统。本专利技术具有如下显著的特点1,本密码系统的密匙包括VGDB和VDMC两个相互匹配的密匙。VGDB是 一个巨大的随机DNA序列即虚拟基因组数据库,具有巨大的密匙空间;VDMC是一个 VGDB中虚拟基因随机分布2维阵列表。2,密匙完全随机,密文也完全随机。3,本密码系统的算法非常简单,采用DNA序列的相似性搜索程序BLAST。也 可以采用其它字符串搜索算法,比如Knuth-Morris-Pratt(KMP)算法。4,密文可以随意插入非VGDB数据库的随机DNA序列。此外,由于虚拟基因 可由多个小片段DNA序列所“代表”,而密文中也可随机插入冗余DNA序列,因而同 样的明文使用同样的密匙加密,得到完全不同的密文。明文与密文之间不存在一一对应 的关系,因而通过明文或者密文,甚至明文与密文对无法对本密码系统造成有效攻击。5,密匙可以自我更新,成为一次一密的密码系统。发送与接收方共享一次密匙 后,可通过不断的密匙更新,得到一个全新的密匙,可完美解决对称密码系统密匙的第 一次共享问题。也就是说,密匙的第一次共享不一定要通过秘密渠道。6,由于信息加密过程经过VGMC的“书写”,明文信息可以在VGMC上以任 何形式进行书写,包括图像形式、将明文信息编码成其它密码形式(图2)、手书形式等 等。因此本密码系统可轻松实现信息的二次编码。7,本密码系统不仅适合于绝密的秘密通信,还可用于数字签名与认证。由第6 个特征可知,本密码系统可以实现真正的“手写式”数字签名与认证。由于本系统一次 一密的特点,数字签名将完全无法伪造。附图说明图1是“基于虚拟基因组的密码系统”(VGC)的示意图。以加密和解密一个 字母“T”为例。(1)是由随机DNA序列组成的虚拟基因组数据库(VGDB) ; (2)是与本文档来自技高网
...

【技术保护点】
一种基于虚拟基因组的密码系统(VGC),其特征在于按如下步骤和方法进行:(1)产生大量随机DNA序列,并随机编号或命名(每个随机DNA序列编号或命名为一个虚拟基因),每个虚拟基因采用FASTA格式,所有这些虚拟基因组成“虚拟基因组”,生成“虚拟基因组数据库”(Virtual Genome Database,VGDB)。(2)将VGDB中的所有虚拟基因随机分配在一个2维阵列表上,得到一个虚拟基因分布位置表,该表即为“虚拟基因芯片”(Virtual DNAMicroarray Chip,VDMC)。(3)信息发送方可在VDMC上“书写”任何所要传递的秘密信息,也就是在拥有巨大点阵的VDMC上挑选用于组成秘密信息的“点”。(4)由于VDMC上的每个点对应于VGDB中的一个虚拟基因,因此在VDMC上挑选组成秘密信息的点,对应地就是找出VGDB中的虚拟基因。(5)从每个找出的虚拟基因中随机地挑选一个DNA序列小片段,利用本地BLAST程序对VGDB进行相似性搜索,确认随机挑选的这个小片段DNA序列在VGDB中是唯一的。也就是说,该小片段DNA序列与所挑选的虚拟基因是一一对应的,在其它的虚拟基因中没有相同的DNA序列存在。(6)将所有这些随机挑选出来的DNA序列不分先后顺序地随机组合起来(每个小片段DNA序列用逗号或其它间隔方式如空格、分号等等区隔开来)就成了密文信息。(7)信息接收方收到密文后,将以逗号等方式区隔开来的各小片段DNA序列对VGDB进行BLAST分析,找出各自对应的虚拟基因,再在VDMC上把这些虚拟基因标记出来,秘密信息就显现出来了。...

【技术特征摘要】

【专利技术属性】
技术研发人员:曾纪晴张明永
申请(专利权)人:中国科学院华南植物园
类型:发明
国别省市:81[中国|广州]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1
相关领域技术
  • 暂无相关专利