使用jsrsasign使用加密的RSA密钥进行签名失败

时间:2015-05-11 19:02:46

标签: javascript encryption rsa digital-signature

当使用库javascript库,jsrsasign with angularjs时,我们尝试使用SHA256算法使用私钥对值进行RSA签名

私钥如下所示:(即-----开始加密的私钥-----------结束加密的私钥-----)

片段:

linear-gradient(rgba(255,255,255,0.1) 1px, transparent 1px)

在使用此过程时,我们在第二行收到以下错误消息: “bi.intValue不是函数”

在调试它时,似乎所使用的值具有一个字母字符,该字符使BigInteger库的函数失败。

我的第一个想法是它是私钥文件,但是,我们能够使用NodeJS的Crypto库进行签名过程,并且按预期工作。

我尝试了上述不同版本但没有成功。

1 个答案:

答案 0 :(得分:1)

此问题的解决方案与包含库相关联。这在jsrsasign网站上并不清楚。由于错误是非常暧昧的,一开始很难说。为了实现这一点,您需要包含以下库

<script src="http://yui.yahooapis.com/2.9.0/build/yahoo/yahoo-min.js"></script>

<script src="bower_components/crypto-js/core.js"></script>
<script src="bower_components/crypto-js/x64-core.js"></script>
<script src="bower_components/crypto-js/pbkdf2.js"></script>
<script src="bower_components/crypto-js/crypto-js.js"></script>
<script src="bower_components/crypto-js/hmac.js"></script>
<script src="bower_components/crypto-js/hmac-sha256.js"></script>
<script src="bower_components/crypto-js/sha1.js"></script>
<script src="bower_components/crypto-js/sha256.js"></script>

<script language="JavaScript" type="text/javascript" src="bower_components/jsrsasign/ext/base64.js"></script>
<script language="JavaScript" type="text/javascript" src="bower_components/jsrsasign/ext/jsbn.js"></script>
<script language="JavaScript" type="text/javascript" src="bower_components/jsrsasign/ext/jsbn2.js"></script>
<script language="JavaScript" type="text/javascript" src="bower_components/jsrsasign/ext/rsa.js"></script>
<script language="JavaScript" type="text/javascript" src="bower_components/jsrsasign/ext/rsa2.js"></script>
<script language="JavaScript" type="text/javascript" src="bower_components/jsrsasign/crypto-1.1.js"></script>
<script language="JavaScript" type="text/javascript" src="bower_components/jsrsasign/rsasign-1.2.js"></script>
<script language="JavaScript" type="text/javascript" src="bower_components/jsrsasign/rsapem-1.1.js"></script>
<script language="JavaScript" type="text/javascript" src="bower_components/jsrsasign/asn1-1.0.js"></script>
<script language="JavaScript" type="text/javascript" src="bower_components/jsrsasign/asn1hex-1.1.js"></script>
<script language="JavaScript" type="text/javascript" src="bower_components/jsrsasign/keyutil-1.0.js"></script>

添加必要的库后,返回结果。但是,这不是预期的结果。这是一个单独的问题,将关闭此问题