Hello, I have been reading the RFC6347 of DTLS 1.2 and testing the files in the tinydtls-0.8.2/tests and I have one doubt about the current implementation of TinyDTLS:
When the handshake process begin, the second flight message is a Hello Verify Request but accord to the RFC this should be using the DTLS 1.0 original message (p. 16). This is the abstract related to it:
The server_version field has the same syntax as in TLS. However, in
order to avoid the requirement to do version negotiation in the
initial handshake, DTLS 1.2 server implementations SHOULD use DTLS
version 1.0 regardless of the version of TLS that is expected to be
negotiated. DTLS 1.2 and 1.0 clients MUST use the version solely to
indicate packet formatting (which is the same in both DTLS 1.2 and
1.0) and not as part of version negotiation. In particular, DTLS 1.2
clients MUST NOT assume that because the server uses version 1.0 in
the HelloVerifyRequest that the server is not DTLS 1.2 or that it
will eventually negotiate DTLS 1.0 rather than DTLS 1.2.
I understand perfectly that the keyword here is "should". But I'll like to confirm that the reason is because TinyDTLS only supports DTLS 1.2 and is not expected to find nodes using other stacks (by example openSSL).