sm2怎么取消asn1签名
Closed this issue · 4 comments
GUOCHE6 commented
sm2怎么取消asn1签名
lpilp commented
不明白你什么意思, 标准签名asn1(r,s), 你是指,你指的取消是返回直接是r + s的字符串组合?
这个你可以修改sm2Singer类的返回值,或者把签名的asn1串解开,只有两个字符串的asn1直接用substr 截出r, s就行,
GUOCHE6 commented
现在使用asn1(r,s)是142位的,想取消asn1;return new Signature( $r, $s );是在这里修改吗
lpilp commented
是的,但不建议用 r+s的形式,可以其他的组合形式,比如json串什么的, 这个r,s的大数运算后,结果上 result%n , 这时就可能算出来的大数就位数就不固定了,就是 r,s的位数有小概率不固定长度,,签名给别人的时候,就不知道如何拆开,所以还得加上补0操作,保证 r, s的位数固定,这种做法不太可取
GUOCHE6 commented
明白了,非常感谢