elliptic-curve相关内容
我正在尝试在终端(由计算机模拟)和智能卡(Java卡)之间实现ECDH。 我固定了想要的椭圆曲线使用,在卡侧,我有以下代码可以运行协议的第一部分: ECPublicKey pubKey =( ECPublicKey)KeyBuilder.buildKey( KeyBuilder.TYPE_EC_FP_PUBLIC,(short)0x0100,false); pubKey.set
..
我已经使用secp192r1曲线生成了ECC公钥和私钥。对于公共,我得到75,对于私有编码的密钥数组长度,我得到125。为什么私钥比公钥长?为什么私钥不超过公钥的两倍?为什么由于secp192r1,私钥不是192位= 24字节? Security.addProvider(new org.bouncycastle.jce.provider .BouncyCastleProvider());
..
我正在尝试使用Java中的BouncyCastle使用ECC算法对某些内容进行加密。但我遇到了BouncyCastle库,该库无法将 JCEECPublicKey 转换为 IESKey 。据我了解,由 KeyPairGenerator 生成的公钥是 JCEECPublicKey ,不能在Java 中使用Cipher.init 方法。有人可以告诉我如何将其转换为公钥或X509规范,以便可以将其用于加
..
我正在构建一个将BouncyCastle用作加密提供程序的网络应用程序。假设您要生成一个密钥对: ECParameterSpec ecSpec = ECNamedCurveTable.getParameterSpec(“ prime192v1”); KeyPairGenerator g = KeyPairGenerator.getInstance(“ ECDSA”,“ BC”);
..
我有两个32字节长的字节数组,分别表示EC公共密钥的X和Y值。我知道该曲线为命名曲线“ prime256v1”。 如何将其转换为Java PublicKey对象? JCE似乎不提供使用命名曲线的任何工具。 Bouncycastle的示例代码似乎无法与任何版本的充气城堡一起编译找到。 WTF吗? 解决方案 事实证明,实际上,这是另一种方法。显然,可以使用Algorit
..
我需要从EC私钥字符串派生EC公共密钥,而无需任何第三方库的“帮助". 私钥是从外部产生和提供的,我需要获取公钥才能生成比特币地址.当我的项目处于“离线"状态时,我不需要像Bouncy Castle这样的库就可以用于任何其他目的,因此我想消除它. 以下程序可以正常运行,并显示了与Bouncy Castle合作以获取解决方案时的示例(非常简短).第二部分是本机Java解决方案,它得到了S
..
我正在开发一个应用程序,(高级)用户必须为此设置自己的服务器(即nginx)来运行后端应用程序.需要在应用程序中配置相应的域,以便它可以连接.我主要在自己的手机(sony z3c)上进行测试,并开始为5.1开发.后来我收到了6.0的更新,但在仿真器中仍保持有效的5.1.不久之前,我开始使用具有7.0映像的AVD进行工作,但令我惊讶的是它无法连接到我的服务器,告诉我ssl握手失败.我的nginx配置
..
我想获取ECDH密钥对(公共密钥和私有密钥).此方法在Android 9.0 pie中不起作用,因为已从此版本中删除了安全提供程序"BC","SC".我尝试了以下方法 KeyPairGenerator keyGen = KeyPairGenerator.getInstance("EC", "BC"); SecureRandom random = SecureRandom.getInstanc
..
iOS是否公开用于密钥生成和使用ECDH进行秘密密钥派生的API? 据我所知,苹果内部使用它(特别是x25519),但我看不到它是通过公共加密或其他方式公开为公共API的. 谢谢 Z 解决方案 使用Xcode 8.3.3在操场上完成,使用EC为Alice,Bob生成私钥/公钥,然后使用Alice的private和鲍勃(Bob)的公开,并使用鲍勃(Bob)的私有和爱丽丝(A
..
我正在尝试使用Android中的SpongyCastle生成ECDSA密钥对. 这是代码: static { Security.insertProviderAt(new org.spongycastle.jce.provider.BouncyCastleProvider(), 1); } public static KeyPair generate() { ECPa
..
我有以下代码: ECDiffieHellman ecdh = ECDiffieHellman.Create(ECCurve.NamedCurves.nistP256); ECDiffieHellmanPublicKey ecdhPublic = ecdh.PublicKey; 如何将ECDiffieHellmanPublicKey实例(ecdhPublic)导出到DER编码文件中?
..
我正在尝试使用椭圆曲线加密.我需要同一件事的两种实现,一种在Java中,一种在C中.我正在使用通过曲线 secp256k1 生成的两对密钥对它们进行测试.当我用Java生成派生秘密时,我总是得到与OpenSSL不同的数字. Java代码: /* privateKey and peerPublicKey are generated with the following parameter
..
openssl_sign返回签名字符串,但打印此错误.我正在使用椭圆曲线键 Warning: openssl_sign() [function.openssl-sign]: key type not supported in this PHP build! in 解决方案 此问题已在php问题跟踪器中提交: https://bugs.php.net/bug.php?id=66501
..
我正在尝试为DNSSEC算法13创建私钥和公钥: #include #include #include #include #include int main() { EC_KEY *eckey = NULL; const EC_P
..
我需要生成EC Diffie Hellman密钥对.我正在使用secp256r1命名为curve和OpenSSL.到目前为止,这就是我所拥有的: unsigned char *ecdh(size_t *secret_len) { EVP_PKEY_CTX *pctx, *kctx; EVP_PKEY_CTX *ctx; unsigned char *secret;
..
更新:Git上提供了部分解决方案 编辑:可以在 https://github.com/makerofthings7/Bitcoin上获得其编译版本. -MessageSignerVerifier 请注意,要验证的消息必须以Bitcoin Signed Message:\n作为前缀. Source1 我可能可以从 实际上想出正确的Base 58地址似乎有问题. 我在下面有以下消息
..
此SO问题使用OpenSSL而不使用ASN1编码的ECDSA标志hash 在对散列进行签名之前将OpenSSL perfoms ASN1编码声明为散列. 换句话说,当椭圆曲线键-sign被调用时,它指出OpenSSL执行以下步骤: 一种.计算H =哈希(M) b.将H编码为ASN1标准-H’ C.签名H’ 因此,为避免应用步骤b,有必要先计算摘要,然后使用原始签名-椭圆曲线键的pkey
..
我正在阅读openssh格式的椭圆曲线公共密钥( RFC 5656第3.1节,),并希望使用JCE从BigInteger Q值获取到ECPublicKey实例(而不是说BouncyCastle).我要执行此操作以验证 JWT 签名. 例如 https://api.github.com/users/davidcarboni/keys : ecdsa-sha2-nistp256 AAAAE2V
..
是否有一个Java库/示例可以读取Java中JCE PublicKey的openssh格式ecdsa公钥?我想对 JWT 使用EC. 我尝试读取的格式是按照authorized_keys或Github API(例如 https ://api.github.com/users/davidcarboni/keys ):ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTI
..
问题前提: 我正在使用将SSL与远程服务器上的netty框架一起使用的现有库.我遇到了SSL/TLS握手错误.错误如下: javax.net.ssl.SSLProtocolException: java.io.IOException: Unknown named curve: 1.2.840.10045.3.1.1 at sun.security.ssl.Handshaker.che
..