javascript - 什么是K9加密算法

标签 javascript java php algorithm encryption

我听说过 K9 加密,但我不知道它是哪种加密类型以及它是如何工作的。我只在一个网站上看到一个示例,但无法解码完整的逻辑。

加密: 8430727796730470662453

已解密:密码是移动的

算法使用数字关联,它使用类似的东西:

0 => _space
1 => ’
2 => ABC
3 => DEF
4 => GHI
5 => JKL
6 => MNO
7 => PQRS
8 => TUV
9 => WXYZ

那么,完整的逻辑是什么?有人可以用 JAVA 或 Javascript 或 PHP 提供加密代码吗。

编辑 1: 我的问题的来源是我必须解密这段代码:8430727796730470662453,我 strong> 必须加密一些东西。解密它的解决方案是了解K9加密,但我不了解。

编辑 2: 如果它是一种单向算法,他们是如何解决这个 challenge

最佳答案

我会说这不是一种加密算法,而是一种非常非常简单的哈希算法。

散列很容易。

  1. 从给定的字符串中取出一个字母
  2. 确定该字母的编号
  3. 将该数字添加到输出

不可能恢复原状,因为每个数字(0 除外)至少有 3 个可能的字符。

例如,上述示例的另一个可能的解密密码也是:UGE PAQRWOSE GR ONAGJF

这也是该算法的问题:与其他安全哈希算法不同,它极大地减少了为给定哈希找到有效密码所需的尝试次数,因为许多不同的输入可以产生相同的输出,所以尝试破解密码,即使实际密码错误,您也有更多机会找到正确的“哈希”。

示例:代替“THE PASSWORD IS MOBILE”,“UGE PAQRWOSE GR ONAGJF”和许多其他字母组合也将被接受为正确的密码。

因此,虽然这可能很好地教 children 有关散列的知识,但请不要使用这是一个真实世界的应用程序......


对于您所链接的挑战,没有真正的“单一答案”解决方案。如果不是欺诈,则任何导致给定数字的字母组合都必须被视为有效解决方案。当然,“THE PASSWORD IS MOBILE”是其中之一

没有密码必须是有效英文句子的附加信息,这允许许多可能的解决方案。

除非他们接受导致散列 8430727796730470662453 的任何字母组合作为解决方案,否则我不能认真对待该页面。

关于javascript - 什么是K9加密算法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40502690/

相关文章:

javascript - 如何使 JavaScript 钢琴上的第一个按钮正常工作?

javascript - 如何在循环中动态添加多个文本框

java - 是否有类似于 Callable 但带有参数的接口(interface)?

java - 无法让 Admob 在多种布局上显示?

javascript - jquery 到纯 Javascript 以保持图像的垂直节奏

java - 扩展ascii表的ReadLine和编码

php - 将 key=>value 对添加到具有条件的现有数组

javascript - $http.get 返回 index.html 代码,而不是来自 php 数据库调用的数据

Javascript fetch api 有效负载未传递

javascript - 从 Google Places API 调用中提取更多信息