"Wade L. Scholine" <[EMAIL PROTECTED]>:
>> Record layer is below the whole stuff (menaing the
>> handshake protocol itsself uses the record layer as
>> well).
> But the record layer is basically doing no-ops (except maybe
> fragmentation & defragmentation) during the initial handshake?
Yes. I include an example of an SSL 3 connection (just the first
handshake messages, as the certificates are usually quite large).
You can match the bytes with the message contents as specified:
The first 16 byte (22 decimal) is a handshake ContentType byte,
then 03 00 follows (the version number), then 00 47 (the length of
that handshake record), then 01 (a client_hello HandshakeType byte),
and so on. Note that the various levels of the record layer don't
all add content type, version, and length prefixes of their own, even
though the specifiation may appear to require this. I doesn't --
most of those types are not encapsulated into those of the next level,
they just serve as imput to the next layer (which passes type and
version unchanged), and things of course can be implemented without
really using them.
>>> 000000 16 03 00 00 47 01 00 00 43 03 00 37 32 1f 20 3b ....G...C..72. ;
>>> 000010 b5 32 63 9c 57 7a 19 99 d3 13 e2 c4 29 9a 72 42 .2c.Wz......).rB
>>> 000020 2b 48 c7 51 f5 09 00 e1 89 b2 43 00 00 1c 00 16 +H.Q......C.....
>>> 000030 00 13 00 0a 00 07 00 05 00 04 00 15 00 12 00 09 ................
>>> 000040 00 14 00 11 00 08 00 06 00 03 01 00 ............
<<< 000000 16 03 00 00 4a 02 00 00 46 03 00 37 32 1f 20 91 ....J...F..72. .
<<< 000010 91 89 1d 30 e5 e5 a7 fa ee 52 32 e7 1a 95 ac 7c ...0.....R2....|
<<< 000020 63 7e b5 0f 8d a4 ff b6 dc e0 00 20 4f 08 f3 3b c~......... O..;
<<< 000030 09 1d 4a 4d 45 52 bc 9a 65 d9 aa 0c 99 2c 26 f8 ..JMER..e....,&.
<<< 000040 a2 1a 6e fb cd ee 7a 8e 07 bd cf 16 00 0a 00 16 ..n...z.........
<<< 000050 03 00 01 e4 0b 00 01 e0 00 01 dd 00 01 da 30 82 ..............0.
<<< 000060 01 d6 30 82 01 3f 02 01 01 30 0d 06 09 2a 86 48 ..0..?...0...*.H
<<< 000070 86 f7 0d 01 01 04 05 00 30 45 31 0b 30 09 06 03 ........0E1.0...
<<< 000080 55 04 06 13 02 41 55 31 13 30 11 06 03 55 04 08 U....AU1.0...U..
<<< 000090 13 0a 53 6f 6d 65 2d 53 74 61 74 65 31 21 30 1f ..Some-State1!0.
<<< 0000a0 06 03 55 04 0a 13 18 49 6e 74 65 72 6e 65 74 20 ..U....Internet
<<< 0000b0 57 69 64 67 69 74 73 20 50 74 79 20 4c 74 64 30 Widgits Pty Ltd0
<<< 0000c0 1e 17 0d 39 39 30 35 30 31 30 31 32 36 33 35 5a ...990501012635Z
<<< 0000d0 17 0d 39 39 30 35 33 31 30 31 32 36 33 35 5a 30 ..990531012635Z0
[.................]
______________________________________________________________________
OpenSSL Project http://www.openssl.org
User Support Mailing List [EMAIL PROTECTED]
Automated List Manager [EMAIL PROTECTED]