问题标签 [elgamal]

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

encryption - 如何使用 ElGamal 加密对文本进行加密

我只想知道如何使用 ElGamal 算法加密文本文档?我使用这个算法加密了整数。请帮忙举个例子

0 投票
1 回答
6756 浏览

c++ - ElGamal 加密示例?

我提前为提出这个问题的不礼貌道歉,但我已经被困了很长时间,我正在努力弄清楚下一步该做什么。本质上,我正在尝试对某些数据执行 ElGamal 加密。我已经获得了一个临时密钥对和第二个静态密钥的公共部分,以及一些数据。如果我的理解是正确的,这就是我执行加密所需的全部内容,但我正在努力弄清楚如何使用 Crypto++。

我无休止地寻找示例,但我可以在 Google 上找到字面上的零。Ohloh 并没有什么帮助,因为我只是返回了无数页的 cryptopp ElGamal 源文件,我似乎无法弄清楚(我对使用 Crypto++ 比较陌生,直到大约 3 天前甚至还没有听说过 ElGamal)。

我能找到的最接近的例子来自 CryptoPP 包本身,如下所示:

但是,这似乎对我没有多大帮助,因为我不知道如何插入我已经计算的值。我不确定我是否在努力理解 Elgamal 的工作原理(完全可能),或者在使用 CryptoPP 所拥有的东西时我是否只是个白痴。谁能帮我指出正确的方向?

0 投票
0 回答
171 浏览

public-key-encryption - 缺乏 ind-cca 安全性的影响

我想知道是否有人可以告诉我缺乏 ind-cca 或 ind-cpa 安全性的加密方案的影响。例如,众所周知,ElGamal 方案缺乏 ind-cca 安全性。Helios 投票协议使用 ElGamal 来加密每张选票——我很难理解 ElGamal 有一个有效的 ind-cpa 对手和在 Helios 中使用 ElGamal 的含义。

0 投票
1 回答
1918 浏览

javascript - javascript中的elgamal解密

我需要一种计算方法:

在 JavaScript 中。我发现了这个计算base^exp%mod的算法:

}

而且效果很好。但我似乎无法找到一种方法来做到这一点

如果这个问题不完美,我很抱歉。这是我在这里的第一个问题。谢谢你。

0 投票
0 回答
503 浏览

java - 如何计算 ELGAMAL 生成密钥的执行时间?

我尝试通过java程序计算ELGAMAL生成密钥的执行时间,但我发现了问题。

生成器 g 是众所周知的。最初,任何数 {0,…,n−1}

当尝试计算生成密钥的时间时,生成器密钥需要很长时间,特别是在使用 3072 位作为素数时?我的算法如下所示

关于我的问题的任何建议

0 投票
0 回答
260 浏览

java - 如何在 elgamal 椭圆曲线方案中表示消息?

我读到了 elgamal 椭圆曲线方案,但我不明白它在这个算法中是如何表示消息的。如果消息 m 有 128 位和基点 b(x,y) 和私钥 k1 和公钥是 pub= k1 * b.now 消息 m 是否应该在坐标 m(x,y) 中表示或不需要可能是整数。我需要三个请求

  1. 它如何在此算法中表示消息。
  2. 我可以在哪里找到java标准Elgamal椭圆曲线的代码算法。
  3. 任何链接解释一个回合。它是如何工作的..
0 投票
1 回答
742 浏览

elliptic-curve - 如何代表 Elgamal EC 的信息?

我正在研究使用 elgamal 椭圆曲线的项目。我知道 elgamal ec 何时通过以下步骤进行加密

  1. 将消息 m 表示为 E(Fp) 中的点 M。
  2. 选择 k ∈R [1,n−1]。
  3. 计算 C1 = kP。
  4. 计算 C2 = M + kQ。
  5. 返回(C1,C2)。
    其中 Q 是预期接收者的公钥,P 是基点。我的问题排在第一位。如何将 m 表示为一个点。点是代表一个字符还是代表一组字符。
0 投票
3 回答
959 浏览

c# - ElGamal 签名验证

我尝试实现 ElGamal 签名,但在验证时遇到问题。根据维基百科,消息 m 的签名 (r,s) 在以下情况下是正确的:
验证公式

有一个众所周知的计算 ModPow 的算法,用于签名步骤: 在此处输入图像描述

但我找不到计算第一个公式的方法。如果我尝试直接计算功率,这似乎是一个太大的数字。我用 C# 编写代码并使用 BigInteger,它甚至不允许使用 BigInteger 指数计算幂 - 我认为只接受常见的整数,这是合理的。
有没有简化?这个应该怎么计算?谢谢

0 投票
1 回答
109 浏览

cryptography - 如何将消息表示为 1 到 n-1 之间的整数?

我正在尝试实现简单的 El-Gamal 密码系统。

而且我不明白如何将消息表示为 1 和 n-1 之间的整数。我唯一想到的是:如果 n 位长度为 k,则将输入消息 m 除以 t | t < k 位,每个位都用作整数。

我认为这是错误的。

那么如何将消息表示为 1 到 n-1 之间的整数呢?

0 投票
0 回答
1542 浏览

java - El-Gamal椭圆曲线加解密

我环顾答案并在谷歌上搜索找到一种方法如何在没有任何第三方库的情况下使用 El-Gamal Elliptic Curve 加密和解密字符串,但总是有答案使用第三方库,如 bo*...castle 或 fle **供应商。为了防止我的程序中存在依赖关系,我决定使用 java 安全性,因为正如我在这个线程之后从我的问题中提出和讨论的那样,它可以在没有任何第三方库的情况下完成,但在那种(线程)情况下,目的是签署/立即验证:

  1. 如何使用 ElGamal ECC 和 Java(JDK 7+) native 进行加密/解密?
  2. 从上面的链接线程中,我使用 base64 方法来存储私钥和公​​钥,我可以在 El-Gamal ECC 中做同样的事情吗?
  3. 有没有人有勇敢的心:) 用一个示例代码来回答,以通过 Java(jdk 7 或 8)本机中的 EL-Gamal ECC 进行加密/解密?