user3663882
user3663882

Reputation: 7367

ProtocolVersion in the ClientHello message ssl

SSL3.0 specification/page22 provides the following structure description:

The structure of the client hello is as follows.

 struct {
     ProtocolVersion client_version;
     Random random;
     SessionID session_id;
     CipherSuite cipher_suites<2..2^16-1>;
     CompressionMethod compression_methods<1..2^8-1>;
 } ClientHello;

Well, Random structure is described as follows:

struct {
       uint32 gmt_unix_time;
       opaque random_bytes[28];
} Random;

It's not clear what about the other structures? ProtocolVersion, CipherSuite, CompressionMethod... How should they be defined?

Upvotes: 1

Views: 70

Answers (2)

user207421
user207421

Reputation: 311054

They are all defined in RFC 2246 &ff. The document you cited expired nearly 20 years ago.

Upvotes: 1

Steffen Ullrich
Steffen Ullrich

Reputation: 123629

Just look at bit more at the specification and you'll find in 5.2.1:

 struct {
     uint8 major, minor;
 } ProtocolVersion;

and in other places

 uint8 CipherSuite[2];

 enum { null(0), (255) } CompressionMethod;

Hint: using some kind of search for words helps a lot. You'll find this facility in the browser and most editors or viewers have this too.

Upvotes: 1

Related Questions