JuneAndGreen / sm-crypto

国密算法js版
MIT License
894 stars 245 forks source link

原生js调用报错 Cannot read properties of null (reading 'multiply') #76

Closed DemoLiang closed 9 months ago

DemoLiang commented 1 year ago

image 使用原生JS去调用加密函数一直报错: Cannot read properties of null (reading 'multiply')

JuneAndGreen commented 1 year ago

给下调用参数,这个一般是入参有问题,没办法解成 BigInteger

DemoLiang commented 1 year ago

我是拷贝了dist里面的sm.js 然后直接原生调用的方式调的

<script src="/static/js/sm-crypto/sm2.js">
function Encrypt(passwd,publicKey) {
        passwd = sm2.doEncrypt(passwd,publicKey)
        return passwd
    }
</script>
JuneAndGreen commented 1 year ago

给下复现问题的 demo 和入参?

GunhouWong commented 1 year ago

@JuneAndGreen 我这边使用下面这个公钥来加密也会出现这个异常,这边后端是用Hutool来生成密钥的。

public key(hex): 3059301306072a8648ce3d020106082a811ccf5501822d034200046ec5111941a9a9c22ac3f48c238e875bbe9612682a2f25d64a53cb3fbcc79bdd17861e19b6f94d81fdac2b3cd16fd316da02894874f2ba0dee8eef607a8f51e4 private key(hex): 308193020100301306072a8648ce3d020106082a811ccf5501822d047930770201010420e09874ce246c8635e0f73e26c40a257493e40499faa33c0753539a4af2d01d44a00a06082a811ccf5501822da144034200046ec5111941a9a9c22ac3f48c238e875bbe9612682a2f25d64a53cb3fbcc79bdd17861e19b6f94d81fdac2b3cd16fd316da02894874f2ba0dee8eef607a8f51e4

JuneAndGreen commented 1 year ago

公钥不符合预期,看看是不是 #72 提到的问题?

varlinor commented 10 months ago

参考下这个获取公钥,默认用hutool的privateKey,各种不识别。 https://blog.csdn.net/qq_33140565/article/details/113818235