Sepp - Secure P2p Framework

  • Uploaded by: Stefan Kraxberger
  • 0
  • 0
  • April 2020
  • PDF

This document was uploaded by user and they confirmed that they have the permission to share it. If you are author or own the copyright of this book, please report to us by using this DMCA report form. Report DMCA


Overview

Download & View Sepp - Secure P2p Framework as PDF for free.

More details

  • Words: 2,920
  • Pages: 39
Institute for Applied Information Processing and Communications

Secure Peer-to-Peer Framework https://sourceforge.net/projects/securep2p Stefan Kraxberger

Stefan Kraxberger

Secure P2P Framework 1

Institute for Applied Information Processing and Communications

O Overview i Motivation P2P Networking Requirements for Secure P2P Security Concept S PP Security SePP S it P Protocols t l Current Work & Open Issues

Stefan Kraxberger

Secure P2P Framework 2

Institute for Applied Information Processing and Communications

P2P N Networking t ki Structured and unstructured P2P systems • Structured systems are based on idea from Plaxton [1] „how to organize data in a distributed environment to find it efficiently ffi i tl and d provide id redundancy“ d d “

• Unstructured can be divided further into • Pure (Gnutella 0.4) • Centralized (Napster) • Hybrid (JXTA) Napster

Stefan Kraxberger

Secure P2P Framework 3

Institute for Applied Information Processing and Communications

Oth Classes Other Cl P2P systems can also be classified by other means • performance & resources • underlying physical network • mobility patterns • organization & determinism

SePP is a pure self-organizing heterogenous P2P system

Stefan Kraxberger

Secure P2P Framework 4

Institute for Applied Information Processing and Communications

S Security it R Requirements i t 1. Peer ID Generation and Assignment g –

IDs must be unique and undeniable

2. Authentication and Authorization –

How peers must join the network

3. Route Establishment and Maintenance –

How to find routes and maintain them

4. Message Transport –

How to authenticate messages

5 Key Protection 5. –

How to ensure the integrity and secrecy of the used keys

6. Protection against Attacks –

How to detect and/or prevent attacks (insider and outsider)

Stefan Kraxberger

Secure P2P Framework 5

Institute for Applied Information Processing and Communications

S Security it C Conceptt [2] Securityy concept p with different levels to address p points 1- 5 • Protection against Attacks is treated as added value

• • •

Admission security (IDs, Authentication, Routing) Data security (Message Transport) Session key protection (Key Protection)

Stefan Kraxberger

Secure P2P Framework 6

Institute for Applied Information Processing and Communications

S PP Security SePP S it P Protocols t l SePP Join Protocol SePP Routing Protocol S PP Merge SePP M P Protocol t l SePP Neighborhood Protocol

Stefan Kraxberger

Secure P2P Framework 7

Institute for Applied Information Processing and Communications

P Peer Start St t After a p peer starts the following g steps p are p performed 1. Obtain the peers specified as neighbors from the configuration 2. Start low level communication services 3 Register components for receiving and sending 3. 4. Start join process SePP Join Process

5. Inform API about result

Stefan Kraxberger

Secure P2P Framework 8

Institute for Applied Information Processing and Communications

S PP Join SePP J i P Process Join p process consists of the following g steps p 1. 2. 3. 4.

Find and select network Find peer in the selected network with direct connection (neighbor) Execute jjoin p protocol Return result and update network status

If no network could be found a new one will be created –

The same process is executed in every peer which has not found any existing suitable network

If more than one network with has been found one is selected l t d –

Based on the amount of members and the creation time

Stefan Kraxberger

Secure P2P Framework 9

Institute for Applied Information Processing and Communications

N t Network kC Creation ti Requirements q for a SMEPP network • Peers can join in arbitrary numbers • Peers can join any number of times • Networks with same security status can merge • Peers can switch between different networks • Ordering Od i b between t similar i il networks t k • Networks with different routing schemes

Stefan Kraxberger

Secure P2P Framework 10

Institute for Applied Information Processing and Communications

N t Network kC Creation ti Parameters which enforce requirements q – Network id • Random number obtained at network creation

– Network routing g algorithm g • Algorithm specified in the configuration

– Network routing key • Session key created at network creation depending on the

– Network creation time • Time stored at network creation

– Network members (provides indirect network size) • Distributed parameter which is updated periodically

– Network neighbors • Specified for each peer to find existing network instance

Stefan Kraxberger

Secure P2P Framework 11

Institute for Applied Information Processing and Communications

