【发布时间】:2018-11-05 21:24:24
【问题描述】:
早安/下午/晚安伙计们!
所以我被分配了以下任务:制作一个Scratch(:/不是最有趣的语言lol)程序,该程序接受输入字符串并输出密码。但是,密码应该可以使用相同的种子进行复制。我做了一些搜索,发现this article 说这叫做散列。酷,我很确定这是我需要做的。
这就是问题所在:使用它来生成密码。所以我的代码可以生成一个唯一的随机密码here。我应该能够轻松适应。
我目前的思考过程是:如果我将字符的 ASCII 值乘以素数,然后乘以它的字符索引(类似于(64 * 239 * 1) + (85 * 239 * 2)),我应该得到大多数字符串的唯一编号(正确的?)。然后我将它们相加并使用该数字做某事并生成一个 6-7 个字符的密码。
我能做些什么来获取这个基本哈希并获得一个 6-7 个字符的密码(我的字符集的 a-z、A-Z、!、$ 和 %,但不要担心那部分)。更何况,我如何在 Scratch 中做到这一点?
谢谢!
【问题讨论】:
-
您实际上是被要求编写和实现自己的哈希算法,并且(我假设)其复杂性仅限于您自己的想象。如果您不需要固定长度,请不要尝试,因为它非常复杂,只需执行
if char = a, encode as b方法即可。在 Scratch 中编写固定长度的算法非常困难,但我个人认为你走在正确的轨道上。如果您确实需要固定长度,this answer 或许可以为您提供帮助。 -
没关系,我不一定需要固定长度,但我不想要数字。事实上,我根本不想要数字。我想使用该数字并将其转换为任何字符 a-Z、!、$ 和 %...我是否完全针对此输出采取了错误的方法?
-
你输入的字母是什么?
-
@JimMischel a-z, A-Z, !, $, and % for my charset
标签: hash password-hash mit-scratch