有鉴于此,本发明的目的在提供一种数据加密的方法与系统,以保护文 章内容不被轻易盗用。
基于上述目的,本发明提供一种数据加密的方法。首先,利用一中文断 词方法将文章之内容予以断词,并进行词性判断以标注词性。然后,产生文 章的加密信息,包括将要嵌入文章当中的水印信息(如版权信息)转换成对 应的位字符串以嵌入文字内,以及任意选取一质数,并利用一个二次剩余的 数学定理产生一个二次剩余表,作为选取加密词语的判断标准。
接下来,选取要进行加密的词语及其同义词,其依据相关词语筛选规则 筛选不适合作为嵌入水印的词语。然后进行同义词替换。当找出适合作为嵌 入水印的词语后,便可将水印的位字符串,以一个位为单位,依照顺序嵌入 至选出的词语中,其嵌入的原则为将词语的剩余对映值与欲嵌入水印的位值 比较,当结果不同时即进行同义词的替换。最后,完成前述步骤后即可产生 嵌入水印信息的密文。
本发明另外提供一种数据加密的系统,其包括一词语处理单元、一加密 信息产生单元、一词语选取单元、一同义语替换单元以及一密文产生单元。 词语处理单元利用一中文断词方法将文章的内容予以断词,并进行词性判断 以标注词性。加密信息产生单元产生文章的加密信息,包括将要嵌入文章当 中的水印信息(如版权信息)转换成对应的位字符串以嵌入文字内,以及任 意选取一质数,并利用一个二次剩余的数学定理产生一个二次剩余表,作为 选取加密词语的判断标准。
接下来,词语选取单元选取要进行加密的词语及其同义词其依据相关词 语筛选规则筛选不适合作为嵌入水印的词语。然后,同义语替换单元进行同 义词替换。当找出适合作为嵌入水印的词语之后,便可将水印的位字符串, 以一个位为单位,依照顺序嵌入至选出的词语中,其嵌入的原则为将词语的 剩余对映值与欲嵌入水印的位值比较,当结果不同时即进行同义词的替换。 最后,密文产生单元产生嵌入水印信息的密文。
附图说明
图1为显示本发明资料加密方法的实施步骤
流程图。
图2显示本发明数据加密系统的架构示意图。
符号说明:
210~词语处理单元
220~加密信息产生单元
230~词语选取单元
240~同义语替换单元
250~密文产生单元
为让本发明的上述和其它目的、特征和优点能更明显易懂,下文特举出 较佳
实施例,并配合附图,作详细说明如下。
本发明提供一种数据加密方法与系统。
本方法将水印植入文件中,以达到保护文件的目的。利用本发明的
算法, 依据所要隐藏的信息将文件中的内容加密成为语意上与原文无异的密文,其 实施流程如下所述。
图1显示本发明资料加密方法的实施步骤流程图。
欲保护的文件内容根据该水印植入程序,将数字水印嵌入于文字中而成 为一密文。假设一文章内容为:
『Mobile Content新的价值链中,利润的分配亦因内容整合商由谁担任 而有所不同。如由系统业者扮演内容整合商/发行商的
角色,除可赚取其担任 内容整合商/发行商所应享的利润,因掌握账单系统,亦能赚取代收帐款的费 用,在此情形下,系统业者将赚取最多的利润。』
在步骤S1中,将文章的内容予以断词,并进行词性判断以标注词性。利 用一中文断词方法将文章内容予以断词及进行词类标记,其断词后的结果如 下:
『。(PERIODCATEGORY)Mobile(FW)Content(FW)新(VH)的 (DE)价值(Na)链(Na)中(Ng),(COMMACATEGORY), (COMMACATEGORY)利润(Na)的(DE)分配(VD)亦(D)因(Cbb) 内容(Na)整合商(Na)由(P)谁(Nh)担任(VG)而(Cbb) 有所(VJ)不同(VH)。(PERIODCATEGORY)。(PERIODCATEGORY)如 (Cbb)由(P)系统(Na)业者(Na)扮演(VC)内容(Na)整 合商(Na)/(FW)发行商(Na)的(DE)角色(Na), (COMMACATEGORY),(COMMACATEGORY)除(P)可(D)赚取(VC) 其(Nep)担任(VG)内容(Na)整合商(Na)/(FW)发行商(Na) 所(D)应(D)享(VJ)的(DE)利润(Na),(COMMACATEGORY), (COMMACATEGORY)因(Cbb)掌握(VC)账单(Na)系统(Na), (COMMACATEGORY),(COMMACATEGORY)亦(D)能(D)赚取(VC) 代收(VC)帐款(Na)的(DE)
费用(Na),(COMMACATEGORY), (COMMACATEGORY)在(P)此(Nep)情形(Na)下(Ng), (COMMACATEGORY),(COMMACATEGORY)系统(Na)业者(Na)将(D) 赚取(VC)最多(VH)的(DE)利润(Na)。(PERIODCATEGORY)』
在步骤S2中,产生文章的加密信息,其分成两个部分。第一部份是将要 嵌入文章当中的水印信息(如版权信息)转换成对应的位字符串(Bit String) 以嵌入文字内。转换成位字符串的方式可采用Unicode、ASCII、Big5等转换 方式,举例来说,版权信息为『ACT』,经过位字符串转换后变为『00101』。
第二部分是任意选取一质数(假设为10007),并利用一个二次剩余 (Quadratic Residue)数学定理产生一个二次剩余表(Quadratic Residue Table),作为选取加密词语的判断标准。如表一所示,二次剩余表中记录从1 到所选取质数范围内,相应每一数值的剩余对映值,其以0或1表示。有关 加密词语的判断方式叙述于下文中。 1 2 3 4 5 6 7 8 9 10 11 12 ... 10007 剩余对映值 1 1 1 1 0 1 0 0 1 0 1 1 ... 0
表1
在步骤S3中,选取要进行加密的词语及其同义词。在取得上述的断词结 果及二次剩余表后,依据下列规则筛选不适合作为嵌入水印的词语:(1)剔除 文章中的标点符号。(2)剔除经过断词程序后,取得的词语长度为1者,即为 一个中文字。(3)剔除词性为FW的词语(亦即该词语为英文)。(4)剔除没有 同义词的词语。(5)词语虽具有同义词,但将该词语与其同义词依序进行其位 字符串逻辑运算(包括XOR运算、AND运算、OR运算、+运算、-运算以及*运 算)后,并且根据运算结果查找二次剩余表所得剩余对映值相等时,也需剔 除该词语。
举例来说,一词语为『分配』,其经过位字符串转换之后所得的位字符串 分别为『分:10011』和『配:10101』。根据一同义词库可取得『分配』的同 义词『分发』,其经过位字符串转换之后所得位字符串分别为『分:10001』 和『发:11101』。接着对两词语的位字符串进行逻辑运算,首先进行XOR运 算,『分配』位经过运算后可得『分配:00110』,转换为十进制后的数字为『6』, 『6』除以密钥的值『10007』所得剩余为『6』,查找二次剩余表可得剩余对 映值为『分配:1』。而『分发』位经过运算后可得『分发:01100』,转换为十 进制后数字为『12』,『12』除以密钥的值『10007』所得剩余为『12』,查找 二次剩余表可得剩余对映值为『分发:1』。由上述运算结果可得两词语剩余 对映值相同,因此接着进行AND运算,若运算结同样得到相同剩余对映值, 再接着进行OR运算,以此类推,直到取得两不同剩余对映值,或者执行全部 逻辑运算后仍未取得两不同的剩余对映值时,则剔除该词语。
另外,要注意的是,词语不限定在二个字,包含三个字以上的词语也可。 如某一词语为『
冰箱』,其同义词为『电冰箱』,同样需将『电』『冰』『箱』 三个字分别转换成位字符串以进行逻辑运算。
执行词语的选取步骤后,可得到适合作为嵌入水印信息的词语、其相对 应的同义词以及查找二次剩余表所得的剩余对映值,如表2所示。 词 同义词 剩余对映值:1 剩余对映值:0 分配(VD) 发给、分发 分配、发给 分发 赚取(VC) 创利、赢利、盈利、 创收 盈利、创收 赚取、赢利、创 利 情形(Na) 情况、状况、状态、 条件 情形、状况、条 件 情况、状态
表2
在步骤S4中,进行同义词替换。当找出适合作为嵌入水印的词语之后, 便可将水印的位字符串,以一个位为单位,依照顺序嵌入至选出的词语中, 其嵌入的原则为将词语剩余对映值与欲嵌入之水印的位值比较,当结果不同 时即进行同义词的替换。
例如,以下列文章来说:
『Mobile Content新的价值链中,利润的【分配(1,0)】亦因内容整合 商由谁担任而有所不同。如由系统业者扮演内容整合商/发行商的角色,除可 【赚取(0,0)】其担任内容整合商/发行商所应享的利润,因掌握账单系统, 亦能【赚取(0,1)】代收帐款的费用,在此【情形(1,0)】下,系统业者将 【赚取(0,1)】最多的利润。』
其中,【分配(1,0)】的1表示词语『分配』的剩余对映值,而要植入的 水印之位值为『0』,因两者位值不同,故要进行同义词替换。另一方面,【赚 取(0,0)】的剩余对映值与要植入的水印位值皆为『0』,故不需进行同义词 替换。
此外,一个词语可能有一个或以上的同义词,本方法利用下述规则来选 择替换词。
首先,一个词语可能有多个同义词,在选择同义词替换时,需选择与原 来词语剩余对映值不同的。其次,一个词语可能有多种词性,在选择同义词 替换时,需要考虑词语在文章中的词性,以免将名词的同义词替换成动词。 最后,相同词性的同义词也可能有一个或以上,此时必须利用平衡语言资料 库来选择惯用(连用)性高者作为替换的同义词。
因此,以上面的例子而言,经过上述选择替换词规则后,可得结果如下:
『Mobile Content新的价值链中,利润的【分配(分发)】亦因内容整 合商由谁担任而有所不同。如由系统业者扮演内容整合商/发行商的角色,除 可【赚取(0,0)】其担任内容整合商/发行商所应享的利润,因掌握账单系统, 亦能【赚取(盈利、创收)】代收帐款的费用,在此【情形(情况、状态)】 下,系统业者将【赚取(盈利、创收)】最多的利润。』
其中,【分配(分发)】表示词语『分配』可替换之同义词为『分发』。
在步骤S5中,产生嵌入水印信息的密文。经过前述四个步骤后,将文章 中可予以加密的词语进行同义词替换,加密后的密文结果(斜体字部分为水 印隐藏之处)如下所示:
『Mobile Content新的价值链中,利润的「分发」亦因内容整合商由谁 担任而有所不同。如由系统业者扮演内容整合商/发行商的角色,除可「赚取」 其担任内容整合商/发行商所应享的利润,因掌握账单系统,亦能「盈利」代 收帐款的费用,在此「状态」下,系统业者将「盈利」最多的利润。』
图2为显示本发明数据加密系统架构示意图。本系统包括一词语处理单 元210、一加密信息产生单元220、一词语选取单元230、一同义语替换单元 240以及一密文产生单元250。
词语处理单元210利用一中文断词方法将文章内容予以断词,并进行词 性判断以标注词性。加密信息产生单元220产生文章的加密信息,其分成两 个部分。第一部份是将要嵌入文章当中的水印信息(如版权信息)转换成对 应的位字符串以嵌入文字内。第二部分是任意选取一质数,并利用一个二次 剩余数学定理产生一个二次剩余表,作为选取加密词语的判断标准。
接下来,词语选取单元230选取要进行加密的词语及其同义词。在取得 上述的断词结果及二次剩余表后,依据下列规则筛选不适合作为嵌入水印的 词语:(1)剔除文章中的标点符号。(2)剔除经过断词程序后,取得词语长度 为1者,即为一个中文字。(3)剔除词性为FW的词语(即该词语为英文)。(4) 剔除没有同义词的词语。(5)词语虽具有同义词,但将该词语与其同义词依序 进行其位字符串的逻辑运算(包括XOR运算、AND运算、OR运算、+运算、- 运算以及*运算)后,并且根据运算结果查找二次剩余表所得剩余对映值相等 时,亦需剔除该词语。执行词语的选取步骤后,可得到适合作为嵌入水印信 息的词语、其相对应的同义词。
然后,同义语替换单元240进行同义词替换。当找出适合作为嵌入水印 的词语之后,便可将水印的位字符串,以一个位为单位,依照顺序嵌入至选 出的词语中,其嵌入的原则为将词语剩余对映值与欲嵌入水印的位值比较, 当结果不同时即进行同义词的替换。最后,密文产生单元250产生嵌入水印 信息的密文。
本发明将水印信息隐藏于欲保护的文章中,即使利用光学文字辨识或打 字等方法盗用,仍可被检测出来。此外,本发明亦可应用于信息隐藏及信息 保护上,当在传递受保护的文件时,其中隐含的秘密信息不会被察觉。此外, 保密信息若被破坏,则受到保护的数据亦会遭到毁损,因此可降低被盗用的机会。