Masterarbeit Secure Mobile Cloud Service for personal data      with web frontend based on HTML5  Betreuer: Prof. Dr. Mich...
Einführung• Persönliche Daten werden vermehrt auf viele unterschiedliche  Geräten verteilt• Aktueller Ansatz: Geräte synch...
Einführung• Fraunhofer SIT Studie über Cloud-Speicherdiensten (2012)26/06/2012 | Department 20 | Prof. Dr. Michael Weidner...
Einführung• US Patriot-Act                                                                                         Quelle:...
Agenda•    Ziele•    Stand der Technik heute•    Design•    Prototypische Implementierung•    DEMO•    Evaluation•    Ausb...
Ziele• Prototypische Entwicklung und Implementierung eines  webbasierten Systems• Implementierung nur mit Hilfe von HTML5 ...
Stand der Technik heute• Verschlüsselungsverfahren      •    Symmetrische Verschlüsselung      •    Asymmetrische Verschlü...
Stand der Technik heute• Not only SQL Datenbanken (NoSQL)• Asynchronus JavaScript and XML (Ajax)• Transport Layer Security...
Design26/06/2012 | Department 20 | Prof. Dr. Michael Weidner & Jan Peter Stotz | Amir Neziri   9
Design• Anforderungen      • Simulierung eines Cloud-Service-Anbieters      • Verschlüsselung und Entschlüsselung der pers...
Design• Daten werden in JavaScript Object Notation (JSON)-Format  strukturiert (Dokument)• Symmetrische Datenverschlüsselu...
Design• Sicherheitskonzept      • Jedes Dokument wird mit einem eigenem Schlüssel verschlüsselt      • Passwörter werden n...
Design• Struktur der Datenspeicherung          Name              Vorname               Adresse                       Tel  ...
Design• Nach der Verschlüsselung der Daten, das JSON-Format wird  erweitert      • _id: Notwendig zur Identifizierung eine...
Design{     " _id " : " 82cca8060f3da5e87473f0ae04000b90 " ,     " _rev " : "162bd2b426b958485ef211435879e009d " ,     "na...
Design - Verschlüsselungsprozess26/06/2012 | Department 20 | Prof. Dr. Michael Weidner & Jan Peter Stotz | Amir Neziri   16
Prototypische Implementierung• Anforderungen (Funktionale Anforderungen)      • Web-Front-End soll über einen Web-Server z...
Prototypische Implementierung• Anforderungen (Nicht Funktionale)      • Sicherheit: Sichere Datenübertragung und Datenvers...
Prototypische Implementierung• Entwicklungsumgebung (Windows7 virtuelle Maschine) Software                                ...
Prototypische Implementierung• Konfigurationsänderung des Firefox-Browsers notwendig für  den Zugriff der Passwortverwaltu...
Prototypische Implementierung• Web-Front –End heißt SMOLCS (Secure Mobile Cloude  Service)• Architektur• Cloud-Service-Anb...
DEMO26/06/2012 | Department 20 | Prof. Dr. Michael Weidner & Jan Peter Stotz | Amir Neziri   22
Evaluation• Datenübertragung zwischen SMOLCS und Cloud-Service-  Anbieter erfolgt über TLS-Protokoll• Persönliche Daten de...
Evaluation• HTML5 Sicherheit im SMOLCS      • „Persistent Attack Vectors“-Angriff nicht möglich: Daten werden        aus l...
Evaluation26/06/2012 | Department 20 | Prof. Dr. Michael Weidner & Jan Peter Stotz | Amir Neziri   25
EvaluationFunktionen                HTML5          JavaScript         JQuery&JQuery                REST API   HTTP/SSL    ...
EvaluationFunktionen            Lokal        Web-            Firefox 1              IE 9           Chrome   Opera 11      ...
Evaluation     Was geschieht mit den verschlüsselten       Daten, die von jemandem kopiert                werden können?  ...
Ausblick• Modulerweiterungen und Verschlüsselungsverfahren      • z.B. Kalender, Bilderverwaltung, Verwaltung von Notizen ...
Ausblick• Verwendung von weiteren HTML5-Schnittstellen      • WebSockets für die Realisierung von Web-Applikationen für lo...
Questions???26/06/2012 | Department 20 | Prof. Dr. Michael Weidner & Jan Peter Stotz | Amir Neziri   31
26/06/2012 | Department 20 | Prof. Dr. Michael Weidner & Jan Peter Stotz | Amir Neziri   32
SMOLCS-Screenshots26/06/2012 | Department 20 | Prof. Dr. Michael Weidner & Jan Peter Stotz | Amir Neziri   33
SMOLCS-Screenshots26/06/2012 | Department 20 | Prof. Dr. Michael Weidner & Jan Peter Stotz | Amir Neziri   34
SMOLCS-Screenshots26/06/2012 | Department 20 | Prof. Dr. Michael Weidner & Jan Peter Stotz | Amir Neziri   35
SMOLCS-Screenshots26/06/2012 | Department 20 | Prof. Dr. Michael Weidner & Jan Peter Stotz | Amir Neziri   36
SMOLCS-Screenshots26/06/2012 | Department 20 | Prof. Dr. Michael Weidner & Jan Peter Stotz | Amir Neziri   37
SMOLCS-Screenshots26/06/2012 | Department 20 | Prof. Dr. Michael Weidner & Jan Peter Stotz | Amir Neziri   38
SMOLCS-Screenshots26/06/2012 | Department 20 | Prof. Dr. Michael Weidner & Jan Peter Stotz | Amir Neziri   39
Nächste SlideShare
Wird geladen in …5
×

Secure Mobile Cloud Service for personal data with web frontend based on HTML5

2.457 Aufrufe

Veröffentlicht am

Veröffentlicht in: Technologie
0 Kommentare
0 Gefällt mir
Statistik
Notizen
  • Als Erste(r) kommentieren

  • Gehören Sie zu den Ersten, denen das gefällt!

Keine Downloads
Aufrufe
Aufrufe insgesamt
2.457
Auf SlideShare
0
Aus Einbettungen
0
Anzahl an Einbettungen
1.612
Aktionen
Geteilt
0
Downloads
4
Kommentare
0
Gefällt mir
0
Einbettungen 0
Keine Einbettungen

Keine Notizen für die Folie
  • 2/3/2011 | | 2/3/2011 | |
  • Quelle: http://www.heise.de/ix/meldung/Wahrnehmung-des-Patriot-Act-beunruhigt-US-Cloud-Firmen-1389600.html 2/3/2011 | |
  • Secure Mobile Cloud Service for personal data with web frontend based on HTML5

    1. 1. Masterarbeit Secure Mobile Cloud Service for personal data with web frontend based on HTML5 Betreuer: Prof. Dr. Michael Waidner Verantwortlicher Mitarbeiter: Jan Peter Stotz Bearbeiter: Amir Neziri
    2. 2. Einführung• Persönliche Daten werden vermehrt auf viele unterschiedliche Geräten verteilt• Aktueller Ansatz: Geräte synchronisieren sich mit einem Cloud-Service-Anbieter• Cloud-Service-Anbieter bieten den Benutzern billige und größere Speicher zur Verwaltung persönlichen Daten• Problem: Benutzer hat keine Kontrolle über seine eigenen persönlichen Daten.26/06/2012 | Department 20 | Prof. Dr. Michael Weidner & Jan Peter Stotz | Amir Neziri 2
    3. 3. Einführung• Fraunhofer SIT Studie über Cloud-Speicherdiensten (2012)26/06/2012 | Department 20 | Prof. Dr. Michael Weidner & Jan Peter Stotz | Amir Neziri 3
    4. 4. Einführung• US Patriot-Act Quelle: heise.de26/06/2012 | Department 20 | Prof. Dr. Michael Weidner & Jan Peter Stotz | Amir Neziri 4
    5. 5. Agenda• Ziele• Stand der Technik heute• Design• Prototypische Implementierung• DEMO• Evaluation• Ausblick26/06/2012 | Department 20 | Prof. Dr. Michael Weidner & Jan Peter Stotz | Amir Neziri 5
    6. 6. Ziele• Prototypische Entwicklung und Implementierung eines webbasierten Systems• Implementierung nur mit Hilfe von HTML5 und JavaScript• Verwaltung von persönlichen Daten nur in verschlüsselter Form• Bewertung von Mechanismen zur Verwaltung von kryptographischen Schlüsseln• Benutzerfreundliches System und akzeptable Sicherheit verfügbar26/06/2012 | Department 20 | Prof. Dr. Michael Weidner & Jan Peter Stotz | Amir Neziri 6
    7. 7. Stand der Technik heute• Verschlüsselungsverfahren • Symmetrische Verschlüsselung • Asymmetrische Verschlüsselung • Hybride Verfahren • Elliptische Kurven • Mobiele Verschlüsselungshardware• Schlüsselmanagement • Webbrowser (Passwordmanagement) • Hardware, Chipkarten Smart Cards und Java Cards• Hypertext Markup Language5 (HTML5) • localStorage, sessionStorage, AppCache…26/06/2012 | Department 20 | Prof. Dr. Michael Weidner & Jan Peter Stotz | Amir Neziri 7
    8. 8. Stand der Technik heute• Not only SQL Datenbanken (NoSQL)• Asynchronus JavaScript and XML (Ajax)• Transport Layer Security Protocol (TLS)• Alternative Implementierungen • Omnicloud (Fraunhofer Institut) • Amazon Simple Storage Service (Amazon S3) • BoxCryptor für Dropbox, Google Drive und Microsoft SkyDrive26/06/2012 | Department 20 | Prof. Dr. Michael Weidner & Jan Peter Stotz | Amir Neziri 8
    9. 9. Design26/06/2012 | Department 20 | Prof. Dr. Michael Weidner & Jan Peter Stotz | Amir Neziri 9
    10. 10. Design• Anforderungen • Simulierung eines Cloud-Service-Anbieters • Verschlüsselung und Entschlüsselung der persönlichen Daten • Entwicklung des Web-Front-Ends mit Hilfe von HTML5 und JavaScript • Schlüsselmanagement26/06/2012 | Department 20 | Prof. Dr. Michael Weidner & Jan Peter Stotz | Amir Neziri 10
    11. 11. Design• Daten werden in JavaScript Object Notation (JSON)-Format strukturiert (Dokument)• Symmetrische Datenverschlüsselung • NIST-Standard: Advanced Encryption Standard (AES )256 Bit• Sicherheitskonzept • TLS-Protokoll für Kommunikation zwischen Web-Front-End und Cloud-Service-Anbieter • Datenverschlüsselung im Browser26/06/2012 | Department 20 | Prof. Dr. Michael Weidner & Jan Peter Stotz | Amir Neziri 11
    12. 12. Design• Sicherheitskonzept • Jedes Dokument wird mit einem eigenem Schlüssel verschlüsselt • Passwörter werden nicht persistent im Klartext abgelegt • Zugriffskontrolle auf Cloud-Service-Anbieter-Seite• Schlüsselverwaltung • Benutzer merkt eine einfaches Passwort • Ein (komplexes) Passwort wird extern gespeichert • Firefox Browser, Key-Server, Festplatte, USB-Stick oder SD- Karten26/06/2012 | Department 20 | Prof. Dr. Michael Weidner & Jan Peter Stotz | Amir Neziri 12
    13. 13. Design• Struktur der Datenspeicherung Name Vorname Adresse Tel Neziri Amir Am triesch 32, 0176 0983 8374 Alsfeld… in JSON-Format umgewandelt{ „name“: „Neziri“, „vorname“: „Amir“, „adresse“: „Am triesch 32, Alsfeld“, „tel“: „0176 0983 8374“}26/06/2012 | Department 20 | Prof. Dr. Michael Weidner & Jan Peter Stotz | Amir Neziri 13
    14. 14. Design• Nach der Verschlüsselung der Daten, das JSON-Format wird erweitert • _id: Notwendig zur Identifizierung eines Dokumentes • _rev_id: Dient für die Revision des Dokuments • key: Authentication Data, Initial Vector, iter, mode, salt, Tagsize, keysize und der Schlüssel26/06/2012 | Department 20 | Prof. Dr. Michael Weidner & Jan Peter Stotz | Amir Neziri 14
    15. 15. Design{ " _id " : " 82cca8060f3da5e87473f0ae04000b90 " , " _rev " : "162bd2b426b958485ef211435879e009d " , "name " : " dAWRkJWo4LPrza77d6Y " , " vorname " : " ew2Ci //RVQg5XNkF" , " adresse " : " ew3LrZWoX2o7S1eJdAaAR0jMVI+lWCuc55DvalmS " , " tel " : " ClHcz8fxAyFrA0+JcR4w3wGCLvEmww" , " key " : "88ofF26wzuCUXLYYJi8uYvFgi7AvmOj9eZNp+KEniLGuXfW2kN0mzjaHeFslR9ATWU1p3ZwKTSmW2UETRoR+02I2D1xxNKIU6hP6cS4IaxJKrkva6yIQzpcBLYVIl07 BYx25WPvcBIIJZvFCq3In4DeKDfCz7P/J195kK8b5a/oFEBdVPiE49xS0uzr5NAyxWSLx5u4UY PV251I "}26/06/2012 | Department 20 | Prof. Dr. Michael Weidner & Jan Peter Stotz | Amir Neziri 15
    16. 16. Design - Verschlüsselungsprozess26/06/2012 | Department 20 | Prof. Dr. Michael Weidner & Jan Peter Stotz | Amir Neziri 16
    17. 17. Prototypische Implementierung• Anforderungen (Funktionale Anforderungen) • Web-Front-End soll über einen Web-Server zur Verfügung gestellt werden • Verschiedene Einstellung sollen im Web-Front-End angeboten werden, wie z.B.: Verschlüsselungsverfahren, URL Eingabe, Zugangsdaten etc. • Verwaltung von persönlichen Kontaktdaten in verschlüsselter Form • Datensynchronisierung • Verwendung einer NoSQL-Datenbank26/06/2012 | Department 20 | Prof. Dr. Michael Weidner & Jan Peter Stotz | Amir Neziri 17
    18. 18. Prototypische Implementierung• Anforderungen (Nicht Funktionale) • Sicherheit: Sichere Datenübertragung und Datenverschlüsslung im Browser des Benutzers • Bedienbarkeit: Benutzungsfreundlichkeit u.a. auch in mobilen Szenarien • Wartbarkeit: Anpassungen erleichtern • Effizienz: Auswirkungen auf Ressourcenverbrauch (z.B. Akkulaufzeit in mobilen Geräten)26/06/2012 | Department 20 | Prof. Dr. Michael Weidner & Jan Peter Stotz | Amir Neziri 18
    19. 19. Prototypische Implementierung• Entwicklungsumgebung (Windows7 virtuelle Maschine) Software Version Eclipse IDE for JavaScript Web Developers Helios Release Jquery, Jquery JSONP und JQuery Mobile 1.1.0, 1.7.1, 2.1.4 und 1.1.0 Standford JavaScript Crypto Library (SJCL) Firefox 11.0 Chrome 18.0.1025.142 m Opera 11.62 Internet Explorer 9.0.8112.1642126/06/2012 | Department 20 | Prof. Dr. Michael Weidner & Jan Peter Stotz | Amir Neziri 19
    20. 20. Prototypische Implementierung• Konfigurationsänderung des Firefox-Browsers notwendig für den Zugriff der Passwortverwaltung • Firefox->aobout:config- >singed.applets.codebase_principal_support=true• Key-Server für die Schlüsselverwaltung • Datenkommunikation über TLS • Datenstruktur in JSON-Format • Datenverschlüsselung mit AES-256• USB-Sticks, Festplatten und SD-Karten für die Schlüsselverwaltung • Datenverschlüsselung mit AES-25626/06/2012 | Department 20 | Prof. Dr. Michael Weidner & Jan Peter Stotz | Amir Neziri 20
    21. 21. Prototypische Implementierung• Web-Front –End heißt SMOLCS (Secure Mobile Cloude Service)• Architektur• Cloud-Service-Anbieter • Software-As-a-Service • CouchDB mit Representational State Transfer (REST)-APIs26/06/2012 | Department 20 | Prof. Dr. Michael Weidner & Jan Peter Stotz | Amir Neziri 21
    22. 22. DEMO26/06/2012 | Department 20 | Prof. Dr. Michael Weidner & Jan Peter Stotz | Amir Neziri 22
    23. 23. Evaluation• Datenübertragung zwischen SMOLCS und Cloud-Service- Anbieter erfolgt über TLS-Protokoll• Persönliche Daten des Benutzers werden auf der Benutzerseite im Browser mit AES-256 Algorithmus verschlüsselt bzw. entschlüsselt• Schlüsselverwaltung im Firefox-Browser hat negative Konsequenzen auf die gesammte Sicherheit des Systems• Key-Server ist eine alternative Lösung zur Browser- Passwortverwaltung26/06/2012 | Department 20 | Prof. Dr. Michael Weidner & Jan Peter Stotz | Amir Neziri 23
    24. 24. Evaluation• HTML5 Sicherheit im SMOLCS • „Persistent Attack Vectors“-Angriff nicht möglich: Daten werden aus localStorage gefiltert • „Session-Hijacking“ und „User Tracking“ sind nicht möglich: keine Benutzer-Session-Ids und eindeutige Daten werden im localStorage gespeichert • „Cache Poisoning“-Angriff ist sehr kritisches Sicherheitsproblem. Dies kann nicht vom Entwickler des Web-Front-Ends vermieden werden (HTML5 Spezifikation). • Mögliche Lösung: Integrität des Web-Front-Ends durch Browser-Plog-Ins überprüfen.26/06/2012 | Department 20 | Prof. Dr. Michael Weidner & Jan Peter Stotz | Amir Neziri 24
    25. 25. Evaluation26/06/2012 | Department 20 | Prof. Dr. Michael Weidner & Jan Peter Stotz | Amir Neziri 25
    26. 26. EvaluationFunktionen HTML5 JavaScript JQuery&JQuery REST API HTTP/SSL MobilelocalStorage X X - - -AppCache X X - - -Datei Lesen X X - - -Browser - X - - -Passwortverwaltung ZugriffKey-Server - X X X XZugriffDaten löschen - X X X XDaten einfügen - X X X XLogin&Logout - X X X XKryptographie - X - - -26/06/2012 | Department 20 | Prof. Dr. Michael Weidner & Jan Peter Stotz | Amir Neziri 26
    27. 27. EvaluationFunktionen Lokal Web- Firefox 1 IE 9 Chrome Opera 11 Server 18localStorage X X X X X XAppCache X X X - X XDatei Lesen X X X X X XBrowser X X X - - -Passwortverwaltung ZugriffKey-Server X X X X X XZugriffDaten löschen - X X X X XDaten - X X X X XeinfügenLogin&Logout - X X X X XKryptographie X X X X X X26/06/2012 | Department 20 | Prof. Dr. Michael Weidner & Jan Peter Stotz | Amir Neziri 27
    28. 28. Evaluation Was geschieht mit den verschlüsselten Daten, die von jemandem kopiert werden können? …warte noch < 20 Jahre damit…26/06/2012 | Department 20 | Prof. Dr. Michael Weidner & Jan Peter Stotz | Amir Neziri 28
    29. 29. Ausblick• Modulerweiterungen und Verschlüsselungsverfahren • z.B. Kalender, Bilderverwaltung, Verwaltung von Notizen und E- Mails • Public-Key-Verfahren und symmetrische Verschlüsselungsverfahren• Datensuche durch Musteranwendung ermöglichen• Implementierung der Web-Front-End Funktionen für den Offline-Modus • Durch den Einsatz vom localStorage oder sessionStorage26/06/2012 | Department 20 | Prof. Dr. Michael Weidner & Jan Peter Stotz | Amir Neziri 29
    30. 30. Ausblick• Verwendung von weiteren HTML5-Schnittstellen • WebSockets für die Realisierung von Web-Applikationen für lokale Ausführungen. Aktuelle werden WebSockets nicht von allen Browsern unterstützt • HTML5-Tag keygen: Zur Erzeugung von Schlüsselpaaren für Publick-Key-Verfahren (nur für Formen (Forms) ) • Web Workers für größere Berechnungen (E-Mails, Bilder…)26/06/2012 | Department 20 | Prof. Dr. Michael Weidner & Jan Peter Stotz | Amir Neziri 30
    31. 31. Questions???26/06/2012 | Department 20 | Prof. Dr. Michael Weidner & Jan Peter Stotz | Amir Neziri 31
    32. 32. 26/06/2012 | Department 20 | Prof. Dr. Michael Weidner & Jan Peter Stotz | Amir Neziri 32
    33. 33. SMOLCS-Screenshots26/06/2012 | Department 20 | Prof. Dr. Michael Weidner & Jan Peter Stotz | Amir Neziri 33
    34. 34. SMOLCS-Screenshots26/06/2012 | Department 20 | Prof. Dr. Michael Weidner & Jan Peter Stotz | Amir Neziri 34
    35. 35. SMOLCS-Screenshots26/06/2012 | Department 20 | Prof. Dr. Michael Weidner & Jan Peter Stotz | Amir Neziri 35
    36. 36. SMOLCS-Screenshots26/06/2012 | Department 20 | Prof. Dr. Michael Weidner & Jan Peter Stotz | Amir Neziri 36
    37. 37. SMOLCS-Screenshots26/06/2012 | Department 20 | Prof. Dr. Michael Weidner & Jan Peter Stotz | Amir Neziri 37
    38. 38. SMOLCS-Screenshots26/06/2012 | Department 20 | Prof. Dr. Michael Weidner & Jan Peter Stotz | Amir Neziri 38
    39. 39. SMOLCS-Screenshots26/06/2012 | Department 20 | Prof. Dr. Michael Weidner & Jan Peter Stotz | Amir Neziri 39

    ×