[openssl-users] Doubt regarding ExtendedMasterSecret

Matt Caswell matt at openssl.org
Tue May 2 08:40:37 UTC 2017

On 30/04/17 19:51, Stiju Easo wrote:
> Hi ,
>    I got the answer to this, and now the question looks bit stupid.
>    Generation of master key is different in case of "Extended Master
> Secret" ,
>    I still have a doubt, what would be the contents in   SSL*
> s->s3->handshake_buffer?
>    I need to manually set this for my tool, i assume it holds both
> client and server handshakes, am i right?
>    if i am right , in openssl , i just need to populate
> s3->handshake_buffer and set  flags to  s->session->flags &
>    only unknown thing i have is  s3->handshake_buffer , what value to
> copy there.

handshake_buffer is a mem BIO that contains a copy of all the handshake
messages sent and received so far - but only sometimes. Dependant on how
the handshake proceeds sometimes this buffer stays active for a while.
Other times it gets released early and instead we keep a rolling hash of
the handshake messages.

The problem is your code is reaching right into the internals of libssl
and playing around with the internal state. In OpenSSL 1.1.0 you will be
unable to do that (the SSL struct is opaque).


More information about the openssl-users mailing list