精易论坛

标题: rsa内存只增不减还有什么其他的rsa写法吗 [打印本页]

作者: 情缘猫咪    时间: 4 天前
标题: rsa内存只增不减还有什么其他的rsa写法吗
我试过用OPENSSL的RSA来公钥加密(模数),内存也是只增不减。然后用E2EE的RSA加解密也是,只增不减,还有没有其他的RSA加密的模块或者DLL支持RSA 无填充公钥加密的呀
  
子程序名返回值类型公开备 注
RSA加密数据文本型 无限制长度(备用暂时不使用)
参数名类 型参考可空数组备 注
公钥文本型
明文文本型
变量名类 型静态数组备 注
明文数据字节集 
length整数型 
rsaRSA加解密 
result文本型 
rsa.载入公钥 (公钥)
明文数据 = 到字节集 (明文)
length = 取字节集长度 (明文数据)
明文数据 = 明文数据 + 取空白字节集 (选择 (length = 128, 0, 128 - length))
rsa.公钥加密 (明文数据, , result, #文本内容类型_十六进制_大写, #RSA填充类型_无填充 )
返回 (result)


i支持库列表   支持库注释   
e2eeE2EE互联网服务器套件

这个代码是我修改后的,应该没啥问题。只是内存的问题一直困扰得不到解决。


补充内容 (2025-6-30 03:36):
128位以内的长度加密够用了,所以就把多余分块加密的去除了

补充内容 (2025-6-30 03:38):
因为我需要服务端进行RSA加密,所以需要纯算法实现公钥加密,不用js版本的。论坛上的OPENSSL、CryptAPI都测了依旧是同样的问题。
作者: Mr.Yang    时间: 4 天前
情缘猫咪 发表于 2025-6-30 03:59
这个我参考过也修改过去测试,依旧是内存只增不减

你的写法应该有问题.除非是每个用户独立公钥/私钥 否则不需要重复载入密钥.如果需要独立验证的 就要考虑内存释放的问题.

补充内容 (2025-6-30 17:27):
内存占用的问题与填充方式无太大关联.
作者: 情缘猫咪    时间: 4 天前
128位以内的长度加密够用了,所以就把多余分块加密的去除了
作者: 石榴熟了    时间: 4 天前
谁教你这样写的啊
作者: 情缘猫咪    时间: 4 天前
石榴熟了 发表于 2025-6-30 03:37
谁教你这样写的啊

这个写法有什么问题吗,因为这种写法计算的结果和OPENSSL的RSA计算的一致,所以就改成这样了
作者: 石榴熟了    时间: 4 天前
RSA结果 怎么会一样呢? 每次结果不是变动的吗
作者: 情缘猫咪    时间: 4 天前
石榴熟了 发表于 2025-6-30 03:41
RSA结果 怎么会一样呢? 每次结果不是变动的吗

因为是无填充,跟OPENSSL一样对齐了128位空白字节集,每次相同数据出的结果就是一致的。
作者: Mr.Yang    时间: 4 天前
OpenSSL_RSA双向加解密_无长度限制
https://125.confly.eu.org/forum.php?mod=viewthread&tid=14783214

这个修改一下就行了.有需要的话 可以有偿定制.
作者: 情缘猫咪    时间: 4 天前
Mr.Yang 发表于 2025-6-30 03:56
OpenSSL_RSA双向加解密_无长度限制
https://125.confly.eu.org/forum.php?mod=viewthread&tid=14783214

这个我参考过也修改过去测试,依旧是内存只增不减
作者: 石榴熟了    时间: 4 天前
情缘猫咪 发表于 2025-6-30 03:59
这个我参考过也修改过去测试,依旧是内存只增不减

既然在服务器 那就在本地搭建一个 go 或者 node 接口~
作者: 明天自然醒    时间: 4 天前
情缘猫咪 发表于 2025-6-30 03:39
这个写法有什么问题吗,因为这种写法计算的结果和OPENSSL的RSA计算的一致,所以就改成这样了 ...

如果公钥只有一个,整个程序载入一次就好了。如果用于多线程,创建一个对象池,分配固定线程数量,每个对象载入一次就够了
作者: tudoucash    时间: 4 天前
填充方式:OAEPPadding
OAEP Hash:SHA256
MGF1 Hash:SHA256

有没有这种方式公式加密?

作者: 江江0    时间: 4 天前
用V8
作者: 情缘猫咪    时间: 4 天前
江江0 发表于 2025-6-30 11:20
用V8

rsv8有最新的模块吗,我想试试看
作者: 情缘猫咪    时间: 4 天前
明天自然醒 发表于 2025-6-30 09:40
如果公钥只有一个,整个程序载入一次就好了。如果用于多线程,创建一个对象池,分配固定线程数量,每个对 ...

公钥有多个的,对象池的话写起来有点绕,还影响效率,因为本身计算RSA已经在线程中执行了。只是直到线程结束依旧没有释放相关的内存
作者: 江江0    时间: 4 天前
这个

V8.7z

1.82 MB, 下载次数: 2


作者: 江江0    时间: 4 天前
江江0 发表于 2025-6-30 15:06
这个

发公钥来,搞个例子给你
作者: clhehy    时间: 4 天前
刷点币,没钱了
作者: 人杰啊    时间: 4 天前
tudoucash 发表于 2025-6-30 10:31
填充方式:OAEPPadding
OAEP Hash:SHA256
MGF1 Hash:SHA256

有这个 需要可私
作者: hongqingfeng    时间: 4 天前
为什么这样写,既然数据都会找了,何不把JS扣出来直接写就行
作者: 情缘猫咪    时间: 3 天前
hongqingfeng 发表于 2025-6-30 19:24
为什么这样写,既然数据都会找了,何不把JS扣出来直接写就行

js的版本怕不适合并发且也怕性能开销大




欢迎光临 精易论坛 (https://125.confly.eu.org/) Powered by Discuz! X3.4