问题标签 [ecies]
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.
java - Java 找不到 ECIES,即使它位于 Bouncy Castle jar 中
我正在尝试通过改编以下代码来测试 ECIES:https ://gist.github.com/amrishodiq/9821413和https://github.com/VictorThompson/t-encryption/blob/master/src/ECIESexample .java
我得到错误:
即使 ECIES 在罐子里:
我究竟做错了什么?
Ecies.java:
生成文件:
c++ - ECIES 公钥序列化
我正在编写客户端/服务器加密程序并想发送 ECIES 公钥。为此,我必须将公钥序列化到文件,将文件读取到字节数组,发送这个字节数组。另一方面:接收字节数组,将其写入文件,从文件中反序列化公钥。因此,我编写了一些测试项目,尝试将其与出色的系统分开进行,并且(当所有这些模块都成功运行时)只需将其插入我的项目中。这个项目的代码是:
而且,严格来说,主要(用于问题)方法:
代码main.cpp
:
但它因错误而崩溃:
为什么?
java - ECIES encryption/decryption Java
I am trying to use ECIES for encryption and decryption. This is what I have done:
generated ECC key pair
generated CSR
Generated X509 certificate, signed by intermediate CA
Server side, I need to use this certificate to encrypt data. So I have extracted
PublicKey
(which is showingBCECPublicKey
format) from certificate.I couldn't find a way to convert it into
ECPublicKey
format so after upgrading to bouncycastle 1.55, I am able to use directlyBCECPublicKey
for encryption.Converted private key into
ECPrivateKey
and using it for decryption but now it's throwingBadPaddingException: Invalid MAC during decryption
I am new to cryptography, Please help to resolve this. Below is code I am using:
java - 在 Crypto++ 中使用 AES 和 CBC 的 ECIES
我需要在 Crypto++ 中实现与 BouncyCastle 的"ECIESwithAES-CBC/NONE/PKCS7Padding"等效的功能。
主要原因是我需要在 iOS 上加密数据并在后端使用 Java 中的 BouncyCastle 对其进行解密,我们希望使用这些特定的算法/配置。
我对 C++ 的经验为零,但这是我迄今为止在 Crypto++ 中的经验:
这是java部分:
目前,当我从 Crypto++ 获取输出并尝试在 BouncyCastle 中对其进行解密时,它会引发异常:
我不确定这是否真的是一个填充问题,还是我做错了什么?
任何建议和帮助将不胜感激。
谢谢!
PS:我已经应用了CryptoWiki中提到的充气城堡补丁
c# - ECIES with Inferno:与 ECDSA 签约
我正在尝试使用 Inferno 对使用 ECIES 加密的文本文件进行签名。加密和密钥交换部分运行良好,但我还有一些关于 ECDSA 的问题。
1-我猜ECDSA签名必须存储在发送的文件中,以便接收者可以使用它来验证数据完整性,对吗?
2-我读过很多次应该对散列数据执行签名,但是使用 ECIES 发送的数据是加密的,而不是散列的,否则接收方如何检索它?
3- 在下面的代码示例中应该在哪里进行签名?当前尝试不起作用,因为尽管在解密时接受了签名,但会返回一个空字符串(而不是解密的文本)。
java - 将 ECIES 公钥传输给客户端
我是 ECIES 新手,使用 ECIES 算法进行加密和解密。下面是我用于加密和解密机制的代码片段。
上面的代码片段工作正常,但我想要的是在客户端和服务器之间进行任何通信之前,客户端将发送一个启动请求并在其末尾接收公钥。然后将使用公钥加密有效负载并将其发送到服务器,并在接收到后,服务器将使用之前生成的私钥解密数据。
当我使用以下代码段将 keyPair 存储为 JSON 对象时,它会引发异常:
例外:
org.codehaus.jackson.map.JsonMappingException: No serializer found for class org.bouncycastle.math.ec.WNafL2RMultiplier 并且没有发现创建 BeanSerializer 的属性(为避免异常,禁用 SerializationConfig.Feature.FAIL_ON_EMPTY_BEANS))(通过参考链:MobileData ["keyPair"]->java.security.KeyPair["public"]->org.bouncycastle.jcajce.provider.asymmetric.ec.BCECPublicKey["parameters"]->org.bouncycastle.jce.spec.ECParameterSpec["曲线"]->org.bouncycastle.math.ec.custom.sec.SecP256R1Curve["乘数"])
如何将公钥发送给客户端?
ios - iOS加密的跨平台兼容性
我正在使用 iOS 安全框架进行加密。具体来说,我使用的是 ECIES 加密,它在选择密钥交换、派生、散列和经过身份验证的加密方面似乎非常具体。输出跨平台是否以任何方式兼容?即假设我在 iOS 中使用以下内容加密指向 Bob 的明文:
是否可以使用此密码(连同 Bob 的私钥)并对其进行解密?
如果答案是否定的,那么安全框架中是否有任何东西在这个意义上是跨平台兼容的?
谢谢,Z
encryption - ECIES 是公共加密算法吗?
我已经实现了 RSA 加密算法来加密数据加密中使用的对称密钥,但是 RSA 的密钥大小和密文大小造成了内存问题,所以我搜索了其他公钥加密方法来解决问题。我找到了椭圆曲线集成加密方案(ECIES)并理解了它背后的理论,但是,我有点不清楚这种方法如何用作公共/非对称加密算法。该方法使用从共享密钥派生的密钥计算对称加密,用于加密和解密(使用相同的密钥)。
那么如何将其视为非对称加密算法呢?或者有什么方法可以将它实现为非对称加密?
ios - 什么是 Secure Enclave ECIES 加密数据格式?
我在安全飞地 () 中创建了一个不对称的 EC 密钥对。密钥对的公钥将被发送到我的后端服务,然后使用它来加密数据(kSecKeyAlgorithmECIESEncryptionCofactorX963SHA512AESGCM
)。加密的数据将被发送到 iOS 设备,以便使用安全飞地中的私钥进行解密。
我需要知道我应该在后端服务中使用的 ECIES 算法的确切选项。
- 曲线名称是什么?
- 使用辅因子?
- 什么是 AES-GCM 密钥大小和块大小?
- 加密数据的格式应该是什么?
- 16 字节的标签应该是什么?
javascript - 我不理解 eccrypto 库中的“加密”对象
我正在学习eccrypto - JavaScript 椭圆曲线密码库的基础知识。我从文档中获得了以下代码。
恐怕我无法正确理解“加密”对象的密钥。
该对象中有四个密钥:“iv”、“ephemPublicKey”、“ciphertext”和“mac”。
如何以二进制格式从此对象中获取 cncrypted 文本?