public key 的结构是怎样的?

来源:百度知道 编辑:UC知道 时间:2024/06/27 21:58:56
我有个.cer证书,里面有个公钥 RSA(1024bit)
但是真正的他是140byte如下,不过我可以判定的是前7位不是key的主体
因为所有的key都是这个开头的,后5位也不是主体,中间128位是key的主体
我现在要从中分解出public key来 可是不知道 哪个是e 哪个是 N 及其长度
有人能提供这个public key的结构么?

30 81 89 02 81 81 00 e1 e8 45 dc d2 af 83 1a 7c 11 d9 e4 f7 eb 84 85 33 d7 3e 96 47 33 68 29 ef 2b d9 c3 cf 5d 29 c3 d4 be 0a 9e 5d 45 05 6b 09 c0 57 b1 dd c5 87 66 1f 8e 87 5d 06 e1 48 2d 4d a6 f7 a9 d0 d3 65 f4 6a 9f 89 ce 55 10 ec c1 23 40 04 cf d5 47 ac 8a 93 6c b6 59 33 01 46 f8 0b 81 75 d4 bb dd fd 9f 3e d5 4a 75 2b f8 a1 50 15 69 6a 3d 73 f7 11 48 82 96 0e 0b f4 59 72 c0 83 a8 91 3f 30 c5 e9 cf 02 03 01 00 01

你看看asn1的语法描述,里面有der编码规范,看了你就明白了。
X.690是BER、DER编码的标准:http://www.itu.int/ITU-T/studygroups/com17/languages/

30表示SEQUENCE,81 89表示长度为89。
02表示整数,81 81表示长度为81。后面0x81个字节表示n。
由于n为正整数,而e1最高位为1,所以要加00(这是用0x81个字节表示128位key主体的原因) 再接着后面的02表示整数,03表示长度01 00 01为e的值,即e=65537