Re: [tcpm] Test vectors for RFC5925 algorithms?

"Scharf, Michael" <Michael.Scharf@hs-esslingen.de> Thu, 16 April 2020 16:31 UTC

Return-Path: <Michael.Scharf@hs-esslingen.de>
X-Original-To: tcpm@ietfa.amsl.com
Delivered-To: tcpm@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 7ACBB3A0DBD for <tcpm@ietfa.amsl.com>; Thu, 16 Apr 2020 09:31:47 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.097
X-Spam-Level:
X-Spam-Status: No, score=-2.097 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, SPF_HELO_NONE=0.001, SPF_NONE=0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=hs-esslingen.de
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 1uMeeKXavB4T for <tcpm@ietfa.amsl.com>; Thu, 16 Apr 2020 09:31:45 -0700 (PDT)
Received: from mail.hs-esslingen.de (mail.hs-esslingen.de [134.108.32.78]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 026BD3A0DB6 for <tcpm@ietf.org>; Thu, 16 Apr 2020 09:31:44 -0700 (PDT)
Received: from localhost (localhost.localdomain [127.0.0.1]) by mail.hs-esslingen.de (Postfix) with ESMTP id 07ED025A12; Thu, 16 Apr 2020 18:31:43 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=hs-esslingen.de; s=mail; t=1587054703; bh=yaNmpEFTnaKATuEcwvrTPNeMff5eE3lbwSx2q5CN/8s=; h=From:To:CC:Subject:Date:References:In-Reply-To:From; b=bzIL8A/JU1ymr3Ny3x9DyoZLe8ubxuQPY+eksBHZ7OC+cpTEOwBvoxvW9MynX8rQS fFsofjRPD6qJMLCKpFIpSvabQuuWU7MRXUesz1h1jZGMoMtekf66g9bw6fqK6sf0j3 Y9dcT+v4TDbSxp2Nq7TH/ujNyp5p+zdtA3o0pE3U=
X-Virus-Scanned: by amavisd-new-2.7.1 (20120429) (Debian) at hs-esslingen.de
Received: from mail.hs-esslingen.de ([127.0.0.1]) by localhost (hs-esslingen.de [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 4y4EXJhV681Z; Thu, 16 Apr 2020 18:31:41 +0200 (CEST)
Received: from rznt8101.rznt.rzdir.fht-esslingen.de (rznt8101.rznt.rzdir.fht-esslingen.de [134.108.29.101]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by mail.hs-esslingen.de (Postfix) with ESMTPS; Thu, 16 Apr 2020 18:31:41 +0200 (CEST)
Received: from RZNT8114.rznt.rzdir.fht-esslingen.de ([169.254.3.209]) by rznt8101.rznt.rzdir.fht-esslingen.de ([fe80::bd73:d6a9:24d7:95f1%10]) with mapi id 14.03.0468.000; Thu, 16 Apr 2020 18:31:41 +0200
From: "Scharf, Michael" <Michael.Scharf@hs-esslingen.de>
To: "juhamatk@gmail.com" <juhamatk@gmail.com>
CC: Joseph Touch <touch@strayalpha.com>, "tcpm@ietf.org" <tcpm@ietf.org>
Thread-Topic: [tcpm] Test vectors for RFC5925 algorithms?
Thread-Index: AQHWB0lfUk5cDvT0M0+o4ytgvsbwRKhi6ecAgADUtQCAACc4sIABaoiAgBa48iA=
Date: Thu, 16 Apr 2020 16:31:41 +0000
Message-ID: <6EC6417807D9754DA64F3087E2E2E03E2DA73D5B@rznt8114.rznt.rzdir.fht-esslingen.de>
References: <CACS3ZpCawjTF4YMg+Rm7pOkjO2NQB-BZLBvobZCg2kyRQgaNzw@mail.gmail.com> <AFABEFAB-AA58-4599-94E3-06889E38DC01@strayalpha.com> <CACS3ZpAqdeF6xivndh7EqOqwYebyziyP6AQkKVWZww6nC=Zo0Q@mail.gmail.com> <6EC6417807D9754DA64F3087E2E2E03E2DA4B5C7@rznt8114.rznt.rzdir.fht-esslingen.de> <CACS3ZpAyYahfCfibCKwZkb6u3VAk2UiXViMGbdH3t76iUyY5fw@mail.gmail.com>
In-Reply-To: <CACS3ZpAyYahfCfibCKwZkb6u3VAk2UiXViMGbdH3t76iUyY5fw@mail.gmail.com>
Accept-Language: de-DE, en-US
Content-Language: de-DE
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-originating-ip: [134.108.48.165]
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
MIME-Version: 1.0
Archived-At: <https://mailarchive.ietf.org/arch/msg/tcpm/_9a-MjfOCCsXgQuWU3j9Q5EHPeg>
Subject: Re: [tcpm] Test vectors for RFC5925 algorithms?
X-BeenThere: tcpm@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: TCP Maintenance and Minor Extensions Working Group <tcpm.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/tcpm>, <mailto:tcpm-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/tcpm/>
List-Post: <mailto:tcpm@ietf.org>
List-Help: <mailto:tcpm-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/tcpm>, <mailto:tcpm-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 16 Apr 2020 16:31:48 -0000

Hi Juhamatti,

> -----Original Message-----
> From: juhamatk@gmail.com <juhamatk@gmail.com>
> Sent: Thursday, April 2, 2020 9:28 AM
> To: Scharf, Michael <Michael.Scharf@hs-esslingen.de>
> Cc: Joseph Touch <touch@strayalpha.com>; tcpm@ietf.org
> Subject: Re: [tcpm] Test vectors for RFC5925 algorithms?
> 
> Hello Michael,
> 
> > Have you checked other router vendors? For instance, the public Cisco IOS XE
> documentation lists TCP-AO support. And I have also heard that another main
> router vendor may implement TCP-AO (well, I am not familiar with Juniper).
> 
> I am aware that Cisco has an implementation. It is quite new, and
> unfortunately I do have experience of it. If someone has, then that
> may well be a very good candidate for test vectors.

Coming back to this, as I have just found another document: According to reference [1], Nokia SROS implements TCP-AO as well.

Michael


[1] Nokia SROS documentation at https://documentation.nokia.com/cgi-bin/dbaccessfilename.cgi/3HE15811AAAATQZZA01_V1_7450%20ESS%207750%20SR%207950%20XRS%20and%20VSR%20Basic%20System%20Configuration%20Guide%2020.2.R1.pdf



> 
> > BTW, if there is some gap in the RFC series, the usual IETF process is just
> starting a new Internet-Draft, instead of waiting for somebody else to write
> something. It is not complex to write an Internet Draft. And TCPM is usually
> quite open to new work.
> 
> I am not that familiar with the draft process. I agree that if test
> vectors do not already exist, that may be the best path to go forward.
> Here below is a draft outline that perhaps provides the information
> needed to ensure compatible implementations. If there is some
> consensus that proceeding with this would be useful, perhaps we can
> use it as a starting point. We need to fill the verified test vectors
> there eventually.
> 
> Test Vectors for Cryptographic Algorithms of the TCP Authentication
> Option (TCP-AO)
> -
> Introduction
> Key Derivation Functions Test Vectors
>  * KDF_HMAC_SHA1
>    - A test TCP/IP frame: syn snd key output
>    - A test TCP/IP frame: syn rcv key output
>    - A test TCP/IP frame: other snd key output
>    - A test TCP/IP frame: other rcv key output
>  * KDF_AES_128_CMAC
>    - A test TCP/IP frame: syn snd key output
>    - A test TCP/IP frame: syn rcv key output
>    - A test TCP/IP frame: other snd key output
>    - A test TCP/IP frame: other rcv key output
> MAC Algorithms Test Vectors
>  * HMAC-SHA-1-96
>    - A test key with test TCP/IP frame: MAC output, MAC output without options
>  * AES-128-CMAC-96
>    - A test key with test TCP/IP frame: MAC output, MAC output without options
> Security Considerations
> Acknowledgements
> References
> 
> > Michael
> 
> Thanks,
> --
>  Juhamatti
> 
> > > -----Original Message-----
> > > From: tcpm <tcpm-bounces@ietf.org> On Behalf Of juhamatk@gmail.com
> > > Sent: Wednesday, April 1, 2020 9:30 AM
> > > To: Joseph Touch <touch@strayalpha.com>
> > > Cc: tcpm@ietf.org
> > > Subject: Re: [tcpm] Test vectors for RFC5925 algorithms?
> > >
> > > Hello Joe,
> > >
> > > > At best, those might be an addendum to RFC 5926. RFC 5925 deliberately
> > > does not specify any algorithms.
> > >
> > > Thanks for your reply. Addendum to RFC 5926 sounds really good to me.
> > >
> > > > However, TCP MD5 was widely deployed without any such test vectors in
> the
> > > RFC series (or elsewhere I could find, FWIW).
> > >
> > > True. Still, RFC 2385 is only 4 pages long and implementation is very
> > > simple. It had wide deployment from the beginning, I believe, so it
> > > was easy to make implementations match.
> > >
> > > I am currently working on a proprietary implementation of RFC
> > > 5925/5926. Even though the RFCs are ten years old, they have only a
> > > few existing implementations. Test equipment vendors (IXIA, Spirent)
> > > do not support it. Juniper does not use it, they seem to use their own
> > > proprietary version. One fuzzing vendor seems to have HMAC-SHA1
> > > implemented, but it is unclear is it according to the RFCs.
> > > Guaranteeing interop looks quite difficult at the moment.
> > >
> > > So if test vectors already exist somewhere (maybe unpublished), or
> > > someone is willing to create them for the addendum draft referenced
> > > above, I am certainly willing to verify them against my implementation
> > > and report back.
> > >
> > > > Joe
> > >
> > > Thanks,
> > > --
> > >  Juhamatti
> > >
> > > >
> > > > > On Mar 31, 2020, at 3:44 AM, juhamatk@gmail.com wrote:
> > > > >
> > > > > Hello,
> > > > >
> > > > > I have been searching for test vectors for RFC5925/5926 algorithms for
> > > > > TCP AO and to my surprise it seems that such do not exist. Am I
> > > > > correct here?
> > > > >
> > > > > Even though test vectors for HMAC SHA1 (RFC2202) and AES CMAC
> > > > > (RFC4493) are available, it would be useful to have example test
> > > > > vectors for frames using TCP AO - otherwise implementations end up
> > > > > easily not to match. As RFC5925 is 47 pages, there is a room for error
> > > > > and only one mismatch is needed for MACs not to match.
> > > > >
> > > > > I think publishing a new RFC for them would be good, but probably
> > > > > takes some time. Even unofficial, but verified, test vectors on some
> > > > > specified example frames (with and without TCP options), e.g. on this
> > > > > mailing list or otherwise, would be a very good start to get TCP AO
> > > > > more widely implemented. If such already are available somewhere,
> > > > > please do let me know.
> > > > >
> > > > > Thanks,
> > > > > --
> > > > > Juhamatti
> > > > >
> > > > > _______________________________________________
> > > > > tcpm mailing list
> > > > > tcpm@ietf.org
> > > > > https://www.ietf.org/mailman/listinfo/tcpm
> > > >
> > >
> > > _______________________________________________
> > > tcpm mailing list
> > > tcpm@ietf.org
> > > https://www.ietf.org/mailman/listinfo/tcpm