当前位置: 首页 > 知识库问答 >
问题:

在javascript中隐藏哈希数

卫财
2023-03-14

我正在尝试使用手指打印在我的客户端,并得到了这段代码作为一个更大的代码的一部分。

function checksum(str) {
    var hash = 5382,
        i = str.length;

    while (i--) hash = (hash * 33) ^ str.charCodeAt(i);

    return hash >>> 0;
}

正如您所看到的,散列是显而易见的。你能告诉我如何或什么实现使用,以便我可以隐藏或任何可以掩盖散列=5382。谢谢你。

共有1个答案

方楷
2023-03-14

如果你用base64编码,但任何人都可以轻松解码。你的大麻有多敏感?

str = "The quick brown fox jumps over the lazy dog";
b64 = btoa(unescape(encodeURIComponent(str)));
str = decodeURIComponent(escape(window.atob(b64)));

输出将为vghlihf1awnrigjyb3duigzvecbqdw1wcybvdmvyihrozsbsyxp5igrvzw==

如果您使用的是PHP,您只需要base64_encode()和base64_decode()来处理。例如,您可以使用编码值隐藏一个输入,然后获得它的val,并使用我给您的最后一行。

Base64 PHP http://PHP.net/manual/en/function.base64-encode.PHP和Base64 JAVASCRIPT https://developer.mozilla.org/pt-br/docs/web/api/windowbase64/atob。或者您可以加密它的内容,然后在服务器端解除加密。下面是一个加密/解密数据(PHP)的小类:

<?php
namespace Company\Security;

/*
 *   @description: Simple class to wrap crypt function calls
 *   @author: Marco A. Simao
 */

class Crypto {

/*
 * returns encrypted data with iv appended at the begining of the string 
 */
public static function encrypt($data, $key)
{
    $iv = openssl_random_pseudo_bytes(16);

    $c = openssl_encrypt($data, 'AES-128-CBC', $key, OPENSSL_RAW_DATA, $iv);

    return $iv . $c;
}

/*
 * returns decrypted data. Expects 16 first bytes of data to be iv table.
 */
public static function decrypt($data, $key)
{
    return openssl_decrypt(substr($data, 16), 'AES-128-CBC', $key, OPENSSL_RAW_DATA, substr($data, 0, 16));
}
}

您需要一个Javascript中的解密,比如:如何使用Web Crypto API来解密用OpenSSL创建的文件?

 类似资料:
  • 我正在使用Google Maps API,觉得除了大量的语句之外,还有一种更好的方法来搜索全景图像。我认为使用外部哈希表会更有效,更容易维护。每个图像都有一个唯一的,我可以定义它。阅读哈希表,我相信我的说法是正确的,我可以做一个表和完善的函数,以获得我需要的数据,在恒定的时间。有没有一个很好的资源如何构建这个?我对哈希一点经验都没有。 我的逻辑是这样的:每个图像都以的形式保存在一个目录中,其中是一

  • 问题内容: 当大小超过maxthreshold值时,如何在哈希表或哈希表中进行重新哈希处理? 是否所有对都已复制到新的存储桶阵列中? 编辑: 重新哈希后,同一存储桶(位于链接列表中)中的元素会发生什么情况?我的意思是说,他们在重新哈希处理后会留在同一个桶中吗? 问题答案: 问题中的最大阈值称为负载系数。 建议负载系数约为0.75。负载因子定义为(m / n),其中n是哈希表的总大小,m是在需要增加

  • 问题内容: 我需要使用JavaScript来存储一些统计信息,就像在C#中那样: JavaScript中是否有类似的东西? 如何以这种方式存储值? 问题答案: 使用JavaScript对象作为关联数组。 关联数组:简单来说,关联数组使用String而不是Integer数字作为索引。 创建一个对象 Javascript允许您使用以下语法向对象添加属性: 相同的替代语法是: 如果您还可以使用以下语法创

  • 问题内容: 如何编写此代码?我已经拥有了,我需要通过单击按钮将相应的md5哈希发送到服务器。 问题答案: 您可以使用crypto-js。 我也建议使用SHA256,而不是MD5。 要通过NPM安装crypto-js: 或者,您可以使用CDN并引用JS文件。 然后,要显示MD5和SHA256哈希,可以执行以下操作: 此处的工作示例JSFiddle 还有其他一些JS函数会生成哈希,如下所述。 http

  • 问题内容: 通过浏览器的“查看源代码”功能查看源代码时,是否可以从网页的html隐藏Javascript代码? 我知道可以对代码进行混淆,但我希望将其 隐藏 在视图源功能中。 问题答案: 我不确定其他人是否真的直接解决了您的问题,即正在从浏览器的“查看源代码”命令中查看代码。 就像其他人所说的那样,没有办法保护要在浏览器中运行的javascript免受确定的查看者的攻击。如果浏览器可以运行它,那么

  • 我想在命令行上这样做,所以像这样的事情会很好: 上面的方法当然不适合散列。所以最后我需要打电话 以自动化的方式。