资讯专栏INFORMATION COLUMN

位移密码算法(JavaScript)

Java_oldboy / 1216人阅读

摘要:问题著名的凯撒密码,又叫移位密码。移位密码也就是密码中的字母会按照指定的数量来做移位。写一个函数,实现输入加密字符串,输出解密字符串。要求所有的字母都是大写,不要转化任何非字母形式的字符例如空格,标点符号,遇到这些特殊字符,就跳过它们。

问题:

著名的凯撒密码Caesar cipher,又叫移位密码。

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

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

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

要求:

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

解答:
function rot13(str) { // LBH QVQ VG!
    var start = "A".charCodeAt(0);
    var end = "Z".charCodeAt(0);
    var strList = str.split("");
    var judge, replace;
    for(var i = 0; i < str.length; i++){
        judge = strList[i].charCodeAt(0);
        if(judge <= end && judge >= start){
            replace = start + (judge - start + 13) % 26;
            strList[i] = String.fromCharCode(replace);
        }
    }
    newStr = strList.join("");
    return newStr;
}

// Change the inputs below to test
rot13("SERR PBQR PNZC");
链接:

https://www.w3cschool.cn/code...

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/109942.html

相关文章

  • killBase系列 -- 密码学(二)

    摘要:的加密算法由于之前看过是由实现的。基于协议使用作为密钥交换算法加密算法密钥与初始向量的长度为算法总结端密钥算法套件端密钥算法套件,则,,将被优先返回的使用问题问题第一次使用的时候,不显示接口。 前言 因为排版不理想,所以直接用两个文档承载,有什么不便,还请担待。killBase -- 密码学(一) 传送门 附录 1. DES 详细加密过程 1. **对输入的密钥进行变换**。 ...

    kamushin233 评论0 收藏0
  • 16道初级脚本算法,你要挑战一下吗?

    摘要:设置首字母大写算法挑战返回一个字符串确保字符串的每个单词首字母都大写,其余部分小写。确认末尾字符算法检查一个字符串是否以指定的字符串结尾。删除数组中特定值算法挑战删除数组中的所有的假值。 在w3cschool上看到了这些初级算法题目,自己先尝试做了一下,不会的也会查看一下别人的借鉴一下思路,更多的帮助自己熟悉字符串和数组方法的应用.如果您有更好的解法,可以指出来还有中级算法题目和后面的...

    kumfo 评论0 收藏0
  • Golang 实现凯撒密码

    摘要:一凯撒密码加密代码思路基本思路设置明文和位移步长秘钥将明文转成小写,准备明文字节切片与密文切片循环将每个明文字符按照位移步长做位移,存入密文切片返回密文导入包包含字符串操作相关方法凯撒密码加密代码一凯撒密码加密将明文转成小写将明文字符串转成 一.凯撒密码加密代码思路 基本思路: 设置明文 和 位移步长(秘钥) 将明文转成小写,准备 明文字节切片 与 密文切片 循环将每个明文字符 按...

    el09xccxy 评论0 收藏0
  • 常用加密算法探寻

    摘要:在开发过程中,常常用到各种加密方法和算法,本文总结了几种常用加密方法的原理。非对称加密原理非对称加密算法需要两个密钥公开密钥和私有密钥。 在开发过程中,常常用到各种加密方法和算法,本文总结了几种常用加密方法的原理。 对称加密 showImg(https://segmentfault.com/img/bVbacxw?w=1128&h=468); 原理: 加密和解密数据使用同一个密钥,适...

    Yu_Huang 评论0 收藏0
  • killBase系列 -- 密码学(一)

    摘要:系列密码学二传送门密码学一基础密码学算法分类消息编码消息摘要类,类,对称密码非对称密码数字签名五元组明文原始信息。非对称密码包提供给,,等非对称加密算法。对称加密算法在分布式网络系统上使用较为困难,主要是因为密钥管理困难,使用成本较高。 前言 最近一场面试,面试官问了我 对称加密与非对称加密的问题,虽然曾经看过一些内容,但是没有系统的整理,所以当被问的时候,脑子里一片空白,没有回答上...

    tomato 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<