Digital Signatures for Flows and Multicasts



Similar documents
Implementation and Comparison of Various Digital Signature Algorithms. -Nazia Sarang Boise State University

Digital Signatures. (Note that authentication of sender is also achieved by MACs.) Scan your handwritten signature and append it to the document?

Outline. Computer Science 418. Digital Signatures: Observations. Digital Signatures: Definition. Definition 1 (Digital signature) Digital Signatures

Digital Signatures. Murat Kantarcioglu. Based on Prof. Li s Slides. Digital Signatures: The Problem

Signature Schemes. CSG 252 Fall Riccardo Pucella

Digital Signature. Raj Jain. Washington University in St. Louis

Multimedia Networking and Network Security

Introduction to Cryptography CS 355

Software Implementation of Gong-Harn Public-key Cryptosystem and Analysis

Authenticating Streamed Data in the Presence of Random Packet Loss

A Novel Approach to combine Public-key encryption with Symmetric-key encryption

Signature Amortization Technique for Authenticating Delay Sensitive Stream

A Digital Signature Scheme in Web-based Negotiation Support System

A Practical Authentication Scheme for In-Network Programming in Wireless Sensor Networks

Improved Online/Offline Signature Schemes

Public Key (asymmetric) Cryptography

CRYPTOGRAPHY IN NETWORK SECURITY

Communications security

2. Cryptography 2.4 Digital Signatures

Network Security. Computer Networking Lecture 08. March 19, HKU SPACE Community College. HKU SPACE CC CN Lecture 08 1/23

CSCE 465 Computer & Network Security

CIS 6930 Emerging Topics in Network Security. Topic 2. Network Security Primitives

Embedding more security in digital signature system by using combination of public key cryptography and secret sharing scheme

Evaluation of Digital Signature Process

Final exam review, Fall 2005 FSU (CIS-5357) Network Security

Digital signatures are one of the most important inventions/applications of modern cryptography.

Authenticated In-Network Programming for Wireless Sensor Networks

Network Security. Abusayeed Saifullah. CS 5600 Computer Networks. These slides are adapted from Kurose and Ross 8-1

Digital Signatures. Meka N.L.Sneha. Indiana State University. October 2015

Verifying Data Integrity in Peer-to-Peer Video Streaming

SECURITY IN NETWORKS

Cryptography and Network Security Chapter 9

A New Generic Digital Signature Algorithm

CS 758: Cryptography / Network Security

Digital signatures. Informal properties

Wireless Network Security Spring 2014

Authentication, digital signatures, PRNG

Network Security. Security Attacks. Normal flow: Interruption: 孫 宏 民 Phone: 國 立 清 華 大 學 資 訊 工 程 系 資 訊 安 全 實 驗 室

Encapsulating Voice in IP Packets

Midterm. Name: Andrew user id:

Outline. CSc 466/566. Computer Security. 8 : Cryptography Digital Signatures. Digital Signatures. Digital Signatures... Christian Collberg

Overview. SSL Cryptography Overview CHAPTER 1

2. Securing Transactions

Computer Science A Cryptography and Data Security. Claude Crépeau

Principles of Public Key Cryptography. Applications of Public Key Cryptography. Security in Public Key Algorithms

Applied Cryptography Public Key Algorithms

Cryptography and Network Security

Table of Contents. Bibliografische Informationen digitalisiert durch

Lukasz Pater CMMS Administrator and Developer

EXAM questions for the course TTM Information Security May Part 1

Authentication requirement Authentication function MAC Hash function Security of

Overview of Public-Key Cryptography

Authenticating Real Time Packet Streams and Multicasts


Digital Signature CHAPTER 13. Review Questions. (Solution to Odd-Numbered Problems)

Digital Signatures. Prof. Zeph Grunschlag

CRC Press has granted the following specific permissions for the electronic version of this book:

Client Server Registration Protocol

Security Policy Revision Date: 23 April 2009

The Mathematics of the RSA Public-Key Cryptosystem

Network Security. HIT Shimrit Tzur-David

Instant Revocation. Jon A. Solworth. 16 June Dept. of Computer Science and Center for RITES University of Illinois at Chicago

RSA Attacks. By Abdulaziz Alrasheed and Fatima

Digital Signatures. What are Signature Schemes?

Hash-based Digital Signature Schemes

