1 Bienvenue! Herzlich willkommen! Welcome! Christian Scheurer Ingenieur FH in Informatik Embedded World Conference Nürnberg, 17. Februar 2004
2 Motivation und Ziele Design und Implementation Testen Ergebnisse Inhalt
3 Motivation & Ziele
4 Offene IPsec Implementation ausgelegt für low-end embedded Systeme Interoperabilität mit andern IPsec Systemen Motivation & Ziele
5 Design & Implementation
6 IPsec verstehen –Literatur: Big Book of IPsec RFCs –Praktische Tests mit FreeS/WAN Entwicklungsumgebung –PC mit Keil uVision IDE und Sniffer –PC mit Debian Linux und FreeS/WAN –C167-Board und 10Mbit Ethernet Hub Vorbereitung
7 Design embedded IPsec Module
8 Reihenfolge Implementation: 1.) Anbindung an TCP/IP Stack 2.) Konfigurationsdatenbanken 3.) Crypto Funktionen 4.) AH Protokoll 5.) ESP Protokoll 6.) AntiReplay,... Design
9 ipsecdev/ipsec - Module „ipsecdev“
10 lwIP TCP/IP Stack lwIP – a light weight TCP/IP Stack TCP/IP Stack CS8900 Driver
11 1.) Anbindung an TCP/IP Stack Traffic Interception IPsec Library IPsec Driver
12 Datenbank - Module SPD und SAD
13 2.) SAD und SPD
14 Security Policy Database Welche Pakete werden verarbeitet? –DISCARD –BYPASS –APPLY
15 Security Policy Database Beispiel einer SPD Konfiguration
16 Security Association Database Wie werden Pakete verarbeitet? –Tunnel oder Transport Mode –AH oder ESP –Algorithmen und Keys –Security Parameter Index
17 Security Association Database Beispiel einer SAD Konfiguration
18 Outbound Processing Datenfluss bei Outbound Processing SA
19 AH/ESP/Crypto - Module AH und ESP
20 Crypto Funktionen von OpenSSL –DES, 3DES –HMAC-MD5-96, HMAC-SHA1-96 Für MCU optimierte Versionen –Dmitry Basko‘s DES –Graham Cole‘s MD5 3.) Crypto Library
21 4.) Authentication Header
22 5.) Encapsulating Security Payload
23 Speicherverwaltung
24 Testen
25 Test-Konzept Testen
26 Structural Tests Testen TST sa_test_sad_lookup() : SUCCESS : TST sa_test_sad_get_spi(): SUCCESS : TST sa_test_spd_flush() : NOT IMPL. : TST sa_test_sad_flush() : NOT IMPL. : TST test_esp_decapsulate : SUCCESS : TST test_esp_encapsulate : SUCCESS : MSG main : structural testing finished: MSG main : o % correct (92 of 92 tests passed) MSG main : o 82.61% complete (19 of 23 functions implemented)
27 Functional Tests Testen
28 Ergebnisse
29 Grösse Ergebnisse Protokolle und DB total 18kB Crypto Library auf OpenSSL Basis total 90kB
30 Performance Ergebnisse 64 Bytes Ohne: 5 mS AH-MD5:19 mS ESP-3DES:60 mS 512 Bytes Ohne: 8 mS AH-MD5:38 mS ESP-3DES:351 mS 1280 Bytes Ohne: 13 mS AH-MD5:165 mS ESP-3DES:851 mS
31 Einsatzgebiete –Vernetzte Sensoren –Gebührenzähler Ergebnisse
32 Interoperabilität Ergebnisse
33 Arbeitsaufwand ca. 1‘000h Ergebnisse
34 Weitergeführt als Projekt –Niklaus Schild –Christian Scheurer Zukunft
35 Merci! Es folgt die Demo