问题标签 [diffie-hellman]

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 回答
4241 浏览

java - Diffie Hellman 密钥协议每次 JAVA 生成不同的密钥

我遇到了 Diffie Hellman 实施的问题。我正在使用此代码 http://www.java2s.com/Tutorial/Java/0490__Security/DiffieHellmanKeyAgreement.htm

这实际上是我正在阅读的一本书的一个例子。但我不明白为什么要generateSecret()为每个KeyAgreement. 我注意到该函数会创建不同的键,即使我用相同的KeyAgreement两次调用它!如果有人有什么建议我会很高兴的!

谢谢你的时间!

0 投票
1 回答
330 浏览

encryption - 有没有办法查看 Microsoft CNG 中生成的 ECDH 共享密钥?

我正在尝试在 MS CNG 和另一台设备之间执行 ECDH 密钥交换。为了调试,我想看看 CNG 中生成了什么共享秘密,以便我可以将它与我的其他设备生成的秘密进行比较。有人知道这样做的方法吗?

0 投票
1 回答
1655 浏览

cryptography - 为什么我们需要 Diffie Hellman?

Diffie–Hellman仅在双方经过身份验证时才提供安全密钥交换。对于身份验证,双方使用公钥/私钥。因此,如果 A 方知道 B 方的公钥,那么 A 可以简单地使用该密钥来加密消息(或新的会话密钥)。为什么要使用单独的密钥交换算法?

0 投票
1 回答
102 浏览

cryptography - 我应该保护/隐藏 Diffie-Hellmann 的素数和基数吗?

我们知道 DH 算法基于 2 个大素数,它们被称为素数和基数

我正在编写实现 DH 密钥交换算法的应用程序。从安全的角度来看,我应该注意保护素数和基数吗?如果我不这样做会有什么影响?

0 投票
1 回答
1549 浏览

ssl - 实施 Diffie-Hellman 密钥交换时预主密钥不匹配

我正在尝试将 DHE_DSS 实现到 go 的 crypto/tls 包中。不幸的是,我似乎无法让 PreMasterSecret (Z) 相同,我的基本工作流程是:

接收服务器密钥交换消息

  • 提取 P、G、Ys
  • 使用提供的数字签名进行验证

准备客户端密钥交换消息

  • 创建客户的 Xc
  • 生成 Yc (Yc = G^Xc % P)
  • 生成 Z (Z = Ys^Xc % P)
  • 发回 Yc,包装如下:

但是,当我使用 gnutls-serv 调试它时,两个 PreMasterSecrets (Z) 是不同的。我是否需要在退回的 Yc 上签名,或者以其他方式打包?我在RFC 5246中看不到任何建议。

<-- 编辑-->

这是我的更改补丁:

https://08766345559465695203.googlegroups.com/attach/48587532c74b4348/crypto.patch?part=4&view=1&vt=ANaJVrHbwydqEZc3zjUWqQ5C8Q5zEkWXZLdL0w6JJG3HYntOlBurUTY7mc9xR9OTfE0bJxs4eeL5a5SGd2jj9eIfXcwJQgLvJchXOgkYKBBynbPfshY8kuQ

0 投票
3 回答
1564 浏览

java - Why does iOS 5 fail to connect to a server running JDK 1.6, but not JDK 1.5

We have a Java Socket Server listening on an SSLSocket (port 443) and an iOS application that connects with it. When running on iOS 5.1, the application stopped working when we upgraded the Java version of the server from JDK 1.5 to 1.6 (or 1.7). The app connects just fine to JDK 5 and 6 when running on iOS 6.

The iOS app is reporting an error: -9809 = errSSLCrypto. On the Java side, we get javax.net.ssl.SSLException: Received fatal alert: close_notify.

On the Java server side, we have enabled all the available cipher suites. On the client side we have tested enabling several different suites, although we have yet to complete a test involving each one individually enabled. Right now, it is failing when we use TLS_DH_anon_WITH_AES_128_CBC_SHA although it has failed with others and we are starting to think it's not the suite.

Here is the debug output. It makes it all the way to ServerHelloDone and then fails shortly thereafter:

FYI, this works in iOS 6.0

0 投票
1 回答
2465 浏览

java - Java 中充气城堡的性能

在生成 DH 参数时,我在使用 Bouncy Castle Provider 时遇到了一些性能问题。任何人都知道为什么下面的 Bouncy Castle 示例比使用标准提供程序慢约 50 倍?

使用 Bouncy Castle 提供程序:

使用标准提供者:

0 投票
1 回答
46686 浏览

ssl - DH 与 DHE 和 ECDHE 以及完美的前向保密

Diffie-Hellman (DH) 是否提供完美的前向保密?还是仅适用于 Ephemeral Diffie-Hellman (DHE) 的功能?Elliptic Curve Ephemeral diffie-Hellman (ECDHE) 是否优于 DHE?

0 投票
1 回答
3943 浏览

java - 来自 SecretKeySpec 的 Java 安全初始化密码正确

我正在测试 Diffie-Hellman KeyAgreement 算法。并使用它来生成密钥。但是在我得到 . 之后SecretKeySpec,我遇到了使用它来初始化Cipher. 这是我的代码:

DiffieHellman 模块

DHTest

0 投票
1 回答
1966 浏览

java - 如何使用 Diffie-Hellman 密钥交换来保护客户端和服务器之间的数据传输?

我是初学者程序员。我被要求通过使用 Diffie-Hellman 密钥交换来保护客户端和服务器之间的数据传输。我在这个问题上进行了很多搜索,但我刚刚找到了一些示例代码,可以找到大整数pg.

问题是我不知道如何使用这些号码来确保信息传输的安全。我想通过客户端和服务器之间的连接传输“字符串”,而不是整数。这些数字对我有什么用处?我正在接近我正在学习的课程的这个项目的最后期限,并且真的可以使用一些帮助。