Home

- HSR - Institutional Repository

image

Contents

1. SignAcknowledgeRequest trueSign IMEI String Mobile App SessionID String Signatur zu k nnen privateKeyPin String SignAcknowledgeResponse trueSign Return Boolean Mobile Best tigung um die ausf hren 9 4 2 4 Nachricht SignDecline Parameter SignDecline Request trueSign IMEI String Den Signaturauftrag Mobile App SessionlD String ablehnen SignDeclineResponse trueSign Return Boolean Mobile 9 4 2 5 sendPushActivateCert Nachricht Sender Parameter Zweck SendPushActivateCertRequest trueSign MobilelD String Senden einer Push Mobile Notification an die A TAN ER Sting trueSign Mobile App ber SendPushActivateCertResponse Push Return Boolean ein zu aktivierendes Provider Zertifikat Via PushProvider 9 4 2 6 activateCert Nachricht Sender Parameter Zweck activateCertRequest trueSign IMEI String Zertifikataktivierung Mobile App ActivateTAN String nach dem ersten Login mM beim trueSign initPin String Webportal newPin String activateCertResponse trueSign Return Boolean Mobile Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 41 von 96 9 4 2 7 sendPushChangePIN Nachricht Sender Parameter Zweck sendPushChangePinRequest trueSign MobilelD String Senden einer Push ide Shsnge pnis SUNG san M
2. 1 Document pdf 2 Document pdf 3 Documentpdt 8 Change PIN enter old PIN confirm new PIN Signieren document pdf DN sign document Verification 1 Document pdf O Main Menu trueSign MobileApp Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 37 von 96 9 Schnittstellenbeschreibung 9 1 Schnittstellen bersicht In der Applikation gibt es grunds tzlich drei Schnittstellen welche in folgender Abbildung ersichtlich sind Anbieter Keyon AG 4 Webportal SSL Login Passwort Client Terminal trueSign Signatur Client INTERNET SSL Smartphone Abbildung 6 Schnittstellen bersicht Bei der Schnittstelle 1 trueSign Webportal handelt es sich um einen Standard Zugriff auf eine Webseite mittels eines Browsers Die Verbindung wird mittels SSL ohne Client Authentifizierung gesichert Auf diese Schnittstelle wird hier nicht genauer eingegangen Allerdings wird noch eine zus tzliche SOAP Schnittstelle ben tigt welche das Registrieren von mobilen Ger ten erm glicht Diese soll genauer beschrieben werden Die Schnittstellen 2 trueSignMobile Service Interface amp 3 Mobile Interface sind Webservice Verbindungen zwischen dem trueSign Webportal dem Signaturservice sowie dem Smartphone des Users Diese Verbindungen werden in den folgenden Kapiteln genauer betrachtet Es handelt sich dabei um denselb
3. Mit dieser Methode k nnen alle aktuellen SessionIDs vom SessionlDManager abgeholt werden Dies wird immer dann ausgef hrt wenn die Applikation gestartet wird oder der Homescreen neu geladen wird Anschliessend werden alle Files die diesen SessionlDs zugeordnet sind vom Server abgeholt und in der Liste auf dem Homescreen zur Anzeige gebracht Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 56 von 96 10 4 3 8 Package android client phonegap Das phonegap Package enth lt alle Plugins welche f r das Framework entwickelt wurden Plugins sind native Klassen im Fall von Android Java Klassen welche von der JavaScript Implementation des PhoneGap Frameworks aufgerufen werden k nnen Diese werden ben tigt damit die SOAP Kommunikation mit dem trueSign Mobile Service abgewickelt und eine PDF Datei angezeigt werden kann F r die Kommunikation via SOAP wurde die kSoap Library benutzt Klassendiagramm 9 Webintent INDEX DOC DATE int 0 readonly INDEX DOC SIZE int 1 readonly INDEX DOC NAME int 2 readonly INDEX SESSION ID int 3 readonly device id String documents ArrayList String execute action String args JSONArray callbackld String PluginResult retrieveDocuments signDocument args JSONArray PluginResult declineDocument args JSONArray PluginResult init amp pp args JSONArray PluginResul
4. Seite 51 von 96 Projekt Zentraler Signaturdienst Seite 52 von 96 Kernoperationen addDocumeni bytel doc String filename String uid String alias Diese Methode errechnet die SessionID des zu signierenden Dokumentes Diese ist ein SHA 256 Hash aus dem gesamten Dokument und einem zus tzlichen 128 Byte langen Seed um die Eindeutigkeit der Session zu gew hrleisten Das File wird auf der Festplatte tempor r abgelegt Die dazugeh rigen Informationen wie die Userld und der Alias werden in der Applikation im SessionManager zwischengespeichert getDocument String name In dieser Methode wird das tempor r auf der Festplatte gespeicherte File ausgelesen und retourniert 10 4 3 4 Package service Dieses Package beinhaltet alle Klassen des SOAP Services Die Implementation befindet sich im Sub Package impl Die Klassen welche sich direkt im service Package befinden sind durch JAX WS generierte SOAP Klassen Deshalb wird hier nur die Implementation genauer erl utert Klassendiagramm truesign 9 TrueSignMobile SOAPImpl getDocument parameters GetDocumentRequest GetDocumentResponse signAcknowledge parameters Sign amp cknowledgeRequest Sign amp cknowledgeResponse activateCert parameters ActivateCertRequest ActivateCertResponse sendMobileTan parameters SendMobileTanRequest SendMobileTanResponse signMobilePDF parameters SignMobilePDFRequest SignMobilePDFResponse Abbildung 1
5. 75 Abbildung 37 trueSign Webportal Revoke Certificate 75 Abbildung 38 trueSign Webportal Change Password 76 Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012
6. Dazu ben tigt der Benutzer eine SuisselD ein Leseger t sowie die entsprechende Software zum Erstellen und Pr fen der digitalen Signaturen Den meisten Anwendern ist dies jedoch zu kompliziert oder sie scheitern bereits an der Installation In Organisationen ergibt sich ein hoher Supportaufwand bez glich der Installation von Treibern sowie der Unterst tzung der Benutzer 14 1 1 Zweck und Ziel Hauptziel dieses Projektes ist die Vereinfachung vom digitalen Signieren von Dateien Das Projekt sieht einen zentralen Signaturdienst vor bei welchem die kryptografischen Schl ssel der Anwender auf einem Hardware Security Module HSM gespeichert werden Somit ben tigt der EndUser keine Smartcard Die gesetzlich vorgeschriebene Zwei Faktor Authentisierung wird erreicht indem sich der User zuerst bei diesem Signaturdienst einloggt Anschliessend kann er das zu signierende File hochladen Dieses wird ihm dann auf dem Smartphone zur Kontrolle angezeigt Best tigt der User dies wird das File mit seinem Signaturschl ssel signiert F r das Signieren der Dokumente kann auf eine bestehende L sung der Firma Keyon AG zur ckgegriffen werden Diese muss um das Webportal sowie um den Versand des zu signierenden Dokumentes an ein Smartphone erweitert werden Dabei gilt es noch einige konzeptuelle Probleme zu kl ren beispielsweise wie die Registrierung des Benutzers resp des Smartphone bei diesem Service gel st werden kann Die technischen und organisator
7. Die Registration ID welche vom Push Notification Provider ausgegeben wird ist ebenfalls der IMEI zugeordnet 6 4 3 1 Neuinstallation der trueSign Mobile App Falls der Benutzer die trueSign Mobile App auf demselben Ger t erneut installiert muss keine neue Initialisierung durchgef hrt werden da die IMEI des Ger tes bereits beim trueSign Webportal gespeichert ist Wechselt der Benutzer hingegen sein Smartphone durch ein neues Ger t aus muss er die per Post erhaltene Initialisierungs PIN erneut eingeben Aus diesem Grund muss der Benutzer diese PIN an einem sicheren Ort aufbewahren 6 4 4 Aktivierung des Signaturschl ssels Der Benutzer erh lt die Initialisierungs PIN f r seinen Private Key per Post Bei der ersten Anmeldung muss er diesen ber sein Smartphone ndern 6 4 4 1 Inkorrekte Aktivierungsversuche Nach vier inkorrekten Aktivierungsversuchen wird der Gebrauch des Signaturschl ssels gesperrt Dies ist gesetzlich vorgeschrieben2 Die Anzahl der m glichen Fehlversuche kann je nach L nge der Aktivierungs PIN erh ht werden Ist der Signaturschl ssel gesperrt ist eine erneute berpr fung der Identit t gem ss 6 4 2 n tig 6 5 Ung ltigkeitserkl rung des Zertifikates Zertifikate m ssen aus folgenden Gr nden unverz glich f r ung ltig erkl rt werden e Der Inhaber stellt einen entsprechenden Antrag e es stellt sich heraus dass das Zertifikat unrechtm ssig erlangt wurde e das Zertifikat bietet keine Gew
8. ei Sites Filter Uu Show Al Groupby Not Managed SE Ree s e Name stets NET Frame Managed Pipet Queue Length Sg D App Code vi ASP NET v4 0 Started v40 integrated Start Automatically True m App Data vi SET v4 0 Classic Started v4 0 Casi D cpu EI App Locale r e NET AppPool Started v2 0 Classic Limit 0 El App Themes Led CodeSigning App Pool Started v4 0 Integrated Limit Action NoAction H E aspx E DefaultAppPool Started v4 0 Integrated Limit Interval minutes 5 bin Truesignwebapp Started v4 0 Integrated Processor Affinity Enabled False E E Configuration EP VbaToolbox App Pool Started v2 0 Integrated Frocemer Alte am 42848 E examples E img mn D 2 Logging h o GEZ Load User Profile E Am Maximum Worker Processes 1 F Service Re Wees ive E e VbaToolbox en Ping nn Response Time seconds 90 Ping Period seconds 30 Shutdown Time Limit seconds 90 Startup Time Limit seconds 90 E Process Orphaning Enabled False Executable Executable Parameters D Rapid Fail Protection Service Unavailable Response Type HttpLevel Enabled True Failure Interval minutes 5 Maximum Failures 5 Identity identityType username password Configures the application pool to run as built in account i e Application Pool Identity recommended Network Service Local System Local Service or as a specifi x jo Content View Abbildung 24 Erstellen eines IIS Application Pools Dokument ZentralerSignaturDienst docx Ve
9. 2200424244n400nnn00nnnnnnnnnnnnannnnnnnnnnnnnnnnnnnnnannnnnnnnnnnnnnnannnnnnnnnnnnnnnnnnann 47 Abbildung 14 Klassendiagramm mobile nen nanten nanne 48 Abbildung 15 Klassendiagramm androd anne 49 Abbildung 16 Klassendiagramm le 51 Abbildung 17 Klassendiagramm senice mp 52 Abbildung 18 Klassendagramm Lon 53 Abbildung 19 Klassendiagramm client 55 Abbildung 20 Klassendiagramm phonegap nn nnnn ann 56 Abbildung 21 Klassendiagramm puSh nen nn nenn 58 Abbildung 22 Klassendiagramm c2dm sse enne nnne nnne enne 59 Abbildung 23 Datenbankmodel eeseeesessseseesseeeeeee eene nennen EA 61 Abbildung 24 Erstellen eines IIS Application Poos 66 Abbildung 25 Erstellen einer IIS Web Site esssssssssssesees esee 67 Abbildung 26 bersicht ber die Appikatlon tnter 69 Abbildung 27 trueSign Mobile App Initialize essen 70 Abbildung 28 trueSign Mobile App Tan 70 Abbildung 29 trueSign Webportal Sign File 71 Abbildung 30 trueSign Mobile App Push New File 72 Abbildung 31 trueSign Mobile App Homescreen nennen nennen 72 Abbildung 32 trueSign Mobile App Verification sssssseseseeeeeeneneeennnnen nennen 73 Abbildung 33 trueSign Mobile App Signed File sese 73 Abbildung 34 trueSign Webportal Signed Files nenn 74 Abbildung 35 trueSign Mobile App Decline Signature nen 74 Abbildung 36 trueSign Webportal My Account
10. Adresse e Wohnort e Mobilteletonnummer e Passwort f r das trueSign Webportal Die Email Adresse wird als Benutzername verwendet Das Passwort muss bestimmten Mindestanforderungen gerecht werden Diese k nnen im trueSign Webportal konfiguriert werden Standard ist eine Mindestl nge von acht Zeichen sowie Gross und Kleinbuchstaben 6 4 2 berpr fung der Identit t Aufgrund der Registrierung wird dem Benutzer eine Best tigung an die angegebene Adresse gesendet Der Benutzer muss die darin enthaltenen Angaben kontrollieren und mit seiner Unterschrift Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 24 von 96 verifizieren Er ist verpflichtet diese schriftliche Best tigung anschliessend bei der Registration Authority RA mit einem g ltigen Ausweis vorzuzeigen Ein pers nliches Erscheinen ist gem ss dem Gesetz vorgeschrieben und kann nicht umgangen werden Nach dieser Best tigung wird von der RA der Zertifikatsrequest f r den Benutzer erstellt und der Account wird er ffnet 6 4 3 Aktivierung der trueSign Mobile App Der Benutzer erh lt einen Initialisierungs PIN f r die trueSign Mobile App per Post Beim ersten Start der App muss er seinen Benutzernamen sowie die PIN eingeben Die trueSign Mobile App schickt anschliessend diese Daten und zus tzlich die IMEI des Smartphone an das trueSign Webportal Das mobile Ger t wird fortan mittels der IMEI identifiziert
11. App 9 4 7 Kommunikation bei der Erneuerung der MobilelD Folgendes Diagramm veranschaulicht den Erneuerungsvorgang der MobilelD SmartPhone Push Provider trueSign Webportal RegisterPush i i l gt l l RegisterOK MobilelD K i Register IMEI InitPIN Uid MobilelD Ack T T I I l l l l l Abbildung 9 Kommunikation Aktivierung Mobile App SmartPhone Push Provider trueSign Webportal newID MobilelD I K m M M E Abbildung 10 Kommunikation Erneuerung MobilelD Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 44 von 96 9 4 8 Kommunikation bei der Aktivierung In diesem Diagramm wird die Kommunikation w hrend der Aktivierung des Benutzerkontos aufgezeigt I E SmartPhone Push Provider UserPC trueSign Webportal trueSign Service Login Username Password l l l i i gt checkLogin SendMobileTanRequest MobilelD I SendMobileTanRespone TAN K Mobile TAN GE IT oversee une EL en ca dran eue m l ENEE I Mobile TAN i I gt ActivateCertificateRequest Uid IMEI MobilelD
12. Daten verhindert wird und um sicherzustellen dass die trueSign Mobile App wirklich mit einem trueSign Service Server verbunden ist Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 26 von 96 Um eine unrechtm ssige Signatur abzuwenden k nnen nur einzelne Daten im trueSign Webportal ge ndert werden F r eine nderung von sicherheitskritischen Daten muss der Benutzer pers nlich bei der RA erscheinen und sich ausweisen 6 7 2 Sicherheitsmechanismen der trueSign Mobile App Die trueSign Mobile App speichert keine der zur Best tigung empfangenen Daten auf dem Smartphone Somit ist es nicht m glich Daten einzusehen Eine Sicherung der trueSign Mobile App mittels eines Passwortes ist nicht n tig 6 7 3 Allgemeine Sicherheitsmechanismen Die Registrierung beim trueSign Signaturservice hat nach einer vorgegebenen und zum Teil auch gesetzlich vorgeschriebenen Prozedur zu erfolgen Dadurch kann ein Betrug bei der Registrierung praktisch ausgeschlossen werden Ein Benutzer kann f r sein Zertifikat jederzeit einen Ung ltigkeitserkl rungsantrag ausstellen Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 27 von 96 7 Analyse der Mobilekommunikation In diesem Kapitel soll die Kommunikation zwischen der trueSign Mobile App und dem trueSign Mobile Service beschrieben werden Sowie die in der Entwicklun
13. Login Username Passwort gesichert werden Jedoch bietet die Mobile App keine Angriffsfl che Die App zeigt keine Daten an sofern aktuell kein Signaturauftrag vorliegt Da die App keine Daten speichert ist eine Verschl sselung der Daten ebenfalls nicht n tig Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 23 von 96 6 2 3 Szenario Angriff auf das LAN WLAN des Benutzers 6 2 3 1 Beschreibung Der Benutzer verwendet die trueSign Applikation in einem ffentlichen WLAN oder in seinem privaten schlecht gesicherten Netzwerk 6 2 3 2 Angriff Der Angreifer verbindet sich mit dem Netzwerk h ufig WLAN des Users und kann so die Daten die an das trueSign Webportal geschickten werden mitlesen Man In The Middle Falls das Smartphone ebenfalls mit dem Netzwerk verbunden ist w re es dem Angreifer auch m glich den Verkehr zwischen dem Smartphone und trueSign auszulesen 6 2 3 3 Abwehrmechanismus Der Netzwerkverkehr zwischen allen Komponenten wird mittels SSL verschl sselt Somit ist es dem Angreifer nicht mehr m glich den Verkehr zu lesen Ebenso wenig kann er die Daten unbemerkt ver ndern Wichtig dabei ist nicht nur die Verschl sselung der Daten sondern auch die berpr fung des Serverzertifikates Dies um zu verhindern dass die PIN f r den Private Key der zur Best tigung der Signatur eingegeben wird an eine Drittperson gelangen kann 6 3 Timeouts
14. OK Change PW falschen alten wird nicht ge ndert Passwortes Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 64 von 96 Device Testbeschreibung Erwartetes Resultat Resultat Bemerkung Webportal Eingabe zweier Fehlermeldung Passwort OK Change PW unterschiedlicher wird nicht ge ndert neuer Passw rter Webportal Klick auf Logout Weiterleitung auf Login OK Logout Seite Webportal Nach Logout auf Back Fehlermeldung OK Back geht da aus dr cken Browser Cash Logout 9 geholt wird Jeder weitere Klick endet jedoch in einem Fehler Webportal Ein File ausw hlen Push Meldung ans OK Sign File und auf Sign klicken Smartphone Mobile App File im Webportal Push Meldung wird OK Sign File hochgeladen angezeigt Mobile App Klick auf Push App wird ge ffnet und der OK Datum hat Sign File Meldung Filename wird in der Liste falsches Format angezeigt Mobile App Klick auf Datei Die Datei wird angezeigt OK Sign File Mobile App Klick auf Sign File Dialog zur Eingabe der PIN OK Sign File f r den Private Key wird angezeigt Mobile App Eingabe der PIN f r Meldung File wurde signiert OK Sian Fil den Private Key und Be Klick auf Sign Mobile App Anzeige des Signiertes File wird in Liste OK Sign File Homescreens gr n markiert Mobile App Erneutes Klicken auf Meldung
15. Webportal einzuloggen und das Passwort zu ndern Da der Login Prozess jedoch zus tzlich ber eine Mobile TAN gesichert ist wird dem Angreifer dies nicht gelingen 6 6 5 Email Adresse Da die Email Adresse eine gewisse Kontrollfunktion hat und ber diese viele wichtige Informationen an den Benutzer gesendet werden kann sie nicht ber das Webportal ge ndert werden Ein Angreifer k nnte sonst seine Adresse eintragen ohne dass es der Inhaber des Accounts merken w rde 6 6 5 1 Angriffsm glichkeiten K nnte ein Angreifer die Email Adresse ndern und seine eigene eintragen w rde der rechtm ssige Benutzer keine Informationen mehr ber den Zustand seines Zertifikates erhalten Ebenso wenig w rde die Passwortrecovery Funktion korrekt funktionieren da diese auf der Email Adresse beruht Deshalb gilt es eine nderung der Email Adresse zu verhindern 6 7 Fazit 6 7 1 Sicherheitsmechanismen des trueSign Webportals Das Webportal wird durch ein Login gesch tzt bei welchem der User das Passwort selbst w hlen kann Es muss allerdings eine minimale Sicherheit bieten Zus tzlich wird das Login mit einer Mobile TAN gesichert Von einer st rkeren Authentifizierung wie z B SSL Client Authentifizierung wird abgesehen da mit dem Webportal allein keine Daten signiert werden k nnen Der Datenverkehr zwischen dem Webportal und dem Rechner des Users sowie dem Smartphone wird mittels SSL verschl sselt damit das Abh ren der bertragenen
16. dass Datei OK Sign File Sign File bereits signiert ist Webportal Klick auf Signed File Signierte Datei wird in Liste OK Signed Files im Men angezeigt Webportal Klick auf Download Download Dialog des OK Signed Files des signierten Files Browsers wird gestartet Webportal Download des Files Das File kann angezeigt OK Signed Files werden Signatur ersichtlich Webportal Klick auf Delete des Das File wird gel scht und OK Evtl are you sure Signed Files signierten Files nicht mehr in der Liste Nachfrage noch angezeigt einf gen Webpotal Erneut ein File File wird hochgeladen OK Sign File ausw hlen und Klick Push Meldung wird auf Sign angezeigt Mobile App Klick auf Push App wird neu geladen OK Sign File Meldung bereits signiertes File f llt aus Liste neues wird angezeigt Mobile App Klick auf Sign File Dialog zur Eingabe der PIN OK Sign File f r den Private Key wird angezeigt Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 65 von 96 Device Testbeschreibung Erwartetes Resultat Resultat Bemerkung Mobie App Eingabe eines Fehlermeldung File wird OK Fehlermeldung Sign File falschen PIN f r den nicht signiert k nnte Private Key spezifischer sein nicht klar dass PIN falsch Mobile App Klick auf Decline Dialog zu Best tigung des OK Decline Sig Decline wird angezeigt Mobile A
17. der Applikation gepr ft die referenzierten Artikel k nnen im Anhang B nachgelesen werden 15 3 1 1 ZertES Artikel 2 Absatz b Anforderungen an eine qualifizierte Signatur Laut Gesetz muss die Signatur ausschliesslich der Inhaberin oder dem Inhaber zugeordnet werden k nnen Durch den in der Arbeit beschriebenen Registrierungsprozess im Speziellen das f r den Antragssteller notwendige Erscheinen beim Aussteller der Zertifikate und das Vorweisen eines amtlichen Ausweises ist das eindeutige Zuordnen der Signatur gew hrleistet Da die PIN f r den Private Key nur dem Benutzer zugestellt wird und dieser auch nie zwischengespeichert oder abgelegt wird hat der Inhaber des Zertifikates die alleinige Kontrolle ber die Mittel mit welchen die Signatur erstellt werden Der trueSign JCE Service erstellt eine in der Datei eingebettete Signatur durch eine Ver nderung der Datei w rde die Signatur ung ltig und die nachtr gliche Ver nderung kann erkannt werden Somit sind alle Anforderungen des Gesetzes an eine qualifizierte Signatur erf llt Einzig die in Artikel 2 Absatz c beschriebene Signaturerstellungseinheit bei welcher es sich eigentlich um ein FIPS 140 2 Level 3 zertifiziertes HSM handelt stand f r unsere Testinstallation leider nicht zur Verf gung Eine solche Einheit k nnte aber ohne weiteren Entwicklungsaufwand an das System angeschlossen werden 15 3 1 2 TAV ber Zertifizierungsdienste im Bereich der elektronischen
18. die zur Signatur vorgesehene PDF Datei hochladen kann Andererseits entsteht die trueSign Mobile App welche zur Best tigung der Signatur auf einem zweiten Kanal verwendet wird Zudem wird der bestehende trueSign JCE Service leicht erweitert um den Versand des PDF an das mobile Ger t zu erm glichen server terminal clientPC protocol web browser HTTPS database MS SQL Express server ineSlanMoblle Send device web server androi vi Apache Tomcat Server j t l artifact D t m trueSign trueSign Mobile MobileApp apk 8 D trueSign JCE j protocol device TCP IP HSM Abbildung 12 Physische Sicht Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 47 von 96 10 4 Logische Sicht Die gesamte Java Applikation befindet sich im Package ch keyon security und ist weiter aufgeteilt in die trueSign Mobile App im Package ch keyon security mobileClient und ch keyon security mobile f r den trueSignMobile Service In folgender Abbildung sind die Packages dargestellt ch keyon truesign mobile config exception service serviceWeb phonegap Abbildung 13 Logische Sicht Bei allen in obiger Abbildung dargestellten Packages handelt es sich um f r die Arbeit neu erstellte Packages Bestehende Packages des trueSign JCE Service werden hier nicht beschrieben 10 4 1 De
19. muss eine Signatur eingebrannt werden mindestens dreimal t glich Da er oft unter Zeitdruck ist und ihn der technische Hintergrund nicht interessiert m chte er so schnell und unkompliziert wie m glich Dokumente unterzeichnen k nnen Pers nlichkeit Arbeitsstil amp Lernverhalten Ueli ist leider eher ein Chaot und verliert manchmal den berblick ber seine Termine und Arbeitsgegenst nde oder er vergisst seine Login Daten Zu bearbeitende Dokumente h ufen sich oft an und m ssen alle in letzter Minute bearbeitet werden Er arbeitet zwar t glich mit digitalen Signaturen interessiert sich aber nicht daf r Neue Technologien oder Arbeitsprozesse lehnt er grunds tzlich ab Pain Points Ueli rgert sich ber die komplizierte Installation der SuisselD da er oft an verschiedenen Ger ten seine Dokumente signieren m chte In den meisten F llen muss er den Support rufen um Hilfe und die Rechte f r die Hardware zu erhalten Er h tte gerne eine Stapelfunktion mit der er mehrere Dokumente auf einmal signieren k nnte Um Zeit zu sparen w re es am einfachsten alle zu signierenden Dokumente per Checkbox anzuw hlen und gleich mit einer Signatur zu versehen unter Umst nden auch ohne das Dokument noch zu ffnen Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 31 von 96 8 2 Szenarios In diesem Kapitel wird eine aktuelle Situation mit konkreten respektive ide
20. und per Email versenden da der Hersteller in Schweden diese Vertr ge noch heute unterzeichnet erhalten muss um eine weiter Verz gerung zu vermeiden 8 2 1 2 Aktivit ten User 1 e J rg liest die per Mail erhaltenen Projektantr ge sorgf ltig durch Da die meisten Dokumente im MS Word verfasst wurden erstellt er daraus PDF Dokumente e Er schliesst den USB Kartenleser an seinen Laptop an und liest damit die SuisselD ein e Er startet das Sign Programm der Suisse ID um die Signatur auszuf hren e Er gibt den pers nlichen Private Key ein und best tigt somit die digitale Unterschrift e Nun kann er den Antrag dem jeweiligen Studenten per Mail zur cksenden User 2 e Der Benutzer Ueli ffnet das erste seiner 51 PDF Dokumente Da er die Vertr ge nach den etlichen Diskussionen mittlerweile auswendig kann muss er das Dokument nicht mehr vollst ndig lesen er kontrolliert nur kurz die Betr ge und das Lieferdatum e Er schiebt seine SuisselD in den Kartenleser e Er startet das Sign Programm der Suisse ID um die Signatur auszuf hren e Nach Eingabe seines pers nlichen Private Key best tigt er diesen und das Dokument wird signiert e Diesen Prozess wiederholt er f r alle restlichen Dokumente e Die neuen Dokument mit der digitalen Unterschrift h ngt er den schon vorbereiteten Email Nachrichten an und versendet sie an die Lieferanten 8 2 1 3 Probleme Story 1 Bl derweise hat J rg zu Hause seinen USB Kart
21. von 96 10 5 2 Tempor re Datenhaltung Folgende Tabelle zeigt wo tempor r ben tigte Daten abgelegt werden ActivateTAN trueSignMobile Service DownloadTAN trueSignMobile Service LoginTAN trueSign Webportal FileToSign FileName trueSignMobile Service UserlD trueSignMobile Service SessionlD trueSignMobile Service alias trueSignMobile Service Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 63 von 96 11 Systemtest 11 1 Voraussetzungen Die Applikation muss vollst ndig und korrekt aufgesetzt werden um einen Systemtest durchf hren zu k nnen Hierf r muss das Webportal auf einem IIS Webserver installiert werden Der trueSign Mobile Service sowie der trueSign JCE Service m ssen auf einem Tomcat Application Server deployed werden Es k nnen beide Services auf derselben Tomcat Instanz in Betrieb genommen werden Der IIS Webserver beziehungsweise das Webportal muss eine Verbindung zum trueSign Mobile Service aufbauen k nnen Der trueSign Mobile Service wiederum muss mit dem trueSign JCE Service kommunizieren k nnen Die trueSign Mobile App muss auf einem Smartphone mit mindestens Android 4 0 installiert werden Zudem muss die mobile Applikation mit dem trueSign Mobile Service welcher auf dem Tomcat installiert wurde Daten austauschen k nnen 11 2 Vorbereitung Um f r eine saubere Testbasis zu sorgen muss die Datenban
22. wird durch einen gesicherten Kanal direkt an den trueSign Mobile Service geschickt Somit ist auch die Verwendung des Private Keys durch Drittpersonen z B die Betreiber des trueSign Webportals nicht m glich Der Benutzer kann auf seinem Smartphone die Signatur ablehnen 6 2 1 4 Zus tzliche Sicherheitsaspekte Das Login beim trueSign Webportal soll zus tzlich durch eine Mobile TAN gesichert werden Dies um zu verhindern dass sich ein Angreifer der sich via Malware die Login Credentials beschafft hat beim Webportal einloggen kann Denn innerhalb des Webportals k nnen wichtige Daten eingesehen und auch ver ndert werden Es w re auch m glich das Login durch eine Client Authentifizierung mittels SSL zu sch tzen Die Sicherheit w rde verglichen mit einem Login mit Mobile TAN jedoch nur unwesentlich erh ht werden Allerdings w rde dann jeder Benutzer ein Clientzertifikat ben tigen was der Idee die digitale Signatur zu vereinfachen widersprechen w rde Deshalb wird von einer SSL Client Authentifizierung abgesehen 6 2 2 Szenario Verlust des Smartphone 6 2 2 1 Unberechtigtes Lesen der Best tigungsanfrage Beschreibung Der Benutzer gibt eine Signatur im trueSign Webportal in Auftrag Das Smartphone ber welches diese best tigt wird ist nicht mit einem PIN Code gesichert Angriff Der Angreifer sieht die Push Nachricht auf dem Smartphone und liest als unberechtigte Person die PDF Datei welche zur Best tigung an das Smartpho
23. 2 3 4 Beschreibung an 23 6 2 3 2 Lu EE 23 6 2 8 8 Abwehrmechanismus uu444urnnnnnnnnnnnnnnnnnnnnnnnennnnnnnnnnnnannennnnnnnennnnannennnnannennnnannen 23 6 3 Timeouts bei der Kommunikation sse nennen nnnm nnnm nnne 23 6 3 1 1 Timeout Best tigung der Signatur nen 23 6 3 1 2 Timeout trueSign Webpoortal nenn 23 6 4 Registiier ng uin oiii and sede up lud c sU apu u Red t a TL ge ande agi 23 6 4 1 Online Anmeldurng nu ee kr 23 6 4 2 berpr fung der Jee EE 23 6 4 8 Aktivierung der trueSign Mobile App 24 6 4 3 1 Neuinstallation der trueSign Mobile App 24 6 4 8 Aktivierung des Signaturschl ssels eee 24 6 4 4 4 Inkorrekte Aktivierungsversuche eene ene nnnm 24 6 5 Ungi ltigkeitserkl rung des Zertifikates AAA 24 6 5 1 Ung ltigkeitserkl rungsantrag vom Dentzer 24 Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 5 von 96 9 6 6 nderung derBenufrerdaten en Den 24 6 6 1 Mobilteletonnummer nen nn EARE 25 6 6 2 Name des DBenutzerg nn 25 6 6 3 Adresse des Benutzers u4200umnnnn0onnnnnnnonnnnnnonnnnnnnnnnnnnnnonnnnnnnonnnnnnn onen nn neret nnne 25 6 6 3 1 Angriffsm glichkeiten sse enne eene nennen nennen nnns 25 aH EE tr o M E 25 6 6 4 1 Angriffsm glichkeiten sss ene ener edn dai iia 25 oA BO GET 25 6 6 5 1 Angriftsm glichkeiten u Hu
24. 23 ege EAR Up P Coe de iere Mee De e eet Me aai 40 9 4 2 6 activate Cert ro nne unitatem toten gi he ee erc D DO DER 40 SA sendPusliChangePlN terti e Patet apre Mee Pee titu a pats 41 9 4 2 8 E ue Ill EE 41 9 4 3 Ablauf der kommunikaton nn 41 9 4 4 Kommunikation beim Login 44H nnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn nenn nn 41 9 4 5 Kommunikation beim Gionleren nen 42 9 4 6 Kommunikation bei der Aktivierung der trueSign Mobile App 43 9 4 7 Kommunikation bei der Erneuerung der Mobile 43 9 4 8 Kommunikation bei der Aktivierung nn nnn ann 44 10 RT LEE 45 10 1 Architektonische Darstellung Architectural Hepresentaton nee 45 10 2 Architektonische Ziele amp Einschr nkungen Architectural Goals and Constraints 45 10 2 1 Val 45 10 3 Physische Sicht n a2 me 46 10 4 Logische Sicht Ic EET 47 10 4 1 Designentscheidungen eeeeeessseeseseseeeeee seen tnne nne tnnn nnne ennt trn nennen 47 10 4 2 feuis eI EE 47 10 4 3 Java Design Packages e tote Re tuu eet RR HR tug ee ER e tek ua 47 10431 Package mobDile edere eet er t defe be eai ebd 48 Ke le EE ne e DEE 49 10 4 3 3 Package ten een kei e ee de bebe ENEE 51 Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 7 von 96 10 4 3 4 e le EE 52 10 4 3 5 Package serviceWeb urmnnn
25. 5 min ausgef hrt wird die Signatur der Datei nicht erstellt Special Requirements Technology and Data Variations list Frequency of occurence Ca 1 mal pro Applikationsausf hrung Notes Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 19 von 96 5 3 6 UC 03 Signatur best tigen Use Case Abschnitt Kommentar Scope trueSign Mobile App Level Anwenderziel Primary Actor Benutzer Stakeholders amp Interests Benutzer Um die gesetzlich vorgeschriebene Zwei Faktor Authentisierung zu erreichen muss der Benutzer die Signatur mit dem Smartphone best tigen Preconditions Die zu signierende PDF Datei wurde im trueSign Webportal hochgeladen Success Guarantee Die PDF Datei wird best tigt und die Signatur kann erstellt werden Postconditions Das trueSign Webportal erh lt die Best tigung und erstellt die Signatur Main success scenario 1 Der Benutzer erh lt auf dem Smartphone eine Nachricht 2 Der Benutzer kontrolliert die Echtheit der PDF Datei auf dem Smartphone 3 Der Benutzer gibt zur Best tigung der Signatur die PIN f r seinen Private Key ein 4 Die Best tigung inkl PIN wird ans trueSign Webportal geschickt Extensions 3a Der Benutzer best tigt die Echtheit der Datei nicht Trifft die Best tigung nicht innerhalb von 5 min beim Webportal ein wird die PDF Datei verworfen Special
26. 7 1 3 Unit Testing Damit die Funktionalit t des Programms berpr ft werden kann werden w hrend dem Entwickeln der Software vorzu Test Units erstellt Diese Tests werden jeweils vor der Implementierung einer weiteren Programmfunktion erstellt und anschliessend durchgef hrt Systemtests Systemtests mit dem Webportal enthalten folgende Ausf hrungen Stimmt der Loginprozess gt Kann der Benutzer die hochgeladenen Daten einsehen F r die Systemtests mit Smartphone wird der Android Emulator verwendet Als Test wird jeweils Folgendes berpr ft gt Erh lt der Benutzer die Benachrichtigung des Webservers gt Kann sich der Benutzer einloggen Wir das Dokument korrekt angezeigt gt Findet der Upload zum Webserver korrekt statt Um die Systemtests durchzuf hren wird die Software gem ss den Use Cases verwendet 14 7 1 4 Versionsmanagement F r das Projekt wird ein Git Repository erstellt in welchen alle Dokumente abgelegt und versioniert werden 14 8 Projektmonitoring 14 8 1 Zeiterfassung Jedes Teammitglied erstellt eine eigene Zeiterfassung Hierf r wird Excel verwendet Darin soll ersichtlich sein wie viele Stunden an welchen Tagen f r welche Arbeiten aufgewendet wurden 14 8 2 Sitzungsprotokolle Es soll um die Beschl sse nachvollziehbar zu machen jedes Meeting protokoliert werden In diesen Protokollen soll folgendes aufgezeigt werden e wann hat das Meeting stattgefunden e wer hat am Meeting teilge
27. 7 Klassendiagramm service impl Kernoperationen Die Operationen der Implementation dienen lediglich als Dispatcher und leiten die SOAP Requests an die RequestHandler Klasse weiter Die Methoden erstellen lediglich die SOAP Request und SOAP Response Objekte und bermitteln diese an den Service Daher wird auf eine genaue Beschreibung der Operationen verzichtet Diese kann im Kapitel 10 4 3 1 Package mobile nachgelesen werden 10 4 3 5 Package serviceWeb In diesem Package befinden sich die mit JAX WS generierten Klassen welche den SOAP Webservice Richtung trueSign Webportal bedienen Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 53 von 96 10 4 3 6 Package tan Dieses Package behandelt alles was mit TANs und Sessions im Zusammenhang steht Klassendiagramm SessionManager DOWNLOAD TIMEOUT double D readonly ACTIVATE TIMEOUT double 0 readonly Y CHANGE TIMEOUT double 0 readonly validTans HashMap String Session fileNames HashMap String FileToSign getlnstance SessionManager createMobileTan String createDownloadTan IMEI String sessionlD String String createActivateTan IMEI String sessionlD String String createChangeTan IMEI String sessionlD String String isvalid tan ToCheck String IMEI String boolean getFileName sessionlD String FileToSign addFileName sessionlD Str
28. AUTH String Update Client Auth readonly PARAM REGISTRATION ID String registration id readonly PARAM DELAY WHILE IDLE String delay while idle readonly PARAM COLLAPSE KEY String collapse key readonly UTFS8 String UTF 8 readonly m authToken String sendMessage registrationld String message String int ele eo oe oe oe o 9 AuthenticationUtil EMAIL String eric aebil gmail com readonly PASSWORD String Ineed1231 readonly Y m AuthToken String getToken String getToken email String password String String Abbildung 15 Klassendiagramm android Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 50 von 96 Kernoperationen Hier werden die wichtigsten Operationen des Packages kurz geschildert getToken Die Klasse AuthenticationUtil speichert nach einmaliger Authentisierung das AuthenticationToken von Google ab Ist dies bereits geschehen gibt diese Methode das Token zur ck Falls noch kein Token angefordert wurde fordert die Methode ein neues Token an und retourniert dieses sendMessage String registrationid String message Mit dieser Methode werden Push Nachrichten versendet Dabei wird die Registrationid des Smartphone welches die Nachricht erhalten soll bergeben Sie dient als Telefonnummer und identifiziert das Ger t sowie die Mobile App Die berlieferte Message wi
29. Benutzer kann mit seinem Zertifikat Dateien signieren Postconditions Das Zertifikat wurde aktiviert Main success scenario 1 Der Benutzer meldet sich an 2 Der Benutzer erh lt eine Nachricht auf dem Smartphone zur Aktivierung seines Zertifikates 3 Der Benutzer gibt seine Initialisierungs PIN im Smartphone ein 4 Die PIN wird an den trueSign Service geschickt 5 Das Zertifikat wird aktiviert Extensions 3a Gibt der Benutzer eine falsche PIN ein wird er zur erneuten Eingabe aufgefordert 3b Nach vier Fehlversuchen wird das Zertifikat revoziert Special Requirements Technology and Data Variations list Frequency of occurence ca 1 mal pro Applikationsausf hrung Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 21 von 96 6 Analyse der Sicherheitsszenarien 6 1 bersicht ber die Applikation Die Applikation besteht aus zwei Teilen aus dem trueSign Webportal und der trueSign Mobile App Das Signieren eines PDF Dokumentes soll ber das Webportal erfolgen Um die Zwei Faktor Authentisierung zu erm glichen wird die Mobile App eingesetzt Das Smartphone ersetzt somit gewissermassen das in anderen Signaturanwendungen bliche Hardware Token Client Anbieter Keyon AG Webportal i Login Passwort Client Terminal trueSign Signatur Service INTERNET trueSign Mobile Service Smartphon
30. CUMENT String SignDeclineRequest readonly SOAP NAMESPACE WEB String http www keyon ch TrueSignMobileWeb readonly SOAP URL TRUE SIGN WEB String http 152 96 232 209 8085 TrueSignMobileWeb asmx wsdl readonly SOAP ACTION REGISTER MOBILE String http www keyon ch TrueSignMobileWeb RegisterMobileApp readonly METHOD NAME REGISTER MOBILE String RegisterMobileAppRequest readonly o o o o o o o o o o o o 9 SessionlDManager 9 Messaging2Activity sessionlDs HashSet String o AUTH String authentication readonly getlnstance SessionlDManager onCreate savedlnstanceState Bundle addSessionlD sessionlD String islnitialized boolean removeSessionlD sessionlD String getSessionlDs String MessageReceivedActivity onCreate savedInstanceState Bundle Abbildung 19 Klassendiagramm client Kernoperationen onCreate Bundle savedInstanceState Die onCreate Methode der Activity ist der Haupteinstiegspunkt der trueSign Mobile App Sie pr ft ob die Applikation bereits initialisiert wurde Falls ja ffnet sie den Homescreen falls nein wird der Initialisierungs Screen ge ffnet addSessioniD String Mit dieser Methode kann eine SessionID zum SessionlDManager hinzugef gt werden Dies geschieht immer dann wenn eine neue Push Meldung ber ein zur Signatur bereitstehendes File eintrifft getSessionlDs
31. EI genutzt Somit kann die Telefonnummer ber das trueSign Webportal jederzeit ge ndert werden 6 6 2 Name des Benutzers Sollte sich der Name des Benutzers beispielsweise aufgrund einer Heirat ndern muss ein neues Zertifikat erstellt werden Dies muss nach der in 6 4 2 beschriebenen Prozedur durchgef hrt werden 6 6 3 Adresse des Benutzers Die Adresse des Benutzers ist nicht sicherheitskritisch und kann deshalb im Webportal ge ndert werden Die Adress nderung wird sofort per Email best tigt und kann via Link in der Email Nachricht r ckg ngig gemacht werden 6 6 3 1 Angriffsm glichkeiten Ein Angreifer kann nach einem Login beim trueSign Webportal die Anschrift des Benutzers ndern um so Informationen zum Zertifikat per Post zu erhalten Jedoch wird der rechtm ssige Benutzer via Email auf die Adress nderung aufmerksam gemacht und kann diese unverz glich wieder r ckg ngig machen Der Schaden kann somit sehr gut begrenzt werden Und da eine Adress nderung relativ h ufig vorkommt soll hier von weiteren Sicherheitsmechanismen abgesehen werden 6 6 4 Passwort Das Passwort f r das trueSign Webportal soll ebenfalls auf einfache Weise ge ndert werden k nnen Zudem soll es eine Passwortrecovery Funktion geben sollte der Benutzer das Passwort vergessen haben 6 6 4 1 Angriffsm glichkeiten Sollte sich ein Angreifer das Passwort mittels Malware oder auf anderen Wegen beschafft haben k nnte er versuchen sich im trueSign
32. I l sendPushActivateCert ActivateTAN Activate TAN activateCertRequest ActivateTAN IMEI InitPIN newPIN ChangePIN InitPIN newPIN Abbildung 11 Kommunikation Aktivierung Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 45 von 96 10 Design 10 1 Architektonische Darstellung Architectural Representation Die Applikation besteht grundlegend aus zwei Teilen aus der trueSign Mobile App und dem trueSign Webportal Dieses Kapitel soll f r beide Teile gelten Allf llige Einschr nkungen auf nur einen Teil der Applikation werden klar ersichtlich dargestellt 10 2 Architektonische Ziele amp Einschr nkungen Architectural Goals and Constraints 10 2 1 Ziele Die Applikation soll m glichst modular aufgebaut werden so dass ein sp terer Ausbau der Funktionalit t einfach m glich ist Die trueSign Mobile App soll so weit als m glich mit dem PhoneGap Framework aufgebaut werden Dieses Framework erm glicht ein einmaliges Entwickeln einer Mobile App und ein mehrfaches Deployen auf alle g ngigen mobilen Betriebssysteme Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 46 von 96 10 3 Physische Sicht Die Applikation ist ein sogenanntes verteiltes System Einerseits wird das trueSign Webportal entwickelt bei welchem sich der User einloggen und
33. NDER String sender readonly EXTRA APPLICATION PENDING INTENT String app readonly REQUEST UNREGISTRATION INTENT String com google android c2dm inten UNREGISTER readonly REQUEST REGISTRATION INTENT String com google android c2dm intent REGISTER readonly LAST REGISTRATION CHANGE String last registration change readonly Y BACKOFE String backoff readonly Y GSF PACKAGE String com google android gsf readonly PREFERENCE String com google android c2dm readonly Y DEFAULT BACKOFF long 30000 readonly register context Context senderld String unregister context Context getRegistrationld context Context String getLastRegistrationChange context Context long getBackoff context Context long setBackoff context Context backoff long clearRegistrationld context Context setRegistrationld context Context registrationld String 9 C2DMBroadcastReceiver onReceive context Context intent Intent Abbildung 22 Klassendiagramm c2dm Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 60 von 96 10 4 4 Net Klassen In diesem Kapitel sollen die neu entwickelten Klassen des trueSign Webportal beschrieben werden Diese sind in C Sharp implementiert zudem handelt es sich dabei h ufig um sogenannten Code Behind der jeweiligen ASPX Webseiten Da diese Klassen Haupts chli
34. NH HSR HOCHSCHULE F R TECHNIK E Ki RAPPERSWIL FHO Fachhochschule Ostschweiz keyon Zentraler Signaturdienst Bachelorarbeit Abteilung Informatik Hochschule f r Technik Rapperswil Fr hjahrssemester 2012 Autor en Eric Aebi Betreuer Prof Dr Andreas Steffen Projektpartner Keyon AG Jona Experte Ralf Hauser PrivaSphere AG Z rich Gegenleser Prof Dr Luc Bl ser Projekt Zentraler Signaturdienst Seite 2 von 96 0 Dokumentinformationen 0 1 nderungsgeschichte Datum Version nderung Autor 31 05 12 1 0 Dokument erstellt ea Einf gen der einzelnen Dokumente in die Kapitel 31 05 12 1 1 Anforderungsanalyse Sicherheitsszenarien ea Schnittstellenbeschreibung Design Projektplan 01 06 12 1 2 EE EE Sr Einf gen Benutzeranleitung 05 06 12 1 3 berarbeitung der Kapitel korrektur lesen ea 07 06 12 1 4 berarbeitung der Kapitel ea sr 11 06 12 1 5 berarbietung der Kaptiel 13 06 12 1 6 Einf gen Systemtest ea DOO re eg ea sr Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 3 von 96 0 2 Inhalt 0 Dokumentinformationen ernennen 0 1 Anderungesgeschichte ER EEEEE 0 2 a SER EEE E EE S A E 1 Autgabenstellung naar 1 1 lte Ee E ET NEP orn cle RED 3 Erkl rung von Eric Aebi und Stefan Rohner sses 4 Management Summary esssssssennnnnnnsnnen
35. Projekt Zentraler Signaturdienst Seite 29 von 96 Send Message Send Message N C2DM Server m 9 Message id trueSign Mobile Service 2 Abbildung 5 Nachricht schicken C2DM Nun kann der Server mit dem erhaltenen Token als Authentifizierung sowie der Registrationld als Empf nger Adresse eine Nachricht an den C2DM Server bermitteln Der Google Server leitet diese Nachricht an das Smartphone weiter Registration Bevor sich der Server beim C2DM Server anmelden kann muss ein Account online er ffnet werden Dabei m ssen gewisse Angaben zur Applikation wie das Package oder die gesch tzte Anzahl Nachrichten pro Tag angegeben werden Zudem wird eine Kontakt Email Adresse wie auch eine Sender Email Adresse welche als Accountname benutzt wird ben tigt Dieser Accountname muss der Server wie auch die Mobile App bei der Registrierung beim C2DM Server angeben Beschr nkungen Google erlaubt einem Standard Account das Versenden von maximal 200 000 Nachrichten pro Tag Dies reicht f r die meisten produktiven Anwendungen und ist f r unsere Verwendung sicherlich ausreichend Sollte diese Anzahl berschritten werden kann bei Google eine Erh hung der Begrenzung angefordert werden Die Payload einer einzelnen Nachricht ist auf maximal 1024 Bytes beschr nkt Daher kann mittels einer solchen Push Nachricht die Mobile App nur dar ber informiert werden dass auf dem Server neue Daten zur Verf gung stehen Diese m ssen d
36. Requirements Technology and Data S Variations list Frequency of occurence ca 1 5 mal pro Applikationsausf hrung Notes 5 3 7 UC 04 Signierte Datei downloaden Use Case Abschnitt Kommentar Scope trueSign Webportal Level Anwenderziel Primary Actor Benutzer Stakeholders amp Interests Benutzer Der Benutzer kann die signierte Datei herunterladen Preconditions Die Best tigung der Signatur konnte korrekt ausgef hrt werden Success Guarantee Der Benutzer hat die signierte Datei auf seinem Rechner Postconditions Der Signierungsprozess wurde erfolgreich abgeschlossen Main success scenario 1 Der Benutzer l dt die Datei herunter Extensions keine Extensions oder Alternative Flows Special Requirements Technology and Data Variations list Frequency of occurence ca 1 mal pro Applikationsausf hrung Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 20 von 96 5 3 8 UC 05 Zertifikat aktivieren Use Case Abschnitt Kommentar Scope trueSign Webportal trueSign Mobile App Level Anwenderziel Primary Actor Benutzer Stakeholders amp Interests Benutzer Der Benutzer muss sein Zertifikat nach dem ersten Login beim trueSign Webportal aktivieren Preconditions Der Benutzer hat sich noch nie beim trueSign Webportal angemeldet Success Guarantee Der
37. Signatur Die technischen und administrativen Vorschriften TAV stellen weitere Anforderungen an die Signaturerstellungseinheit Diese wurden in unserer Testinstallation nicht eingehalten k nnen jedoch in einer echten Anwendung von einem HSM das in der Umgebung von einer CA in Betrieb genommen wird ohne Probleme erf llt werden Somit k nnen auch die Anforderungen der TAV als Erf llt betrachtet werden Kapitel 3 3 3 b Dieses Kapitel beschreibt die Anforderungen an eine Signaturerstellungseinheit bei welcher sich der Zertifikatsinhaber und die Einheit selbst nicht am selben Ort befinden Auch hier gibt es Anforderung welche unser Testsystem nicht erf llt aber in einer produktiven Umgebung problemlos umzusetzen w ren Wie Die FIPS 140 2 Level 3 Zertifizierung der Einheit sowie der Betrieb der Komponenten in einer gesicherten Umgebung wie es in einer CA der Fall w re Die Anforderung an einen Logisch getrennten gesicherten Kanal zwischen der Signaturapplikation den Komponenten zur Signaturerstellen und dem Zertifikatsinhaber hingegen erf llt die Applikation vollst ndig da die Best tigung der Signatur nicht nur Logisch getrennt von den Restlichen Kommunikationskan len ist sondern auch noch auf einem anderem Medium basiert Dieser Kanal muss zudem auch die Identifizierung der Endpunkte und die Vertraulichkeit und Integrit t der bermittelten Daten gew hrleisten k nnen Da dies mittels SSL problemlos bewerkstelligt werden kann wird au
38. String sendMobileTan mobilelD String String signMobilePDF imei String pdf byte fileName String mobilelD String uid String alias String o o o o e o o o 9 TrueSignMobileServlet destroy doGet request HttpServletRequest response HitpServletResponse doPost request HttpServletRequest response HttpServletResponse init Abbildung 14 Klassendiagramm mobile Kernoperationen Hier werden die wichtigsten Operationen des Packages kurz beschrieben getDocument String imei String documentName Diese Methode behandelt den GetDocumentRequest des SOAP Services Sie pr ft ob die bergebene dem Dokument entsprechende SessionID der IMEI zugeordnet und noch g ltig ist Falls dies der Fall ist wird das Dokument ausgelesen und an das mobile Ger t zur ckgeschickt Falls die SessionID nicht mehr g ltig oder nicht der bergebenen IMEI zugeordnet ist wird eine MobileException geworfen signDoc String imei String sessionID String pin In dieser Methode wird die SOAP Action SignAcknoledge abgearbeitet Zuerst wird ebenfalls die SessionID sowie die IMEI gepr ft Sind die Angaben g ltig wird ein Aufruf des trueSign JCE Services vorbereitet Das entsprechende Dokument wird ausgelesen und mitsamt der UserlD zu einem DataObject zusammengef hrt Dann wird ein Keyldentifier Object bestehend aus der PIN und des Alias des Users erstellt Dieser Identifier und das DataObject wird dem trueS
39. Teams bereithalten Daten ber alternatives Netzwerk Medien austauschen H8 Datenverlust erarbeitete Projekt 610 0 50 96 3 05 Artefakte konsequent unter Dateien aus letztem Artefakte werden lokal Versionsverwaltung stellen lokale Backup vom letzten unwiderruflich ge ndert Kopien Hudson CI Server mit Build wiederherstellen oder gel scht Autobackup auf einen externen und ev auf den Datenserver mit Hardware RAID neuesten Stand bringen R9 Ausfall eines Ausfall eines 370 0 50 1 85 Verantwortlichkeiten Arbeit innerhalb des Projektmitgliedes Projektmitgliedes in Team klar definieren bestehenden Teams aufgrund Krankheit aufteilen Unfall Studiumabbruch Funktionsumfang k rzen Sum 1340 58 50 96 33 7 me Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 81 von 96 14 5 Arbeitspakete Nr Name Inhalt Iteration Prio Ox Projektmanagement 01 Aufgabenstellung Aufgabenstellung f r AVT wird erstellt und grobe Aufwandsch tzung definiert 1 02 Projektplan Projektplan wird erstellt Elaboration 1 1 03 Review amp Anpassung Projektplan Review des Projektplan Elaboration 1 2 04 Zeitplanung Projektplan Jedes Teammitglied tr gt seine Stunden ein Elaboration 1 1 05 Risiko Management und Massnahmen Erstellen des Riskmanagement Elaboration 1 3 06 Q Massnahmen Erstellen der Q Massnahmen Elaboration 1 1 07 Inf
40. Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 35 von 96 8 3 2 3 trueSign Mobile There are no documents available Keine Dokumente Sind keine Dokumente verf gbar wird eine entsprechende Meldung angezeigt Ebenfalls ist hier das Fortschrittssymbol illustriert das beim Laden der Dokumentenliste erscheint sobald auf den Refresh Butten gedr ckt wird Weitere App Ansichten Version Release 1 4 2 152 Contakt keyon y truesign keyon ch trueSign Help Settings Change PIN Use WLAN Einstellungen Hier k nnen Informationen ber die App wie Version Kontaktinformationen und die AGB gefunden werden Es wird auch auf eine kleine Hilfe verwiesen Hier kann auch der aktuelle PIN ge ndert werden Zus tzlich kann eingestellt werden ob ausschliesslich die WLAN Verbindung genutzt werden soll change Ad ES key enter old PIN enter new PIN confirm new PIN PIN ndern Der Benutzer kann in dieser Einstellung seine PIN vom Private Key ndern Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 36 von 96 8 4 GUI Map 8 4 1 Mobile Applikation Start trueSign MobileApp enter init PIN confirm new PIN available enter password Activate certificate Please activate your certificate Settings trueSign Help Change PIN Use WLAN Hauptmen trueSign Mobile
41. ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 15 von 96 5 Anforderungsspezifikation 5 1 Allgemeine Beschreibung 5 1 1 Produktperspektive Diese Applikation soll die M glichkeit bieten PDF Dateien digital rechtsg ltig zu signieren Dies jedoch ohne eine Smartcard wie die SuisselD besitzen zu m ssen Das Signieren soll ber eine Webapplikation erfolgen Die ben tigte Zwei Kanal Authentisierung wird mittels einer Best tigung der Signatur auf einem Smartphone erreicht 5 1 2 Produktfunktion Die zu signierende PDF Datei wird vom Rechner des Kunden zur Webapplikation hochgeladen Anschliessend wird es an das Smartphone des Kunden geschickt Best tigt dieser auf dem Smartphone die Korrektheit der Datei wird diese signiert und dem Kunden zum Download zur Verf gung gestellt 5 1 3 Benutzercharakteristik Personen welche ihre Gesch fte online t tigen m chten und daf r digital signierte Dateien ben tigen allerdings ber zu wenig IT Wissen verf gen um eine Smartcard f r die Signatur zu verwenden oder bereits an der Installation des Smartcard Lesers scheitern 5 1 4 Einschr nkungen F r die volle Funktionalit t ist ein modernes Mobilger t mit einer Internetverbindung n tig 5 1 5 Abh ngigkeiten F r die Signatur der PDF Dateien wird die bereits bestehende L sung der Firma Keyon AG verwendet Diese muss jedoch um ein Webportal erweitert werden 5 2 Spezi
42. ak He em 25 6 7 EE 25 6 7 1 Sicherheitsmechanismen des trueSign Webportals s ssssesseesse eee eesr rese nesrnernssrnssrnsene 25 6 7 2 Sicherheitsmechanismen der trueSign Mobile App 26 6 7 8 Allgemeine Gicherbeitsmechaniemen nennen 26 Analyse der Mobilekommumnikation essent 27 7 1 1 Datenverbindungen zum mobilen Ger t 27 Tes Aufbau Mobile App toin se ndi et eine et P eicere ede te e haeret 27 7 2 1 Ge e all Eine Tu EE 27 7 2 1 1 Software Development Kit SDK nn 27 7 2 1 2 PhoneGap mit Dreamweaver und JQuery see 27 7 2 1 3 Entwicklungsumgebung f r spezifische Smartphone Betriebssysteme 27 Ke BN EEN ele 28 EU IEN EE 20 8 1 cor cm E 30 8 12 Jo rg Stadelliofer doce eher Hit 30 9 1 2 Ueli Unterrriaurer iae ee reete cerne et eee le ree ea nera 30 8 2 SZenarioS oce ee ae 31 8 2 41 IST Szenario Problem Gcenatol enne 31 8 2 4 1 Ausgangssituati n eene ecdesia d ee dea NEEN 31 8 2 1 2 Aktivit ten ine ceca in 31 8 21 39 E ele 31 8 2 1 4 Abschluss ae al 32 8 22 SOLL Szenario Future Scenario sse 32 8 3 Paper Prototypes 2 aee ea od sed a lu e sU adu Red t o dL pe adv aptat 32 98 9 1 Webportal ee 32 8 3 2 Mobile Applikation un e er a en 34 8 3 2 4 Erste Anmeldung nach Installation see em 34 8 8 2 2 Signierungsprozess
43. aler Signaturdienst Seite 86 von 96 Das Webportal wurde als eigenst ndiges Modul entwickelt und kommuniziert mit dem trueSign Mobile Service via SOAP Schnittstelle Dadurch kann das Webportal unabh ngig und auch ausserhalb der CA betrieben werden Es ist somit auch m glich dass ein Dritter als Anbieter des Signaturdienstes auftritt und die CA im Hintergrund nur die Signaturen erstellt 15 2 3 1 Kritische Punkte Web Entry Server Einige Angelegenheiten m ssten bei einer realen Anwendung noch mit dem Betreiber der Applikation er rtert werden Das Webportal wurde als eigenst ndiges Modul umgesetzt um die Kommunikation mit den f r die CA unbekannten Benutzern von der CA abzuschirmen Jedoch ben tigt die Best tigung via Smartphone ebenfalls eine Kommunikation von dem Benutzer in Richtung der CA Dies kann nicht umgangen werden da mit jeder Schicht mit der sich der Empf nger der Best tigung von dem die Signatur ausf hrenden Modul entfernt die Sicherheit und somit die Essenz der Best tigung abnimmt Der trueSign Mobile Service w rde jedoch in einer CA sicherlich nicht direkt ans Internet angebunden werden Viel mehr w rde vorher noch ein Web Entry Server zum Einsatz kommen Dies m sste nat rlich in der trueSign Mobile App ber cksichtigt werden Denkbar w re eine Variante bei welcher sich die Mobile App mittels Username und einer Hashfunktion des Passwortes des Webportals oder des Initial PIN beim Web Entry Server mittels Basic Auth
44. alisierten F llen mit den obigen Personas beschrieben 8 2 1 IST Szenario Problem Scenario 8 2 1 1 Ausgangssituation Story 1 Viele Studenten haben sich im Modul IVP eingeschrieben und m ssen einen Projektantrag verfassen welcher von beiden Parteien Betreuer und Student unterzeichnet werden muss damit er danach als Projekt bei der Schulleitung eingegeben werden kann J rg erh lt nun ein Dokument per Email eines Studenten welches er genau studiert Danach m chte er dieses PDF Dokument mit seiner SuisselD diese Smartcard hat er von der Post gekauft signieren und den unterschriebenen Antrag als Email Anhang dem jeweiligen Studenten zur cksenden damit der Student den Antrag einreichen kann Story 2 Es wurde entschieden neue moderne Kampfflugzeuge zu kaufen da die bestehenden F5 Tiger die Lufthoheit nicht mehr gew hrleisten k nnen Entschieden haben sich Ueli und seine Experten nach langem Hin und her f r den schwedischen Saab Gripen Da Ueli die 22 Jets gestaffelt kaufen m chte wird es f r jeden einzelnen Flieger einen eigenen Kaufvertrag geben Auch die zugeh rigen Waffensysteme m ssen getrennt beschafft werden da es sich um einen anderen Lieferanten handelt Das sind zus tzlich 29 einzelne Vertr ge Da er zeitlich sowieso schon im Verzug ist muss er nach der Bundesratssitzung dringend 43 der gesamten 51 Vertr ge unterzeichnen Zum Gl ck kann er diese Vertr ge an seinem Bundes PC digital signieren lassen
45. ann ber eine eigene Verbindung abgeholt werden F r unsere Verwendung stellt dies jedoch keine Beschr nkung dar da wir die Dateien auch ohne diese Beschr nkung nicht via Google verschicken w rden 5 https developers google com android c2dm signup Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 30 von 96 8 GUI Analyse 8 1 Personas In diesem Kapitel sollen zwei imagin re Personen J rg Stadelhofer und Ueli Untermaurer welche gelegentlich respektive sehr h ufig digitale Dokumente signieren m ssen als Benutzerrolle repr sentiert werden 8 1 1 E 51 Jahre Dr iur HSG Universit t St Gallen Dozent an verschiedenen Hochschulen HSR Rapperswil ETH Z rich Uni Z rich Gr nder Mitinhaber verschiedener Firmen Import Produktion DL ledig keine Kinder Sehr gute Windows Office Kenntnisse Ist sehr gewandt mit technischen Ger ten und digitale Signaturen sind ihm vertraut J rg Stadelhofer J rg Stadelhofer J rg arbeitet als Dozent unter anderem an der Hochschule f r Technik in Rapperswil Er betreut Studenten bei ihren individuellen Vertiefungsprojekten und verwendet dabei die digitale Unterschrift Hauptziele Er signiert dabei die Projektantr ge welche als PDFs vorliegen digital und versendet diese an die Projektteilnehmer Da er nebenbei auch als Unternehmer t tig ist m chte er auch vermehrt seine ge
46. anz ist im Vorfeld ein geeigneter 2 Faktor Identifizierungs und Authentifizierungsmechanismus bereitzustellen um die alleinige Kontrolle durch die Zertifikatsinhaberin oder den Zertifikatsinhaber zu gew hrleisten vor der Erstellung einer elektronischen Signatur ist ein Verfahren umzusetzen um sicherzustellen dass die Zertifikatsinhaberin oder der Zertifikatsinhaber tats chlich die Absicht hat die der Signaturerstellungseinheit gelieferten Daten zu signieren Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 94 von 96 20 Literaturverzeichnis Bilder in Personas 1 Papa Moll http www img biz en impuls productions produced movies papa moll a Letzter Zugriff 15 06 2012 2 Ueli Untermaurer http oliraths ch humor viktor ueli jpg a Letzter Zugriff 15 06 2012 20 1 Links http ksoap2 sourceforge net https developers google com android c2dm http jquerymobile com test http docs phonegap com en 1 8 1 index html https github com phonegap phonegap plugins Qv CIN c Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 95 von 96 21 Abk rzungsverzeichnis Abk rzung Bedeutung C2DM Cloud to device messaging APK Android application package APNS Apple Push Notification Service CA Certification Authority HSM Hardware sec
47. ary DocName String IMEI String MobilelD String SignMobilePDFResponse trueSign Signature Binary Service 9 3 2 3 ActivateCertificate Nachricht Sender Parameter Zweck ActivateCertificateRequest trueSign Uid String Aktivierung des Client Zertifikates beim ersten Al St ed i Login auf dem trueSign IMEI String Webportal MobilelD String ActivateCertificateResponse trueSign Return Boolean Service 9 3 2 4 ChangePin Nachricht Sender Parameter Zweck ChangePinRequest trueSign Uid String Anderung des PIN f r Alias String den PrivateKey IMEI String MobilelD String ChangePinResponse trueSign Return Boolean Service 9 3 2 5 ProcessFault Ein ProcessFault wird bei allen Operationen im Fehlerfall von trueSign Service zur ckgegeben Nachricht Sender Parameter Alle trueSign ProcessFault String Fehlermeldung bei Service ReasonCode Int Problemen mit der Signatur 9 4 Mobile Interface Dieses Kapitel behandelt die Verbindung zwischen der trueSign Mobile App und dem trueSign Mobile Service Diese Kommunikation l uft teilweise ber Push Notification Services welche von dritten z B Apple oder Google angeboten werden Diese Nachrichten sollen folgend ebenfalls beschrieben werden 9 4 1 Verbindung Diese Schnittstelle ist ebenfalls eine Duplex Verbindung Sie soll mittels SSL verschl sselt werden jedoch ohne Client Authentifizierung da
48. as Dokument oder die Dokumente falls Sie mehrere hochgeladen haben wird nun im Hauptmen angezeigt T ll 15 09 trueSign Mobile Vertrag_Hans_Muster pdf S 110 KB 2012 06 13402 00 A K ndigung Peter Sauer pdf e 1317 KB 2012 06 13 02 00 c Refresh Settings Abbildung 31 trueSign Mobile App Homescreen Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 73 von 96 Neben dem Dokumentnamen sind auch Informationen wie S n C8 15 30 Dateigr sse und das Datum der Dokumente ersichtlich Klicken Sie Sign document nun auf einen Eintrag in der Liste und ffnen Sie so das PDF auf Ihrem Smartphone mit Ihrem Standard PDF Viewer welcher auf Ihrem Ger t installiert ist Verification Vertrag Hans Muster pdf Hinweis Befinden sich mehrere PDF Viewer auf Ihrem Smartphone erscheint eine Liste der Applikationen in der Sie Ihren bevorzugten Viewer w hlen und diesen auch als Standard Viewer speichern k nnen Um mit dem Signaturprozess fortzufahren k nnen Sie mit dem Sign Zur ck Button Ihres Smartphone wieder ins Hauptmen gelangen und auf der rechten Seite des Dokuments auf die Signatur Schaltfl che mit dem Checksymbol dr cken Es ffnet sich ein Fenster in welchem Sie aufgefordert werden Ihre PIN welchen Sie bei der Initialisierung ge ndert haben einzugeben und mit Sign zu best tigen Das Ablehnen Decline der Signatur wird weiter unten i
49. atei gel scht werden 10 4 4 6 ChangePassword aspx cs Hier kann das trueSign Webportal Passwort ge ndert werden Das Passwort wird in der Datenbank nur als Hashwert gespeichert Folgend wird die Operation zur nderung des Passwortes kurz beschrieben ButtonSave Click int index In einem ersten Schritt werden die Userdaten des Benutzers aus der Datenbank gelesen Anschliessend wird aus dem eingegebenen Passwort und dem in der Datenbank gespeicherten Salt ein Hashwert berechnet Stimmt dieser mit dem gespeicherten Hash berein darf das Passwort ge ndert werden Somit wird ein neuer Salt erstellt und mit diesem wiederum ein Hashwert des neuen Passwortes berechnet Zum Schluss wird beides der Hash sowie der Salt in der Datenbank abgelegt 10 5 Datenspeicherung 10 5 1 Persistente Datenhaltung Die Datenhaltung wird komplett beim trueSign Webportal realisiert Beim trueSign JCE Service sollen nur tempor re Daten wie zum Beispiel die ben tigten TANs gespeichert Dies wird sp ter beschrieben Die persistenten Daten werden alle zentral beim trueSign Webportal gespeichert Folgend soll im Datenbankmodel eine bersicht der Datenhaltung gegeben werden userName Password Name FirstName Street City PLZ FileName email alias initPINmobile IMEI MobilelD Abbildung 23 Datenbankmodel Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 62
50. ateien addFileName String sessionID FileToSign fileName Alle eine zu signierende Datei betreffende Daten werden im SessionManager zwischengespeichert Ein neues File kann mit dieser Methode hinzugef gt werden getFileName String sessionID Um wieder auf die zwischengespeicherten Daten zu einem File zugreifen zu k nnen wird diese Methode ben tigt Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 55 von 96 10 4 3 7 Package android client In diesem Package befindet sich die gesamte Android Client Applikation Das Package selbst beherbergt haupts chlich die Android Activity Klassen sowie die bergeordneten Klassen Constants java und SessionlDManager java Klassendiagramm 9 Constants SOAP NAMESPACE String http www keyon ch TrueSignMobile readonly SOAP URL TRUE SIGN String http 152 86 232 208 8084 TrueSignMobile TrueSignMobileSOAP readonly SOAP ACTION GET DOCUMENT String http www keyon ch TrueSignMobile GetDocumentRequest readonly METHOD NAME GET DOCUMENT String GetDocumentRequest readonly SOAP ACTION SIGN DOCUMENT String http www keyon ch TrueSignMobile Sign amp cknowledgeRequest readonly METHOD NAME SIGN DOCUMENT String SignAcknowledgeRequest readonly SOAP ACTION DECLINE DOCUMENT String http www keyon ch TrueSignMobile SignDeclineRequest readonly METHOD NAME DECLINE DO
51. atsph re sehr wichtig ist Mit diesem Punkt kam die urspr ngliche Idee nach dem Hochladen in das Webportal einen Hashwert der Dokumente zu erstellen Dann k nnte dieser an den trueSign JCE Service weitergegeben werden und durch diesen signiert werden Die Gefahr dass ein Angreifer die Dokumente abfangen und einsehen kann w re somit wesentlich geringer Zudem w rde es vermutlich auch der Philosophie einer CA entgegenkommen da eine CA h ufig nicht direkt mit Userdaten in Kontakt kommt und dies auch gar nicht will Diese Variante kollidierte leider mit dem Vorhaben das zu signierende File an ein Smartphone zur Best tigung zu schicken Diese Best tigung sollte von einem Modul m glichst nahe beim eigentlichen Signieren verlangt werden um ein Ver ndern der Daten nach der Best tigung so gut als m glich auszuschliessen Dies bedingt aber dass das komplette Dokument in diesem Modul vorhanden ist Somit ist es leider nicht m glich nur einen Hashwert der Datei zur Weiterverarbeitung zu verwenden 15 2 2 Variante Webportal bei CA Da wie im Kapitel 15 2 1 beschrieben das komplette Dokument an die CA f r die Signatur sowie die Best tigung geschickt werden muss wurden berlegungen geweckt die ganze Applikation zu vereinfachen und alles inklusive Webportal als ein Modul zu implementieren Diese Applikation h tte dann von einer CA betrieben werden m ssen da die rechtsg ltige Signatur nur von einer anerkannten CA ausgef hrt werden kan
52. bei der Kommunikation Bei einer mobilen Kommunikation muss immer damit gerechnet werden dass das mobile Ger t nicht erreichbar ist Zudem ist es bei einem Webportal gut m glich dass sich der Benutzer nicht mehr ausloggt Deshalb sollen verschiedene Timeouts definiert werden 6 3 1 1 Timeout Best tigung der Signatur Wird ein zur Signatur hochgeladenes PDF nicht sp testens nach 5 Min vom mobilen Ger t abgeholt verwirft der trueSign Service die Signatur Anfrage automatisch und teilt dies dem trueSign Webportal mit Nachdem das PDF vom Smartphone abgeholt wurde muss es innerhalb von 10 min best tigt werden Ansonsten wird wiederum die Signatur Anfrage vom trueSign Service verworfen 6 3 1 2 Timeout trueSign Webportal Der Benutzer soll sich w hrend eines Signaturprozesses nicht mehrfach einloggen m ssen Deshalb setzt sich das Timeout des trueSign Webportals aus den beiden Timeouts f r die Best tigung der Signatur zusammen Somit ergibt sich f r das Webportal ein Timeout von 20 min Nach deren Ablauf ohne eine Aktivit t seitens des Benutzers wird er automatisch abgemeldet 6 4 Registrierung Um ein Dokument rechtsg ltig signieren zu k nnen muss sich die Person bei der Registrierung einmalig ausweisen Als Registrierungsprozess wird Folgendes vorgesehen 6 4 1 Online Anmeldung Der Benutzer kann sich auf dem trueSign Webportal registrieren Dabei muss er folgende Angaben machen e Email Adresse e Vor und Nachname e
53. bile App soll zu 100 ber den Touchscreen des Mobiltelefons bedienbar sein e Das GUI des trueSign Webportals soll nach aktuellen Webdesign Standards designt werden und intuitiv bedienbar sein 5 2 6 2 Softwareschnittstellen e PhoneGap 1 6 0 Zur nativen Entwicklung von Mobile Apps f r mehrere Plattformen e Google API Level 15 Android 4 0 spezifische Anpassungen an Android e iOS 5 1 spezifische Anpassungen an iOS 5 2 6 3 Kommunikationsschnittstelle Es gibt in diesem Projekt drei Kommunikationsschnittstellen welche im Kapitel 9 Schnittstellenbeschreibung erl utert werden 5 2 7 Lizenzanforderungen In der Entwicklungsphase werden keine Lizenzen ben tigt da alle benutzten IDEs und Libraries opensource bzw lizenzfrei sind F r die sp tere Ver ffentlichung in den jeweiligen App Stores werden Developer Lizenzen ben tigt 5 2 7 1 Verwendete Standards e UML 2 0 e HTML5 CSS JS e SOAP Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 17 von 96 5 3 Use Cases 5 3 1 Use Case Diagramm trueSign Mobile App UC 05 Zertifikat aktivieren trueSign Webportal UC 02 Datei signieren User UC 04 Signierte Datei downloaden UC 03 Signatur best tigen Abbildung 2 Use Cases Diagramm 5 3 2 Aktoren amp Stakeholders Der prim re Akteur ist der Benutzer der Applikation Er bedient die Applikation ber das Webportal sowie ber den T
54. ch aus Standard ASP Methoden wie Page Load und Page Init bestehen wird hier auf Klassendiagramme verzichtet und nur die Intressanten Kernoperationen beschrieben 10 4 4 1 Datenbankverbindung Die Datenbankverbindung wird in der ganzen Applikation mit dem Net Entity Framework behandelt Dieses erm glicht eine einfache Handhabung und nimmt dem Entwickler die sonst langwierige Schreibarbeit bei der Entwicklung von DOA Klassen ab 10 4 4 2 Login aspx cs Diese Klasse behandelt den Login zur Webapplikation Kernoperationen ButtonLogin_Click object sender EventArgs ei Diese Methode behandelt den Login Prozess sie Sucht den eingegebenen Username in der Datenbank Wird ein User gefunden wird Das Passwort berpr ft und bei Korrektheit wird der User zur Eingabe der TAN weitergeleitet 10 4 4 3 EnterTan aspx cs Hier wurde das Versenden der MobileTan implementiert LoadPage In dieser Methode wird die MobilelD des Benutzers aus der Datenbank ausgelesen anschliessend wird diese via SignaturControlFacade an den trueSign Mobile Service geschickt Die erhaltene Mobile TAN wird im WebSessionControl abgelegt ButtonLogin_Click object sender EventArgs ei Hier wird der eigentliche Login Prozess bearbeitet F r die berpr fung der MobileTan wird ein CustomValidator verwendet dies geschieht daher vor dem Aufruf dieser Methode Es muss deshalb nur noch die Session aufgebaut werden und das AccessToken mit den entsprec
55. ch diese Anforderung von der Entwickelten Applikation erf llt Weiter muss im Vorfeld der Signatur ein Zwei Faktor ldentifizierungs und Authentifizierungs mechanismus bereitgestellt werden Das trueSign Webportal in Kombination mit der trueSign Mobile App bietet genau dies an und gew hrleistet so dem Zertifikatsinhaber die alleinige Kontrolle ber erstellte Signaturen Da die trueSign Mobile App dem Zertifikatsinhaber die M glichkeit bietet die Datei kurz bevor die Signatur erstellt wird nochmals einzusehen und zu pr fen kann auch sichergestellt werden dass der Benutzer tats chlich die Absicht hat die gelieferten Daten zu signieren Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 88 von 96 15 4 Schlussfolgerung Die entwickelte Applikation erlaubt Dokumente rechtsg ltig zu signieren und zwar ber ein Intuitives UI via Webportal und Mobile App Viele Sicherheitstechnische Probleme konnten in der konzeptuellen Phase der Arbeit er rtert werden und L sungen aufgezeigt werden Ein Grossteil davon wurde auch in der Applikation Umgesetzt Sie stellt somit f r die Firma Keyon AG eine sehr gute Basis dar um die Vision der simplen digitalen Signatur f r Jedermann weiter zu verfolgen und auszubauen 15 5 Ausblick F r die Weiterf hrung der Mobile App w re es erforderlich eine Cross Plattform Applikation zu entwickeln welche sowohl mit Android Smartphones sondern auc
56. ch muss dies best tigt werden Nun kann f r dieses Dokument keine Signatur mehr erstellt werden Im Hauptmen wird der Eintrag mit dem abgelehnten Dokument rot eingef rbt T LES 15 38 7 las 15 37 trueSign Mobile Decline Signature Decline Signature K ndigung_Peter_Sauer pdf Are you shure you want to decline the signature of this document decline K ndigung_Peter_Sauer pdf e 1317 KB 2012 06 13 02 00 CG Refresh Settings Abbildung 35 trueSign Mobile App Decline Signature Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 75 von 96 13 4 3 Einstellungen 13 4 3 1 Benutzerkonto Um Ihre Benutzerdaten einzusehen k nnen Sie im Webportal auf My Account klicken Lalaji http 152 96 232 209 8085 aspx account aspx keyon Login test uid 1234 Document Signing A4 Le n File Your Account UserName test uid 1234 Name Eric Aebi iddress Binzmuehlestrasse 99 User Account City Zuerich jned File Abbildung 36 trueSign Webportal My Account 13 4 3 2 Zertifikat revozieren Muss aus einem sicherheitstechnischen Grund Ihr Zertifikat gesperrt werden kann dies unter dem Men punkt Zertifikat revozieren vorgenommen werden Vorsicht Danach kann Ihr Zertifikat nicht mehr verwendet und auch nicht wieder aktiviert werden Es ist zwingend erforderlich bei der Certification Authority ein neues Zertifikat anzu
57. che Architektur Festlegen der logischen Architektur 62 Review amp Korrektur Design Review 63 Internes Design Internes Design festlegen 8x Implementation Prototyp 80 Prototyp GUI Prototyp des GUls erstellen 81 Prototyp Webportal Prototyp des Webportals erstellen 82 Prototyp Zugriff mit PC Smartphone Prototyp der Zugriffe PC Smartphone erstellen 83 Prototypen zusammenf hren Alle Prototypen zusammenf hren Ausbau Prototyp 84 Projekt Automation ANT script f r automatischen Build erstellen u s w 85 Ausbau GUI GUI auf Endzustand ausbauen 86 Ausbau Webportal Webportal auf Endzustand ausbauen 87 Ausbau Zugriff mit PC Smartphone Zugriff mit PC Smartphone auf Endzustand ausbauen 88 Ausbau Portierung Portierung auf verschiedene Smartphones inkl iPad 89 Refactoring Ganzer Code berarbeiten 10x Test Bugfixing 100 Test Units entwickeln Unit Test f r zwingende Funktionen erarbeiten 101 Test Units durchf hren Unit Test durchf hren 102 Bugfixing Gefundene Fehler beheben 103 Usability Tests Usability Tests durchf hren 104 Systemtest Systemtest durchf hren 12x Dokumentation 120 bersicht Q Massnahmen Dokumentation ber Q Massnahmen pr fen 121 Dokumentation Dokumentation erstellen 122 BA Schlusspr sentation Schlusspr sentation vorbereiten und halten Elaboration 3 Transition 1 Transition 1 Transition 1 Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Proje
58. cht betreffend Sicherheit diskutieren und somit die Schwachstellen erkennen konnten Bei der weiteren Ausarbeitung der Dokumente oder bei der Implementierung nderte sich dann aber pl tzlich das weitere Vorgehen und ein Teil des Konzepts wurde auf den Kopf gestellt Dies war nicht ganz einfach da wir vor allem die Programmierung zeitlich nach hinten verschieben mussten Aber so wussten wir dass wir auf dem richtigen Weg waren Erfahren durfte ich auch dass Analysen und Nachforschungen in der Machbarkeit im technischen Bereich sehr zeitaufwendig sein k nnen obwohl diese in der Projektplanung grossz gig einkalkuliert wurden Beispielsweise konnte das PhoneGap Framework mit welchem wir urspr nglich gerne die ganze App entwickeln wollten letztendlich nur f r wenige Teile z B f r die Men f hrung verwendet werden da Anforderungen an die Mobile App nicht mit diesem Framework umgesetzt sind Abschliessend kann ich aber sagen dass ich sehr viel dazugelernt habe Vor allem im Bereich der digitalen Signatur und nat rlich w hrend der Programmierarbeit Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 90 von 96 17 Pers nlicher Bericht Eric Aebi Die Arbeit war f r mich sehr spannend und lehrreich Ich konnte dank dem grossen konzeptuellen Teil und den Reviews mit der Firma Keyon AG wie auch mit Herrn Steffen viel im Sicherheitsbereich lernen und mir auch ein gewisses siche
59. d bez glich der Installation von Treibern sowie der Unterst tzung der Benutzer Das Ziel dieser Arbeit ist es das digitale Signieren von Daten zu vereinfachen Bisher mussten rechtsg ltige Signaturen lokal auf einem PC durchgef hrt werden Seit dem 1 August 2011 besteht die M glichkeit zentrale Signaturdienste innerhalb der eigenen Organisation oder bei vertrauensw rdigen Dritten sicher zu betreiben Der Benutzer kann sich so ganz auf seinen Gesch ftsprozess konzentrieren und muss sich nicht mehr um die Technik k mmern Das Projekt sieht einen zentralen Signaturdienst vor bei welchem die kryptografischen Schl ssel der Anwender auf einem Hardware Security Module HSM gespeichert werden Somit ben tigt der Enduser keine Smartcard Die gesetzlich vorgeschriebene Zwei Faktor Authentisierung wird erreicht indem sich der User zuerst bei diesem Signaturdienst einloggt Anschliessend kann er das zu signierende File hochladen Dieses wird ihm dann auf dem Smartphone zur Kontrolle angezeigt Best tigt der User dies wird das File mit seinem Signaturschl ssel signiert F r das Signieren der Dokumente kann auf eine bestehende L sung der Firma Keyon AG zur ckgegriffen werden Diese muss um das Webportal sowie um den Versand des zu signierenden Dokumentes an ein Smartphone erweitert werden Dabei gilt es einige konzeptuelle Probleme zu kl ren beispielsweise wie die Registrierung des Benutzers resp des Smartphone bei diesem Service gel st werde
60. deg atl 78 14 4 Elan ET e EE 79 14 5 ue EE EN 14 6 Infrastr ukt r us ee este i e em giebt end i te teen ates te epo Lote bec bne Landes 83 14 7 Qualit temassnalimen cra d ette inrer e eter p n Erro eee ie e e x nz etn 83 14 7 1 Massnahmen ei e e da dota tae ede eae Po va e Te aea e a pde g 83 14 7 1 1 Dokumentation ee ei nk 83 14 7 1 2 Quellcode e e e e ee tec ee a tue rage tu de oe ue doc DV de e eed ovg 83 14 7 1 3 Unit Testing iere ee 84 14 7 1 4 Vergiongsmanadement REENEN 84 14 8 Projektmonitoring ar it een 84 14 8 1 E E e DE 84 14 8 2 Sitzungsprotokolle 7 24 2 een kn 84 15 Technischer BerlGht cii ERDE 85 RL EE oue ie ete Sae cp etas icona b cape on muet atletas t etd Ds 85 15 2 Ergebnisse des Konzeptes seeeeeieeseeeee essen ee ennn nnne nnns nnne 85 15 2 1 Variante Dokument als Hash sss ener nnne 85 15 2 2 Variante Webportal bei CA 85 15 2 3 Variante Webportal getrennt Signatur bei CA umgesetzt 85 15 2 3 1 Kritische Punkte ehe er eed ne hee kn eer eR rhe dug 86 15 3 Ergebnisse Umsetz rig rresia assise A E en Ebenen eet EXER Ru ug ce REIR dE embed 86 15 3 1 Erf llung des Gesetzes 87 15 3 1 1 ZertES Artikel 2 Absatz b Anforderungen an eine qualifizierte Signatur 87 15 3 1 2 TAV ber Zertifizierungsdienste im Bereich der elektronischen Signatur 87 Dokument Zentra
61. die mobilen Ger te ber keine eigenen Zertifikate verf gen Es ist aber wichtig dass das Serverzertifikat genau berpr ft wird um zu verhindern dass sich die trueSign Mobile App mit einem falschen Server verbindet 9 4 2 Operationen 9 4 2 1 sendPushReadyToSign Anmerkungen Die SessionlD besteht aus einem SHA 256 Hashwert des gesamten zu signierenden Dokumentes Zus tzlich wird dem Dokument vor der Berechnung des Hashes noch ein 128 Bit Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 40 von 96 Random Seed hinzugef gt um die Eindeutigkeit der SessionlD zu gew hrleisten Diese SessionID wird mit der IMEI des Users verkn pft und ist nur f r eine bestimmte Zeit g ltig Nachricht Sender Parameter Zweck SendPushReadyToSignRequest JCE MobilelD String Senden einer Push Service Notification an die ID SE trueSign Mobile App ber SendPushReadyToSignResponse Push Return Boolean ein zum Download Provider bereitstehendes PDF Via PushProvider 9 4 2 2 GetDocument Nachricht Sender Parameter Zweck GetDocumentRequest trueSign IMEI String Download der zu Mobile App Sessioni D String signierenden PDF Datei auf das mobile Ger t GetDocumentResponse trueSign Date Date Mobile Size String Name String Document Binary 9 4 2 3 SignAcknowledge Nachricht Sender Parameter Zweck
62. e Abbildung 3 bersicht ber die Applikation 6 2 Szenarien Um zu kl ren welche Sicherheitsmechanismen in welche Teile der Applikation eingebaut werden m ssen sollen im Folgenden m gliche Angriffsszenarien untersucht werden Dabei gilt es zu verhindern dass eine Drittperson eine Datei im Namen des Users signieren kann 6 2 1 Szenario Malware auf Rechner 6 2 1 1 Beschreibung Der Desktop Rechner von welchem auf das trueSign Webportal zugegriffen wird ist mit Malware verseucht Somit wird der gesamte Netzwerkverkehr des Rechners mitgelesen und k nnte auch ver ndert werden 6 2 1 2 Angriff Ein Angreifer k nnte mittels der Malware die Daten welche an das trueSign Webportal geschickt werden abfangen und sich somit die Login Daten des Users beschaffen Anschliessend k nnte er sich mit den so gewonnen Credentials einloggen und eine PDF Datei signieren lassen 6 2 1 3 Abwehrmechanismus Jede Signatur muss via trueSign Mobile App best tigt werden Diese Best tigungsanfrage wird vom trueSign Service abgeschickt welcher bei einer Certificate Authority steht Es ist somit f r die Malware Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 22 von 96 auf dem Rechner nicht m glich diese Best tigungsanfrage automatisch abzufangen und zu best tigen oder abzu ndern Als Best tigung muss die PIN f r den Private Key auf dem Smartphone eingegeben werden Die PIN
63. e wie das PhoneGap Framework h tten wir in der Startphase intensiver untersuchen sollen M glicherweise w re uns auf diese Weise das Zeitmanagement bei einzelnen Aufgaben etwas leichter gefallen Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 91 von 96 18 Angang A Zeitplanung Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 92 von 96 19 Anhang B Gesetzestexte In diesem Anhang sind die innerhalb des Berichts referenzierten Gesetzestexte gelistet 19 1 Bundesgesetz ber Zertifizierungsdienste im Bereich der elektronischen Signatur Bundesgesetz ber die elektronische Signatur ZertES Artikel 2 Absatz b 1 Sie ist ausschliesslich der Inhaberin oder dem Inhaber zugeordnet 2 Sie erm glicht die Identifizierung der Inhaberin oder des Inhabers 3 Sie wird mit Mitteln erzeugt welche die Inhaberin oder der Inhaber unter ihrer oder seiner alleinigen Kontrolle halten kann 4 Sie ist mit den Daten auf die sie sich bezieht so verkn pft dass eine nachtr gliche Ver nderung der Daten erkannt werden kann Absatz c qualifizierte elektronische Signatur eine fortgeschrittene elektronische Signatur die auf einer sicheren Signaturerstellungseinheit nach Artikel 6 Abs tze 1 und 2 und auf einem qualifizierten und zum Zeitpunkt der Erzeugung g ltigen Zertifikat beruht Artikel 10 Absatz 1 Die anerkann
64. ebportals 2 Benutzer gibt seine Credentials ein 3 TAN wird auf sein Smartphone geschickt 4 Mit Eingabe der TAN im Webportal authentifiziert sich der Benutzer 5 Hauptmen des Webportals wird angezeigt Postconditions Der Benutzer kann die Funktionen des Webportal benutzen Extensions 1 Benutzer gibt die TAN nicht innerhalb von 2 min ein 2 Die G ltigkeit der TAN verf llt 3 Der Zugriff auf die Applikation wird verwehrt Special Requirements Technology and Data Variations list Frequency of occurence 1 mal pro Applikationsausf hrung 5 3 5 UC 02 Datei signieren Use Case Abschnitt Kommentar Scope trueSign Webportal Level Anwenderziel Primary Actor Benutzer Stakeholders amp Interests Benutzer Die zu signierende PDF Datei kann hochgeladen und nach der Best tigung signiert wieder heruntergeladen werden Preconditions Der Benutzer hat sich erfolgreich f r das Webportal authentifiziert Success Guarantee Die PDF Datei kann signiert heruntergeladen werden Postconditions Der Benutzer kann ber einen Link die signierte PDF Datei herunterladen Main success scenario 1 Der Benutzer l dt die PDF Datei im Webportal hoch 2 Der Benutzer best tigt die Signatur gt UC 03 3 Die PDF Datei wird signiert 4 Der Benutzer l dt die signierte Datei herunter Extensions Wird die Best tigung auf dem Smartphone nicht innerhalb von
65. eceiver C2DM RETRY String com google android c2dm intent RETRY readonly REGISTRATION CALLBACK INTENT String com google android c2dm intent REGISTRATION readonly C2DM_INTENT String com google android c2dm intent RECEIVE readonly TAG String C2DM readonly EXTRA UNREGISTERED String unregistered readonly Y EXTRA ERROR String error readonly EXTRA REGISTRATION ID String registration id readonly ERR SERVICE NOT AVAILABLE String SERVICE NOT AVAILABLE readonly Y ERR ACCOUNT MISSING String ACCOUNT MISSING readonly ERR AUTHENTICATION FAILED String AUTHENTICATION FAILED readonly Y ERR TOO MANY REGISTRATIONS String TOO MANY REGISTRATIONS 1 readonly ERR INVALID PARAMETERS String INVALID PARAMETERS 1 readonly ERR INVALID SENDER String INVALID SENDER readonly ERR PHONE REGISTRATION ERROR String PHONE REGISTRATION ERROR readonly WAKELOCK KEY String C2DM LIB readonly Y mWakeLock WakeLock senderld String readonly oncMessage context Context intent Intent Goar context Context errorld String onRegistrered context Context registrationld String onUnregistered context Context onHandlelntent intent Intent runIntentinService context Context intent Intent handleRegistration context Context intent Intent sendRegistratoinID registrationld String 9 C2DMessaging EXTRA SE
66. eider w rde eine Implementierung eines eigenen Viewer den Rahmen dieser Arbeit sprengen Darum haben wir uns entschieden den standardm ssigen PDF Viewer des Smartphone zu nutzen und dann die M glichkeit zu bieten mit dem Back Button des Ger ts in die App zur ckzukehren Leider mussten wir f r die Zeit welche wir durch den Einsatz von JQuery Mobile und PhoneGap beim Erstellen des GUI der Mobile App gespart hatten bei der anschliessenden Implementation der Logik doppelt bezahlen Viele der Schl sselfunktionen der Applikation wie die Daten bertragung via SOAP und das Empfangen von Push Nachrichten sind mit PhoneGap nicht oder nur sehr schwer m glich Deshalb mussten diese Funktionen nativ in Android programmiert werden Dies musste anschliessend auf eher umst ndliche Weise wieder mit dem PhoneGap Framework verkn pft werden Hier w ren wir um einiges schneller gewesen h tten wir auf PhoneGap verzichtet und alles nativ in Android entwickelt Deshalb musste leider auf die Implementation der M glichkeit die PIN f r den Private Key in der trueSign Mobile App zu ndern verzichtet werden Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 87 von 96 15 3 1 Erf llung des Gesetzes In diesem Kapitel sollen kurz die wichtigsten Anforderungen des ZertES an eine qualifizierte elektronische Signatur beziehungsweise deren Erstellung beschrieben werden Auch wird die Einhaltung innerhalb
67. en Webservice bei manchen Operationen ist jedoch das trueSign Webportal der Client und bei anderen die trueSign Mobile App Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 38 von 96 9 2 trueSign Webportal Um Verbindungen von mobilen Ger ten mit dem trueSign JCE Service m glichst gut beschr nken zu k nnen d rfen nur zuvor registrierte Ger te welche ber eine g ltige SessionID verf gen eine Verbindung aufbauen Dies bedingt dass einerseits vor jeder Verbindung welche die Mobile App zum trueSign Mobile Service aufbauen will eine Push Meldung mit einer SessionlD an das Smartphone geschickt werden muss und andererseits muss die Registrierung via dem trueSign Webportal erfolgen was folgend kurz beschrieben wird 9 2 1 Anmerkungen Jedes mobile Ger t verf gt ber eine IMEI International Mobile Equipment Identity Diese soll f r die Zuordnung des Ger tes zu einem User genutzt werden Zudem erhalten die Ger te eine Registration ID von den jeweiligen Providern der Push Nachrichten z B Google oder Apple Diese ID soll fortan als MobilelD bezeichnet werden Sie wird vom Push Framework C2DM bei Google APNS bei Apple bei der Registrierung zugeteilt kann aber jederzeit erneuert werden Das trueSign Webportal muss deshalb auch die M glichkeit f r eine nderung der MobilelD bereitstellen 9 2 2 Operationen Nachrich
68. enleser vergessen Story 2 Leider funktioniert der Kartenleser wieder nicht und der Helpdesk im Bundeshaus Bern ist zurzeit nicht erreichbar Erst am n chsten Tag kann ihm ein Arbeitskollege aus einem anderen Department helfen den Kartenleser einzurichten Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 32 von 96 8 2 1 4 Abschluss Story 1 Der Signatur Prozess verschiebt sich auf den Abend kann aber doch noch ausgef hrt werden Story 2 Die signierten Vertr ge sind versp tet im Postfach der Lieferanten angekommen was den Liefertermin um ein Jahr nach hinten verschiebt 8 2 2 SOLL Szenario Future Scenario Story 1 Da J rg keine Smartcard mehr ben tigt kann er sie auch nicht mehr zu Hause vergessen Somit kann er die Projektantr ge der Studenten jederzeit mit seinem Laptop und seinem Smartphone signieren Story 2 Ueli ist froh dass er sich ab sofort mit keinem Smartcardleser mehr herumschlagen muss Seine Vertr ge kann er problemlos per Webportal und mit seinem Smartphone signieren 8 3 Paper Prototypes 8 3 1 Webportal Login Startseite des Webportals Der COMI EA Benutzer gibt hier seine per Post erhaltenen Login Daten ein trueSign Login mw CO mund OO Main Page Hauptseite in welchem auf der linken Zus Maln Page Seite die Navigation zu allen wichtigen Funktionen f hren trueSign Main Page Ei keyon Hier w hlt der Benutz
69. entification anmeldet Das w rde aber Anpassungen an der trueSign Mobile App bedeuten Allerdings l sst sich dies kaum vermeiden um die Applikation in einer realen Umgebung einsetzen zu k nnen Registrierung der Benutzer F r die Registrierung der Benutzer m sste so etwas wie ein Superuser eingef gt werden Dieser m sste nachdem sich ein User f r den Signatur Service angemeldet hat und den ganzen Registrierungsprozess durchlaufen hat die M glichkeit haben einen Benutzer f r das Webportal aufzuschalten Hierf r m sste auch der Initial PIN noch generiert und an den Benutzer verschickt werden 15 3 Ergebnisse Umsetzung Hinsichtlich der Features die wir in unserer Applikation geplant haben konnten wir alle Schl sselfunktionen realisieren Dies beinhaltet seitens der trueSign Mobile App das Herunterladen und Anzeigen der zu signierenden Dokumente das Verschicken der Best tigung beziehungsweise der Verwerfung der Signatur und das Empfangen von Push Meldungen welche zur Anzeige der Mobile TAN f r das Login beim trueSign Webportal und f r die Information an den Benutzer dass ein neues File zur Signatur bereit steht genutzt werden Zudem konnte die grafische Benutzeroberfl che mit dem PhoneGap und JQuery Mobile Framework so gestaltet werden wie sie im Paper Prototype skizziert wurde Deutlich untersch tzt haben wir die Anzeige eines PDF Files mit einem eigenen Viewer der ein Overlay mit spezifischen Schaltfl chen enth lt L
70. epartner ist keyon AG o Ansprechpartner ist Ren Eberhard CEO o Technischer Kontakt ist Markus Isler CFO Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 78 von 96 14 3 Managementabl ufe 14 3 1 Projekt Kostenvoranschlag Das Projekt startet am 20 Februar 2012 und soll am 15 Juni 2012 abgeschlossen werden In dieser Zeitspanne stehen f r den Projektmitarbeiter der Studienarbeit ca 18h pro Woche und dem Mitarbeiter der Bachelorarbeit ca 20h pro Woche gefolgt von einem zwei w chigen Block mit einem Arbeitsaufwand von 45 Stunden Woche zur Verf gung Das Gesamtbudget von 610 Stunden setzt sich zusammen aus 8 ECTS 240 Stunden Studienarbeit und 12 ECTS 370 Stunden Bachelorarbeit 14 3 2 Projektplan 14 3 2 1 Zeitplan gt Siehe Anhang A Zeitplanung 14 3 2 2 Iterationsplanung Meilensteine Meilenstein Titel Resultat Datum MS1 Projektplan Projektplan erstellt und alle Iterationen inkl SWO4 Daten geplant MS2 Anforderungen und Abschluss der Anforderungsspezifikation SWO05 Analyse der Domainanalyse MS3 Ende Elaboration Architekturprototyp festgelegt Release 0 1 SWO8 MS4 Architektur Design Release 0 1b SW12 MS5 Abgabe Release 1 0 SW15 14 3 2 3 Besprechungen Es sollen w chentliche Meetings mit allen Projektmitglieder abgehalten werden Diese finden jeweils mittwochs von 09 00 10 00 Uhr statt An diesen Meeti
71. er mit dem Browse Button sein zu signierendes Dokument aus Um es zur SS Sign Pocument Best tigung an sein Smartphone zu Sign Pocument senden muss er die Upload CL em Schaltfl che bet tigen Ansonsten User Account Cum Cem kann er den Vorgang mit Cancel My Account abbrechen Revoke Certificate Change Password Logout Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 33 von 96 Signed Documents Unter dem Men punkt Signierte Dokumente findet er die Dokumente wieder welche er mit dem Smartphone zum Signieren best tigt hat Auf dieser Seite kann er diese Dokumente signiert wieder herunterladen und weiterverwenden Um die bersicht ber die bearbeiteten Dokumente zu behalten werden die Files mit ihren Informationen angegeben MyAccount Unter diesem Abschnitt k nnen Benutzerdaten eingesehen und angepasst werden Daten wie Benutzername Name und E Mail Adresse k nnen jedoch aus Sicherheitsgr nden nicht im Portal ge ndert werden und m ssen von der Registration Authority verifiziert werden Revoke Certificate Der Benutzer kann z B bei Verlust des Smartphone sein Zertifikat sperren lassen Dabei gibt er den Revokations PIN welcher er per Post erhalten hat ein sobald er auf revoke geklickt hat Change Password Nachdem der Benutzer seine Initialisierungsdaten im Webportal und seinem Smartphone eingeben hat kann
72. er sein Passwort auf dieser Seite ndern true ign Signed Documents DN OD SN Ce trueSign Signed Documents Sim Download FileName Date Size Sign Pocument 9 Samplel pdf 15052012 152KB Signed Documents Sample2pdf 22042012 63KB User Account My Account Revoke Certificate Change Password Logout trueSign MyAccount EN Il trueSign MyAccount Sign Username elaebi Name Aebi Eric E Mail eric aebi ch Street Nr Binzm hlestrasse 99 ZIP City 8050 Z rich Phone 41 79 24250 10 Sign Poeument Signed Poeuments User Account My Aceount Revoke Certificate Change Password Logout eoo trueSign Revoke Certificate Gn m trueSign Revoke Certificate Ki Revoke my certificate Ce Sign Sign Poeument Signed Poeuments User Account My Account Revoke Certificate Change Password Logout eoo true ign Change Password ca ODO ed trueSign Change Password Sign Change Password Barmen Www C Signed Poeuments wow D EEG went I CSC Revoke Certificate Change Password Logout Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 34 von 96 8 3 2 Mobile Applikation 8 3 2 1 Initialize device enter password Las Ger te initialisieren Nach dem ersten Start der App wird der Benutzer aufgefordert seinen Benutzernamen und das per Post erhaltene Initialisierungspasswort einz
73. ext Context payload String onError context Context errorld String C2DMMessageReceiver onReceive context Context intent Intent createNotification context Context payload String Abbildung 21 Klassendiagramm push Kernoperationen onRegistrered Context context String registrationld Diese Methode wird aufgerufen sobald vom Push Notification Provider die Registrierung abgeschlossen ist und der Applikation ihre RegistrierungsID mitgeteilt wird sendRegitrationiDtoServer String regID In dieser Methode wird die soeben erhaltene RegistrationID dem trueSign Webportal via SOAP mitgeteilt Anschliessend kann der trueSign Mobile Service die Applikation mit Push Nachrichten erreichen mittels der RegistrationID createNotificationMessage Context context String payload Diese Methode erzeugt eine f r den Benutzer sichtbare Mitteilung welche ihn ber die erhaltene Push Meldung informiert Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 59 von 96 10 4 3 10 Package com google android c2dm In diesem Package befinden sich die von Google zur Verf gung gestellten Basisklassen welche f r das Empfangen von Push Nachrichten n tig sind Sie werden hier nicht genauer beschrieben Klassendiagramm o o o o o o o o o o o o o o o o o e e e e o e e e Ge e ee ee ele ee ee ee ee 9 C2DMBaseR
74. f r die 60 5 00 3 00 Einarbeitung in Internet Mehraufwand Technologien Mitarbeiter neuen Technologien und Kennenlernen beim Webportal Technologien ben tigen der verschiedenen Smartphone mehr Zeit f r die Technologien Einarbeitung R4 Probleme mit Phonegap unterst tzt die 60 5 00 96 3 00 Proof of Technology mit Mobile Applikation f r dem PhoneGap ben tigten Funktionen Phonegap fr hzeitig erarbeiten erste Version nur f r Framework nicht Android Programmieren R5 Push Push Nachrichten 20 5 00 1 00 Mit Smartphone fr hzeitig Implementation ohne Nachrichten k nnen nicht gesendet Prototyp erstellen Push Nachrichten werden und oder App startet nicht direkt gestartet werden Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 80 von 96 R6 Probleme mit Kommunikation und 80 2 00 1 60 Proof of Technology mit Mehraufwand Kommunikation Verschl sselung kann Smartphone fr hzeitig erarbeiten Webportal lt gt nicht korrekt ausgef hrt Smartphone werden Allgemeine Risiken R7 Ausfall der HW eines 40 0 50 0 20 1 Alternative HW organisieren an Arbeitsplatzrechner Infrastuktur Projektmitgliedes f llt aus 2 Kopien auf Arbeitsrechner in HSR SA BA Git Server f llt aus aktuell halten Zimmer arbeiten Netzwerk Infrastruktur 3 mehrere M glichkeiten f r Neuer Git Server der HSR f llt aus Datenaustausch innerhalb aufsetzen des
75. fische Anforderungen Das Projekt besteht aus zwei Applikationen Einerseits gibt es die Webapplikation zur Signierung der PDF Dateien und andererseits die Mobile App zur Best tigung der Korrektheit der Datei Die folgenden genannten Anforderungen gelten f r beide Teile des Projektes ausser es ist anders erw hnt 5 2 1 Nichtfunktionale Anforderungen 5 2 1 1 Angemessenheit Die Mobile Applikation soll m glichst wenig Speicherplatz ben tigen Der Ladevorgang soll m glichst schnell ablaufen dies ist allerdings zu einem grossen Teil von der Gr sse der zu signierenden Datei und der Geschwindigkeit der Internetverbindung abh ngig 5 2 2 Bedienbarkeit 5 2 2 1 Verst ndlichkeit Das GUI soll ohne jeglichen Lernaufwand und absolut intuitiv bedienbar sein 5 2 2 2 Bedienbarkeit Das GUI der Mobile Applikation soll vollst ndig ber den Touchscreen des mobilen Ger ts bedienbar sein 5 2 3 Zuverl ssigkeit 5 2 3 1 Reife In 99 soll ein Dokument das via trueSign Webportal hochgeladen wurde auch in der trueSign Mobile App angezeigt werden Ausgenommen sind Fehler bei der bertragung der Push Notification da diese in der Hoheit des Anbieters liegen und eine Auslieferung vom Service Provider nicht garantiert wird Zu 99 soll ein von der trueSign Mobile App gesendete Signatur Request vom trueSign Service erfolgreich bearbeitet werden Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signa
76. fordern al gt Zhttp 152 96 232 209 8085 aspx RevokeCert aspx keyon Document Signing y A Sign File Login test uid 1234 ed File Revoke my certificate If you revoke your Certificate you will not be able to use it anymore There is no way to undo a revokation of a Certificate User Account Revoke Certificate My Account Revoke Certificate Abbildung 37 trueSign Webportal Revoke Certificate Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 76 von 96 13 4 3 3 Passwort f r Webportal ndern Sie k nnen jederzeit Ihr Passwort f r die Anmeldung im Webportal ndern Klicken Sie im Men auf Change Webportal Password Geben Sie zuerst Ihr bisheriges Passwort ein danach das neue Dieses best tigen Sie indem Sie es im folgenden Feld wiederholen Klicken Sie auf Save a Zhttp 152 96 232 209 8085 aspx ChangePassword aspx Document Signing gn File Signed File User Account keyon Login test_uid_1234 Change Password Oki Password New Password Repeat Password Abbildung 38 trueSign Webportal Change Password Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 77 von 96 14 Projektplan 14 1 Projekt bersicht Das rechtsg ltige digitale Signieren von PDF Dokumenten nach ZertES ist heute bereits m glich
77. g der Mobile App verwendeten Frameworks und IDEs beschreiben werden 7 1 1 Datenverbindungen zum mobilen Ger t Es wird angenommen dass sich der Applikationsbenutzer im optimalen Fall ber ein Wireless LAN verbunden ist welches eine m glichst schnelle bertragungsgeschwindigkeit zul sst Ansonsten gehen wir davon aus dass er sich in einer gr sseren Stadt befindet welche eine m glichst optimale Datenverbindung erm glicht Die Daten bertragung ist auch ber die Mobilfunknetze m glich allerdings ist hier je nach Verbindungsqualit t mit Einschr nkungen zu Rechnen Zudem k nnen f r den Benutzer je nach Mobilfunkt Abonnement auch noch zusatzkosten entstehen Daher ist speziell bei gr sseren Dateien darauf zu achten dass eine Wireless LAN Verbindung zur Verf gung steht Dies mag den meisten Mobilen Applikationen wiedersprechen da die Mobilit t eingeschr nkt wird In unserem Fall wird die Mobile App aber nur als Sicherheitstoken gebraucht und es gibt keine Use Cases f r die alleinige Nutzung der App sondern nur in Kombination mit dem trueSign Webportal Daher wird dies den Benutzer der App nicht einschr nken 7 2 Aufbau Mobile App 7 2 1 Entwicklungsumgebung 7 2 1 1 Software Development Kit SDK Damit Software f r Smartphones entwickelt werden kann werden Werkzeuge und Anwendungen f r die spezifischen Mobile Betriebssystemen verwendet SDK f r Android und iOS 7 2 1 2 PhoneGap mit Dreamweaver und JQuery Pho
78. h mit iOS Ger ten wie einem iPhone oder iPad Windows7 Ger ten oder Blackberries bedienbar ist Notwendigerweise m ssten um weiterhin PhoneGap einzusetzen noch weitere Plugins geschrieben werden welche eine Schnittstelle zur nativen Programmierumgebung der jeweiligen Ger te anbieten Des Weiteren m sste die Mobile wie in Kapitel 15 2 3 1 beschrieben f r die Kommunikation mit einem Webentry Server erweitert werden Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 89 von 96 16 Pers nlicher Bericht Stefan Rohner In den letzten zw lf Wochen bearbeitete ich mit meinem Kollegen Eric Aebi eine sehr spannende aber konzeptuell auch anspruchsvolle Arbeit Wir waren fast immer einer Meinung und sehr motiviert ein funktionsf higes Produkt zu entwickeln Sehr angenehm war auch die Zusammenarbeit mit unserem Betreuer Prof Dr Andreas Steffen und dem Industriepartner Keyon AG in Jona welche wichtige konzeptuelle Inputs w hrend den Meetings z B in den Reviews der Meilensteine geben konnten Zu den f r mich interessantesten Punkten geh rten unter anderem Besuch bei der QuoVadis AG in St Gallen ein Certification Service Provider Sicherheitsanalyse GUl Analyse Kennenlernen des PhoneGap und JQuery Frameworks Ich stellte fest dass wir mit den Analyse und Designdokumenten vor allem mit schematischen Visualisierungen sehr pr zise ber die konzeptuelle Si
79. henden Berechtigungen erstellt werden Anschliessend wird der Benutzer zur Hauptseite weitergeleitet 10 4 4 4 CodeSigning aspx cs Die meisten der Operationen in dieser Klassen fungieren als reine Click Listener und leiten die Aufgaben nur an die SignatureControlFacade weiter Deshalb werden diese hier nicht genauer beschrieben SignButton_Click object sender EventArgs e Diese Methode l st den Signaturprozess aus Sie sucht in der Datenbank nach den entsprechenden Userdaten wie dem Alias wie auch der IMEI und leitet diese an die SignatureControlFacade weiter 10 4 4 5 SignedFiles aspx cs Auf der SignedFiles Page k nnen die signierten Dateien verwaltet werden Die Hierf r ben tigten Operationen werden hier kurz erl utert downloadrFile int index Dank des bergebenen index kann aus der Tabelle die Zeile ausgelesen werden in welcher sich das zum Download angeforderte File befindet Darin enthalten jedoch dem User nicht angezeigt ist die SessionID der Datei Anschliessend kann die Datei gelsen und zum Download bereit gestellt werden Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 61 von 96 deleteFile int index Das L schen einer Datei funktionert sehr hnlich wie der Download Mittels index wird ermittelt um welches File es sich handelt anschliessend k nnen die gespeicherten Metadaten aus der Datenbank entfernt und die D
80. hr mehr f r die Zuordnung des Signaturschl ssels zu einer bestimmten Person Nach einer Ung ltigkeitserkl rung eines Zertifikates muss der Inhaber unmittelbar informiert werden Einerseits mittels einer Email an die bei der Registrierung angegebenen Email Adresse andererseits soll der Benutzer auch schriftlich per Post informiert werden 6 5 1 Ung ltigkeitserkl rungsantrag vom Benutzer Da der Benutzer einen Ung ltigkeitserkl rungsantrag sollte er das mobile Ger t verloren haben auch ohne die trueSign Mobile App erstellen k nnen muss wird ihm nach der Registrierung eine Revokations PIN per Post zugestellt Mit dieser und der Angabe seiner Benutzerdaten kann er den Antrag erstellen Die PIN ist notwendig um zu verhindern dass eine unberechtigte Person das Zertifikat sperren l sst 6 6 nderung der Benutzerdaten Da die meisten Daten sicherheitsrelevant sind k nnen diese nicht im Online Portal ge ndert werden 1 ZertES Art 8 Abs 1 TAV ber Zertifizierungsdienste im Bereich der elektronischen Signatur Kapitel 3 3 3a 3 3 ZertES Art 10 Abs 1 ZertES Art 10 Abs 2 Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 25 von 96 6 6 1 Mobiltelefonnummer Die Mobiltelefonnummer wird nur f r allf llige R ckfragen gespeichert Die Best tigung der Signatur l uft mittels der trueSign Mobile App Zur Identifikation des mobilen Ger ts wird die IM
81. iagramm 17 5 3 2 Aktoren amp Stakeholders ener entente sinet 17 pe E 17 53 3 EOIE LOGIN Rc 17 5 8 8 2 UC 02 Datei signieren ssssssssssssssssseseseeneee enne tenens nnns intres 17 5 3 3 3 UC 03 Signatur best tigen 17 5 3 8 4 UC 04 Signierte Datei downloaden sesssssessseesiessiessississrisstnnttnnnennntnnnennrnnnnrnn e 17 5 8 8 5 UC 05 Zertifikat aktivieren 0 nnsrsnsnnnnnnnnnnnennnnnnnnnnnnnnennnnnnnnnnnnnnnnnnnnnannnnn nenn 17 5 34 UG OT Egli uu iti hene it be em hrec ta ye ee Ete t t e us 18 5 3 5 UG 02 Datei SIghlerernsu ode tenter ciere m Hd aei n i Pa decet aiaa 18 5 3 6 UC 03 Signat r EE EE 19 5 3 7 UC 04 Signierte Datei downloaden 19 5 3 8 UC 05 Zertifikat aktivieren iecit mean anni 20 6 Analyse der Gcherbeitsszenaren entren nennen nnne nens 21 6 1 bersicht ber die Applikation EE 21 Ee DEE 21 6 2 1 Szenario Malware auf Rechner 21 6 241 e len WE 21 GRO EE ul EE 21 6 2 3 Abwehrmecharnismuls ueri ie e enter egre ee 21 6 2 1 4 Zus tzliche Sicherheitsaspekte sse 22 6 2 2 Szenario Verlust des Smartphone nennen 22 6 2 2 4 Unberechtigtes Lesen der Best tigungsanfrage seseessssrrssssrssrrrrsssrrrssrrrnssrns 22 6 2 2 2 Unberechtigtes Signieren einer Date 22 6 2 2 3 Zus tzliche Sicherheitsaspekte sse 22 6 2 8 Szenario Angriff auf das LAN WLAN des Benutzers 23 6
82. iegende Arbeit selber und ohne fremde Hilfe durchgef hrt habe ausser derjeni gen welche explizit in der Aufgabenstellung erw hnt ist oder mit dem Betreuer schriftlich verein bart wurde e dass ich s mtliche verwendeten Quellen erw hnt und gem ss g ngigen wissenschaftlichen Zitier regeln korrekt angegeben habe Ort Datum Jona 15 06 2012 Name Unterschrift Eric Aebi Name Unterschrift Stefan Rohner Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 14 von 96 4 Management Summary 4 1 Ausgangslage Mit der Suisse ID ist es bereits m glich Dokumente rechtsg ltig digital zu signieren Hierf r wird jedoch eine Smartcard ben tigt Viele User sind mit der Installation und Anwendung einer Smartcard jedoch berfordert Die Firma Keyon AG in Jona hat bereits einen Signaturserver entwickelt welcher nun entsprechend erweitert werden soll um gesetzliche Vorgaben wie die Zwei Faktor Authentisierung zu erf llen 4 2 Vorgehen Technologien In einer ersten Phase wurden Sicherheitsszenarien auf Grundlage des ZertES analysiert Dabei galt es in erster Linie zu verhindern dass ein Angreifer eine Signatur mit einem Zertifikat einer Drittperson ausf hren kann Dies konnte durch eine durchgehende Verschl sselung mittels SSL sowie der Zwei Faktor Authentisierung mittels einer Smartphone App bewerkstelligt werden Da bei dieser Arbeit eine bereits bestehende Ap
83. ign JCE Service via SOAP bergeben welcher das signierte Dokument retourniert Dieses wird wiederum ber SOAP an das trueSign Webportal geschickt Falls die Signatur nicht erstellt werden kann wird eine ProcessException geworfen Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 49 von 96 sendMobileTan String mobilelD Hier wird der SendMobileTanRequest des SOAP Services behandelt Mittels SessionManager wird eine neue Mobile TAN erstellt und dem MessageUtil bergeben welches die TAN an die gelieferte MobilelD schickt Die erstellte TAN wird ebenfalls an das trueSign Webportal zur ckgegeben signMobilePDF String imei byte pdf String fileName String mobilelD String Uid String alias Diese Methode behandelt den SendMobilePDFRequest des SOAP Services Das bergebene Dokument wird mit den n tigen Angaben wie dem FileName und der UserlD zwischengespeichert Daraus wird eine SessionID berechnet die via MessageUtil an das Smartphone geschickt wird 10 4 3 2 Package android Im android Package werden alle androidspezifischen Operationen gehandhabt Im Serverteil ist ausschliesslich das Versenden von Push Nachrichten betroffen Zu diesem Zweck muss der Server zuerst bei Google authentisiert werden anschliessend k nnen die Nachrichten verschickt werden Klassendiagramm 9 MessageUtil AUTH String authentication readonly UPDATE CLIENT
84. ing fileName FileToSign getReadyToSignSessionlDs String setsessionsigned sessionlD String o o o o o o e o e o e o o e e 9 Session m sessionlD String m validUntil double 0 m IMEI String m signed boolean false getTan String getvalidUntil double setSigned isSigned boolean getlMEI String o e e ele oo o Abbildung 18 Klassendiagramm tan Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 54 von 96 Kernoperationen isValid String tanToCheck String imei Diese Methode pr ft ob die bergebene TAN der IMEI zugeordnet ist und ob ihre G ltigkeit noch nicht berschritten ist Sie retourniert je nach dem True beziehungsweise False Create Type Tan String name In den FactoryMethoden werden je nach Aufruf die vier verschiedenen TANs generiert Diese unterscheiden sich lediglich in ihrer G ltigkeitsdauer Die erstellten TANs werden in dieser Klasse zwischengespeichert um sie anschliessend auf ihre G ltigkeit pr fen zu k nnen Generierte Mobile TANs werden nicht gespeichert da hier nur das trueSign Webportal die G ltigkeit pr fen muss getReadyToSignSessionIDs In dieser Methode wird ein String generiert welcher via Push Meldung an die trueSign MobileApp geschickt wird Dieser String besteht aus allen SessionlDs der von diesem User hochgeladenen noch nicht signierten D
85. ischen Prozesse sollen zudem sicherheitstechnisch bewertet werden Ein ferneres Ziel ist es die Applikation soweit auszubauen dass die Anzeige der Dokumente auf allen g ngigen Smartphone Betriebssystemen funktioniert Eine M glichkeit w re das PhoneGap Framework welches die Entwicklung einer App f r mehrere Betriebssysteme zul sst 14 1 2 Annahmen und Einschr nkungen Obwohl dieses Projekt aus einer Studienarbeit und einer Bachelorarbeit besteht wird es als ein gemeinsames Projekt betrachtet Die Arbeit wird so unterteilt dass die Bachelorarbeit den Serverteil umfasst in welchem die bestehende L sung der Keyon AG um das Webportal erweitert wird Die Studienarbeit besteht darin eine L sung f r das Empfangen und Anzeigen des Dokumentes auf einem Smartphone zu erstellen Die konzeptuellen Aspekte werden zusammen erarbeitet 14 2 Projektorganisation Das Projekt wird von einem Team bestehend aus zwei Studenten der HSR Hochschule f r Technik in Rapperswil erarbeitet Alle Teammitglieder sind hinsichtlich der Bewertung der Arbeit gleichgestellt Der Aufwand f r die Bachelorarbeit ist aber um 4 ECTS Punkte h her und dauert entsprechend auch zwei Wochen l nger als die Studienarbeit 14 2 1 Organisationsstruktur Teammitglied Zust ndigkeiten und Verantwortung Eric Aebi Webportal Server Stefan Rohner Mobile Applikation Client 14 2 2 Externe Schnittstellen e Betreuer ist Herr Prof Dr A Steffen e Industri
86. k des trueSign Webportals ges ubert werden Sie sollte keine Files enthalten jedoch einen User mit einem Alias Dieser User muss ebenfalls im trueSign JCE Service konfiguriert sein damit die Signatur korrekt ausgef hrt werden kann Die Reihenfolge der Tests ist einzuhalten da die meisten Testf lle von vorangegangenen F llen abh ngig sind Zum Beispiel kann in der trueSign Mobile App keine Signatur best tigt werden wenn nicht zuvor ein File im Webportal hochgeladen wurde 11 3 Test vom 13 06 2012 Device Testbeschreibung Erwartetes Resultat Resultat Bemerkung Webportal Login Weiterleitung zur Eingabe OK Login der TAN Webportal Login mit falschen Login wird verweigert OK Login Userdaten Mobile App Login beim Webportal Push Meldung mit TAN OK Login wird angezeigt Webportal Eingabe der TAN Weiterleitung zur Signatur OK TAN Webseite Webportal Eingabe einer falschen Keine Weiterleitung OK TAN TAN Fehlermeldung Webportal Klick auf Signed Files Anzeige von leerer Seite OK Da noch keine Signed Files Files signiert wurden Webportal Klick auf My Account Anzeige der Benutzerdaten OK My Account Webportal Klick auf Revoke Anzeige der Revoke Cert OK Revoke Cert Certificate Seite Webportal Change Webportal Anzeige der Webportal OK Change PW Password Seite Webportal Eingabe eines neuen Passwort wird ge ndert OK Change PW Passwortes Webportal Eingabe eines Fehlermeldung Passwort
87. kt Zentraler Signaturdienst Seite 83 von 96 14 6 Infrastruktur Um das Projekt zu bew ltigen arbeitet jedes Teammitglied mit seinem pers nlichen Laptop sowie dem von der HSR zur Verf gung gestellten Desktop Rechner F r die Entwicklung sowie die Tests auf der Serverseite soll die Umgebung der Firma Keyon AG benutzt werden Auf den Rechnern wird zur Entwicklung der Mobile Applikation Clientseite IDE Eclipse Indigo installiert Zus tzlich werden die Android Developer Tools eingebunden Diese enthalten einen Android Emulator um die Applikation zu testen Zur Portierung der in Java geschriebenen Software in andere Technologien wie z B iOS soll PhoneGap 1 6 verwendet werden F r die Sicherstellung der Versionskontrolle sowie die Dokumentenverwaltung wird zudem ein externer Git Server benutzt Die Zeiterfassung wird in einer Liste in MS Excel von jedem Mitarbeiter selbst ndig mitgef hrt 14 7 Qualit tsmassnahmen 14 7 1 Massnahmen 14 7 1 1 Dokumentation Jedes erstellte Dokument muss vom anderen Teammitglied korrigiert und berarbeitet werden Zudem sind Dokument Reviews im Projektplan ersichtlich bei welchen die Dokumentation zusammen mit dem Betreuer besprochen wird 14 7 1 2 Quellcode Um die Code Qualit t hoch zu halten werden im Folgenden die Coderichtlinien beschrieben an welche sich alle Teammitglieder zu halten haben Ausserdem wurden Code Reviews geplant und im Projektplan eingetragen an welchen der Code
88. ldung 28 trueSign Mobile App Tan Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 71 von 96 13 4 2 1 Dokument hochladen al gt Zhttp 152 96 232 209 8085 aspx CodeSigning aspx Document Signing n File Signed Fik keyon A Login test uid 1234 Sign File to sign Datei ausw hlen x Vertrag Hans Muster pdf Abbildung 29 trueSign Webportal Sign File Falls Sie sich nicht auf der Hauptseite befinden auf die Sie gelangen nachdem Sie sich eingeloggt haben klicken Sie in der Navigation auf der linken Seite auf Sign File Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 72 von 96 Dr cken Sie die Schaltfl che Datei ausw hlen und w hlen Sie das PDF Dokument aus Ihren Daten aus welches Sie signieren m chten Nun wird die Datei angezeigt Klicken Sie auf Sign und Sie erhalten kurz darauf eine Benachrichtigung auf Ihrem Smartphone dass eine neue Datei zum Signieren bereitsteht 13 06 2012 7S ll 14 53 Orange L schen Mail Suche Alben WhatsApp Benachrichtigungen Keyon trueSign ENOE Ven File for signing available Benachrichtigungen Kurzeinstellungen Abbildung 30 trueSign Mobile App Push New File 13 4 2 2 Signieren mit der Mobile App Starten Sie nun die App auf Ihrem Smartphone indem Sie auf diese Benachrichtigung dr cken D
89. lerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 9 von 96 15 4 Gchlusstolgerumg entente nens nnns aad a enne sentis nnns entrent 88 15 5 Ee tT 88 16 Pers nlicher Bericht Stefan Rohner esses eene eene nnns 89 17 Pers nlicher Bericht Eric Ae 90 18 Angang A ell in E 91 19 Anhang B Geseizesievte A 92 19 1 Bundesgesetz ber Zertifizierungsdienste im Bereich der elektronischen Signatur 92 19 2 Technische und administrative Vorschriften ber Zertifizierungsdienste im Bereich der lektronichen Sigthatlir 5 diee need bate io epa daro tei p ead aha a dae P Egone 92 20 Literaiurnverzechnts nennen nenenr te sn nn nnn EnEn Asan ninh nenne en sns nns n nene EEEn 94 20 1 PInKS za iecore E 94 21 elei ee VTT 95 ee lee 96 Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 10 von 96 1 Aufgabenstellung Das rechtsg ltige digitale Signieren von PDF Dokumenten nach dem Schweizer Bundesgesetz ber Zertifizierungsdienste im Bereich der elektronischen Signatur ZertES ist heute bereits m glich Dazu ben tigt der Benutzer eine SuisselD ein Leseger t sowie die entsprechende Software zum Erstellen und Pr fen der digitalen Signaturen Den meisten Anwendern ist dies jedoch zu kompliziert oder sie scheitern bereits an der Installation In Organisationen ergibt sich ein hoher Supportaufwan
90. likation folgende Schritte durchf hren e Nach dem Start erscheint ein Fenster in welchem Sie S c9 17 47 aufgefordert werden Ihren Benutzernamen und Ihr Initialize application Initialisierungspasswort einzugeben Dieses wurde Ihnen per Post zugestellt Initialize application e Auf Ihrem Smartphone erscheint nun die Meldung dass Sie sich im Webportal anmelden m ssen um Ihr Zertifikat zu aktivieren e Sobald Sie sich im Webportal erfolgreich eingeloggt haben erhalten Sie auf Ihrem Smartphone eine Nachricht welche Ihre Initialisierungs PIN enth lt Dr cken Sie auf die Benachrichtigung und ein PIN Eingabe Dialog erscheint Geben Sie die PIN im entsprechenden Feld ein e Klicken Sie nachdem Sie unter Neue PIN eingeben und Q Done Neue PIN best tigen eine neue PIN gew hlt haben auf OK und Sie gelangen ins Hauptmen der Applikation Enter your initial PIN Abbildung 27 trueSign Mobile App 13 4 2 Signieren von Dokumenten Initialize Nach erfolgreicher Initialisierung der Mobile App steht dem Signieren der Dokumente nichts mehr im Weg Loggen Sie sich im Webportal mit Ihrem Benutzernamen und Ihrem Passwort ein und geben Sie danach die auf Ihr Smartphone gesendete TAN im entsprechenden Feld ein 13 06 2012 S ll 14 32 Q ll 14 32 Orange ees trueSign Mobile Your TAN to login EN S X LoginTAN 118901 Mal Suche WhatsApp Keyon trueSign ENEE LooinTAN 782516 Benachrichtigungen Kurzeinstellungen Abbi
91. mit dem Betreuer besprochen wird Weitere Reviews wurden im Projektplan mit dem Industriepartner Keyon AG festgelegt Formatierung Da das ganze Team mit Eclipse arbeitet soll auch gleich die in Eclipse vorhandene automatisierte Formatierung mit der Java Standard Einstellung gebraucht werden Somit werden keine zus tzlichen Regeln ber Einzug Klammersetzung usw ben tigt Namenskonventionen Alle Namen von Klassen Variablen usw sollen in der bekannten CamelCase Schreibweise und in Englisch geschrieben werden Zudem sind bei der Namensgebung folgende Richtlinien zu beachten Element Schreibweise Beispiel Klasse Interface e Nomen ObjectFactory e Beginnt mit Grossbuchstaben e Interfaces beginnen mit gross I e Enth lt Name des verwendeten Patterns Methode e Verb calculateThings e Beginnt mit Kleinbuchstaben Konstante e Nur Grossbuchstaben W rter Trennung NEVER CHANGE mit Attribut e Beginnt mit m Member mColor Variable e Beginnt mit Kleinbuchstaben counter Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 84 von 96 Kommentar Kommentare werden in Deutsch verfasst Jede Klasse muss zwingend einen einleitenden Kommentar enthalten Dieser muss mit JavaDoc kompatibel sein Komplizierte bzw lange Methoden sollten wenn m gliche vermieden werden Oder allenfalls mit einem JavaDoc konformen Kommentar versehen werden 14
92. n Diese Variante w re von der Implementation sicherlich die einfachste gewesen da die jetzt erstelle SOAP Schnittstelle zwischen dem Webportal und dem trueSign Mobile Server weggefallen w re und alles in einer Webapplikation h tte behandelt werden k nnen Allerdings widerspricht diese Variante der Philosophie einer CA komplett Eine CA muss ihre Rechner und Daten extrem gut sch tzen und will deshalb m glichst wenig Kommunikation mit der Aussenwelt zulassen Nat rlich ist die Kommunikation nicht ganz auszuschliessen jedoch wird diese nur mit bekannten Partnern gef hrt Ein Webportal auf welchem jeder der ein Dokument signieren m chte Zugriff haben muss wird vermutlich keine CA betreiben wollen 15 2 3 Variante Webportal getrennt Signatur bei CA umgesetzt Die von uns umgesetzte Variante vereint die berlegungen aus den beiden anderen Varianten Die Best tigungsanfrage wird vom trueSign Mobile Service an das Smartphone geschickt Dieser Service leitet das Dokument anschliessend direkt an den trueSign JCE Service weiter welcher das Dokument signiert Die Gefahr dass ein Angreifer das Dokument zwischen dem trueSign Mobile Service und dem trueSign JCE Service abfangen und ver ndern kann ist sehr gering Denn beide Applikationen befinden sich innerhalb der CA Wenn auch in einer realen Anwendung wahrscheinlich auf verschiedenen Sicherheitsstufen Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentr
93. n einem eigenen Kapitel beschrieben Aus Sicherheitsgr nden haben Sie vier Versuche Ihre PIN korrekt einzugeben bevor dieser Prozess gesperrt wird O ul 16 25 Abbildung 32 trueSign Mobile App trueSign Mobile Verification Nach erfolgreichem Signieren wird im Hauptmen der Eintrag mit K ndigung_Peter_Sauer pdf gt dem signierten Dokument gr n hinterlegt 1317 KB 2012 06 13 02 00 eg Decline Vertrag Hans Muster pdf 110 KB 2012 06 13 02 00 Refresh Settings Abbildung 33 trueSign Mobile App Signed File Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 74 von 96 13 4 2 3 Downloaden des signierten Dokuments Wechseln Sie nun wieder ins Webportal Dort k nnen Sie die signierten Dokumente unter Signed File herunterladen und weiter verwenden Werden die Dokumente im Webportal nicht mehr gebraucht k nnen Sie diese auch mit dem Delete Button aus dem Portal entfernen Login test uid 1234 ai Zhttp 152 96 232 209 8085 aspx SignedFiles aspx Document Signing gn File FileName SignDate E Vertrag pdf 13 06 2012 11 45 10 sample pdf 13 06 2012 10 53 02 Vertrag Hans Muster pdf 13 06 2012 16 27 18 Abbildung 34 trueSign Webportal Signed Files 13 4 24 Signieren ablehnen Muss aus einem Grund der Signierungsprozess abgebrochen werden kann statt den PIN zum Signieren einzugeben auf Decline geklickt werden Dana
94. n kann Die technischen und organisatorischen Prozesse sollen zudem sicherheitstechnisch bewertet werden Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 11 von 96 Studienarbeit Bachelorarbeit Stefan Rohner Eric Aebi 1 User Org en FIPS Level 3 4 true Sign 2 Portal m 3 Workflow PC Abbildung 1 bersicht Arbeitsteilung 1 1 Aufgaben Folgende Punkte sollen innerhalb der Arbeiten analysiert und beschrieben sowie in einem proof of concept umgesetzt werden e Beschreibung der Registrierung und Verwaltung der Benutzer und deren Authenti fizierungsmerkmale e Beschreibung der Sicherheitsmerkmale der Applikation organisatorisch und technisch o Welche in externe Attacken sind m glich wie werden sie verhindert e Analyse und Umsetzung der folgenden Anwendungsf lle o Aufruf der Applikation mittels PC Zwei Kanal Authentisierung mittels Smartphone o Aufruf der Applikation mittels Pad Zwei Kanal Authentisierung mit demselben Ger t optional Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 12 von 96 2 Abstract Die entwickelte Applikation erm glicht das Signieren von Dokumenten via Webportal Der User kann das zu signierende Dokument im Webportal hochladen dieses wird ihm anschliessend zur Best tigung an sein Smartphone geschickt wo der User die Datei k
95. ne geschickt wurde Abwehrmechanismus Die trueSign Mobile App k nnte den Benutzer vor der Anzeige des PDFs auffordern eine im trueSign Webportal angezeigte TAN einzugeben Der Angreifer k nnte die PDF Datei somit nicht einsehen Es ist jedoch davon auszugehen dass ein Benutzer welcher eine vertrauliche Datei signieren m chte darauf achten wird dass niemand Einblick auf sein Mobilger t hat Deshalb wird zugunsten der Usability davon abgesehen den Prozess durch eine weitere Mobile TAN zu sch tzen 6 2 2 2 Unberechtigtes Signieren einer Datei Beschreibung Der Benutzer verliert das f r die Best tigung der Signatur eingetragene Smartphone Angriff Der b swillige Finder des Smartphone kann sich im trueSign Webportal einloggen eine Signatur ausl sen und diese dann mit dem Smartphone best tigen Zudem kann er m glicherweise Daten einsehen welche der Benutzer vor dem Verlust des Smartphone zur Signatur aufgegeben hat Abwehrmechanismus Das trueSign Webportal wird durch ein Login gesch tzt Somit kann der Finder des Smartphone keine Signatur in Auftrag geben Das Passwort hierf r kann vom Benutzer gew hlt werden Es gibt aber gewisse Sicherheitskriterien die erf llt werden m ssen Die zur Best tigung an das Smartphone geschickten Daten werden nicht auf dem Smartphone gespeichert und somit k nnen keine zuvor signierten Dateien eingesehen werden 6 2 2 3 Zus tzliche Sicherheitsaspekte Die trueSign Mobile App k nnte durch ein
96. neGap 1 5 PhoneGap ist ein Open Source Framework welches die Entwicklung von Apps f r Smartphones auf Basis von HTML5 JavaScript und CSS erlaubt mit nativer Unterst tzung der sieben gr ssten Plattformen Somit schlieBt sich eine L cke zwischen nativer Entwicklung und Entwicklung mit HTML5 da der Zugriff auf tiefer im System verankerte Elemente wie Sensoren Systemdaten oder Benutzerdaten bislang f r WebApps die letztendlich im Browser des Ger ts laufen mussten unm glich war PhoneGap erm glicht so auch eine breite Verf gbarkeit einer App auf zahlreichen Plattformen Die eigentliche App wird einmal geschrieben und kann dank Wrapper nativ f r iOS Android Windows Phone Blackberry Symbian und WebOS realisiert werden Dreamweaver CS 5 5 Dreamweaver ist ein HTML Editor bestehend aus einer Kombination eines WYSIWYG Editors mit paralleler Quelltextbearbeitung Auch die Syntaxunterst tzung f r HTML5 CSS3 und diversen Skriptsprachen ist implementiert In der neusten Version CS5 5 wurde zudem das OpenSource Projekt PhoneGap in Dreamweaver eingef hrt Hiermit ist eine Applikationsprogrammierung f r iOS und Android m glich JQuery Mobile Ist ein Touch optimiertes Web Framework f r Smartphones amp Tablets Es vereinheitlicht ein HTML5 basiertes GUI f r Smartphone Plattformen Mit seinem leichten Code bietet dieses Framework ein flexibles und einfach anpassbares Design 7 2 1 3 Entwicklungsumgebung f r spezifische Smartphone Betriebs
97. ngs sollen der Projektfortschritt und allf llige Probleme bei den einzelnen Arbeitsauftr gen besprochen und Massnahmen beschlossen werden 14 3 2 4 Releases Release Typ Requirements 0 1 Prototyp 0 1b Beta 1 0 Final Fertige Applikation Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 79 von 96 14 4 Risikomanagment Zetieinheit Projektstunden Gewichteter Schaden 33 7 Risiko Risikotitel Hisikobeschreibung max Nr Schaden h Massnahmen zur Vermeidung Verminderung Eintrittswahr scheinlichkeit gewichteter Schaden h Vorgehen bei Eintreffen Projektspezifische Risiken R1 Fehlein Zeitplan wird nicht 60 20 00 96 12 00 kritische Arbeitspakete nicht alle geplanten sch tzung des eingehalten da der Domainmodell Backupplanung Funktionen und Aufwandes Aufwand von einzelnen Konfigurationsverwaltung Features umsetzen Arbeitspaketen falsch fr hzeitig Mehrarbeit eingesch tzt wurde Elaboration 1 amp 2 bearbeiten R2 Sicherheits Trennung der Kan len 40 20 00 8 00 Genaue Analyse der Sicherheitskonzept aspekte halten weitere Notwendigkeiten Gesetzestexte berdenken und rechtlich nicht z B eines Schl ssels Nach erarbeiten des verbessern erforderlich reicht ev ein Sicherheitskonzept Review mit PIN Code auf dem Betreuer und der Keyon AG Smartphone etc R3 Probleme mit Die zum Teil
98. nnnnnnnnnnnnnnnnnnnnnnnnnnnnnn 4 1 Ausgangslage ssseeeene nennen 4 2 Vorgehen Technologien e Ee Ell E 4 4 Ausblick oto ete ED et Ec gedeeft 5 Anforderungsspezifikation eeeeeenne 5 1 Allgemeine Beschreibung ernennen 5 1 1 Produktperspektive A 5 1 2 JProduktf nktlon e tete roter tt e eere 5 1 3 Benutzercharakteristik AA DCL Einschr nkungen tette tete 5 1 8 Abhangigkeitai sssaaa tette tret ets 5 2 Spezifische Anforderungen sss 5 2 1 Nichtfunktionale Anforderungen esses 5 2 1 1 Angemessenheit sssrinin 5 22 Bedienbarkeit ssis tette ttn rts 5 2 2 1 Verst ndlichkeit ession 5 2 2 2 Bedienb rkeit n n mee 5 2 8 Zuverl ssigkeit nn een 5 2 3 4 TC 5 2 8 2 Fehlertoleranz esses 5 2 4 Leistung ee ete repere tete Pe tret ee eet 5 2 4 1 Antwortzeit nuenessnsnnnnnnnnnnennnnnnnennnnannennnnnnnnnnnnannnn 52 5 Eu EE 5 2 5 1 Ampassbarkent ernennen EE 5 2 6 Gchnttetellen AA 5 2 6 4 Benutzerschnittstelle AA 5 2 6 2 Goftwareschntttsiellen nennen 5 2 6 8 Kommunikationsschnittstelle 5 2 7 Lzenzantorderungen sse 5 2 7 1 Verwendete Giandardes sess 5 3 Use Ca8S68 e dcuneg a edt utu genen Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 4 von 96 5 3 1 Use Case D
99. nommen e was waren die Traktanden e was wurde zu den Traktanden beschlossen o Werist daf r verantwortlich e wann findet das n chste Meeting statt Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 85 von 96 15 Technischer Bericht 15 1 bersicht Die Arbeit hatte einen grossen konzeptuellen Teil Die rechtsg ltige digitale Signatur ist kein neues Prinzip Jedoch ist die digitale Signatur bis jetzt nur mittels einem Hardwaretoken wie zum Beispiel einer Smartcard m glich Das ZertES wurde im August 2011 soweit angepasst dass eine rechtsg ltige Signatur auch ohne Hardwaretoken m glich ist Dabei m ssen aber einige Sicherheitsmerkmale erf llt werden Diese galt es zu analysieren und ein Konzept f r eine Applikation zu erstellen welches all diese Forderungen erf llt Oberstes Ziel einer solchen Applikation ist es zu verhindern dass ein Angreifer eine Signatur mit dem Zertifikat einer Drittperson ausf hren kann 15 2 Ergebnisse des Konzeptes In der konzeptuellen Phase der Arbeit haben wir mehrere Varianten analysiert F r die Umsetzung haben wir uns f r eine Variante entschieden Die wichtigsten Varianten sollen hier kurz beschrieben werden 15 2 1 Variante Dokument als Hash Die zu signierenden Dokumente stehen im Mittelpunkt dieser Applikation In einer realen Anwendung werden dies h ufig Dokumente sein bei welchen eine gewisse Geheimhaltung bzw Priv
100. nuersssennsannnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnsnnnnnnnnnnnnnnsnnnnnnnnnnnnnnnnnnnan 34 8 3 2 8 Waitere App Ansichten eesesssssesessseeeeeee nennen entren entrent nnn nnns 35 9 4 GUIEMAp sot etaed eet eti theta avt bitum eit bete 36 8 4 4 _ Mobile Applikati n etre ee A e AAEE en rei rest 36 Schnittstellenbeschreibung eene nene nennen nint en nen tensis innen 37 Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 6 von 96 i Schnittstellen bersicht uad Go torte Dreh 37 9 2 trueSign Webportal A 38 9 21 E Ale TE 38 ke PER Te 1121110 TEE 38 9 3 trueSignMobile Service Interface esses ener nnne 38 S PS ERI io ore l io E E 38 9 3 27 Ee TE 38 9 8 2 1 GendMobile anbeouest nenn 38 9 3 2 2 SignMobilePDFRequest r 440u4n00unnnnonnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnannnnnnnnnnnnnnnnn 39 98 28 ActivaleGerflifilate o tueri e Pa taeda pro re Ple Eee nude 39 98 24 GhangePlnaz cient Helsinki 39 GE ee UE 39 9 4 e el EE 39 94 1 eine e OT 39 94 2 Ee TE 39 9 4 2 1 sendPushReadyToSign uurr440urnnannnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn 39 9 4 22 GetDocument ro tm epit tem Ehren he ettet chui Rs 40 SA SignAcknowledga etti a ee Pe aede ere Merge Pede Pto e vns 40 9 4 2 4 SignDOeCli ness terit etes checa ue rtu ho rn d e er MED eh 40 9 4 2 5 Sengdkuebetivatetert
101. obile Ar 2 sendPushChangePinResponse Push Return Boolean der Aufforderung die Provider PIN zu ndern Via PushProvider 9 4 2 8 changePIN Nachricht Sender Parameter Zweck changePINRequest trueSign IMEI String Anderung des PIN f r Mobile App ChangeTAN String den PrivateKey oldPin String newPin String changePINResponse trueSign Return Boolean Mobile 9 4 3 Ablauf der Kommunikation Folgende Diagramme erl utern den Ablauf der Kommunikation zwischen der trueSign Mobile App des trueSign Webportals und dem trueSign Service mit Einbezug der Sicherheitsmechanismen Dabei wurden einzelne Komponenten zusammengefasst oder weggelassen um die bersichtlichkeit zu verbessern 9 4 4 Kommunikation beim Login Dieses Diagramm zeigt die Kommunikation w hrend des Logins mit dem Versenden der Mobile TAN welche anschliessend beim trueSign Webportal eingegeben werden muss Um die Verbindung zum Push Provider nur an einem Ort in der Applikation halten zu m ssen wird auch die Mobile TAN vom trueSign Service und nicht direkt vom trueSign Webportal verschickt trueSign Service Abbildung 7 Kommunikation Login SmartPhone Push Provider UserPC trueSign Webportal 1 1 i 1 1 I I I I I lj I l I I l i i Login Username Password I I I ebe gt 1 I I H checkLogin I I I SendMobileTanRequest MobilelD I I 1 i SendMobileTanRe
102. ontrollieren und die Signatur best tigen kann Nach erhaltener Best tigung durch das Smartphone signiert der Server das Dokument und stellt es im Webportal zum Download bereit Dank der Best tigung via Smartphone wird die f r qualifizierte Signaturen vom ZertES vorgeschriebene Zwei Faktor Authentisierung eingehalten Das Login zum Webportal wurde zus tzlich durch eine TAN gesichert welche ebenfalls in der Mobile App angezeigt wird Bei der vorwiegend in Java entwickelten Server Applikation handelt es sich um einen SOAP Webservice welcher die Kommunikation mit dem Webportal und der trueSign Mobile App behandelt Das Webportal ist eine ASP Net Webapplikation Die Datenhaltung wird in einer MS SQL Express Datenbank gemacht welche von der Webapplikation kontrolliert wird Die Mobile App wird in einer ersten Version f r Android entwickelt Bei der Entwicklung wurde jedoch auf das PhoneGap Framework gesetzt dieses erm glicht die Applikation einfach auf andere mobile Betriebssysteme zu portieren Im Speziellen kann das gesamte GUI ohne Anpassungen bernommen werden Einzig spezifische Funktionen wie z B das Empfangen von Push Nachrichten m ssen nativ f r die verschiedenen Betriebssysteme entwickelt werden Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 13 von 96 3 Erkl rung von Eric Aebi und Stefan Rohner Erkl rung Ich erkl re hiermit e dass ich die vorl
103. ouchscreen des mobilen Ger tes 5 3 3 Use Cases brief 5 3 3 1 UC 01 Login Ruft der Benutzer die Applikation ber das Webportal auf muss er sich als erstes authentifizieren um die Applikation benutzen zu k nnen 5 3 3 2 UC 02 Datei signieren Dies ist der Main Use Case Der Benutzer kann die PDF Datei welche er signieren m chte hochladen und den Signierungsprozess starten 5 3 3 3 UC 03 Signatur best tigen Die PDF Datei wird auf dem Smartphone des Benutzers angezeigt Der User muss die Signatur best tigen 5 3 3 4 UC 04 Signierte Datei downloaden Wurde der Signaturprozess erfolgreich abgeschlossen kann der Benutzer die signierte PDF Datei vom Webportal herunterladen 5 3 3 5 UC 05 Zertifikat aktivieren Beim erstmaligen Anmelden am trueSign Webportal muss das Zertifikat via trueSign Mobile App aktiviert werden Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 18 von 96 5 3 4 UC 01 Login Use Case Abschnitt Kommentar Scope trueSign Webportal Level Anwenderziel Primary Actor Benutzer Stakeholders amp Interests Benutzer sich beim trueSign Webportal authentifizieren Dies auf einem einfachen jedoch sicheren Weg Preconditions Der Benutzer hat sich bereits einmalig f r den Service registriert Success Guarantee Der Benutzer wurde authentifiziert Main success scenario 1 Aufruf des trueSign W
104. plikation erweitert wurde war die Technologie weitgehend vorgegeben Der Serverteil wurde in Java entwickelt Beim Web Frontend handelt es sich um eine ASP Net C Applikation Bei der Mobile App handelt es sich um eine neue Entwicklung Diese soll um den Entwicklungsaufwand f r alle mobilen Plattformen m glichst gering zu halten mit dem PhoneGap Framework erstellt werden PhoneGap basiert auf HMTL5 und JavaScript und erm glicht es so die Applikation f r alle Platttormen nur einmal zu entwickeln 4 3 Ergebnisse Die entwickelte Applikation erm glicht das Signieren von Dokumenten via Webportal Der User kann das zu signierende Dokument im Webportal hochladen dieses wird ihm anschliessend zur Best tigung an sein Smartphone geschickt wo der User die Datei kontrollieren und die Signatur best tigen kann Nach erhaltener Best tigung durch das Smartphone signiert der Server das Dokument und stellt es im Webportal zum Download bereit Dank der Best tigung via Smartphone wird die f r qualifizierte Signaturen vom X ZertES vorgeschriebene Zwei Faktor Authentisierung eingehalten Das Login zum Webportal wurde zus tzlich durch eine TAN gesichert welche ebenfalls in der Mobile App angezeigt wird 4 4 Ausblick F r eine n chste Version w re die Entwicklung der Mobile App f r weitere Plattformen lohnenswert Zudem wird in einer produktiven Umgebung noch ein Entry Server eingesetzt dies w rde einige Anpassungen erfordern Dokument
105. pp Klick auf Decline Signatur wird verworfen OK Decline Sig Homescreen l l wird angezeigt file ist rot eingef rbt Mobile App Erneutes Klicken auf Meldung dass File bereits OK Decline Sig Sign declined wurde Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 66 von 96 12 Installationsanleitung 12 1 trueSign Webportal 12 1 1 Voraussetzungen F r die Installation des trueSign Webportal wird ein IIS 7 0 Webserver mit einem Korrekten SLL Server Zertifikat ben tigt Zudem muss von diesem IIS aus eine Datenbank Instanz wenn m glich MS SQL Express erreichbar sein 12 1 2 Vorgehen 1 Erstellen Sie die Datenbank mittels des SQL Skriptes 2 Erstellen Sie innerhalb des IIS einen neuen Application Pool o Achten Sie dabei speziell auf die verwendete Identity diese muss Zugriff auf das Root Verzeichnis der Webapplikation sowie auf die Datenbank haben o Die NET Framework Version muss auf v4 0 eingestellt werden Internet Information Services IIS Manager Go 3 win soLrs2cKLFv Application Pools zx e iiiz 18 6 Application Pools Za General a S Gist Paye B m Framework Version v4 0 B 4 WIN SOLR32CKLFV WIN Te eoe lets you view and manage the list of application pools on the serv L 2 icalion Pools ent applications Enable Em Applications False E
106. rastruktur Einrichten der Infrastruktur Versionierung Elaboration 1 2 2x Requirements 20 Use Case brief Erarbeiten aller Use Cases im briefformat Elaboration 1 2 21 Use Case fully dressed Erstellen der wichtigsten Use Cases in Fully dressed Elaboration 1 2 22 Supplementary Spec Erarbeiten der Supplementary Specifications Elaboration 1 2 4x Analyse 40 Domain Model Domainmodell anhand der Usecases ausarbeiten Elaboration 1 1 41 System Sequenzdiagramme Darstellen der wichtigsten internen Abl ufe Elaboration 1 2 42 Operation Contracts Verfassen der Contracts Elaboration 1 2 43 Activity Diagramm Darstellen des allgemeinen Ablaufs der Activity Elaboration 1 2 44 Externes Design UI Erstellen der Paperprototypes Elaboration 1 1 45 Analyse Registrierung der Benutzer Registrierung der Benutzer auf dem Webportal analysieren Elaboration 1 2 46 Analyse Sicherheitsmerkmale Sicherheitsmerkmale des Signaturdienstes analysieren Elaboration 1 2 47 Analyse Mobile Kommunikation Funktionen der Kommunikation auf Android analysieren Elaboration 1 2 48 Review amp Korrektur Anforderungen Review Elaboration 1 3 49 Review amp Korrektur Externes Design Ul Review Elaboration 1 3 Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 82 von 96 6x Design 60 Design Model Erstellen des Design Models 61 Logis
107. rd unver ndert an das Smartphone geschickt Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst 10 4 3 3 Package file In diesem Package befinden sich alle Klassen welche sich um die signierten bzw zu signierenden Dateien k mmern Die Klasse FileToSign ist ein reines DataObject und wird zur Zwischenspeicherung aller Daten welche eine Datei betreffen benutzt Das Interface IFileHandler dient zu Testzwecken um den Filehandler w hrend Tests durch ein Mock Object ersetzen zu k nnen Klassendiagramm Ge e elo e oe o 9 FileHandler HASH ALGORITHM String SHA 256 readonly FILES FOLDER String Citemp files readonly messageDigest MessageDigest random SecureRandom addDocument doc bytef fileName String uid String alias String String writeFile sessionlD String doc byte generateSessionlD dac byte String getDocument name String byte interface rFileHandler addDocument doc byte fileName String uid String alias String String getDocument sessionlD String byte G e ele e oe e 9 FileToSign sessionlD String uid String alias String fileName String getSessionlD String getUid String getAlias String getFileName String Abbildung 16 Klassendiagramm file Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012
108. rden gespeichert getltem JSONArray args Diese Methode retourniert ein File welches zur Signatur bereit ist Wobei nicht die Datei im eigentlichen Sinne sondern viel mehr die dazugeh rigen Meta Daten zur ckgegeben werden Also der Name der Datei die Gr sse das Datum und die entsprechende SessionID Diese Daten werden dann durch das PhoneGap Framework im GUI der Applikation angezeigt retrieveDocuments In dieser Methode werden die zu den vom SessionlDManager erhaltenen SessionlDs geh renden Dateien vom trueSign Mobile Service sowie deren Meta Daten abgeholt und lokal zwischen gespeichert signDocument JSONArray Die eigentliche Signatur wird beim trueSign Mobile Service in Auftrag gegeben declineDocument JSONArray Die Signatur wird verworfen und dies dem trueSign Mobile Service mitgeteilt Dieser l scht daraufhin die Datei Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 58 von 96 10 4 3 9 Package android client push Dieses Package beinhaltet die f r das Empfangen von Push Nachrichten n tigen Klassen Klassendiagramm 9 C2DMReceiver onMessage context Context intent Intent onRegistrered context Context registrationld String sendRegitrationlDtoServer reglD String createNotificationMessage context Context payload String msg String activity Class createNotificationMessageNewfFile cont
109. rheitstechnisches Denken aneignen Anfangs tauchten bei jeder L sung eines Problems neue Fragen auf die es zu beantworten galt Mit fortschreitender Projektdauer wurde unsere Sicht klarer und durch die bereits gesammelte Projekterfahrung waren die Herausforderungen einfacher zu l sen Die Zusammenarbeit mit Herrn Steffen war sehr angenehmen und unsere w chentlichen Meetings waren immer produktiv Da Ich bereits seit eineinhalb Jahren bei der Firma Keyon AG arbeite fiel mir die Zusammenarbeit nat rlich besonders leicht Das Teamwork mit Stefan Rohner verlief ohne Probleme was sicher auch darauf zur ckzuf hren ist dass wir uns schon sehr lange kennen und auch schon fters miteinander gearbeitet haben Einzig das Projektmanagement hat vermutlich darunter etwas gelitten Dank der guten Kommunikation wussten wir immer wer was als n chstes zu tun hat Wir haben uns auch h ufig bei Arbeiten gegenseitig geholfen oder diese abgetauscht um die eigenen Kompetenzen m glichst effizient zu nutzen Leider haben wir dies jeweils aber nur schlecht oder nicht dokumentiert Zu Beginn des Projektes hatten wir zwar eine grobe Zeitplanung erstellt diese verloren wir aber w hrend dem Arbeiten etwas aus den Augen Obwohl der konzeptuelle Teil sehr spannend war denke ich dass es r ckblickend besser gewesen w re Mit der Implementation etwas fr her zu beginnen da wir hier gegen Ende der Arbeit etwas in Zeitnot geraten sind Vor allem die Risikobereich
110. rsion 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 67 von 96 3 Erstellen Sie eine neue Site innerhalb des IIS Webservers o Selektieren Sie dabei den vorher erstellten Application pool o Verwenden Sie bei Binding den Type https o W hlen sie unter SSL certificate das richtige Server Zertifikat aus Add Web Site x Site name Application pool muesonwebo iruesonwebapp select Content Directory Physical path E Patz keyon Truesignweb E Pass through authentication Binding Type IP address Port https jai Unassigned 3 Host name SSL certificate rruesignMobieweb keyon ch m View IV Start Web site immediately x me Abbildung 25 Erstellen einer IIS Web Site 12 1 3 Konfiguration Das trueSign Webportal wird ber das sich im Root befindliche web config File konfiguriert Folgend werden die wichtigsten Punkte daraus kurz erl utert 12 1 3 1 Datenbank Die Datenbank wird mit folgenden Parametern innerhalb des lt configuration gt Tags konfiguriert lt connectionStrings gt lt add name ApplicationServices connectionString data source SQLEXPRESS Integrated Security SSPI AttachDBFilename DataDirectory aspnetdb mdf User Instance true providerName System Data SqlClient gt add name TrueSignMobileDbEntities connectionString2 metadata res TrueSignMobileModel csdl res TrueSignMobileModel ssdl re s TrueSignMobileModel msl pro
111. sch ftlichen Dokumente digital signieren Pers nlichkeit Arbeitsstil amp Lernverhalten J rg ist sehr organisiert Alle seine Dokumente werden entsprechend bersichtlich abgelegt Er arbeitet ausschliesslich mit seinem pers nlichen Laptop Sicherheit ist oberstes Gebot seine Passwort Kriterien sind darum sehr vorsichtig J rg interessiert sich sehr f r IT Unter anderem auch f r die neusten technischen Ger te Darum hat er auch ein iPhone4S und das neuste Android Smartphone F r ihn ist die digitale Signatur die Zukunft Pain Points Obwohl J rg keine Probleme bei der Installation hat st rt es ihn immer ein Ger t zur Signatur mit sich herumzutragen Gerne h tte er den Kartenleser im Notebook integriert dies ist aber f r sein jetziges Apple MacBock leider nicht verf gbar 8 1 2 Ueli Untermaurer Profil 62 Jahre Kaufm nnische Lehre ehemaliger Parteipr sident der nationalen Rasselbande der Schweiz Bundesrat Eidg Depart f r Verteidigung verheiratet zwei Kinder wenige Windows Office Kenntnisse nicht sehr versiert im Umgang mit technischen Ger ten verwendet digitale Signaturen nur sehr ungern Ueli Untermaurer Ueli Untermaurer ist die oberste Instanz der R stungsindustrie der Schweiz und kommt vor allem beim Handel mit Verteidigungswaffen nicht um digital signierte Dokumente herum Hauptziele In ziemlich allen digitalen Dokumenten welche bei seinen politischen Aktivit ten entstehen
112. sein Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 93 von 96 der dem qualifizierten Zertifikat entsprechende Signaturschl ssel darf nicht verwendet werden bevor er durch Aktivierungsdaten aktiviert worden ist inkorrekte und aufeinander folgende Aktivierungsversuche m ssen festgestellt werden k nnen wenn eine im Voraus festgelegte Anzahl aufeinander folgender und inkorrekter Aktivierungsversuche erreicht wurde muss der Gebrauch der Signaturschl ssel gesperrt werden Diese Anzahl darf nicht gr sser als 4 Versuche f r eine PIN L nge von 6 Zeichen sein Bei einer l ngeren PIN kann sie gr sser als 4 sein sofern die vom Entwickler der zertifizierten sicheren Signaturerstellungseinheiten bereitgestelle Dokumentation das vorsieht die CSP kann einen gesperrten Signaturschl ssel erst freigeben nachdem sie verifiziert hat dass der Antrag auf Freigabe vom Schl sselinhaber stammt Kaptitel 3 3 3b Die Zertifizierung der sicheren Signaturerstellungseinheiten muss f r alle oben stehenden Anforderungen erh ltlich sein und entweder die Pr fstufe EAL 4 der Norm ISO IEC 15408 2005 11 umfassen erh ht um die Versicherungselemente AVA_MSU 3 vulnerability assessment analysis and testing of insecure states und AVA_VLA 4 vulnerability assessment highly resistant oder die entsprechende Versicherungselemente der Norm ISO IEC 15408 2009 oder die Pr fstufe E3 hoch des Dok
113. signentscheidungen Da die Arbeit bereits viele verschiedene Technologien beinhaltet soll sich bei der Kommunikation auf eine Technologie beschr nkt werden Deshalb wird auch f r die Kommunikation mit dem Smartphone auf SOAP gesetzt wenn dies auch einen relativ grossen Overhead bedeutet 10 4 2 Schnittstellen Siehe gt 9 Schnittstellenbeschreibung 10 4 3 Java Design Packages In diesem Kapitel werden zuerst die Packages der trueSignMobile Service Server Applikation beschrieben und anschliessend die der trueSign Mobile App Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 48 von 96 10 4 3 1 Package mobile Beschreibung des Packages Das Package mobile ist das Top Package der Applikation Im Serverteil trueSign Mobile Service befindet sich darin nur die RequestHandler Klasse Diese kann als Hauptklasse des trueSign Mobile Service betrachtet werden Sie nimmt die Request der SOAP Service Implementation entgegen leitet diese an spezifische Klassen weiter oder behandelt sie selbst Klassendiagramm RequestHandler fileHandler IFileHandler m config String C BachelorArbeit TrueSignMobile cfg MobileConfig xml m context ApplicationContext getDocument imei String dacumentName String byte signDoc imei String sessionlD String pin String boolean sendDocToMobilewWeb signedData bell userName String sessionlD String fileName
114. sonsnnnnnnnnnnnnonnnnnnnnnnnnnnonnnnnnnnnnnnnnonnnnnnnnnnnnnnn nennen 52 UE e le EI E 53 10 4 3 7 Package android client 55 10 4 3 8 Package android client phonegap sse 56 10 4 3 9 Package android client push AA 58 10 4 3 10 Package com google androd c2dm nn nnnnn ann 59 10 4 4 Net E EE 60 10 441 Datenbankverbindung goe erit tte ente Henn 60 E Eet EE 60 E RER Bee 60 10 444 ee Ee ul 60 10 44 57 SignedFiles ASpX EE 60 10 4 4 6 Changebaseword asp ce 61 10 5 BEE le ll e EE 61 10 5 1 Persistente Datenhaltung iieri sehe 61 10 5 2 Temporare Datenhaltung mit een eek 62 UN SysteMlest u M M 63 11 1 eene EE 63 11 2 VorbereitUngi astucteksiteenseiiuiecheetehsskeellsn kuusiainkellsioh eek 63 14 3 Test vom KEREN 63 UNE EE te NET ELE Le etr rct eet eire n te eter ha Ee re nce Hohe 66 12 1 dr eSign Webportal 5 rene pee ten er eee ehe ned Ede epe RENE 66 12 1 1 Voraussetzungen en ada ee ea ee reae a 66 12 1 2 V rgehen a sH E 66 12 1 3 Konfiguration E 67 12 1 83 1 2 Datenbank Ra Er 67 12 2 trueSign Mobile Service 2 220nnnnnennnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnannnnnnnnnnnnn 68 12 2 1 Voraussetzungen une iR ei ORRE A UER EEN EAT 68 12 2 1 1 Installato enera tee ie 68 18 Benutzer nlei
115. spone TAN d i E i Mobile TAN I I Mobile TAN i Ee d Mobile TAN l I L checkTAN I I ACK Em c 2222522 i i I I I I I l Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 42 von 96 9 4 5 Kommunikation beim Signieren Folgendes Diagramm stellt die Kommunikation bei der Signatur einer Datei dar Aus Gr nden der bersichtlichkeit wurde der Login Prozess weggelassen SmartPhone Push Provider UserPC trueSign Webportal trueSign Service T l I i upload PDF RsaPkcs1PdfSign PDF MobilelD IMEI SendPushReadyToSign DownloadTAN PDF_ID 2 pd Ready DownloadTAN PDF D TT GE Il BERN n D getDocumentRequest IMEI DownloadTAN PDF ID getDocumentResponse PDF gt MEN SendSigningAcknowledge IMEI DownlaodTAN PDF ID SignDocument PrivateKey PIN p gt Download SignedPDF return SignedPDF HSM sign PDF PrivateKey_PIN Abbildung 8 Kommunikation Signatur return SignedPDF gt sign PDF Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 43 von 96 9 4 6 Kommunikation bei der Aktivierung der trueSign Mobile App Dieses Diagramm beschreibt den Kommunikationsablauf bei der ersten Verwendung der trueSign Mobile
116. systeme F r Smartphone spezifische Anpassungen welche nicht mit PhoneGap erreicht werden k nnen muss auf die Entwicklungsumgebung der Smartphone Betriebssysteme zur ckgegriffen werden e Eclipse Indigo f r Android e Xcode f r IOS Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 28 von 96 7 2 1 4 Push Nachrichten Um Push Nachrichten an ein Smartphone zu senden bieten die Hersteller der Betriebssysteme gr sstenteils Frameworks an F r Android bietet Google das Cloud to device messaging C2DM Framework an Bei iOS bietet Apple den Apple Push Notification Service APNS Beide Frameworks funktionieren auf eine sehr hnliche Weise Im Folgenden soll das C2DM Framework etwas genauer betrachtet werden da dies in dieser Applikation benutzt wird Aufbau C2DM C2DM Registration Registration_id C2DM Server trueSign Mobile Service Abbildung 4 Registation bei C2DM Eine Android App Registriert sich beim C2DM Server von Google dieser vergibt f r jede App eine Registrationld welche er der App zur ck meldet Die App muss anschliessend diese Registrationld ihrem Server mitteilen Dieser muss diese lokal abspeichern damit er die App beziehungsweise das Smartphone erreichen kann Der Server meldet sich ebenfalls beim C2DM Server an er erh lt von diesem ein Authentization To ken Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012
117. t register getltem args JSONArray PluginResult o o o o o o e o o e e o 9 PDFViewer SHOW String show readonly Y PDF INDEX int 0 readonly urlPDF String execute argl String org JSONArray arg2 String PluginResult openPDF Abbildung 20 Klassendiagramm phonegap Kernoperationen execute String action JSONArray args String callbackld Diese Methode muss jedes PhoneGap Plugin implementieren Sie dient als Entrypoint f r die JavaScript Aufrufe Die Action wird ausgewertet und die dementsprechende Aktion ausgef hrt Der args Parameter wird an die ausf hrende Methode bergeben da er die n tigen Daten enth lt Mit der Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 57 von 96 callbackld k nnte noch eine Callback Methode bekannt gegeben werden Dies wurde in unserer Arbeit allerdings nicht verwendet In dieser Methode wird das Smartphone beziehungsweise die Applikation beim Push Notification Provider Google C2DM registriert Diese wird aufgerufen falls die Applikation noch keine RegistrierungsID gespeichert hat die sie bei der Registrierung erh lt initApp JSONArray args Die initApp Methode f hrt die Initialisation aus Dies muss beim ersten Start der Applikation gemacht werden Dabei werden der Username sowie die Initialisierungs PIN die vom Benutzer eingegeben we
118. t Sender Parameter Zweck RegisterMobileAppRequest trueSign IMEI String Ein mobiles Ger t Mobile App MobilelD Stri erstmalig beim trueSign id SS ng Webportal registrieren Uid String InitPIN String RegisterMobileAppResponse trueSign response Boolean Webportal Nachricht Sender Parameter Zweck RenewMobileAppRequest trueSign IMEI String Ein mobiles Ger t Mobile App yobilelD erneuert die MobilelD Sc E zung beim Webportal Uid String RenewMobileAppResponse trueSign response Boolean Webportal 9 3 trueSignMobile Service Interface Hierbei handelt es sich um eine neu entwickelte SOAP Schnittstelle In diesem Kapitel werden nur die Operationen bei welchen das trueSign Webportal der Client ist beschrieben 9 3 1 Verbindung Bei dieser Schnittstelle handelt es sich um eine Duplex Verbindung Sie soll mittels SSL gesichert werden 9 3 2 Operationen 9 3 2 1 SendMobileTanRequest Nachricht Parameter SendMobileTanRequest trueSign MobilelD String MobileTAN an Client Smartphone schicken SendMobileTanResponse trueSign TAN String Service Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 39 von 96 9 3 2 2 SignMobilePDFRequest Nachricht Sender Parameter Zweck SignMobilePDFRequest trueSign UID String Hochladen eines Client Alias String Dokumentes welches signiert werden soll Pdf Bin
119. ten Anbieterinnen von Zertifizierungsdiensten erkl ren ein qualifiziertes Zertifikat unverz glich f r ung ltig wenn a die Inhaberin oder der Inhaber oder die Person die sie oder ihn vertritt einen entsprechenden Antrag stellt b sich herausstellt dass dieses unrechtm ssig erlangt worden ist c es keine Gew hr mehr bietet f r die Zuordnung eines Signaturpr fschl ssels zu einer bestimmten Person Absatz 2 Bei der Ung ltigerkl rung nach Absatz 1 Buchstabe a m ssen sie sich vergewissern dass die Person welche die Ung ltigerkl rung beantragt dazu berechtigt ist 19 2 Technische und administrative Vorschriften ber Zertifizierungsdienste im Bereich der lektronichen Signatur Kapitel 3 3 3a Die CSP muss den Antragstellerinnen und Antragstellern eines Zertifikats sichere Signaturerstellungseinheiten liefern die den Mindestanforderungen von Artikel 6 Absatz 2 ZertES 1 entsprechen oder sicherstellen dass diese solche verwenden Mit dem Dokument CWA 14169 15 wird die Konformit t mit den Anforderungen von Artikel 6 Absatz 2 ZertES 1 sichergestellt Die sicheren Signaturerstellungseinheiten m ssen zudem folgende zus tzliche Anforderungen erf llen sie d rfen weder den zu signierenden Inhalt ndern noch die signierende Person daran hindern diesen Inhalt vor dem Signieren genau zur Kenntnis zu nehmen das qualifizierte Zertifikat oder der eindeutige Verweis auf dieses Zertifikat muss im System vorhanden
120. tung re2 ne Le ERDE 69 13 1 bersicht uber dis Applikation au ae a a a Eer 69 13 2 Installation ILL LI 69 13 3 Registrierung PEDE 69 13 4 Benutzerhandbuch nee Eden 70 13 4 1 dl UE ie RE 70 13 4 2 Signieren von Dokumenten 70 13 4 2 1 Dokument hochladen 44rs444400HHnnnnonnnnnnnonnnnnnnonnnnnnnennnnnnnennnnnnnennnnnnn nenne 71 13 4 2 2 Signieren mit der Mobile App 72 13 4 2 3 Downloaden des signierten Dokuments AAA 74 13 4 2 4 Signieren ablebnen AA 74 Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 8 von 96 13 4 3 lu ue E 75 13 4 3 1 leur EE 75 13 4 3 2 Zertifikat revozieren ann nnr nn 75 13 4 3 3 Passwort f r Webportal andem 76 14 Prok ande eei p e a eec eeere tas 77 14 1 PIOJekt bersiclit d d d es 77 14 1 1 Zweck und ZIO tu 77 14 1 2 Annahmen und Einschr nkungen essen enn nennen 77 14 2 GN teller EE 77 14 2 1 Organisationsstr ktul a oce terat retire tni Hr getan t a acera Ebro 77 14 2 2 Externe Schnittstelleri tic c p t Piece Heine 77 14 3 Managementabla fe rnt i er lateral eek 78 14 3 1 Projekt Kostenvorarischlag iiiter d itr Rep ee 78 14 3 2 Pro jektplan 22 2 2224 euere le 78 TAS AT ALPAN E 78 14 3 2 2 Iterationsplanung Meilensteine AA 78 14 3 2 3 Besprechung mre teet ete Er e pc E EE ATE ihe tu eet eit 78 14 3 2 4 Releases iiiter Eat it n ete e ae Pi Ete v i e hav
121. turdienst Seite 16 von 96 5 2 3 2 Fehlertoleranz Besteht keine oder nur eine schlechte Verbindung zur Mobile Applikation wird der Benutzer dar ber informiert und er kann einen erneuten Versuch starten Ist jedoch keine Best tigung der Datei mittels Smartphone m glich kann die Signatur nicht erstellt werden da in diesem Fall die gesetzlich vorgeschriebene Zwei Kanal Authentisierung nicht erreicht werden kann 5 2 4 Leistung 5 2 4 1 Antworizeit Die Mobile Applikation soll beim Start nach maximal zwei Sekunden vollst ndig geladen sein Ausgenommen davon ist das Herunterladen der zu signierenden PDF Datei Ausserdem soll eine Sanduhr oder eine Statusanzeige den Benutzer dar ber informieren dass der Download im Gange ist bzw wie lange der Prozess noch dauern wird Das GUI sollte m glichst ohne Verz gerung aber nach maximal 150 Millisekunden auf eine Ber hrung des Touchscreens reagieren Das GUI der Webapplikation soll ebenfalls ber eine Statusanzeige verf gen um dem User anzuzeigen wie lange der Upload der zu signierenden PDF Datei noch dauern wird 5 2 5 Wartbarkeit 5 2 5 1 Anpassbarkeit Die Applikation muss ohne Probleme erweitert werden k nnen 5 2 5 2 Stabilit t In 95 soll der gesamte Prozess der Signatur ohne Fehler ablaufen Ausgenommen hiervon sind Fehler in der Kommunikation welche nicht unter der Kontrolle der Applikation liegen 5 2 6 Schnittstellen 5 2 6 1 Benutzerschnittstelle e Das GUI der trueSign Mo
122. ugeben 8 3 2 2 trueSign Mobile keyon 1 Document pdf 2 Document pdf 3 Document pdf Hauptansicht Dies ist die Startseite wenn die App ge ffnet wird Von hier aus ist es m glich die Dokumente anzuzeigen welche zuvor auf das Webportal hochgeladen wurden Erste Anmeldung nach Installation Activate certificate E3 Please activate your certificate Bitte aktivieren Um das Zertifikat aktivieren zu k nnen muss sich der Benutzer zuerst auf dem Webportal anmelden und die Aktivierung starten Er erh lt darauf eine Push Meldung Die Einstellungen sind jedoch eingeschr nkt Signierungsprozess document pdf Dokumentansicht Nachdem ein Dokument in der Hauptansicht angew hlt wurde kann es hier mit Scroll und Zoomaktionen betrachtet werden Es steht eine Signierungsschaltfl che zur Verf gung um den Signierungsprozess einzuleiten Activate certificate keyon enter init PIN enter new PIN confirm new PIN Aktivierung des Zertifikats Die erhaltene Push Meldung wechselt zur Ansicht welche den Benutzer zur Eingabe seiner per Post erhaltener Initialisierungs PIN und einer neuen pers nlicher PIN auffordert Sign document Verification 1 Document pdf Please enter your PIN Signieren Ein Popup fordert den Benutzer zur Eingabe der PIN seines Private Keys auf und diesen mit Klick auf Done zu best tigen Dokument ZentralerSignaturDienst docx
123. uments ITSEC 14 umfassen Andere Komponenten gelten als sichere Signaturerstellungseinheit um qualifizierte elektronische Signaturen gem ss ZertES zu erstellen sofern folgende Anforderungen erf llt sind die Signatur wird in einer nach FIPS 140 2 Level 3 oder h her zertifizierten Einheit oder gem ss einem f r die Erstellung von qualifizierten elektronischen Signaturen ausgearbeiteten Schutzprofil Protection Profile erstellt die f r die Speicherung des Signaturschl ssels und die Signaturerstellung verwendeten Komponenten m ssen in einer gesicherten Umgebung verwaltet und betrieben werden und zwar gem ss denselben Verwaltungs und Betriebsgrunds tzen wie sie f r die Infrastruktur der CSP gelten und in der Spezifikation ETSI TS 101 456 6 Kapitel 7 4 CA management and operation beschrieben sind es muss ein gesicherter Kanal zwischen der Zertifikatsinhaberin oder dem Zertifikatsinhaber der Signierapplikation und den Komponenten zur Signaturerstellung und Speicherung des Signaturschl ssels eingesetzt werden wenn die Zertifikatsinhaberin oder der Zertifikatsinnaber und diese Komponenten sich nicht am selben Ort befinden Dieser gesicherte Kanal muss logisch von den anderen Kommunikationskan len getrennt sein sowie die Identifizierung seiner Endpunkte und die Vertraulichkeit und Integrit t der bermittelten Daten gew hrleisten verwendet die Zertifikatsinhaberin oder der Zertifikatsinhaber den Signaturschl ssel aus der Dist
124. urity gt lt binding gt lt basicHttpBinding gt lt bindings gt lt client gt endpoint address http localhost 8080 TrueSignMobile TrueSignMobileSOAP binding basicHttpBinding bindingConfigurationz TrueSignSOAPMobile contract TrueSignReference TrueSignMobile name TrueSignMobileSOAP gt lt client gt Wichtig dabei ist dass die Verbindung zum trueSign Mobile Service Korrekt configuriert wird sowie auch die SSL Einstellungen korrekt sind 12 2 trueSign Mobile Service 12 2 1 Voraussetzungen Der trueSign Mobile Service ben tigt eine Apache Tomcat Installation zudem wird eine komplette trueSign JCE Service Installation vorausgesetzt Da dieser Service bereits von der Firma Keyon AG entwickelt wurde und nicht Teil dieser Arbeit ist wird er hier nicht genauer beschrieben 12 2 1 1 Installation Der trueSign Mobile Service kann auf einfache Weise im Apache Tomcat deployed werden Dazu muss jedlich das trueSignMobile war File oder der bereits entpacke Ordner der Web Applikation in das Webapps Verzeichnis des Tomcat kopiert werden Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 69 von 96 13 Benutzeranleitung 13 1 bersicht ber die Applikation Die Applikation besteht aus zwei Teilen einerseits aus dem trueSign Webportal und andererseits aus der trueSign Mobile App Das Signieren eines PDF Dokumentes erfolgt ber das Webportal Um die Z
125. urity modul IIS Internet Information Services IMEI International Mobile Equipment Identity JAX WS Java API for XML Web Services JCE Java Cryptography Extension PIN Pers nliche Identifikationsnummer RA Registration Authority SDK Software Development Kit SOAP Simple Object Access Protocol SSL Secure Sockets Layer TAN Transaktionsnummer ZertES Bundesgesetz ber Zertifizierungsdienste im Bereich der elektronischen Signatur ECTS European Credit Transfer System IDE Integrated development environment Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 96 von 96 22 Abildungsverzeichnis Abbildung 1 bersicht Arbeitsteilung REENEN 11 Abbildung 2 Use Cases Diagramm nen 17 Abbildung 3 bersicht ber die Applkatlon tnter 21 Abbildung 4 Registation bei C2DM enne entrent snnt sentent etnies nennen 28 Abbildung 5 Nachricht schicken C2DM seen nennen enne inniti inns 29 Abbildung 6 Schnittstellen bersicht tette tenente nennen 37 Abbildung 7 Kommunikation Login 41 Abbildung 8 Kommunikation Signatur sssssssssssseseseseee eene 42 Abbildung 9 Kommunikation Aktivierung Mobile App 43 Abbildung 10 Kommunikation Erneuerung Mobilelt A 43 Abbildung 11 Kommunikation Aktivierumg nnne nnne 44 Abbildung 12 Physische Sicht essssssssssssssssssseseee enne enne snnt tenter snnt intres 46 Abbildung 13 Logische Sicht
126. vider System Data SqlClient provider connection string amp quot Data Source SQLEXPRESS AttachDbFilename DataDirectory TrueSignMobileDb mdf Integrated Security True User Instance True MultipleActiveResultSets True amp quot providerName System Data EntityClient gt lt connectionStrings gt Die verbindung zum trueSign Mobile Service kann mit den folgenden Parametern konfiguriert werden lt services gt lt service name TrueSignMobileWeb gt lt endpoint address binding basicHttpBinding bindingNamespace http www keyon ch TrueSignMobileWeb contract TrueSignMobileWebinterfaces gt lt service gt Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 68 von 96 lt services gt lt bindings gt lt basicHttpBinding gt binding namez TrueSignSOAPMobile closeTimeout 00 01 00 openTimeout 00 01 00 receive Timeout 00 10 00 sendTimeout 00 01 00 allowCookies false bypassProxyOnLocal false hostNameComparisonMode StrongWildcard maxBufferSize 1572864 maxBufferPoolSize 524288 maxReceivedMessageSize 1572864 messageEncoding Text textEncoding utf 8 transferMode Buffered useDefaultWebProxy true gt readerQuotas maxDepth 32 maxStringContentLength 8192 maxArrayLength 16384 maxBytesPerRead 4096 maxNameTableCharCount 16384 gt lt security mode Transport gt transport clientCredentialType Certificate gt lt sec
127. wei Faktor Authentisierung zu erm glichen wird die Mobile App eingesetzt Das Smartphone ersetzt somit gewissermassen das in anderen Signatur Anwendungen bliche Hardware Token Client Anbieter Keyon AG Webportal VW Login Passwort Client Terminal trueSign Signatur Service INTERNET trueSign Mobile Service Smartphone Abbildung 26 bersicht ber die Applikation 13 2 Installation Die trueSign Mobile App kann im App Store oder auf der Homepage des Anbieters bezogen werden und muss anschliessend auf dem Smartphone installiert werden 13 3 Registrierung Nach dem Sie sich Online Registriert haben und der Anbieter des Signatur Dienstes ihre Aufschaltgeb hr erhalten hat Werden Ihnen die weiteren Schritte in einem Dokument welches sie per Post erhalten erl utert Es ist f r zwingend n tig dass Sie bei einer Registration Authority pers nlich Vorsprechen und einen amtlichen Ausweis verlegen Ist diese berpr fung der Identit t abgeschlossen werden Sie in einem weiteren Brief die Anweisungen f r die Initialisierung der trueSign Mobile App sowie ihres Zertifikates erhalten Danach k nnen Sie mit dem trueSign Signatur Service ihre Dokumente signieren Dokument ZentralerSignaturDienst docx Version 2 0 Datum 27 06 2012 Projekt Zentraler Signaturdienst Seite 70 von 96 13 4 Benutzerhandbuch 13 4 1 Initialisierung Damit die Mobile App verwendet werden kann m ssen Sie beim ersten Starten der App

Download Pdf Manuals

image

Related Search

Related Contents

  Approx APPHDD03BK storage enclosure  KYOCERA TASKalfa 5551ci  Modelling Martial Arts Techniques  Approx APPHS02V2 headset  CTEK XS 800  Téléchargez le manuel d`utilisation  Tecumseh AKA9446EXDXC Performance Data Sheet  Autel TS501 User Manual  取扱説明書 - マックス  

Copyright © All rights reserved.
Failed to retrieve file