Fi d N Find Network t k Broadcast a NetworkRequest q to the local network and the peers specified in the configuration Collect NetworkResponses After specified amount of time select best network – Suitable network with most peers – or if equal which was created first

Obtain peer of selected network to which we have a direct connection St t jjoin Start i protocol t l with ith selected l t d peer

Stefan Kraxberger

Secure P2P Framework 12

Institute for Applied Information Processing and Communications

S PP Join SePP J i P Protocol t l Needham-Schroeder-Lowe protocol p – Mutual entity authentication – Key authentication – Keyy transport p ((modified version))

If successful the protocol guarantees – Peer has verified the authenticity of the SePP network – New peer is verified and authenticated to the SePP network – Peer has obtained the authentic current routing session key

Stefan Kraxberger

Secure P2P Framework 13

Institute for Applied Information Processing and Communications

N dh Needham-Schroeder-Lowe S h d L [3] Protocol steps 1. 1 2.

A A

B : Request public key B : PK(B)

A verifies certificate and identity of B 3. 4. 5.

A A A

6.

A

7.

A

1.

A

B : {{Na,A}}PK(B) B : Request public key B : PK(A) B verifies certificate and identity of A B : {Na,Nb,B}PK(A) A knows about identity of B B : {Nb}PK(B) B knows about identity of A B : {Na,Nb,KSMEPP}PK(A)

Na,b … Random number A B … Identity A,B Id tit (peerId) ( Id) Ts … Timestamp (session key time) Stefan Kraxberger

PK(A),PK(B) … Public keys of A and B KSMEPP … SMEPP routing ti session i kkey Secure P2P Framework 14

Institute for Applied Information Processing and Communications

S PP Routing SePP R ti P Protocols t l DSR ((Dynamic y Source Routing) g) Ariadne (Secure on demand routing protocol for ad hoc networks) SSR (Simple Secure Routing based on Security Concept) AODV (Ad hoc On demand Distance Vector) OLSR (Optimized Link State Routing)

Stefan Kraxberger

Secure P2P Framework 15

Institute for Applied Information Processing and Communications

D Dynamic i S Source R Routing ti [4] The sender of a p packet specifies p the complete p sequence q of nodes through which to forward the packet Dynamically determines a route based on – Cached C h d iinformation f ti – The result of a route discovery

The advantages of DSR – No periodic routing advertisement messages • bandwidth, battery power

– Don't require transmissions between hosts to work bidirectional – Able to adapt quickly to changes

Stefan Kraxberger

Secure P2P Framework 16

Institute for Applied Information Processing and Communications

D Dynamic i S Source R Routing ti Two basic operation p modes • Route Discovery • Route Maintenance

The sender constructs a source route in the packet's packet s header If the receiver is the destination host, sends a route reply else forward packets Each host maintains a route cache If no route t cache h iis ffound, d use th the route t di discovery Hosts monitor the operation of the route and use the route a te a ce maintenance Stefan Kraxberger

Secure P2P Framework 17

Institute for Applied Information Processing and Communications

R t Discovery Route Di 1,2 2

5

1,2,5

1

1,2,5,7,8

12578 1,2,5,7,8

12578 1,2,5,7,8 1,2,5,7

1

7

8

1,2,5,7,8 1,3,4,6

1

1,3

3

Stefan Kraxberger

1,3,4

4

6

Secure P2P Framework 18

Institute for Applied Information Processing and Communications

R t Maintenance Route M i t 2

5

RERR (2,5)

1

7

8

1,2,5,7,8 1,10,11,13 …

3

Stefan Kraxberger

4

6

Secure P2P Framework 19

Institute for Applied Information Processing and Communications

A i d [6] Ariadne Based on DSR but adds securityy against g well known attacks Uses either one of the following mechanisms – Pairwise P i i shared h d secrets t – Digital signatures – TESLA [5]

TESLA efficient for resource constrained devices – Symmetric cryptography – Asymmetry via time • Delayed key disclosure • Requires loose time synchronization

– Requires public/private keys for synchronization and key commitment

Stefan Kraxberger

Secure P2P Framework 20

Institute for Applied Information Processing and Communications

Ai d Ariadne Each p peer g generates a hash keyy chain S0 serves as key commitment Messages are signed with key Si in interval ti Specific time after interval ti key Si is disclosed Messages must be buffered for verification

Stefan Kraxberger

Secure P2P Framework 21

Institute for Applied Information Processing and Communications

Ai d R Ariadne Route t Di Discovery Sender computes MAC using the shared key KSD over – –

