问题标签 [secure-random]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
811 浏览

java - 空 securerandom.strongAlgorithms 安全属性

当我在 Jenkins 中设置为应用程序时。该代码在本地和其他构建环境中运行良好。在 Jenkins 中,我在构建和单元测试期间遇到了这个错误。我们的应用程序只需要外部更改是从 oracle 下载 JCE(Java 加密扩展)并替换 JAVA_HOME/jre/lib/security 文件夹中的策略 jar。我做了。我可以看到日志它正在拾取那些罐子。我仍然看到以下错误。我需要为安全随机做任何事情吗? SecureRandom.getInstanceStrong();导致问题。有什么帮助吗?

下面是我的java代码。

仅供参考,詹金斯正在运行java version "1.8.0_73"1.8.0_51在具有版本和的其他机器上完美运行的代码1.8.0_91

0 投票
0 回答
17 浏览

java - 如何在 Java 中使用 SecureRandom 和开关

好的,所以我想使用这个随机数生成器来输出一个案例,而不是把它们全部吐出来,我做错了什么?

现在输出可能如下所示:

测试2

测试3

测试4

2

相反,我只想让它随机输出一个字符串

0 投票
1 回答
991 浏览

java - 在 Windows 操作系统上播种到 java.security.SecureRandom

我有兴趣java.util.Randomjava.security.SecureRandom课程。我发现Random使用系统时钟来生成种子并SecureRandom使用/dev/randomor/dev/urandom但是这些文件在 Linux 上,而在 Windows 上它使用一些 mistic CryptGenRandom。即使这是超级安全的功能,我们是否知道它从哪里获取值?产生种子的地下室是什么?

0 投票
0 回答
246 浏览

java - Java /dev/urandom 配置

/dev/urandom每当我从大多数来源中查找将 Java 切换为使用时/dev/random,都应将其指定为Java 中的错误/dev/./urandom的解决方法。我想知道这是否仍然需要。错误描述引用了早期版本,并且大多数引用的来源也不是新鲜的。Java 8Java/dev/./urandom

当我lsof在 java 进程上运行时,它同时显示/dev/urandom并由/dev/randomJava 打开,并且无论配置设置和/或参数如何,以及文件路径上是否存在,打开[u]random文件的数量都保持大致相同。securerandom.source-Djava.security.egd'/./'

所以我的问题是'/./'新版本的Java是否仍然需要插入路径的解决方法?

0 投票
0 回答
166 浏览

java - IBM AIX 6.1 下无法实例化 KeyAgreement

我们需要在 IBM AIX 6.1 中部署一个独立的 jar。这个 jar 尝试使用 hierynomus sshj 和 bouncycastle 连接到 SFTP 服务器。当尝试实例化 KeyAgreement 时,在执行时,它会输出以下内容:

用来运行这个 jar 的 JVM 是:

通过将新的安全提供程序附加到 java.security 提供程序列表的末尾并将库: bcpkix-jdk15on-1.60.jar bcprov-jdk15on-1.60.jar 添加到 ext 目录,已更新 JVM 安全设置。

独立 jar 是使用 maven-assembly-plugin 构建的。

我们想知道为什么会发生这种情况以及我们如何解决它。

0 投票
1 回答
237 浏览

multithreading - Java Security API 同步方法导致应用程序线程在高负载时挂起

我们的后端服务器使用 Embedded Jetty 8.1.15 已有几年了。直到最近,当我们开始对大量并发用户进行负载测试场景时,它才出现任何问题。然后,即使有少量用户使用 JMeter(具有 1000 个并发池和 KeepAlive 的 HTTP 采样器),我们也成功地重现了该问题。客户端和服务器之间的通信是通过 TLS(在客户端有连接池)客户端(连接池) -> TLS -> 服务器我们看到的行为 - 在某个时间点,很多线程“卡住”(等待在不同方法的监视器上)具有以下堆栈跟踪 -

或者有时在其他 Java 安全同步 API 方法上

当一切正常时,在问题出现之前,客户端和服务器之间存在一个具有持久连接的连接池(可以在 netstat 中看到),但是当问题出现时,有很多处于不同状态的连接,除了 ESTABLISHED:

在客户端:

在服务器端:

几乎所有线程都没有响应,CPU 非常高,GC 一直在工作

在此处输入图像描述

在此处输入图像描述

在此处输入图像描述

我们还在 JVM 中设置了以下标志:

-Djava.security.egd=文件:/dev/./urandom

为了 SecureRandom 将是非阻塞的(而不是 /dev/random)

Java 版本“1.8.0_05”Java(TM) SE 运行时环境(构建 1.8.0_05-b13)Java HotSpot(TM) 64 位服务器 VM(构建 25.5-b02,混合模式)

内核:4.14.94-89.73.amzn2.x86_64(但问题也出现在内核为2.6.32-696.20.1.el6.x86_64的系统上)

限制:

当组件进入该状态时,它没有响应,日志没有被写入日志文件(顺便说一句,我们使用 log4j2)

当组件上的负载停止时,组件需要几分钟才能恢复并再次响应

有没有人在你的 Java 后端组件中有类似的行为?请评论/建议调查和/或解决方案的方向

0 投票
1 回答
90 浏览

ruby-on-rails - 用于在 URL 中使用的 API 令牌的适当 SecureRandom 方法?

我知道 SecureRandom (ruby on rails) 提供了多种生成令牌的方法

是否有一些专为 url 设计的方法?

例如

ETC

我问的主要原因是确保我不会意外生成带有 url 中非法字符的令牌。最终我需要生成在 url 中安全的相同长度的令牌

0 投票
1 回答
478 浏览

javascript - 在 JavaScript 中实现 new BigInteger(130, new SecureRandom()).toString(32)

我知道我们可以window.crypto用来生成一个安全的随机数,但是window.crypto.getRandomValues()使用typedArray. 我想知道我们怎样才能在 JavaScript 中准确地实现这个 Java 函数:

0 投票
1 回答
669 浏览

java - 如何检查加盐和散列密码的匹配

我正在研究密码安全和用户登录,更具体地说,是在数据库中存储和匹配加盐密码哈希。我了解加盐和散列的基础知识,但我不明白当盐是在每个散列之前随机生成时,我应该如何在登录尝试时检查存储的散列值?

0 投票
0 回答
81 浏览

java - 为什么 Intellij 导入“错误”的 SecureRandom 类(Java)?

我正在编写一个需要 SecureRandom 对象的程序。创建后,Intellij 自动导入"sun.security.provider.SecureRandom"。但是有了这个导入,我无法调用很多方法。例如,我无法使用“nextInt()”“doubles()”等许多方法。

但是如果我手动导入"java.security.SecureRandom",我可以使用上面的这些方法生成随机数。

但是"sun.security.provider.SecureRandom"导入确实提供了其他方法,例如"engineGenerateSeed",我不能用"java.security.SecureRandom"调用。

所以我的实际问题是,为什么有两种不同的可能导入(我不能同时导入),它们的用途是什么?