JS:Caesars Cipher(凯撒密码)
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(凯撒密码)相关推荐
- Caesers Cipher (凯撒密码)
1.写一个ROT13函数,实现输入加密字符串,输出解密字符串. 2.所有的字母都是大写(每个字母都有其对应的Unicode--UTF16值),不要转化任何非字母形式的字符(例如:空格.标点符号). 3 ...
- 凯撒密码pythin密码_凯撒密码术
凯撒密码pythin密码 Caesar cipher is one of the well-known techniques used for encrypting the data. Althoug ...
- 什么是替换加密(凯撒密码)?原理是什么?
首先了解一下什么是凯撒密码(Caesar Cipher) 凯撒密码 (英語:Caesar cipher), 或称凯撒加密.凯撒变换.变换加密,是一种最简单且最广为人知的加密技术. 凯撒密码是一种替换加 ...
- C语言凯撒密码字母向后偏移三位,凯撒加密解密(java字母移位)
1.设计思想:加密就是将字符数据转化为ASC码表中的数字,a-w之间通过加3之后再转化为字符型输出,x-z之间通过转化为ASC码表中的数字后减去23再转化为字符型输出.解密就是将字符数据转化为ASC码 ...
- rust(58)-凯撒密码
在密码学中,凯撒密码(英语:Caesar cipher),或称凯撒加密.凯撒变换.变换加密,是一种最简单且最广为人知的加密技术.它是一种替换加密的技术,明文中的所有字母都在字母表上向后(或向前)按照一 ...
- python凯撒密码实现_密码:凯撒密码及其Python实现
python凯撒密码实现 Before we start let's some basic terminology... 在开始之前,让我们先介绍一些基本术语... The art and scien ...
- 凯撒密码和栅栏密码 - 密码学01
凯撒密码和栅栏密码 让编程改变世界 Change the world by program 我们将会学到什么?! 这相信是大家广泛关注的话题,因为如果一开始给大家一个强大而震撼的目录,然后就是一屁股的 ...
- 【C基础练习题】Week9:凯撒密码 | 按空格切分字符串 | 单词折半拆分
目录 第一题:凯撒密码 第二题:按空格切分字符串 第三题:单词折半拆分 第一题:凯撒密码 [百度百科]在密码学中,恺撒密码(英语:Caesar cipher),或称恺撒加密.恺撒变换.变换加密,是一种 ...
- python实现凯撒密码加密与解密(暴力求解)
在密码学中,凯撒密码(英语:Caesar cipher),或称凯撒加密.凯撒变换.变换加密,是一种最简单且最广为人知的加密技术.它是一种替换加密的技术,明文中的所有字母都在字母表上向后(或向前)按照一 ...
最新文章
- 检查超时-Ajax之四
- 好强一个Julia!CSV数据读取,性能最高多出R、Python 22倍
- 第7周项目实践2.1 用只有尾节点指针rear的循环单链表实现队列算法库
- 微服务架构设计模式~交互方式
- 生态系统长期观测数据产品体系
- python decorator. decorator_Python 装饰器Decorator(一)
- Eclipse+Pydev环境搭建
- Django的MEDIA_ROOT和STATIC_ROOT
- android 滚动条 相关属性
- 大话IT第13期:2011年云计算市场年中盘点
- [C#][DevPress]手动添加控件中的子控件或者结构
- Jenkins+MSbuild+SVN实现快速搭建.net持续集成环境(构建、编辑、部署到服务器)
- python合并单元格居中_Python实现Excel自动分组合并单元格
- 重置单例对象Singleton Swift
- 暴力算法-BF(Brute Force)
- ANSYS预紧力螺栓连接钢结构节点分析实例(前处理基于HyperMesh)
- 为什么说跳槽加薪低于30%,等于在“降薪”?
- css中cale()函数的使用
- 一步一步理解Docker
- 《CSS世界》读书笔记(九)
热门文章
- 匠心铸梦 敏涵控股集团打造民族领军品牌
- Unity3D手游-横版ACT游戏完整源代码下载
- dev c++播放音乐MP3(win环境)亲测有效
- 神威太湖之光超级计算机的运算速度是,“神威·太湖之光”运算速度到底有多快?...
- 【装机吧】Win7电脑系统32位和64位区别(详细版)
- Redis Cluster 集群部署
- 谷歌教你25招构建一个优秀的移动网站
- win10c语言关机,技术员win10系统如何利用Shutdown.exe程序定时关机?
- python初级试题及答案
- 交互式电子沙盘GIS 虚拟数字沙盘M3D GIS教程