分享
 
 
 

平形加密法

王朝百科·作者佚名  2010-02-08
窄屏简体版  字體: |||超大  

“平形”加密法

——当事物失去特征时,你将无法描述,也无从辨别。

文章中,当某些字被替换成不同的字后,你如何理解文章的内容?两种可能:一是被误导,二是不知所云。当大量常用的字都被替换了,你能有办法复原文章的内容吗?答案是:No passable!因为它很可能是另一篇文章。

加密原理

用一个字串(密钥)循环平移文章中每一个字,使得有含义的文章变成无含义或它义的文字。由于平移后密文仍为正常的文字,所以密文仍可以像普通文本一样正常传输、压缩、甚至加密。

[注]:这一般仅适用于字含义的加密,对于含有逻辑结构信息的代码文档意义不大。

加密要素

原文 + 密钥 + 字表 = 密文

字表:值的集合,用于枚举需要加密的字符。变数:字、字数、字序。

算法约定

(以最简单为原则)

密钥为值数组,数组单元称为密钥字,单元值称为钥值。

原文中的处于字表内的字称为待密字,该字在字表中的序号称为字值。

逐字地,用密钥钥值对待密字值加值变换,取模值为替换字在字表中的位置,替换字即是密字。

密钥值串循环使用(连续,无跳跃),直至待密字处理完毕。

补充说明

待密字值其实也可以直接采用字符本身的值,同时约定一个固定的字表,如中文GB2312的一级简码区汉字,这样会使得计算更简单。但如此字值就与编码有关,同时字值也必须是连续的。为通用性,此设计字表为任意的字集合,字值取它在字表中的序号。

字表方案

整集

即原始文本包含的所有字符。依不同的文档而有区别,但一般地,英文文本应该肯定包含[a-zA-Z]52个字母。

特集

任意指定的字集。可能仅包含一些用户觉得必要的字的一个小的集合。或者,随机的取整集的一部分。(推荐)

标点集

文章中,常用标点和空格(西方语言)起着断句和分词的作用,这明确地表达了文本的结构信息,明显地,密文应该隐藏这一信息。所以作为推荐,这是一个应该必须包含的集合:

半角空格、半全角逗号[,,]、句号[.。],计5个字符。

可选的,还可以包含:

冒号(::)、引号("“”)、分号(;;)、顿号(、)、书名号(《》)等等。

另外,根据文本的特点或需要,还应该包含如下有明显前后关联意义的符号:

->标示前后可能是数字的百分号(% %)、运算符(+ - * /)、货币符号;

->在现代信息世界里传达URI信息的正斜杠(/)、邮件地址符(@);

->代码世界中常用的逃逸字标识符反斜杠()、xml实体标识符(&)等等。

全集

包括文档所属语言的全部有效字符,不推荐。它除性能不佳外,加密效果(迷惑性)也不好。

子集

相对于规范的编码系统命名,如中文的一级简码区汉字。

补充说明

由于算法极为简单,如果字表公开,我们可以直接从原文和密文得出密钥。而在某些情况下,字表是应该公开和通用的。所以,我们不应该去加密已经被知道原文的信息,因为这样就等于告知了我们用于变形的密钥(呵呵,当然,既然原文已经被知晓,那也就没有去加密的必要了)。

加密的原始信息应该是破解者未知的,或是可变的。如银行帐号,它可能由可变的数字和固定的前缀字符组成,而前缀字符肯定广为人知,如果对这固定的前缀字符也加密,同时用于该算法的字表为公用,当破解者怀疑你的密文是银行帐号时,他就可以轻易地解出用于这几个固定字符的密钥。

应用提示

1、不推荐字表中包含换行符。

换行符普遍存在于一般文本中,它让文本看起来清晰而有条理,但由于字符变换的随机性,所以会有大量的换行符被替换成非换行符,使得变形后的密文行数大量减少。这样既使得文本杂乱,同时也降低了密文的迷惑性。

如果换行符不在替换的候选字符中(字表),我们甚至可以编辑密文——如删掉多余的空行而不会影响后来的解密过程。(当然,可以删掉所有不在字表中的字符而对解密无影响,但要记住众多不在字表中的字符应该是困难的,而且也好像无此必要?)

2、加密后的文件大小可能会有些变化(虽然字符数没变),它取决于文本的编码环境和替换字有哪些。

在多字节编码环境中(如MBS或UTF-8),如果我们在一个字表中同时包含单字节字符和多字节字符,则对于单字节字符较多的原始文本,变形后的密文文件会增大。而对于多字节字符占绝大部分的原始文本,则很可能密文文件会稍小一些(不会小太多,因为相对于单字节字符,多字节字符数量要庞大得多)。

所以,如果很在意文件的大小,可以另外定义一个只包含单字节字符的字表,而多字节字符定义在另一个字表中,两者不同字。然后对原始文本参照两者各处理一次即可。这样,文件大小基本上就不会有多少变化了。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有