轨道
/
Emacs Lisp
Emacs Lisp
/
练习
/
埃特巴什密码
埃特巴什密码

埃特巴什密码

中等

说明

实现 Atbash 密码,这是一种起源于中东的古老加密系统。

Atbash 密码是一种简单的替换密码,它把字母表中的所有字母顺序颠倒过来,得到一个倒序的字母表。 第一个字母替换为最后一个字母,第二个替换为倒数第二个,依此类推。

拉丁字母表的 Atbash 密码如下:

Plain:  abcdefghijklmnopqrstuvwxyz
Cipher: zyxwvutsrqponmlkjihgfedcba

这是一种非常弱的密码,因为它只有一种可能的密钥,而且只是简单的单表替换密码。 不过,在它诞生的年代,这也许并不算问题。

密文按固定长度分组写出,传统的分组大小是 5 个字母,数字保持不变,标点符号则被去掉。 这样做是为了让人更难根据单词边界猜出内容。 所有文本都编码为小写字母。

示例

  • 对 test 编码得到 gvhg
  • 对 x123 yes 编码得到 c123b vh
  • 对 gvhg 解码得到 test
  • 对 gsvjf rxpyi ldmul cqfnk hlevi gsvoz abwlt 解码得到 thequickbrownfoxjumpsoverthelazydog

来源

Wikipedia链接会在新窗口或新标签页中打开
通过 GitHub 编辑 链接将在新窗口或新标签页中打开
Emacs Lisp Exercism

准备好开始 埃特巴什密码 了吗?

注册 Exercism,借助 96 个练习 和真人导师指导,学习并掌握 Emacs Lisp,全部免费。