DIRECT ONLINE/OFFLINE DIGITAL SIGNATURE SCHEMES. Ping Yu, M.S. Dissertation Prepared for the Degree of DOCTOR OF PHILOSOPHY UNIVERSITY OF NORTH TEXAS

MTAT Cryptology II. Digital Signatures. Sven Laur University of Tartu

Voice over IP: RTP/RTCP The transport layer

Network Security. Gaurav Naik Gus Anderson. College of Engineering. Drexel University, Philadelphia, PA. Drexel University. College of Engineering

CS 348: Computer Networks. - Security; 30 th - 31 st Oct Instructor: Sridhar Iyer IIT Bombay

Introduction. Digital Signature

Peer-to-Peer Networks Anonymity (1st part) 8th Week

Network Security [2] Plain text Encryption algorithm Public and private key pair Cipher text Decryption algorithm. See next slide

Security. Contents. S Wireless Personal, Local, Metropolitan, and Wide Area Networks 1

Part VII. Digital signatures

Cryptography and Network Security Digital Signature

SPINS: Security Protocols for Sensor Networks

Security Sensor Network. Biswajit panja

Overview of Cryptographic Tools for Data Security. Murat Kantarcioglu

Chapter 5. Simple Ad hoc Key Management. 5.1 Introduction

Advanced Networking Voice over IP: RTP/RTCP The transport layer

Public Key Cryptography of Digital Signatures

Cryptography Lecture 8. Digital signatures, hash functions

Multicast Authentication Based on Batch Signature (MABS) in Network Security

Physical Data Organization

AC76/AT76 CRYPTOGRAPHY & NETWORK SECURITY DEC 2014

Overview of CSS SSL. SSL Cryptography Overview CHAPTER

Chapter 3. Internet Applications and Network Programming

CMSS An Improved Merkle Signature Scheme

Crittografia e sicurezza delle reti. Digital signatures- DSA

Distillation Codes and Applications to DoS Resistant Multicast Authentication

A Factoring and Discrete Logarithm based Cryptosystem

Randomized Hashing for Digital Signatures

Public Key Cryptography in Practice. c Eli Biham - May 3, Public Key Cryptography in Practice (13)

Factoring. Factoring 1

3/25/ /25/2014 Sensor Network Security (Simon S. Lam) 1

GATE CS Topic wise Questions Computer Network

Notes on Network Security Prof. Hemant K. Soni

Study of algorithms for factoring integers and computing discrete logarithms

Transcription:

1 Digital Signatures for Flows and Multicasts by Chung Kei Wong and Simon S. Lam in IEEE/ACM Transactions on Networking, August 1999 Digital Signature Examples: RSA, DSA Provide authenticity, integrity and nonrepudiation How to sign/verify? signing key k s, verification key k v, message digest h(m) signature = sign(h(m), k s ) verify(signature, h(m), k v ) = True/False Signing & verification operations are slow compared to symmetric key operations Digital Signatures (Simon Lam) 2

2 Motivation Traditional network applications (circa 1998) message-oriented unicast, e.g., email, file transfer, client-server Emerging network applications flow-oriented, e.g., audio, video, stock quotes multicast, e.g., teleconference, software distribution Problem: How to sign efficiently? high-speed h transmissions i real-time generated flows delay-sensitive packet flows Digital Signatures (Simon Lam) 3 All-or-nothing flows The signer generates a message digest of the entire flow (file) and signs the message digest But most Internet applications do not create all-or-nothing flows a flow is sent as a sequence of packets each packet is used as soon as it is received Digital Signatures (Simon Lam) 4

3 Sign-each Approach A flow is a sequence of data packets Sign each packet individually Inefficient: one signing/verification operation per packet Rates on a Pentium-II 300 MHz using 100% processing time (with 512-bit modulus) Packet Rate (packets/sec) size Signing g Verification (bytes) RSA DSA RSA DSA 512 78.8 176 2180 128 1024 78.7 175 1960 127 Digital Signatures (Simon Lam) 5 Prior work on signing digital streams [Gennaro and Rohatgi 1997] One signing/verification op for an entire flow only only the first packet is signed Each packet contains authentication info for next Verification of each packet depends on previous ones Reliable delivery required P 1 P 2 P 3 P 4 digital signature message digest of following packet Digital Signatures (Simon Lam) 6

