- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
嗨,我正在用 java 编写一个程序来测试 elgamal 加密的变体,但是我的问题不是加密/解密链本身,而是如何对给定的输入执行操作:文本文件。我有一个文本文件,其中包含一些单词(例如内容可以是:“Hello world,这是一个测试”
),我需要对它们执行数字运算,如下所示:
ciphertext= (message * y) mod p
其中y
和p
是两个biginteger
。我尝试了这个转换链:(一次读取一个字符串):
String->Hexadecimal->Decimal
然后执行加密操作,然后进行逆操作:
Decimal->Hexadecimal->String
但这并不总是有效(我目前正在调查这个问题)。
已修复。
我的问题是,有更好的方法吗?我正在阅读有关字节数组
的内容,但我不确定如何使用它们。
[如果需要,我可以发布加密/解密链的示例]
最佳答案
BigInteger 有 constructor以字节数组作为参数。
使用(例如)UTF-8 编码,任何字符串都可以无损地转换为字节数组:
byte[] bytes = string.getBytes(StandardCharsets.UTF_8);
将两者结合起来,您就可以轻松地将 String 转换为 BigDecimal。
对于相反的操作,使用 BigInteger.toByteArray() ,然后new String(bytes, StandardCharsets.UTF_8)
。
关于java - 转换明文以执行 Elgamal 加密,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30647542/
对于提出这个问题的不礼貌,我提前表示歉意,但我已经被困了很长时间,我正在努力弄清楚下一步该怎么做。本质上,我正在尝试对某些数据执行 ElGamal 加密。我得到了一个临时 key 对的公共(publi
如何为 elgamal 签名方案找到生成器?大多数程序使用的值是好的生成器吗?还是有一种方法可以找到素数的生成器?如果是这样,如何?是否可以说质数至少有 1 个生成元? 最佳答案 使用 DSA 而不是
我已经基于 this 在 JavaScript 中实现了一个 ElGamal 方案(代码很糟糕,只是想快速测试一下)解释。 var forge = require('node-forge'); var
我正在使用 El Gamal 密码系统,我的目标是能够加密和解密长文本序列。 El Gamal 要求明文是一个整数。我使用字符串的 .getBytes() 方法将我的字符串转换为 byte[],然后从
嗨,我正在用 java 编写一个程序来测试 elgamal 加密的变体,但是我的问题不是加密/解密链本身,而是如何对给定的输入执行操作:文本文件。我有一个文本文件,其中包含一些单词(例如内容可以是:“
我有以下 ElGamal 加密方案 const forge = require('node-forge'); const bigInt = require("big-integer"); // Gen
我一直致力于加密字符串并将其显示为二维码(在对字符串进行 Base64 编码之后)。 我想使用PyCrypto中的ElGamal私钥-公钥加密模块进行加密,但问题是它没有导出功能将 key 保存到文本
我正在尝试使用 ElGamal 加密和解密文本文件以进行研究,但似乎无法使其正常工作。我有一组 1kb - 1mb 的文本文件,我使用 512 位作为我的 key 大小。我已经知道,就像 RSA 一样
我发现OpenSSL尚未实现ElGamal。但是,目前我需要使用OpenSSL来实现ElGamal。我只是想知道以前是否有人这样做过。这可能会帮助我减轻工作负担。如果没有,在 OpenSSL 中实现
我正在使用 Libgcrypt 和 Elgamal 来加密一个字节块,但我遇到了两个问题: 当我不使用填充并且我的字节块以零字节开始时,我在解密过程中丢失了第一个字节; 如果我使用填充,加密效果很好,
(这纯粹是出于学术目的) 我已经使用充气城堡实现了 RSA 和 ElGamal,但我不确定如何实现 EC ElGamal。充气城堡规范中的第 4.4 节说:“org.bouncycaSTLe.cryp
长话短说:我需要使用 ElGamal 加密来对编码数字执行乘法。 我目前正在将 Kotlin 与 OpenJDK 1.8 一起使用,并找到了一个名为 Bouncy CaSTLe 的 JCE 不错的提供
我创建了一个小程序来使用 Bouncy CaSTLe 1.47 API 生成 DSA/El Gamal PGP key 环。 key 生成非常顺利,没有错误。我使用装甲输出将私钥和公钥导出到一个文件中
要在 java 代码中使用 ElGamal 方案加密消息,我按以下步骤进行: Security.addProvider(new org.bouncycastle.jce.provider.Bouncy
我是一名优秀的程序员,十分优秀!