November 14, 2016 Secure MAC algorithms for use with NTP draft-aanchal4-ntp-mac-03 CFRG: IETF97 Aanchal Malhotra Sharon Goldberg.

Slides:



Advertisements
Similar presentations
Tal Mizrahi Marvell IETF Meeting 81, July 2011
Advertisements

CS470, A.SelcukIPsec – AH & ESP1 CS 470 Introduction to Applied Cryptography Instructor: Ali Aydin Selcuk.
Hash Function. What are hash functions? Just a method of compressing strings – E.g., H : {0,1}*  {0,1} 160 – Input is called “message”, output is “digest”
1`` ```` ```` ```` ```` ```` ```` ```` ```` ```` `` AEGIS A Fast Authenticated Encryption Algorithm Hongjun Wu Bart Preneel Nanyang Technological University.
Doc.: IEEE /770r0 Submission July 2009 Slide 1 TGs Authenticated Encryption Function Date: Authors: Russ Housley (Vigil Security), et.
Information Security Principles & Applications Topic 4: Message Authentication 虞慧群
1 Lecture 15: IPsec AH and ESP IPsec introduction: uses and modes IPsec concepts –security association –security policy database IPsec headers –authentication.
Submission doc.: IEEE 11-12/1253r1 November 2012 Dan Harkins, Aruba NetworksSlide 1 Why Use SIV for 11ai? Date: Authors:
Wired Equivalent Privacy (WEP)
Cryptography and Network Security (CS435) Part Ten (Hash and MAC algorithms)
Cryptography and Network Security Chapter 12 Fourth Edition by William Stallings Lecture slides by Lawrie Brown.
Cryptography1 CPSC 3730 Cryptography Chapter 11, 12 Message Authentication and Hash Functions.
Chapter 8.  Cryptography is the science of keeping information secure in terms of confidentiality and integrity.  Cryptography is also referred to as.
Lecture 2: Message Authentication Anish Arora CSE5473 Introduction to Network Security.
Cryptography and Network Security
A Security Analysis of the Network Time Protocol (NTP) Presentation by Tianen Liu.
Message Authentication Requirements Disclosure Release of message contents to any person or process not possessing the appropriate cryptographic key Traffic.
Cosc 4765 SSL/TLS and VPN. SSL and TLS We can apply this generally, but also from a prospective of web services. Multi-layered: –S-http (secure http),
CSCE 715: Network Systems Security Chin-Tser Huang University of South Carolina.
Hash and MAC Functions CS427 – Computer Security
IPsec IPsec (IP security) Security for transmission over IP networks –The Internet –Internal corporate IP networks –IP packets sent over public switched.
Chapter 4 Message Authentication MSc. NGUYEN CAO DAT Dr. TRAN VAN HOAI 1.
Cryptography and Network Security Chapter 12 Fifth Edition by William Stallings Lecture slides by Lawrie Brown.
Internet Protocol Formats. IP (V4) Packet byte 0 byte1 byte 2 byte 3 data... – up to 65 K including heading info Version IHL Serv. Type Total Length Identifcation.
Stein-65 Slide 1 PW security measures PWE3 – 65 th IETF 10 November 2005 Yaakov (J) Stein.
Wireless Security: The need for WPA and i By Abuzar Amini CS 265 Section 1.
1 Chapter 12: Hash and MAC Algorithms Fourth Edition by William Stallings Lecture slides by Lawrie Brown (modified by Prof. M. Singhal, U of Kentucky)
CS426Fall 2010/Lecture 51 Computer Security CS 426 Lecture 5 Cryptography: Cryptographic Hash Function.
CSCE 715: Network Systems Security Chin-Tser Huang University of South Carolina.
Hashes Lesson Introduction ●The birthday paradox and length of hash ●Secure hash function ●HMAC.
Should NIST Develop an Additional Version of GCM? July 26, 2007 Morris Dworkin, Mathematician Security Technology Group
Cryptography CSS 329 Lecture 13:SSL.
@Yuan Xue 285: Network Security CS 285 Network Security Hash Algorithm Yuan Xue Fall 2012.
Emerging Solutions in Network Time Synchronization Security
Message Authentication Code
Chapter 12 – Hash Algorithms
IPSec Detailed Description and VPN
UNIT 7- IP Security 1.IP SEC 2.IP Security Architecture
Information and Computer Security CPIS 312 Lab 9
Reviews Rocky K. C. Chang 20 April 2007.
CSCE 715: Network Systems Security
CSE 4905 IPsec.
Chapter 18 IP Security  IP Security (IPSec)
Internet Control Message Protocol (ICMP)
CSCE 715: Network Systems Security
Agenda CCSDS Network Layer Security IPSec+IKE Profile for CCSDS
Internet Protocol Formats
IPSec IPSec is communication security provided at the network layer.
Cryptography and Network Security Sixth Edition by William Stallings.
Cryptography Lecture 13.
MAC: Message Authentication Code
Cryptographic Hash Functions
Network Security (contd.)
Message Authentication Codes, Hashes and Message Digests
Introduction to Symmetric-key and Public-key Cryptography
Hash and MAC Algorithms
Security Of Wireless Sensor Networks
The University of Adelaide, School of Computer Science
CSCE 715: Network Systems Security
Outline Using cryptography in networks IPSec SSL and TLS.
Security of Wireless Sensor Networks
Internet Protocol Formats
Lecture 4.1: Hash Functions, and Message Authentication Codes
PW security measures PWE3 – 65th IETF 21 March 2005 Yaakov (J) Stein.
Cryptography Lecture 14.
Cryptography Lecture 13.
Cryptography Lecture 13.
Counter With Cipher Block Chaining-MAC
Lecture 36.
Lecture 36.
Presentation transcript:

