简单描述一下要点,已知条件:
a = C564EEF070E69190
b = 22996B9C33AEEFDB
p = C564EEF070E69193
n = C564EEF19A080B07
px = 2223A1D595845FA2
py = 1C4EEE9222DDDA62
qx = 297A4A1E5B1FC99B
qy = 880198E3724F9FEE 

对应椭圆曲线:
y^2 = x^3 + C564EEF070E69190*x + 22996B9C33AEEFDB

用ECDLP Solver求解出d:
d = 54656E63656E7420 = "Tencent "

签名过程:
e = sha1(name)
r = px
s = (rd+e) mod n
r和s拼起来就是16字节的签名结果
直接用px虽然不安全,但是合法,额外的好处是省去了对大数库的依赖:)

解决了这个ecdsa部分以后,其他算法比如blowfish和sms4都应该没什么难度了,找到标准算法,只要细心对比修改一下就可以了。

上传的附件 kg_22.rar