小编cod*_*dev的帖子

如何在 Java 中执行 MySQL UNHEX() 函数

我正在尝试从字符串中获取 Java 中的 MySQL 密码哈希,所以我用谷歌搜索了一下,发现了 MySQL 中的 PASSWORD() 是如何工作的:

SELECT SHA1(UNHEX(SHA1('test')));
Run Code Online (Sandbox Code Playgroud)

给出相同的结果

SELECT PASSWORD('test');
Run Code Online (Sandbox Code Playgroud)

有了这个我继续。

我写了一个将字符串转换为 SHA1 Hash 的方法,它完美地工作(测试了几个不同的字符串,得到与 MySQL 中的 SHA1(str) 相同的结果)

接下来要做的是 UNHEX() 方法。我现在卡住了。

我目前的方法:

public static String toMySQLPasswordHash(String str)
{
    String hash1 = toSHA1Hash(str);
    String unhexedHash1 = new String(DatatypeConverter.parseHexBinary(hash1));
    String hash2 = toSHA1Hash(unhexedHash1);

    String passwordHash = "*" + hash2.toUpperCase();


    return passwordHash;
}
Run Code Online (Sandbox Code Playgroud)

我的“toSHA1Hash”方法:

public static String toSHA1Hash(String str)
{
    MessageDigest md = null;

    try
    {
        md = MessageDigest.getInstance("SHA-1");
    }
    catch (NoSuchAlgorithmException e)
    {
        Logger.WriteLog(e.toString());
    }

    if (md …
Run Code Online (Sandbox Code Playgroud)

java mysql passwords hash

5
推荐指数
1
解决办法
1903
查看次数

Safari 和 Chrome-Mobile (iOS) 阻止在沙盒 iframe 中执行来自“blob:”src 的脚本

iframe我有一个网站,它使用sandbox-Attribute 设置为来嵌入用户定义的页面allow-scripts

嵌入式网站本身也是由我托管的(它来自同一源服务器),但它包含潜在不安全的 Javascript。我不想将allow-same-origin值添加到sandbox属性中,因为这会破坏整个目的。

嵌入页面的Content-Security-Policy标题设置如下:

Content-Security-Policy: style-src 'self' https://example.com/webjars/ https://example.com/css/ 'unsafe-inline' blob:; script-src 'self' https://example.com/webjars/ https://example.com/js/ 'unsafe-eval' 'unsafe-inline' blob:; default-src 'none'; navigate-to 'none'
Run Code Online (Sandbox Code Playgroud)

example.com我的域名在哪里。

嵌入页面尝试使用以下代码动态添加Javascript/CSS:

Content-Security-Policy: style-src 'self' https://example.com/webjars/ https://example.com/css/ 'unsafe-inline' blob:; script-src 'self' https://example.com/webjars/ https://example.com/js/ 'unsafe-eval' 'unsafe-inline' blob:; default-src 'none'; navigate-to 'none'
Run Code Online (Sandbox Code Playgroud)

这应该是允许的,并且它在 Chrome(桌面/Windows+MacOS)上运行良好。

但是,在 Chrome Mobile (iOS) 和 Safari(MacOS、iOS)上,它拒绝执行 Javascript 和 CSS。在控制台上,弹出以下消息:

[blocked] The page at https://example.com/embedded_page_url was not allowed to run insecure content from blob:null/<uuid>. …
Run Code Online (Sandbox Code Playgroud)

javascript safari google-chrome blob html5-video

5
推荐指数
0
解决办法
885
查看次数

Lua成对与其编写的顺序相同

有没有办法按照下面的表格以与写入的顺序相同的方式循环一个表格?

local tbl = {
    ["hello"] = 1,
    [2] = 2,
    [50] = 3,
    ["bye"] = 4,
    [200] = 5
}
Run Code Online (Sandbox Code Playgroud)

我的意思是,当我使用"成对"时,每次执行代码时我都会得到不同的顺序......

我正在寻找这样的东西:

function get_keys(tbl)
    local rtable = {}
    for k,v in pairs(tbl) do
        table.insert(rtable, k)
    end
    return rtable
end

local keys_of_tbl = get_keys(tbl)
for i = 1, table.getn(keys_of_tbl) do
    --Do something with: tbl[keys_of_tbl[i]]
end
Run Code Online (Sandbox Code Playgroud)

但是因为函数"get_keys"再次基于"成对",它将无法工作......

lua loops lua-table

4
推荐指数
2
解决办法
4474
查看次数

Lua将表的索引名称作为表

有没有办法获得表的每个索引值?

例:

local mytbl = {
    ["Hello"] = 123,
    ["world"] = 321
}
Run Code Online (Sandbox Code Playgroud)

我想得到这个:

{"Hello", "world"}
Run Code Online (Sandbox Code Playgroud)

indexing lua lua-table

0
推荐指数
1
解决办法
376
查看次数