柱形密码

柱形密码是利用密钥重新排列明文中的字母位置的一种加密方法。

【加密原理】

1、比如我们要对“tomorrow is another day”加密,密钥是“KEY”。首先将密钥循环对应明文,列出一个表格:

2、然后根据KEY三个密钥字母分别对应的明文字母,列出一个柱状表格。例如:Y对应明文M、R、I、N、H、D,则依序排成一列:

3、将密钥按照字母顺序表重新排列,相应的明文一列也交换顺序。例如:KEY按照字母顺序表变成EKY,表格转换如下:

将表格中的明文进行纵向排列,得到密文:orwatrytoosoeamrinhd

【解密原理】

1、首先要知道密钥为KEY,共有3个字符。密文为orwatrytoosoeamrinhd,共有20个字符。

明文每列字符数=密文的长度20/密钥长度3= 6,余数2,不能整除的话结果还需要+1,所以每列字符数为7。

2、把密钥KEY按字母顺序排列为EKY,然后将密文每列7个重新排列:

3、把密钥按照原本单词顺序排列:

4、将表格中的密文进行横向排列,得到明文:tomorrowisanotherday.

【代码实现】

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1. 隐写术 Steganography 隐写术是指首先用传统加密算法对数据进行加密,然后用某种方法将加密后的数据...
    BlueHeart0621阅读 1,071评论 0 1
  • 概述 ​ 密码学是研究如何保护信息安全性的一门科学,涉及数学、物理、计算机、信息论、编码学、通讯技术等学科,已经在...
    卿酌南烛_b805阅读 1,755评论 0 0
  • 珍惜现在的资源和时间,坚持让编程改变世界 密码学 信息理论之父:克劳德 香农论文《通信的数学理论》 如果没有信息加...
    极客圈阅读 3,315评论 0 2
  • 本文由币车HIT(biche.yaofache.com)大V养成计划支持 数据与安全息息相关,没有任何一项技术是永...
    哈啦呼噜阅读 866评论 0 1
  • 密码学 基本概念 完整性---信息仅能被合法用户访问,不能泄漏给非法用户,实体或过程 保密性---自由只有在授权方...
    styxx阅读 1,397评论 0 0