4 Flow Signing Problem Each packet may be used as soon as it is received Subsequences of a flow are received and used best-effort delivery, e.g., UDP, IP multicast different needs/capabilities, e.g., layered video How to efficiently sign flows with each packet being individually verifiable? Digital Signatures (Simon Lam) 7 Our Approach: Chaining Partition a flow into blocks of packets Sign the digest of each block instead of each packet individually Each packet carries its own authentication information to prove it is in the block Authentication info provided by chaining P 1 P 2 P 3 P 4 P 5 P 6 P 7... 1 2 3 4 5 6 7 Block Block signature Chaining info Digital Signatures (Simon Lam) 8

5 Star Chaining Signing Block digest D 1-8 = h(d 1,, D 8 ) Packet digests D 1 D 2 D 3 D 4 D 5 D 6 D 7 D 8 Block signature = sign(d 1-8 ) Packet signature for packet P 3: sign(d 1-8 ), D 1, D 2, D 4,, D 8 Chaining overhead is O(block size) Digital Signatures (Simon Lam) 9 Star Chaining Verification Verifying first received packet (say P 3 ) Block digest D' 1-8 = h(d 1, D 2, D' 3, D 4,, D 8 ) verify(d' 1-8, sign(d 1-8 )) D 1 D 2 D' 3 D 4 D 5 D 6 D 7 D 8 Packet digests Caching of verified nodes no verification op for other packets in the block Digital Signatures (Simon Lam) 10

6 Tree Chaining Signing [Merkle 1989] Block digest D 1-8 = h(d 1-4, D 5-8 ) Block signature = sign(d 1-8 ) Packet signature for packet P 3 : sign(d 1-8 ), D 4, D 1-2, D 5-8 Chaining overhead is O(log(block size)) D 1-4 D 5-8 D 1-2 D 3-4 D 5-6 D 7-8 D 1 D 2 D 3 D 4 D 5 D 6 D 7 D 8 Packet digests Digital Signatures (Simon Lam) 11 Tree Chaining Verification Verifying first received packet (say P 3 ) verify(d' 1-8, sign(d 1-8 )) Block digest D' 1-8 = h(d' 1-4, D 5-8 ) Caching of verified nodes no verification op for other packets in the block D' 1-4 D 5-8 D 1-2 D' 3-4 D 5-6 D 7-8 D 1 D 2 D' 3 D 4 D 5 D 6 D 7 D 8 Packet digests Digital Signatures (Simon Lam) 12

7 Chaining Technique: Signer Overhead Compute packet digests Digest comp time Build authentication tree Tree build time Sign block digest Signature comp time Build packet signatures Packet signature build time Chaining time = Tree build time + Packet signature build time Digital Signatures (Simon Lam) 13 Chaining Technique: Verifier Overhead Build authentication tree Compute packet digests Tree build time Digest comp time Verify chaining information Chaining verification time Verify block signature Signature verifying i time Chaining time = Tree build time + Chaining verification time Digital Signatures (Simon Lam) 14

8 Chaining Time Overheads der (ms) chaining time at send 10.00 1.00 0.10 tree deg 2 tree deg 4 tree deg 8 star 0.01 2 4 8 16 32 64 128 block size (no. of packets) at sender ver (ms) chaining time at receiv 10.00 1.00 0.10 tree deg 2 tree deg 4 tree deg 8 star 0.01 2 4 8 16 32 64 128 block size (no. of packets) at receiver Overheads increase linearly with block size (in log scale) Much smaller than signing/verification times Digital Signatures (Simon Lam) 15 Chaining Overhead Size chaining overhead (by ytes) 300 200 100 0 2 4 8 16 32 64 128 block size (no. of packets) Smallest when tree degree is 2 star tree deg 8 tree deg 4 tree deg 2 Increases linearly with logarithm of block size Packet signature = block signature + chaining overhead Digital Signatures (Simon Lam) 16

9 Flow Signing/Verification Rates ing rate kets/sec) signi (pack 5000 4000 3000 2000 1000 star tree deg 8 tree deg 4 tree deg 2 sign-each verifica ation rate (pack kets/sec) 10000 8000 6000 4000 2000 0 2 4 8 16 32 64 128 block size (no. of packets) 0 2 4 8 16 32 64 128 block size (no. of packets) 1024-byte packets, RSA with 512-bit modulus Increases with block size Varies only slightly with tree degree we recommend degree 2 tree chaining Digital Signatures (Simon Lam) 17 Flow Signing/Verification Rates signing rate (packets/sec) 6000 5000 4000 3000 2000 1000 0 2 4 8 16 32 64 128 block size (no. of packets) e 14000 512-byte 12000 1024-byte 10000 2048-byte verification rat (packets/sec) 8000 6000 4000 2000 0 Degree two tree, RSA with 512-bit modulus, three different packet sizes 2 4 8 16 32 64 128 block size (no. of packets) Digital Signatures (Simon Lam) 18

10 Real-time Generated Flows Fixed block size for non-real-time generated flows Fixed time period T for real-time generated flows Bounded delay signing since for any packet delay T+ T chain + T sign period T m 1 packets T chain (m 1 ) + T sign period T m 2 packets T chain (m 2 ) + T sign time T should be larger than T chain + T sign delay cannot be smaller than 2(T chain + T sign ) Digital Signatures (Simon Lam) 19 Selecting a Signature Scheme RSA: signing rate not high enough DSA: both rates not high and verification rate < signing rate In a group, receivers may have widely different resources, e.g., PDAs, notebooks, desktops We proposed several extensions to FFS [Feige, Fiat and Shamir 1986] Digital Signatures (Simon Lam) 20

FFS Signer choose two large primes p and q compute modulus n = pq choose integers v 1,, v k s 1,, s k such that s i2 = v 1 i mod n signing g key is { {s 1,, s k, n} verification key is {v 1,, v k, n} Digital Signatures (Simon Lam) 21 How to Sign Message m choose t random integers, r 1,, r t, between 1 and n compute x i = r i2 mod n, for i = 1,, t compute message digest h(m, x 1,, x t ) where function h( ) is public knowledge and produces a digest of at least k x t bits let {b ij } be the first k x t bits of the digest compute y = r x (s b i1 x x s b ik i i 1 k ) mod n for i = 1,, t signature of m consists of {y } i and {b ij } for i = 1,, t and j = 1,, k Digital Signatures (Simon Lam) 22 11

12 How to Verify Signature of Message m signature of m {y } i and {b ij } for i = 1,, t and j = 1,, k compute z i = y 2 i x (v b i1 1 x x v b ik k ) mod n for i = 1,, t it can be shown that z i is equal to x i at the signer signature is valid if and only if the first k x t bits of h(m, z 1,, z t ) are equal to the {b ij } received in signature Digital Signatures (Simon Lam) 23 FFS(k,t) security level increases with size of modulus n (or size of primes p and q) value of product kt key size is (k+1) x n assuming n = v i or s i in bits signature size is t x n + k x t bits minimized for t=1 Digital Signatures (Simon Lam) 24

FFS key and signature sizes For a fixed kt product, signature size is minimized for t=1, but key size is maximized Digital Signatures (Simon Lam) 25 effs Signature Scheme Several extensions to FFS [Feige, Fiat and Shamir 1986] Faster signing Chinese remainder theorem (crt) Precomputation (4-bit, 8-bit) Faster verification Small verification key (sv-key) [Micali & Shamir 1990] Adjustable and incremental verification multilevel signature lower security level with less processor time at receiver security level can be increased later by more processor time Digital Signatures (Simon Lam) 26 13

14 effs extension (1) Chinese remainder theorem instead of y i = r i x (s bi1 1 x x s k bik) mod n signer computes a i = r i x (s bi1 1 x x s k bik) mod p b i = r i x (s bi1 1 x x s k bik) mod q y i = ((a i b ) i x q x q 1 p + b ) i mod n where q 1 denotes 1 p q mod p, multiplications in mod p and mod q faster than in mod n Only signer knows p and q Digital Signatures (Simon Lam) 27 effs extension (2) small verification key [Micali & Shamir]: use first k prime numbers that satisfy s 2 = p -1 mod n where p is prime and s is an integer faster verifying time and smaller key size Digital Signatures (Simon Lam) 28

15 effs extension (3) To compute y i = r i x (s 1 b i1 x x s k b ik ) mod n for i = 1,, t precomputation of (s 1 b i1 x x s k b ik ) additional memory of 31 KB and 261 KB required for 4-bit and 8-bit precomp respectively only minor improvement at verifier when used with small v-key Digital Signatures (Simon Lam) 29 effs Signing basic FFS sv-key crt+sv-key 4-bit+crt+sv-key 8-bit+crt+sv-key 0 5 10 15 effs(128,1) signing time (ms) sv-key does not reduce signing time crt reduces signing time by 10-20% 8-bit + crt reduces signing time by 60-70% Digital Signatures (Simon Lam) 30

16 effs Verification basic FFS sv-key 4-bit+sv-key 8-bit+sv-key 0 2 4 6 8 10 12 effs(128,1) 1) verification time (ms) sv-key reduces verification time by 90% 4-bit or 8-bit slightly reduces verification time Digital Signatures (Simon Lam) 31 effs Key Size ize (bits) modulus si 512 1024 ize (bits) 512 Rabin RSA effs(128,1) DSA ElGamal modulus si 1024 Rabin RSA effs(128,1) DSA ElGamal 0 5000 10000 15000 20000 signing key size (bytes) 0 100 200 300 400 500 verification key size (bytes) Large signing i key 8000-17000 bytes private to signer Verification key 300-400 bytes Digital Signatures (Simon Lam) 32

17 effs Signature Size modulus siz ze (bits) 512 1024 Rabin RSA effs(128,1) DSA ElGamal 0 100 200 300 signature size (bytes) Signature size comparable to RSA and Rabin Digital Signatures (Simon Lam) 33 Signing Time Comparison modulus size (bits) 512 1024 Rabin RSA effs(128,1) DSA ElGamal 0 20 40 60 80 100 signing time (ms) 8-bit + crt + sv-key extensions effs has the smallest signing time Digital Signatures (Simon Lam) 34

18 Verification Time Comparison modulus siz ze (bits) 512 1024 Rabin RSA effs(128,1) DSA ElGamal 0 100 200 300 400 verification time (ms) DSA and ElGamal verification times very large Rabin, RSA and effs too small to see Digital Signatures (Simon Lam) 35 Verification Time Comparison modulus siz ze (bits) 512 1024 Rabin RSA effs(128,1) 0.0 0.2 0.4 0.6 0.8 1.0 1.2 verification time (ms) effs verification time comparable to RSA (Rabin most efficient verification) Digital Signatures (Simon Lam) 36

19 Flow Signing/Verification Rates modulus size (bits) 512 1024 512 1024 Rabin RSA effs(128,1) DSA ElGamal Rabin RSA effs(128,1) DSA ElGamal 0 1000 2000 3000 4000 signing rate (packets/sec) 0 2000 4000 6000 8000 verification rate (packets/sec) 1024-byte packets, block size 16, degree two tree chaining effs has highest signing rate effs verification rate comparable to RSA Digital Signatures (Simon Lam) 37 effs Adjustable and Incremental Verification Security level of effs(k,t) depends on modulus size and product kt same kt and modulus size ~ same security level Adjustable and incremental verification using t > 1 with additional info in signature up to t steps adjustable and incremental: receiver verifies steps one by one Digital Signatures (Simon Lam) 38

20 effs Adjustable and Incremental Verification (cont.) t-level signature includes {x i } for i = 2,, t note that {x } i can be computed from original signature together with verification key verify a t-level signature at security level l t, (1) compute z i = y 2 i x (v b i1 1 x x v b ik k ) mod n for i = 1,, l, (2) verify that the first k x t bits of h(m, z 1, x 2,, x t ) are equal to the {b ij } received, and z 2,, z l are equal to x 2,, x l Digital Signatures (Simon Lam) 39 effs Adjustable and Incremental Verification (cont.) increase security level from l 1 to l 2, (1) compute z i = y 2 i x (v b i1 1 x x v b ik k ) mod n for i = l 1 + 1,, l 2, (2) verify that z l1 +1,, z l2 are equal to x l1 +1,, x l2 Digital Signatures (Simon Lam) 40

21 Incremental signing times 2-level signature takes less time to sign than two 1-level signatures Digital Signatures (Simon Lam) 41 Incremental verification times Digital Signatures (Simon Lam) 42

22 Conclusions Flow signing/verification procedures much more efficient than sign-each small communication overhead can be used by a sender that signs a large number of packets to different receivers there is no requirement that the packets belong to a flow but if they do, verification is also more efficient effs digital signature scheme most efficient signing compared to RSA, Rabin, DSA, and ElGamal highly efficient verification and comparable to RSA (only Rabin is more efficient) adjustable and incremental verification Digital Signatures (Simon Lam) 43 End Digital Signatures (Simon Lam) 44