scratch字符串加密(简单的字符串加密处理)

叨叨

雨声飕飕催早寒,胡雁翅湿高飞难。 ——杜甫

也许秋天的雨有更多的故事;但和今天的题目没有太大关系;今天来一到简单加密的题目;

scratch字符串加密(简单的字符串加密处理)(1)

题目

编写一个函数nico/nico();有两个参数:

  • key 由不重复的字母数组组成;比如a3sc;
  • message 需要加密的字符串;

用key 对message 进行加密;

下面详细说明加密规则:

  • 首先根据key创建一个数字键,数字键按照字母顺序指定每个字母的位置。比如key是:“crazy” 按字母顺序排序 是“ acryz”所以得到对应的数字键是 23154 (对于crazy各字母排序);
  • 然后用得到的数字键进行加密字符串 “secretinformation” ;对message进行分组;的到下面的结果:

2 3 1 5 4 --------- s e c r e t i n f o r m a t i o n

然后分别对各组进行排序:

1 2 3 4 5 --------- c s e e r n t i o f a r m i t o n

然后重新组合:也就得到了加密的结果:"cseerntiofarmit on "(主要不要忽略空格);

为了方便测试多给出几个例子:

nico("crazy", "secretinformation") => "cseerntiofarmit on " nico("abc", "abcd") => "abcd " nico("ba", "1234567890") => "2143658709" nico("key", "key") => "eky"

分析

也许这个题目不需要分析,按照步骤走就好。

  1. key 排序;
  2. message 分组;排序;
  3. 重组;

但有一点需要注意;加密结果的长度是固定的 key的N倍;空白字符不能去掉;

结尾

有了加密,是不是还得有解密呢?如果有兴趣可以试一试解密;

也许没必要解密;就像有些话解密了也没人懂;

又或许它本来就没必要加密;

至于代码;如需要请留言;

scratch字符串加密(简单的字符串加密处理)(2)

,

免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com

    分享
    投诉
    首页