route request,initiator, request initiator target, target id (unique unused value), time interval

A checks if – –

Id and initiator of the request isn‘t alreadyy cached Key is still not published

Broadcasts the request to his next hops – –

Calculates new hash Calculates new MAC and adds it

Target verifies the security conditions – –

Keys ti are not released yet and therefore secure Keys are authentic and MAC is valid

If request is verfied constructs reply – –

Stefan Kraxberger

Calculate new MAC using KSD over reply plus route and MAC list Send it back to initiator

Secure P2P Framework 22

Institute for Applied Information Processing and Communications

Ai d R Ariadne Route t Di Discovery A checks if – Id and initiator of the request are already cached – Key is still not published

Broadcasts the request to his next hops – Calculates new hash – Calculates new MAC and adds it to the MAC list

Stefan Kraxberger

Secure P2P Framework 23

Institute for Applied Information Processing and Communications

Ai d R Ariadne Route t Di Discovery B performs the same actions as A

Stefan Kraxberger

Secure P2P Framework 24

Institute for Applied Information Processing and Communications

Ai d R Ariadne Route t Di Discovery C again performs the same actions as A and B

Stefan Kraxberger

Secure P2P Framework 25

Institute for Applied Information Processing and Communications

Ai d R Ariadne Route t Di Discovery Target verifies the security conditions – Keys ti are not released yet and therefore secure – Keys are authentic and MAC is valid

If request is verfied constructs reply – Calculate new MAC using KSD over reply plus route and MAC list – Send it back to initiator

Stefan Kraxberger

Secure P2P Framework 26

Institute for Applied Information Processing and Communications

Ai d R Ariadne Route t Di Discovery C waits until the end of the time interval – Attaches key used in request – Forwards reply to B

Stefan Kraxberger 12/03/2009 12/03/2009

Fourth Review Meeting, Brussels Fourth Review Meeting, Brussels

27 Secure P2P Framework 27 27

Institute for Applied Information Processing and Communications

Ai d R Ariadne Route t Di Discovery B performs the same actions as C

Stefan Kraxberger

Secure P2P Framework 28

Institute for Applied Information Processing and Communications

Ai d R Ariadne Route t Di Discovery A performs the same actions as C and B S verifies the security conditions – Keys are valid – MAC list is valid – MD is valid

If everything is valid the reply is accepted

Stefan Kraxberger

Secure P2P Framework 29

Institute for Applied Information Processing and Communications

Ai d R Ariadne Route t M Maintenance i t Route Error – – Intermediate node • Forwards the packet and searches its route cache for all routes that use <sending address, receiving address> • If exists, checks validity of time interval • If valid, checks authentication of the Error • Until U til authentication, th ti ti saves E Error iinfo f iin memory until til a kkey iis di disclosed l d and d uses routes in route cache • If authenticated, removes all such routes

Stefan Kraxberger

Secure P2P Framework 30

Institute for Applied Information Processing and Communications

Si l S Simple Secure R Routing ti DSR algorithm g adapted p for Security y Concept p – Allows for 3 different security levels 1. SL0 = plain DSR 2. SL1 = DSR + using routing session key 3. SL2 = SL1 + public/private keys

– Operation modes and work flow are the same as with DSR but • • •

Messages adapted Parameters added Additional verifications at the peers introduced

L0 provides no security L1 assumes all legitimate peers as well behaved L2 enables detection and countermeasures against misbehaving peers Stefan Kraxberger

Secure P2P Framework 31

Institute for Applied Information Processing and Communications

SSR R Route t Di Discovery (SL1) {Ts,1,2}SK 2

5

{Ts,1}SK

{Ts,1,2,5}SK

{Ts,1,2,5,7,8}SK {Ts,1,2,5,7}SK 1

7

{Ts,1,3,4,6}SK

8

{Ts,1,2,5,7,8}SK

{Ts,1}SK

{Ts,1,3}SK

3

SK … Routing session key {}x … Encrypted with key X

Stefan Kraxberger

{Ts,1,3,4}SK

4

6

TS … Timestamp

Secure P2P Framework 32

Institute for Applied Information Processing and Communications

SSR R Route t Di Discovery (SL1) Secure against g unauthorized route modification Only peers with authentic session key can take part in the routing process Timestamps are used to prevent reply attacks using previously sent route requests and replies. Very efficient since only symmetric cryptography is used Small overhead to unsecured DSR Problem of misbehavior of legitimate g p peers can’t be solved in this security level

Stefan Kraxberger

Secure P2P Framework 33

Institute for Applied Information Processing and Communications

