小编Lou*_*ong的帖子

如何在Java中为Salted-Hash生成SALT?

我一直在寻找,最接近的答案是:如何生成一个随机的字母数字字符串?

我想根据这个CrackStation教程来遵循这个工作流程:

存储密码

  1. 使用CSPRNG生成长的随机盐.

  2. 将salt添加到密码中,并使用标准加密哈希函数(如SHA256)对其进行哈希处理.

  3. 将salt和hash都保存在用户的数据库记录中.

验证密码

  1. 从数据库中检索用户的salt和hash.

  2. 将salt添加到给定密码并使用相同的哈希函数对其进行哈希处理.

  3. 将给定密码的哈希值与数据库中的哈希值进行比较.如果匹配,则密码正确.否则,密码不正确.

我不知道如何生成SALT.我想出了如何使用MessageDigest生成哈希.我尝试使用SecureRandom,但nextByte方法产生乱码.

编辑:我不知道选择哪个答案,对我来说太复杂了,我决定使用jBCrypt; jBCript很容易使用,在幕后做所有复杂的事情.所以我会让社区投票给出最佳答案.

java security encryption hash salt

41
推荐指数
2
解决办法
8万
查看次数

Py2Exe,[Errno 2]没有这样的文件或目录:'numpy-atlas.dll'

我在我的程序中包含了matplotlib,我搜索了谷歌上的numpy_atlas.dll,我似乎是地球上唯一一个有这个问题的人.

setup.py

from setuptools import setup
import py2exe

setup(console=['EulerMethod.py'])
Run Code Online (Sandbox Code Playgroud)

运行Py2Exe会导致错误

C:\(..obmitted..)>python setup.py py2exe
running py2exe
*** searching for required modules ***
*** parsing results ***
......
...obmitted...
......
*** finding dlls needed ***
error: [Errno 2] No such file or directory: 'numpy-atlas.dll'
Run Code Online (Sandbox Code Playgroud)

python numpy py2exe matplotlib

11
推荐指数
3
解决办法
9242
查看次数

何时/为什么要在Java中使用Multithread?

我不知道何时应该在Java开发中使用Multithread,以及使用它的逻辑/原因.它在不同情况下有何帮助?

场景1

我正在制作一个带有敌人的2D滚动游戏,以及所有这些,想想金属slu ..

情景2

我正在制作一个数据库守护程序来检查多个数据库内容.

场景3

我正在为JSP创建一个servlet,从数据库中获取一些信息.

随意编辑方案以使其更好.

另外:我应该在游戏服务器上使用多线程吗?或者我不应该?

java multithreading jsp java-ee

7
推荐指数
1
解决办法
1万
查看次数

如何在不模糊图像的情况下制作小的纹理比例?像Minecraft一样?

我将这些模式用于OPENGL

    glMatrixMode(GL_PROJECTION);
    glLoadIdentity();
    glOrtho(0, 640, 480, 0, 1, -1);
    glMatrixMode(GL_MODELVIEW);
    glEnable(GL_TEXTURE_2D);
Run Code Online (Sandbox Code Playgroud)

我正在使用此代码绘制纹理

    texture.bind();

    glBegin(GL_QUADS);
    glTexCoord2f(0, 0);
    glVertex2f(x, y);// Upper Left

    glTexCoord2f(1, 0);
    glVertex2f(x + width, y); // Upper right

    glTexCoord2f(1, 1);
    glVertex2f(x + width, y + heigth); // Lower right

    glTexCoord2f(0, 1);
    glVertex2f(x, y + heigth); // Lower left
    glEnd();
Run Code Online (Sandbox Code Playgroud)

它自己的纹理来自Minecraft,是一个16x16纹理.但当我将它缩放到160x160时,我得到的结果是:

在此输入图像描述

java opengl lwjgl

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

如何重写 NullReferenceException 行为以获得更好的信息丰富的错误?

语境

在 Unity 中,NullReferenceException 仅记录错误,不会将 IDE 踢入调试模式。有时,游戏很难重现 100% 发生错误的相同环境。

组件变量通过unity编辑器序列化暴露出来,设计者经常忘记赋值,导致组件的成员变量为NULL的情况。

由于 Unity 的特殊情况,NullReferenceException 是最常见的异常,我正在尝试探索如何让异常立即变得更加明显。

问题

NullReferenceException 消息非常没有帮助。对我来说,当我看到 NullReferenceException 时,我什至不知道哪个变量是 NULL。


player.GetComponent<Movement>().AnothingVariable.CallFunction() // NullReferenceException, which part caused it?
Run Code Online (Sandbox Code Playgroud)

当前错误消息:

NullReferenceException: Object reference not set to an instance of an object
Run Code Online (Sandbox Code Playgroud)

理想的错误消息:

NullReferenceException: Trying to access CallFunction in type Movement, in GameObject "Player" from component "Controller".
Run Code Online (Sandbox Code Playgroud)

.net c# mono unity-game-engine

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