网络安全 / A LEAF IN THE GARDEN
其他密码
网络安全 · crypto / 古典密码。来自 Daily Learning 的学习笔记。
栅栏密码
栅栏密码是一种换位密码,通过将明文按一定的行数排列成栅栏状,然后按行读取密文。
流程
- 选择栅栏的行数
- 将明文分为 组
- 取出每组第 个字符,拼接为密文第 行
- 拼接所有行,得到最终密文
示例
明文: a test with railfence cipher
秘钥: 3行
分组
ate stw ith rai lfe nce cip her
取出每组第 个字符
i=1: a s i r l n c h
i=2: t t t a f c i e
i=3: e w h i e e p r
按行拼接
密文: asirlnchtttafcieewhieepr
曲路密码
曲路密码是一种换位密码,通过将明文按矩阵排列,然后按曲线路径读取密文。
流程
- 约定矩阵的行数 和列数
- 将明文从左到右、从上到下填入矩阵
- 按曲线路径(如螺旋、Z字形等)读取矩阵中的字符,拼接为密文
示例
明文: a test with curve cipher
秘钥: 5行4列
矩阵
| a | t | e | s |
|---|---|---|---|
| t | w | i | t |
| h | c | u | r |
| v | e | c | i |
| p | h | e | r |
按右下角开始,逐列向上的路径读取
密文: rirts ecuie hecwt pvhta