SSR R Route t Di Discovery (SL2) {Ts,1,2}SK 2

5

{Ts,1}SK

{Ts,1,2,5}SK

{Ts,1,2,5,7,8, SS8(R)}SK {Ts,1,2,5,7}SK 1

7

{T 1 3 4 5}SK {Ts,1,3,4,5}SK

8

{Ts,1,2,5,7,8, SS8(R)}SK

{Ts,1}SK

{Ts,1,3}SK

3

SK … Routing session key {}x … Encrypted with key X

Stefan Kraxberger

{Ts,1,3,4}SK

4

TS … Timestamp Sx … Signature with key x

6

S8 … Private key peer 8

Secure P2P Framework 34

Institute for Applied Information Processing and Communications

SSR R Route t Di Discovery (SL2) Initiator sends signed g request q containing g a timestamp p Intermediate nodes check if route is available and return it to initiator or check if request isn’t a duplicate and broadcasts it to its neighbors Destination checks the timestamp and signs the route and returns it on the same path p Every peer checks the timestamp and verifies the signature and if the route is correct – Th The local l l peer mustt b be iin th the route t – The peers before and after the peer must be neighbors

Stefan Kraxberger

Secure P2P Framework 35

Institute for Applied Information Processing and Communications

SSR Enables routing g on different security y levels • Resource constrained devices can communicate with powerful devices (SL0, SL1) • Powerful devices can communicate with maximum security (SL2) • Powerful devices can participate in all routing activities and provide message forwarding for constrained devices

Stefan Kraxberger

Secure P2P Framework 36

Institute for Applied Information Processing and Communications

S PP Merge SePP M P Protocol t l Allows networks with same securityy status to merge g • Allows self-organization and prevents network separation – networks can be separated because bridging peers may not be available • If a peer discovers another network which has priority ((older and equal q or bigger) gg ) tries to jjoin it. • Neighbors of this peer discover also the new network through checking the status of the neighbors • Security constraints are meet since each peer performs join protocol

Stefan Kraxberger

Secure P2P Framework 37

Institute for Applied Information Processing and Communications

S PP N SePP Neighborhood i hb h d P Protocol t l The neighborhood g p protocol is responsible p for obtaining g network status information and maintaining the network stability Common tasks: • Check neighbor availability periodically (detect network changes) g ) • Find new neighbors at the local network Find neighbors from the member list to reduce maximal route length and thus the network diameter Small World Problem [7] Stefan Kraxberger

Secure P2P Framework 38

Institute for Applied Information Processing and Communications

R f References [1] C. Greg Plaxton and Rajmohan Rajaraman and Andr'ea W. Richa, “Accessing nearby copies of replicated objects in a distributed environment” environment”, ACM Symposium on Parallel Algorithms and Architectures, 1997, pp. 311-320. [2] Stefan Kraxberger, Stefan Tillich, Udo Payer - "General Security Concept for Embedded Peer-toPeer Systems" , MIMES Workshop, 2008. [3] Gavin Lowe Lowe,“Breaking Breaking and Fixing the Needham-Schroeder Public-Key Protocol Using FDR” FDR , Proceedings of the Second International Workshop on Tools and Algorithms for Construction and Analysis of Systems, pp. 147 - 166 , LNCS 1055, 1996. [4] David B. Johnson, David A. Maltz, and Josh Broch. „DSR: The Dynamic Source Routing Protocol for Multi-Hop Wireless Ad Hoc Networks“ , in Ad Hoc Networking, g edited by y Charles E. Perkins, Chapter 5, pp. 139-172, Addison-Wesley, 2001.

[5] A. Perrig, R. Canetti, J. D. Tygar, and D. Song, “The TESLA Broadcast Authentication Protocol”, RSA CryptoBytes, 5, 2002.

[[6]] Y. Hu,, A. Perrig, g, and D. B. Johnson,, “Ariadne: A secure on-demand routing gp protocol for ad hoc networks”, in Proceedings of ACM MOBICOM’02, Atlanta, Georgia, USA, 2002. [7] Stanley Milgram: “The Small World Problem.”, in Psychology Today, pp. 60–67, 1967

Stefan Kraxberger

Secure P2P Framework 39

Related Documents

P2p
July 2020 29
P2p
April 2020 29
P2p
November 2019 54
Confronting P2p
December 2019 49

More Documents from ""

Chat Client Example
April 2020 10
Lege Nr18.doc
December 2019 54
Management Public - Curs.pdf
December 2019 38
Maths
June 2020 31