Caesars Cipher
凯撒密码

(让上帝的归上帝,凯撒的归凯撒)

下面我们来介绍风靡全球的凯撒密码Caesar cipher,又叫移位密码。

移位密码也就是密码中的字母会按照指定的数量来做移位。

一个常见的案例就是ROT13密码,字母会移位13个位置。由’A’ ↔ ‘N’, ‘B’ ↔ ‘O’,以此类推。

写一个ROT13函数,实现输入加密字符串,输出解密字符串。

所有的字母都是大写,不要转化任何非字母形式的字符(例如:空格,标点符号),遇到这些特殊字符,跳过它们。

当你完成不了挑战的时候,记得开大招’Read-Search-Ask’。

这是一些对你有帮助的资源:

String.charCodeAt()
String.fromCharCode()

function rot13(str) { // LBH QVQ VG!// 请把你的代码写在这里var arr = new Array();for(var i =0,len = str.length;i<len;i++){if(str.charCodeAt(i)>64&&str.charCodeAt(i)<91){arr.push(String.fromCharCode((str.charCodeAt(i)+13)>90?(str.charCodeAt(i)+13-26):(str.charCodeAt(i)+13)));
}else{arr.push(String.fromCharCode((str.charCodeAt(i))));}}return arr.join("");
}rot13("SERR PBQR PNZC");  // 你可以修改这一行来测试你的代码

小结

String.charCodeAt()返回字符串第几个字符的unicode码
String.fromCharCode()返回unicode对应的字符串

JS:Caesars Cipher(凯撒密码)相关推荐

  1. Caesers Cipher (凯撒密码)

    1.写一个ROT13函数,实现输入加密字符串,输出解密字符串. 2.所有的字母都是大写(每个字母都有其对应的Unicode--UTF16值),不要转化任何非字母形式的字符(例如:空格.标点符号). 3 ...

  2. 凯撒密码pythin密码_凯撒密码术

    凯撒密码pythin密码 Caesar cipher is one of the well-known techniques used for encrypting the data. Althoug ...

  3. 什么是替换加密(凯撒密码)?原理是什么?

    首先了解一下什么是凯撒密码(Caesar Cipher) 凯撒密码 (英語:Caesar cipher), 或称凯撒加密.凯撒变换.变换加密,是一种最简单且最广为人知的加密技术. 凯撒密码是一种替换加 ...

  4. C语言凯撒密码字母向后偏移三位,凯撒加密解密(java字母移位)

    1.设计思想:加密就是将字符数据转化为ASC码表中的数字,a-w之间通过加3之后再转化为字符型输出,x-z之间通过转化为ASC码表中的数字后减去23再转化为字符型输出.解密就是将字符数据转化为ASC码 ...

  5. rust(58)-凯撒密码

    在密码学中,凯撒密码(英语:Caesar cipher),或称凯撒加密.凯撒变换.变换加密,是一种最简单且最广为人知的加密技术.它是一种替换加密的技术,明文中的所有字母都在字母表上向后(或向前)按照一 ...

  6. python凯撒密码实现_密码:凯撒密码及其Python实现

    python凯撒密码实现 Before we start let's some basic terminology... 在开始之前,让我们先介绍一些基本术语... The art and scien ...

  7. 凯撒密码和栅栏密码 - 密码学01

    凯撒密码和栅栏密码 让编程改变世界 Change the world by program 我们将会学到什么?! 这相信是大家广泛关注的话题,因为如果一开始给大家一个强大而震撼的目录,然后就是一屁股的 ...

  8. 【C基础练习题】Week9:凯撒密码 | 按空格切分字符串 | 单词折半拆分

    目录 第一题:凯撒密码 第二题:按空格切分字符串 第三题:单词折半拆分 第一题:凯撒密码 [百度百科]在密码学中,恺撒密码(英语:Caesar cipher),或称恺撒加密.恺撒变换.变换加密,是一种 ...

  9. python实现凯撒密码加密与解密(暴力求解)

    在密码学中,凯撒密码(英语:Caesar cipher),或称凯撒加密.凯撒变换.变换加密,是一种最简单且最广为人知的加密技术.它是一种替换加密的技术,明文中的所有字母都在字母表上向后(或向前)按照一 ...

最新文章

  1. 检查超时-Ajax之四
  2. 好强一个Julia!CSV数据读取,性能最高多出R、Python 22倍
  3. 第7周项目实践2.1 用只有尾节点指针rear的循环单链表实现队列算法库
  4. 微服务架构设计模式~交互方式
  5. 生态系统长期观测数据产品体系
  6. python decorator. decorator_Python 装饰器Decorator(一)
  7. Eclipse+Pydev环境搭建
  8. Django的MEDIA_ROOT和STATIC_ROOT
  9. android 滚动条 相关属性
  10. 大话IT第13期:2011年云计算市场年中盘点
  11. [C#][DevPress]手动添加控件中的子控件或者结构
  12. Jenkins+MSbuild+SVN实现快速搭建.net持续集成环境(构建、编辑、部署到服务器)
  13. python合并单元格居中_Python实现Excel自动分组合并单元格
  14. 重置单例对象Singleton Swift
  15. 暴力算法-BF(Brute Force)
  16. ANSYS预紧力螺栓连接钢结构节点分析实例(前处理基于HyperMesh)
  17. 为什么说跳槽加薪低于30%,等于在“降薪”?
  18. css中cale()函数的使用
  19. 一步一步理解Docker
  20. 《CSS世界》读书笔记(九)

热门文章

  1. 匠心铸梦 敏涵控股集团打造民族领军品牌
  2. Unity3D手游-横版ACT游戏完整源代码下载
  3. dev c++播放音乐MP3(win环境)亲测有效
  4. 神威太湖之光超级计算机的运算速度是,“神威·太湖之光”运算速度到底有多快?...
  5. 【装机吧】Win7电脑系统32位和64位区别(详细版)
  6. Redis Cluster 集群部署
  7. 谷歌教你25招构建一个优秀的移动网站
  8. win10c语言关机,技术员win10系统如何利用Shutdown.exe程序定时关机?
  9. python初级试题及答案
  10. 交互式电子沙盘GIS 虚拟数字沙盘M3D GIS教程