问题标签 [jsencrypt]

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

groovy - JMeter - 使用 Groovy 的 JsenEncrypt,因此不会在每个线程调用加密期​​间过载 js 负载

使用 jsr223 预处理器的 JMeter 想使用 groovy 作为语言。如何将当前代码转换为 groovy,以便下面的代码在作为每个线程的一部分执行时不会导致任何性能瓶颈

脚本如下所示:

在此处输入图像描述

0 投票
1 回答
1674 浏览

javascript - 在 C# 中通过 JS 解密 RSA 公钥加密数据的问题

The data to be decrypted exceeds the maximum for this modulus of 256 bytes在 C# 中解密 RSA 加密字符串时出现错误。

我想要达到的目标:

  1. 在 C# (RSA) 中生成公钥/私钥对
  2. 将私钥保存在会话/临时存储中以在解密期间使用
  3. 向客户端/JS 发送/返回公钥以用于加密
  4. 用公钥加密 JS 中的字符串(最多 20 个字符)并发送到服务器
  5. 使用步骤 2 中保存的私钥解密服务器中的加密字符串

什么有效:

  1. 生成公钥/私钥对
  2. 使用库jsencrypt在 JS 中进行加密

到目前为止编写的代码:

C#

JS

更新/变化:

如果我将密钥大小设为 1024 而不是 2048,我得到的错误是The data to be decrypted exceeds the maximum for this modulus of 128 bytes.. 根据我在调试器中看到的内容,加密字符串的总字节数为 172。

更新 | 解决方案:

  1. 删除 JS 中的这一行var base64result = btoa(encrypted);。直接返回加密值即可。
  2. 在 C# 解密方法中,将此行更改var bytesPlainTextData = csp.Decrypt(bytesCypherText, false);var bytesPlainTextData = csp.Decrypt(bytesCypherText, RSAEncryptionPadding.Pkcs1);.

笔记:

  • 请忽略不正确的方法返回类型,这仍然是一个 POC,并且正在手动填充许多值。
  • 我不是安全问题方面的专家,所以很多代码都是从不同的来源挑选出来的。
0 投票
1 回答
268 浏览

angular - 客户端-服务器程序之间的加密-解密不起作用

我们正面临数据加密解密的问题。在服务器端,我们有这样的解密 java 代码

对于客户端的加密,我们使用 jsencrypt。代码看起来像这样

我们使用 RSA-3072 密钥生成技术来创建公钥和私钥。谁能建议我在 angularjs 中进行适合服务器端实现的加密的最佳方法?


更新:

样本:

原始数据:4000000000000002

私钥:

公钥:

加密数据:

例外:


更新:

0 投票
0 回答
438 浏览

java - 当使用 jsencrypt.min.js 加密和 java 解密时抛出异常

当使用 jsencrypt.min.js 加密和 java 解密时抛出异常

strp1:

后端 private_key 是:

后端 public_key 是:

step2:我使用vue.js导入jsencrypt.min.js加密代码,代码为:

第3步:使用java解密该代码,然后抛出Excetpion

我的java解密代码是

MAX_DECRYPT_BLOCK = 128

我发现step2 code字节数组长度是256,但是如果解密这段代码

我可以得到正确的结果,然后我更改了 MAX_DECRYPT_BLOCK = 256,但仍然没有用,然后我看到有人说“jsencrypt 使用 pkcs1 规则,java 使用 pkcs8 规则”,我尝试了 Cipher.getInstance("RSA/ECB/PKCS1Padding") 但仍然没用。

你有什么想法来解决这个问题

0 投票
0 回答
730 浏览

reactjs - jsencrypt 使用公钥加密的替代方案

我目前正在使用jsencrypt公钥加密文本。这就是我所拥有的。

文件.jsx

是否有另一个图书馆可以做到这一点?我正在阅读crypto-js但我不确定它是否在上面。

0 投票
0 回答
265 浏览

php - JSEncrypt 可以签名和验证,但 PHP openssl_verify 失败

JSEncrypt 可以签名和验证,但 PHP openssl_verify 失败

使用 JSEncrypt 签名/验证消息可以正常工作。但是,当我使用 openssl_verify 将数据发送到 PHP 服务器进行验证时,它会返回:

错误:0906D06C:PEM 例程:PEM_read_bio:没有起始行

知道为什么吗?

0 投票
0 回答
329 浏览

javascript - Javascript不解密,laravel RSA加密字符串

问题陈述

我需要使用 RSA 算法在 Laravel 中加密细节,然后在 Javascript 中解密。

所做的努力

在 laravel 中,我使用phpseclib库进行加密。下面给出了用于加密字符串的 Laravel 代码...

下面给出了这个脚本的输出。

私钥

我正在使用jsencrypt库来解密 RSA 字符串。

下面给出了控制台中js代码的输出...

要求

这是在单独的离线系统中解密字符串所必需的。我不会在实时网站上使用 javascript 解密。而是在离线系统上使用 javascript 进行解密。

0 投票
1 回答
1167 浏览

node.js - [Nodejs - Crypto][JSencrypt] rsa 例程:RSA_padding_check_PKCS1_OAEP_mgf1:oaep 解码错误

我正在使用NodeJS Crypto模块在后端使用 RSA 进行加密和解密,并在前端 RSA使用JSencrypt

但问题是每当我在前端使用公钥加密时,我的后端都会抛出这个错误(PS:我在 NuxtJS 中使用它,所以使用导入函数。)

然后每当我尝试在后端使用这段代码进行解码时,它都会抛出这个

这是我使用 privateKey 进行 RSA 解码的后端代码

0 投票
1 回答
1599 浏览

encryption - 了解 JSEncrypt

我一直在探索各种用于 RSA 加密和解密的 JavaScript 库,并且在https://cdnjs.cloudflare.com/ajax/libs/jsencrypt/2.3.1/jsencrypt.min.js遇到了一个 JSEncrypt 。

但是,我很难理解这个库用于 RSA 加密和解密的逻辑和操作。主要是,

  1. 加密算法使用了哪些算法?
  2. 使用了哪些填充方案?
  3. 有盐吗?如果是这样,盐是如何产生的?
  4. 任何其他应注意的信息。

我找不到该库的任何体面的文档,也无法理解源代码的丝毫。任何帮助是极大的赞赏。

0 投票
1 回答
483 浏览

javascript - jsencrypt 从加密函数返回空解密字符串

我正在玩 jsencrypt 并注意到一些非常奇怪的东西。这是我的代码。如果它们在变量中,则加密和解密工作。但是当我控制台记录 enc 然后将值复制到字符串中时,解密返回 null。有谁知道我做错了什么?