i was messing around with (self-signed) certificate creation/signing and ran into this. the following two certificates are the same except for the serial number: "with_serial" has a serial number that is zero, and "no_serial" does not have any serial number.
the "with_serial" certificate verifies ok, but the "no_serial" one fails verification with "certificate signature failure." is this expected? if not, i thought the signing is applied to the entire blob of data, so with or without the serial number, the signing code wouldn't know or care to know, so it's probably not a signing problem. then is it a verification problem then? not that this is causing problems for me. just curious. thanks. arch [apps]$ ./openssl version OpenSSL 0.9.8g 19 Oct 2007 arch [apps]$ arch [apps]$ ./openssl verify -CAfile /tmp/with_serial.pem /tmp/with_serial.pem /tmp/with_serial.pem: OK arch [apps]$ arch [apps]$ ./openssl verify -CAfile /tmp/no_serial.pem /tmp/no_serial.pem /tmp/no_serial.pem: /CN=test error 7 at 0 depth lookup:certificate signature failure 15143:error:04077068:rsa routines:RSA_verify:bad signature:rsa_sign.c:235: 15143:error:0D0C5006:asn1 encoding routines:ASN1_item_verify:EVP lib:a_verify.c:168: arch [apps]$ arch [apps]$ ./openssl asn1parse -in /tmp/with_serial.pem 0:d=0 hl=4 l= 268 cons: SEQUENCE 4:d=1 hl=3 l= 183 cons: SEQUENCE 7:d=2 hl=2 l= 3 cons: cont [ 0 ] 9:d=3 hl=2 l= 1 prim: INTEGER :02 12:d=2 hl=2 l= 1 prim: INTEGER :00 15:d=2 hl=2 l= 13 cons: SEQUENCE 17:d=3 hl=2 l= 9 prim: OBJECT :sha1WithRSAEncryption 28:d=3 hl=2 l= 0 prim: NULL 30:d=2 hl=2 l= 15 cons: SEQUENCE 32:d=3 hl=2 l= 13 cons: SET 34:d=4 hl=2 l= 11 cons: SEQUENCE 36:d=5 hl=2 l= 3 prim: OBJECT :commonName 41:d=5 hl=2 l= 4 prim: PRINTABLESTRING :test 47:d=2 hl=2 l= 30 cons: SEQUENCE 49:d=3 hl=2 l= 13 prim: UTCTIME :040722175719Z 64:d=3 hl=2 l= 13 prim: UTCTIME :130123152135Z 79:d=2 hl=2 l= 15 cons: SEQUENCE 81:d=3 hl=2 l= 13 cons: SET 83:d=4 hl=2 l= 11 cons: SEQUENCE 85:d=5 hl=2 l= 3 prim: OBJECT :commonName 90:d=5 hl=2 l= 4 prim: PRINTABLESTRING :test 96:d=2 hl=2 l= 92 cons: SEQUENCE 98:d=3 hl=2 l= 13 cons: SEQUENCE 100:d=4 hl=2 l= 9 prim: OBJECT :rsaEncryption 111:d=4 hl=2 l= 0 prim: NULL 113:d=3 hl=2 l= 75 prim: BIT STRING 190:d=1 hl=2 l= 13 cons: SEQUENCE 192:d=2 hl=2 l= 9 prim: OBJECT :sha1WithRSAEncryption 203:d=2 hl=2 l= 0 prim: NULL 205:d=1 hl=2 l= 65 prim: BIT STRING arch [apps]$ arch [apps]$ ./openssl asn1parse -in /tmp/no_serial.pem 0:d=0 hl=4 l= 267 cons: SEQUENCE 4:d=1 hl=3 l= 182 cons: SEQUENCE 7:d=2 hl=2 l= 3 cons: cont [ 0 ] 9:d=3 hl=2 l= 1 prim: INTEGER :02 12:d=2 hl=2 l= 0 prim: INTEGER :00 14:d=2 hl=2 l= 13 cons: SEQUENCE 16:d=3 hl=2 l= 9 prim: OBJECT :sha1WithRSAEncryption 27:d=3 hl=2 l= 0 prim: NULL 29:d=2 hl=2 l= 15 cons: SEQUENCE 31:d=3 hl=2 l= 13 cons: SET 33:d=4 hl=2 l= 11 cons: SEQUENCE 35:d=5 hl=2 l= 3 prim: OBJECT :commonName 40:d=5 hl=2 l= 4 prim: PRINTABLESTRING :test 46:d=2 hl=2 l= 30 cons: SEQUENCE 48:d=3 hl=2 l= 13 prim: UTCTIME :040722175719Z 63:d=3 hl=2 l= 13 prim: UTCTIME :130123152135Z 78:d=2 hl=2 l= 15 cons: SEQUENCE 80:d=3 hl=2 l= 13 cons: SET 82:d=4 hl=2 l= 11 cons: SEQUENCE 84:d=5 hl=2 l= 3 prim: OBJECT :commonName 89:d=5 hl=2 l= 4 prim: PRINTABLESTRING :test 95:d=2 hl=2 l= 92 cons: SEQUENCE 97:d=3 hl=2 l= 13 cons: SEQUENCE 99:d=4 hl=2 l= 9 prim: OBJECT :rsaEncryption 110:d=4 hl=2 l= 0 prim: NULL 112:d=3 hl=2 l= 75 prim: BIT STRING 189:d=1 hl=2 l= 13 cons: SEQUENCE 191:d=2 hl=2 l= 9 prim: OBJECT :sha1WithRSAEncryption 202:d=2 hl=2 l= 0 prim: NULL 204:d=1 hl=2 l= 65 prim: BIT STRING arch [apps]$ arch [apps]$ cat /tmp/with_serial.pem -----BEGIN CERTIFICATE----- MIIBDDCBt6ADAgECAgEAMA0GCSqGSIb3DQEBBQUAMA8xDTALBgNVBAMTBHRlc3Qw HhcNMDQwNzIyMTc1NzE5WhcNMTMwMTIzMTUyMTM1WjAPMQ0wCwYDVQQDEwR0ZXN0 MFwwDQYJKoZIhvcNAQEBBQADSwAwSAJBALFAze8BSQUyQvvwbWw86Jh7wwOsTAMa cc8uKQ3ZCgR9CnsvMgsSfHR9XPLzcGkXwuUIDGQ8QWPqNp9g76xqy/kCAwEAATAN BgkqhkiG9w0BAQUFAANBAHtxTN9bC7jCJDs9iKBE7O2U4jMlLievUR3YgWsrfxVJ k1v/vXdL4H8/+QndErV8Bl8AavnsjQjFgfPiOs3pi70= -----END CERTIFICATE----- arch [apps]$ arch [apps]$ cat /tmp/no_serial.pem -----BEGIN CERTIFICATE----- MIIBCzCBtqADAgECAgAwDQYJKoZIhvcNAQEFBQAwDzENMAsGA1UEAxMEdGVzdDAe Fw0wNDA3MjIxNzU3MTlaFw0xMzAxMjMxNTIxMzVaMA8xDTALBgNVBAMTBHRlc3Qw XDANBgkqhkiG9w0BAQEFAANLADBIAkEAsUDN7wFJBTJC+/BtbDzomHvDA6xMAxpx zy4pDdkKBH0Key8yCxJ8dH1c8vNwaRfC5QgMZDxBY+o2n2DvrGrL+QIDAQABMA0G CSqGSIb3DQEBBQUAA0EAiWk2QM5lxijnjQE/D/tsoWf0LZvPIuPC7laTUFUrAIKr JbkAQ9rrf33pf+7JIhiJIgFxVVgOv2PXYKPWC7duUA== -----END CERTIFICATE----- arch [apps]$ arch [apps]$ ./openssl x509 -noout -fingerprint -in /tmp/with_serial.pem SHA1 Fingerprint=C5:DE:16:61:DC:92:2D:47:A6:5F:E0:97:61:2E:AA:D7:BF:91:2E:35 arch [apps]$ arch [apps]$ ./openssl x509 -noout -fingerprint -in /tmp/no_serial.pem SHA1 Fingerprint=A3:34:61:FE:5C:B7:FA:A1:40:43:5D:AC:16:8F:AF:98:CD:76:1C:2D arch [apps]$ _________________________________________________________________ Don't get caught with egg on your face. Play Chicktionary! http://club.live.com/chicktionary.aspx?icid=chick_wlhmtextlink1_dec______________________________________________________________________ OpenSSL Project http://www.openssl.org User Support Mailing List openssl-users@openssl.org Automated List Manager [EMAIL PROTECTED]