> On Mar 20, 2018, at 18:45, John Mattsson <john.matts...@ericsson.com> wrote:
> 
> Correct, I just copied pasted the length of the arrays, should be length = 
> cid_length + encrypted_record.length.
> 
> The example was taken from draft-ietf-tls-tls13-27. If I understand 
> correctly, It seems like the same circular definition is done there as 
> well....
> 
> -----------------------------------------------------
>      struct {
>          ContentType opaque_type = application_data; /* 23 */
>          ProtocolVersion legacy_record_version = 0x0303; /* TLS v1.2 */
>          uint16 length;
>          opaque encrypted_record[TLSCiphertext.length];
>      } TLSCiphertext;
> -----------------------------------------------------
> 
> Shouldn't this be...
> 
> -----------------------------------------------------
>      struct {
>          ContentType opaque_type = application_data; /* 23 */
>          ProtocolVersion legacy_record_version = 0x0303; /* TLS v1.2 */
>          uint16 length;
>          opaque encrypted_record[encrypted_record.length];
>      } TLSCiphertext;
> -----------------------------------------------------

There is no field called encrypted_record.length. TLSCiphertext.length refers 
to the length field in the TLSCiphertext struct rather than the length of the 
TLSCiphertext itself (which is a few bytes longer). See Section 3, Presentation 
Language, for the precise definitions.

Steve

> 
> Does this mean the 
> On 2018-03-20, 19:29, "Stephen Checkoway" <s...@pahtak.org> wrote:
> 
> 
> 
>> On Mar 20, 2018, at 11:38, John Mattsson <john.matts...@ericsson.com> wrote:
>> 
>> I think Connection ID is an important enabler for end-to-end security with 
>> (D)TLS. There seems to be important use cases for connection ID in TLS as 
>> well, see https://www.ietf.org/mailman/listinfo/atlas. At the Monday 
>> afternoon TLS session, it was stated that Connection ID in TLS was 
>> unemployable in the wild due to middleboxes. Couldn't that be solved by 
>> placing the cid field after the length field? E.g.
>> 
>>  struct {
>>     ContentType opaque_type = application_data; /* 23 */
>>     ProtocolVersion legacy_record_version = 0x0303; /* TLS v1.2 */
>>     uint16 length;
>>     opaque cid[cid_length];               // New field
>>     opaque encrypted_record[TLSCiphertext.length];
>>  } TLSCiphertext;
>> 
>>  length  The sum of cid_length and TLSCiphertext.length
> 
>    This defines length in terms of itself since length is 
> TLSCiphertext.length.
> 
>    -- 
>    Stephen Checkoway
> 
> 
> 
> 
> 
> 
> 

-- 
Stephen Checkoway



_______________________________________________
TLS mailing list
TLS@ietf.org
https://www.ietf.org/mailman/listinfo/tls

Reply via email to