首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从Cryptico.js保存RSA密钥对象

从Cryptico.js保存RSA密钥对象
EN

Stack Overflow用户
提问于 2014-12-24 13:15:32
回答 1查看 1.1K关注 0票数 1

我很难找到如何将javascript对象转换为某个变量(数组?)并使用如下代码保存:

代码语言:javascript
复制
function onDownload() {
    document.location = 'data:Application/octet-stream,' +
                         encodeURIComponent(RsaKey);
}

为什么?

库密码(文档:github)为我提供了一个易于使用的RSA接口。但是当我的噩梦发生时,生成的密钥对,是一个对象。我不知道如何将这个对象从客户端的浏览器导出到文件中,以便以后使用。键的公共部分,可以通过函数在字符串中转换。

publicKeyString

但是私人的部分,在物体里面。我读过关于RSA算法的文章,发现在私钥中最重要的是"d“,在rsa.js内部的密钥gen函数中有"d”。

this.d = ee.modInverse(phi);

我试图得到这个值,并将其放入字符串中,但没有工作。不知道还能做什么。感谢你的帮助。

EN

回答 1

Stack Overflow用户

发布于 2017-01-30 16:18:22

如果您正在使用cryptico.js,可以使用rsa.js和jsbn.js,然后从存储库(https://github.com/wwwtyro/cryptico)添加到您的项目中。

并尝试在localStorage上保存以下内容:

代码语言:javascript
复制
localStorage["strPrivateKey"] = JSON.stringify(RSAKey.toJSON());

试着把钥匙拿回来:

代码语言:javascript
复制
var key = RSAParse(localStorage["strPrivateKey"]);

如果由于某种原因,RSAParse()不在rsa.js上,则可以添加:

代码语言:javascript
复制
function RSAParse(rsaString) {
    var json = JSON.parse(rsaString);
    var rsa = new RSAKey();

    rsa.setPrivateEx(json.n, json.e, json.d, json.p, json.q, json.dmp1, json.dmq1, json.coeff);

    return rsa;
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27637516

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档