November 14, 2016 Secure MAC algorithms for use with NTP draft-aanchal4-ntp-mac-03 CFRG: IETF97 Aanchal Malhotra Sharon Goldberg

Message Digest = 324a4b23130fff3eab4581931ee6fa5d4 NTP packet v4 IHL TOS Length IPID Frag Offset TTL Protocol = 17 IP Header Checksum Source IP Destination IP Source Port Dest Port = 123 Checksum LI v Mode 5 Stratum Poll Precision Root Delay Root Dispersion Reference ID Reference Timestamp Origin Timestamp Receive Timestamp Transmit Timestamp Key ID = 00000001 Message Digest = 324a4b23130fff3eab4581931ee6fa5d4 IP header UDP header NTP data NTP packet. Fill in the TOS field – ask Aanchal. NTP MAC

RFC5905 suggests MD5 (key||message) for NTP Why is this bad? MD5 as a hash function is not collision resistant vulnerable to length extension attack Consequently, RFC 6151 says not to use MD5 for authentication this way

Updating NTP’s MAC: potential algorithms Input Key-Length (bytes) Output Tag Length (bytes) Legacy MD5 16 HMAC-MD5 [RFC 4868] HMAC -SHA224 [RFC 4868] CMAC (AES) [RFC 4493] GMAC (AES) [RFC 4543] Poly1305 (ChaCha20) [RFC 7539] We try to include a mix of hash based and cipher based MAC algorithms. Part of the reason for choosing these is the standardization and open source implementations available for these. The upper bound on the security is by 2^128 We include these just for performance comparison

NTP’s performance requirements for its MAC Constant Computational Latency: fewer clock cycles for computation is better this directly translates to a reduction in jitter Throughput: NTP servers deal with thousands of requests per second NIST's NTP stratum 1 servers cater to 28,000 requests/second/server on an average

Performance: latency in clock cycles per byte Hardware Platform: x86_64, Intel(R) Xeon(R) CPU E5-2676 v3 @ 2.40GHz with one core CPU Algorithm with AES-NI w/o AES-NI Legacy MD5 16.0 15.7 HMAC –MD5 18.2 18.1 HMAC -SHA224 39.4 39.0 CMAC (AES) 6.6 11.3 GMAC (AES) 3.0 10.8 Poly1305-ChaCha20 14.4 15.0 Latency in terms of number of CPU cycles per byte (cpb) when processing a 48-byte NTP payload.

Performance: latency in clock cycles per byte Apple PPC74xx @ 1.5GHz ARM Cortex-A9 @ 1GHz (dual core) ARM Cortex-A53 @ 1.2GHz (quad core) Marvell 88F6281 @ 1.2GHz 88FR131 Algorithm PPC74xx ARM Cortex-A9 ARM Cortex-A53 Marvell Legacy MD5 52.1 38.4 33.4 65.3 HMAC (MD5) 67.4 50.3 29.0 57.1 HMAC (SHA224) 113.3 85.2 70.1 166.5 CMAC (AES) 54.2 50.5 40.7 101.2 GMAC (AES) 50.0 15.3 11.4 55.1 Poly1305-ChaCha20 93.1 55.0 43.1 91.7 Latency in terms of number of CPU cycles per byte (cpb) when processing a 48-byte NTP payload.

NTP-specific constraints with using GMAC NTP servers are stateless Symmetric key is shared by many servers (typically at the same stratum) Why is this a problem? Nonce Reuse vulnerability of GMAC : can recover authentication key Nonce length = 96 bits High probability of collision after 2^48 messages (birthday bound) NTP server is stateless - does not know when to refresh keys for a client An MiTM can replay messages and exhaust this number very fast Because there is no good mechanism to share keys.

We recommend CMAC for now! Recommendations Algorithm Performance Security GMAC best weak CMAC medium good HMAC poor We recommend CMAC for now! CMAC (AES) – based on cipher block chaining (CBC) mode Less implementation pitfalls (no nonce use/reuse issues)

Other potential MAC candidates IETF draft for Network Time Security [1] suggests using AEAD_AES_SIV_CMAC_256 [RFC5297] because: Requires unlinkability property for privacy robust against accidental nonce-reuse GCM-SIV Nonce misuse resistant GMAC-SIV takes ~5.9 CPU cycles/byte (compared to ~3 on GMAC and ~6.6 on CMAC) Still an Internet draft. Not widely implemented? SipHash (PRF?) - Optimized to work with short messages Other CAESAR AEAD competition candidates References [1] https://tools.ietf.org/html/draft-ietf-ntp-using-nts-for-ntp-07

Questions for cfrg? Is there a better option? Can we use GCM/GMAC in a way that is nonce misuse resistant? Any other insights?