13得票3回答
使用Diffie-Hellman密钥交换和AES的HTTP客户端端加密

在观看了一段关于Diffie-Hellman密钥交换的YouTube视频后,我想尝试在JavaScript中实现该算法(Atwood的定律)。 我在Node.js上设计了一个加密器,遵循以下规则: 步骤1:客户端和服务器协商共享密钥: 客户端和服务器开始使用512位素数公共密钥pK ...

15得票2回答
使用ECDiffieHellmanP256派生密钥

我正在处理一个与Firefox的新Push API集成的项目,该API正在作为W3C标准开发中。 其中一部分是加密数据。服务器将接收Diffie Hellman P256 Curve(使用var key = subscription.getKey('p256dh');在JS中生成)。 当转...

42得票1回答
DH与DHE以及ECDHE和完美前向保密性

Diffie-Hellman(DH)是否提供完美的前向保密性?或者它只是Ephemeral Diffie-Hellman(DHE)的特性? Elliptic Curve Ephemeral diffie-Hellman(ECDHE)是否比DHE更好?

7得票1回答
如何从PEM格式的DH密钥中提取DH参数

我已经使用特定的g和p参数生成了一个Diffie-Hellman密钥,就像这样: $ cat dhparam.pem -----BEGIN DH PARAMETERS----- MIIBCAKCAQEAnc5+uXl2K09Nrp1oxN/KbIcIYLg8HXCu9UNW7gFknkHil...

21得票3回答
为什么iOS 5无法连接运行JDK 1.6的服务器,但可以连接JDK 1.5的服务器?

我们有一个监听在SSLSocket(端口443)上的Java Socket服务器,以及一个与其连接的iOS应用程序。当我们将服务器的Java版本从JDK 1.5升级到1.6(或1.7)时,在iOS 5.1上运行的应用程序停止工作。当在iOS 6上运行时,该应用程序连接到JDK 5和6都很好。 ...

150得票22回答
为什么SSL握手会出现“Could not generate DH keypair”异常?

当我与某些IRC服务器建立SSL连接时(但不是所有的 - 可能是因为服务器的首选加密方法),我会得到以下异常:Caused by: java.lang.RuntimeException: Could not generate DH keypair at com.sun.net.ssl....

12得票1回答
从共享密钥生成派生密钥(ECDH-ES)- ConcatKDF

我使用https://github.com/ricmoo/GMEllipticCurveCrypto生成ECDH算法的共享密钥。 现在,根据https://www.rfc-editor.org/rfc/rfc7518#section-4.6中提到的ECDH-ES算法,我需要生成派生密钥。 如果...

25得票3回答
如何在OpenSSL的EVP_PKEY结构中访问原始的ECDH公钥、私钥和参数?

我正在使用OpenSSL的c库生成椭圆曲线Diffie-Hellman(ECDH)密钥对,按照此处的第一个代码示例 here。它在实际公钥交换方面稍作掩盖:peerkey = get_peerkey(pkey); pkey变量和返回值都是EVP *类型。 pkey包含之前生成的公钥、私钥和参数...

20得票2回答
AES加密:InvalidKeyException异常:密钥长度不是128/192/256位

我正在尝试在Android上使用AES加密字符串。对称密钥先前是用Diffie-Hellman算法确定的,并且似乎没问题(密钥长度为128位,如下所示)。然而,我收到了一个"InvalidKeyException:“密钥长度不是128 / 192 / 256位。”的错误信息。 代码:KeyA...

20得票2回答
EC公钥是否有标准的固定长度编码方式?

我在思考是否存在(并且希望存在)适用于每种素域曲线类型(192、224、256、384和521)的ECDH(椭圆曲线Diffie-Hellman)和ECDSA(椭圆曲线数字签名算法)公钥大小标准。