Re: [TLS] [perpass] Let's remove gmt_unix_time from TLS (Martin Rex) Thu, 12 September 2013 04:17 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id 7C16421F9C06; Wed, 11 Sep 2013 21:17:40 -0700 (PDT)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -10.249
X-Spam-Status: No, score=-10.249 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, HELO_EQ_DE=0.35, RCVD_IN_DNSWL_HI=-8]
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id 13sas5iH2Gqx; Wed, 11 Sep 2013 21:17:36 -0700 (PDT)
Received: from ( []) by (Postfix) with ESMTP id 1EC7521F9E99; Wed, 11 Sep 2013 21:17:35 -0700 (PDT)
Received: from by (26) with ESMTP id r8C4HXJi025819 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK); Thu, 12 Sep 2013 06:17:33 +0200 (MEST)
In-Reply-To: <>
To: Nick Mathewson <>
Date: Thu, 12 Sep 2013 06:17:33 +0200 (CEST)
X-Mailer: ELM [version 2.4ME+ PL125 (25)]
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Type: text/plain; charset="US-ASCII"
Message-Id: <>
From: (Martin Rex)
X-SAP: out
Cc:, "" <>
Subject: Re: [TLS] [perpass] Let's remove gmt_unix_time from TLS
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: "This is the mailing list for the Transport Layer Security working group of the IETF." <>
List-Unsubscribe: <>, <>
List-Archive: <>
List-Post: <>
List-Help: <>
List-Subscribe: <>, <>
X-List-Received-Date: Thu, 12 Sep 2013 04:17:40 -0000

Nick Mathewson wrote:
> My issue here right now that, even *after* taking all these
> precautions, the gmt_unix_time issue remains, and the TLS 1.2 RFC
> doesn't make it optional.

Huh?  where in rfc6101, rfc2246, rfc4346 or rfc5246 do you find
_anything_at_all_ that could be remotely interpreted as a
requirement for ClientHello.Random.gmt_unix_time to have any
specific value or be within any particular value range -- 
in contradiction to what section says?

(Same for ServerHello.Random.gmt_unix_time).

       Structure of this message:
           The client hello message includes a random structure, which is
           used later in the protocol.

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

       The current time and date in standard UNIX 32-bit format (seconds
       since the midnight starting Jan 1, 1970, GMT) according to the
       sender's internal clock. Clocks are not required to be set
       correctly by the basic TLS Protocol; higher level or application
       protocols may define additional requirements.

Which part of "Clocks are not required to be set correctly by the
basic TLS protocol" is unclear?  This explicitly spells out that
one can send _ANY_ pattern of 32 bits as gmt_unix_time, as far as
the SSLv3&TLS protocol specifications themselves are concerned.