Material zum Praktikumsversuch

Größe: px
Ab Seite anzeigen:

Download "Material zum Praktikumsversuch"

Transkript

1 Material zum Praktikumsversuch Stand: März 2005, zusammengestellt von: Michael Psarros (Lehrstuhl NDS) Version 1.2 Grundpraktikum zur IT-Sicherheit XML Verschlüsselung und Signatur Lehrstuhl für Netz- und Datensicherheit ruhr-universität bochum Bitte beachten Sie, dass dieser im Raum IC4/58 stattfindet. Praktikumsversuch XML Sicherheit Lehrstuhl Netz- und Datensicherheit 1/13

2 Was ist XML? Um die Frage zu beantworten schauen wir am besten ein Beispiel an: <?xml version="1.0" encoding="iso "?> <!DOCTYPE CONTACTLIST SYSTEM "contacts.dtd"> <CONTACTLIST> <CONTACT> <NAME>Michael Psarros</NAME> <ADDRESS>Gebäude IC 4 / 152</ADDRESS> <PHONE type="office"> </PHONE> <PHONE type="fax"> </PHONE> </CONTACT> </CONTACTLIST> Die Abbildung zeigt ein XML-Dokument, das die Kontaktinformationen von einer Person enthält. Folgende Dinge fallen an diesem Beispiel auf: Bei den ersten beiden Zeilen handelt es sich um eine Versionsangabe, die Angabe eines Zeichensatzes sowie die Definition eines Dokumenttyps. Darum kümmern wir uns später. Die Informationen in einem XML-Dokument werden durch einleitende und abschließende Textelemente eingegrenzt. So steht im Beispiel der Name der jeweiligen Person zwischen <NAME> und </NAME>. Diese Textelemente heißen Tags. Ein einleitendes Tag muss immer auch abgeschlossen werden. Das abschließende Tag erkennt man am Schrägstrich (/), der als erstes Zeichen auftaucht. Tags sind immer in eckige Klammern (<...>) eingeschlossen. Ein Tag kann mit Attributen versehen werden. Im Beispiel besitzt das Tag PHONE ein Attribut. Das Attribut besitzt den Namen type und kann Werte wie office oder fax annehmen. Ausnahmslos alle XML-Dokumente sind hierarchisch, oder baumartig, aufgebaut. Im Beispiel macht sich das dadurch bemerkbar, dass ein äußerstes Tag CONTACTLIST existiert, das alle inneren Tags umschließt. Innerhalb von CONTACTLIST dürfen im Beispiel beliebig viele CONTACT Tags auftauchen. Die CONTACT Tags wiederum enthalten die eigentlichen Kontaktangaben. Es handelt sich dabei um den Namen, die Adresse, Telefonnummern mit unterschiedlichem Typ sowie die -Adresse einer Person. Zur Terminologie: Elemente sind die grundlegenden Bausteine von XML. Beispiele für XML-Elemente sind CONTACTLIST, CONTACT oder MAIL. Ein Element kann einfachen Text oder andere XML-Elemente enthalten. Ein Element kann auch leer sein. Tags werden zur Kennzeichnung sowie zur Abgrenzung von Elementen in einem XML-Dokument benutzt. Ein Start-Tag wie <ELEMENTNAME> markiert den Beginn eines Elements. Das zugehörige End-Tag </ELEMENTNAME> kennzeichnet das Ende eines Elements. Attribute stellen Zusatzinformationen zu einem Element zur Verfügung. Attribute erscheinen immer im Start- Tag eines Elements. Sie haben einen Namen und einen Wert. Im Beispiel besitzt das Element PHONE ein Attribut mit dem Namen type, das unterschiedliche Werte annehmen kann. Was ist XML? Jetzt aber wirklich... XML ist eine Möglichkeit, Daten zu strukturieren. Wie im Beispiel gezeigt, lassen sich mittels XML Daten strukturiert darstellen. Jede Information in einem Dokument ist mit Hilfe der umschließenden Tags eindeutig gekennzeichnet und zwar in einer Form die von Computer bearbeitet werden kann. Praktikumsversuch XML Sicherheit Lehrstuhl Netz- und Datensicherheit 2/13

3 XML ist ein Standard. XML wurde und wird vom World Wide Web Consortium (kurz: W3C) entwickelt. Das W3C ist die Organisation, die sich um die Weiterentwicklung des WWW sowie der zugehörigen Standards kümmert. Dazu gehören so wichtige Standards wie HTML, HTTP, CSS und viele andere. Der Einsatz von XML sowie den begleitenden Standards ist frei von jeglichen Lizenzgebühren möglich. Außerdem: Aufgrund der Tatsache, dass es sich bei XML um einen offiziellen und akzeptierten Standard handelt, werden zahlreiche begleitende Tools oder Werkzeuge angeboten. Diese Tools erleichtern das Erstellen und die Verarbeitung von XML-Dokumenten. Viele dieser Tools sind kostenlos erhältlich. XML ist textbasiert. Ein XML-Dokument ist nichts anderes als ein einfaches Textdokument, das auf eine definierte Art und Weise aufgebaut ist. Dadurch können XML-Dokumente problemlos und unabhängig vom benutzten Computer oder Betriebssystem gelesen und mit einem beliebigen Texteditor bearbeitet werden. Mit nicht textbasierten Datenformaten (zum Beispiel Word- oder Excel-Dateien) ist dies nicht uneingeschränkt möglich. XML ist nicht nur XML. XML bildet die Basis einer ganzen Reihe von Techniken, Standards und Konventionen. XML definiert, wie strukturierte Daten in einem Textdokument dargestellt werden. Neben XML gibt es zum Beispiel den wichtigen Standard XSL (Extensible Stylesheet Language). Mit Hilfe von XSL kann festgelegt werden, wie ein XML- Dokument für unterschiedliche Ausgabemedien dargestellt werden soll. Eine so genannte Document Type Definition oder kurz DTD legt fest, wie XML-Dokumente eines bestimmten Typs auszusehen haben. Verschiedene andere Standards beschreiben beispielsweise, wie von einem XML-Dokument auf ein anderes (oder Teile davon) verwiesen werden kann oder wie mathematische Formeln mit Hilfe von XML spezifiziert werden können. XML ist erweiterbar. XML steht ausgeschrieben für Extensible Markup Language. "Extensible" ist Englisch für "erweiterbar", die Erweiterbarkeit ist also schon im Namen der Technologie verankert. In XML sind keine Tags vordefiniert. Der Autor von XML- Dokumenten kann und muss alle nötigen Tags selber definieren. Das ist ein Vorteil, denn auf diese Weise können für beliebige Informationen die passenden Tags oder Attribute sowie eine geeignete Dokumentstruktur festgelegt werden. Was sind DTD und XML-Schema? XML-Dokumente sind erweiterbar. Es lassen sich beliebig komplexe Strukturen mit beliebigen Tag- und Attributnamen erstellen. Eine DTD (Document Type Definition) hilft dabei, die Struktur und den genauen Aufbau von XML-Dokumenten festzulegen. Mit Hilfe einer DTD wird die Struktur von XML-Dokumenten verbindlich und zentral festgelegt. Alle XML-Dokumente desselben Typs können anhand derselben DTD bezüglich ihrer Struktur geprüft werden. Das ist hilfreich, weil viele XML-Editoren und andere XML-verarbeitende Tools eine solche Prüfung nach Wunsch automatisch vornehmen können. Auf diese Weise werden Sie als Autor oder Benutzer von XML-basierten Informationen sofort auf allfällige Strukturverletzungen aufmerksam gemacht. Die automatisierte Prüfung ist insbesondere dann nützlich, wenn Informationen von anderen Personen empfangen werden und vor der Weiterverarbeitung im Hinblick auf die strukturelle Gültigkeit geprüft werden sollen. Außerdem sind DTDs ein hilfreiches Werkzeug, wenn sich mehrere Personen oder Organisationen über ein gemeinsam unterstütztes Format zum Datenaustausch einigen wollen. In solchen Fällen legt die DTD das gemeinsame Format eindeutig und formalisiert fest. Nach Einführung der DTDs wurde festgestellt, dass einige Limitierungen da waren. Speziell ist eine DTD in SGML und nicht XML beschrieben und es fehlte ihnen die Fähigkeit, Elemente hinsichtlich Datentypen zu beschreiben, Validierungsbereiche zu definieren oder Praktikumsversuch XML Sicherheit Lehrstuhl Netz- und Datensicherheit 3/13

4 Elemente mit Namensräumen zu verkapseln. Um diese Probleme zu lösen, wurde durch die XML Schema Definition der Begriff der XML-Schemata eingeführt. DTD Hier ist die DTD des einführenden XML-Beispiels mit den Kontaktinformationen: <!ELEMENT CONTACTLIST (CONTACT)*> <!ELEMENT CONTACT (NAME, ADDRESS?, PHONE*, MAIL)> <!ELEMENT NAME (#PCDATA)> <!ELEMENT ADDRESS (#PCDATA)> <!ELEMENT MAIL (#PCDATA)> <!ELEMENT PHONE (#PCDATA)> <!ATTLIST PHONE type (mobile private office fax) #REQUIRED> Einige Erklärungen zur DTD: Die erste Zeile definiert das Element CONTACTLIST als eine Folge von beliebig vielen CONTACT-Elementen. Das "beliebig viele" wird durch den Stern (*) festgelegt und erlaubt auch eine leere Liste mit keinem einzigen CONTACT-Element. Das CONTACT-Element in der zweiten Zeile ist als eine Folge von NAME-, ADDRESS-, PHONE- und MAIL-Elementen festgelegt. Die Reihenfolge der Elemente ist verbindlich und muss in einem gültigen XML-Dokument genau eingehalten sein. Das Fragezeichen im Anschluss an das ADDRESS-Element besagt, dass dieses Element optional ist und folglich wahlweise auftauchen oder weggelassen werden kann. Der Stern hinter dem PHONE-Element ermöglicht wie oben zwischen Null und beliebig vielen Wiederholungen des Elements. Die nachfolgenden Zeilen definieren die Elemente NAME, ADDRESS, PHONE und MAIL als einfache Textelemente. Die Bezeichnung #PCDATA bedeutet, dass diese Elemente bloss Text und keine weiteren Elemente enthalten dürfen. PCDATA steht für "Parsed Character Data". Die letzten drei Zeilen definieren das Attribut type, das zum Element PHONE gehört. Gemäss der Definition kann das Attribut type einen der Werte mobile, private, office oder fax annehmen. Ausserdem wird durch den Zusatz #REQUIRED festgelegt, dass das Attribut zwingend anzugeben ist, falls das Element PHONE benutzt wird. Damit unser XML-Dokument "weiß", welche DTD dafür gültig ist, wird wie im Beispiel auf die passende DTD verwiesen mit einer Zeile wie: <!DOCTYPE CONTACTLIST SYSTEM "contacts.dtd">. Die Zeile besagt, dass das XML-Dokument vom Typ CONTACTLIST ist und sich die zugehörige DTD in der Datei "contacts.dtd" befindet. XML-Schema Als Schema würde die DTD des Beispieles folgendermaßen aussehen: <?xml version="1.0" encoding="iso "?> <xs:schema xmlns:xs="http://www.w3.org/2001/xmlschema"> <xs:element name="contactlist"> <xs:complextype> <xs:sequence minoccurs="0" maxoccurs="unbounded"> <xs:element name="contact"> <xs:complextype> <xs:sequence> <xs:element name="name" type="xs:string"/> <xs:element name="address" type="xs:string" minoccurs="0" maxoccurs="1"/> <xs:element name="phone" type="phonecomp" Praktikumsversuch XML Sicherheit Lehrstuhl Netz- und Datensicherheit 4/13

5 minoccurs="0" maxoccurs="unbounded"/> <xs:element name="mail" type="xs:string"/> </xs:sequence> </xs:complextype> </xs:element> </xs:sequence> </xs:complextype> </xs:element> <xs:complextype name="phonecomp" mixed="true"> <xs:attribute name="type" use="required"> <xs:simpletype> <xs:restriction base="xs:string"> <xs:enumeration value="mobile"/> <xs:enumeration value="private"/> <xs:enumeration value="office"/> <xs:enumeration value="fax"/> </xs:restriction> </xs:simpletype> </xs:attribute> </xs:complextype> </xs:schema> Der Hauptunterschied zwischen eine DTD und ein XML-Schema ist sofort sichtbar: während eine DTD in SGML geschrieben ist, ist ein Schema selbst ein XML-Dokument. Speziell die Tags eines XML-Schema folgen die Regeln eines anderen Schemas, was unter definiert ist. Außerdem besitzt das Schema mehr Datentypen und mehr Möglichkeiten für die genauere Definition eines Elementes. Wohlgeformtheit und Gültigkeit eines XML-Dokumentes Der Begriff "Wohlgeformtheit", der Ihnen im Zusammenhang mit XML immer wieder begegnen wird, bedeutet, dass eine Datei die Regeln von XML korrekt einhält. D.h., die eckigen Klammern werden richtig benutzt und die Elemente sind korrekt geschachtelt. Korrekte Schachtelung bedeutet, dass, wenn das Start-Tag innerhalb eines Elements ist, auch das End-Tag innerhalb dieses Elementes sein muss. Ein wohlgeformtes XML-Dokument wird als gültig oder valid bezeichnet, wenn es den Regeln einer DTD oder eines Schemas folgt. Ein Dokument kann also wohlgeformt und nicht gültig sein, aber niemals gültig und nicht wohlgeformt. Außerdem ergibt sich, dass ein Dokument immer nur bezüglich einer DTD/Schema, und nicht von sich aus gültig sein kann. Sicherheitsmechanismen in XML Um das unsichere Internet für kritische Business-Transaktionen nutzen zu können, bedarf es hoch entwickelter Sicherheitstechnologien: Es müssen die Eindeutigkeit der Unterzeichneridentität, die Einmaligkeit der zum Dokument gehörigen Unterschrift, die Integrität des Dokuments und schließlich die Unleugbarkeit der Signierung gewährleistet sein. Um diese Anforderungen gerecht zu werden, hat das W3C Standards zur digitalen Signatur und Verschlüsselung verabschiedet. Sie definieren keine neuen Verschlüsselungsmechanismen, sondern bilden alle gängigen Verschlüsselungstechniken in die XML-Syntax ab. Einer der zentralen Vorteile dieser Technologien ist die Möglichkeit, nur bestimmte Teile eines Dokuments zu signieren bzw. verschlüsseln. Das ist nützlich wenn mehrere Personen für verschiedene Teile eines Dokumentes verantwortlich sind (z.bsp. bei einen Bestellablauf). Praktikumsversuch XML Sicherheit Lehrstuhl Netz- und Datensicherheit 5/13

6 XML-Signatur Damit Sicherheit und Integrität der ausgetauschten XML-Daten gewährleistet sind, müssen diese digital signiert und verschlüsselt werden. Die XML-Signatur selbst ist entweder im Dokument enthalten (der XML-Signaturteil ist Teil des XML-Sourcecodes), umfasst das Dokument (das Sourcedokument ist Teil der Signatur) oder liegt extern in einem zusätzlichen XML-Dokument vor. Diese drei Varianten heißen enveloped-, enveloping- und detachedsignature. XML-Verschlüsselung Die gleichen Vorteile der XML-Signatur bieten auch die XML-Verschlüsselung. Da kann man auch nur einzelne Teilbäume verschlüsseln. Der verschlüsselte Teil des Dokumentes wird immer in die Position der ursprünglichen Daten gespeichert. Deswegen gibt es für die Verschlüsselung nur die enveloped Variante. Praktikumsversuch XML Sicherheit Lehrstuhl Netz- und Datensicherheit 6/13

7 Versuch Versuchsaufbau Nach den einleitenden Informationen erhalten Sie nun eine konkrete Versuchsbeschreibung. Auf den Rechnern ist Windows XP mit JDK Version 1.5 und Eclipse installiert. Sie bearbeiten den Versuch meistens mit Kommandozeilen-Befehlen. Sie können einen Editor Ihrer Wahl benutzen: falls Sie keine Präferenz bzw. Kenntnisse haben, wird notepad vorgeschlagen. Alle Dateien befinden sich in Verzeichnis c:\xmlsecurity Die Beschreibungen der einzelnen Schritte enthalten die Vorgabe in fetter Schrift und die Erläuterungen dazu jeweils in normaler Schrift. Falls Sie etwas nicht verstehen, fragen Sie bitte zu Beginn den Mitarbeiter, der das Praktikum betreut. Ziel ist es, dass Sie die Vorgabe jedes Schrittes erfüllen und das Ergebnis für sich dokumentieren. Schreiben Sie am besten bei jedem Schritt das Zwischenergebnis auf, damit der Bericht vollständig den Versuch abdeckt. Unvollständige Berichte werden vom Versuchsleiter nicht akzeptiert, was dazu führen kann, dass Sie die Schritte dann noch mal durchführen müssen. Schritt 1: Erstellen einer einfachen XML Datei und Validierung mittels DTD und Schema Erstellen Sie mittels eines ASCII-Editors eine XML-Datei mit zwei Kontakten. Nennen Sie die Datei daten.xml. Überprüfen Sie ob das Dokument gültig ist: java sax.counter -v -s -f daten.xml Passen Sie das Dokument soweit an, dass es das Schema, statt die DTD benutzt. Überprüfen Sie ob das Dokument auch mit dem Schema gültig ist: java sax.counter -v -s -f daten.xml In beiden Fällen machen Sie kleine Änderungen in Ihre XML-Datei, wie reagiert sax.counter in diesem Fall? Schritt 2: Verschlüsseln der XML Datei Verschlüsseln Sie mittels des Programmes jencrypt die Datei: java jencrypt Versuchen Sie zu verstehen wie eine XML-Verschlüsselung abläuft. Welche Daten werden benötigt und wie ist der Ablauf. Schritt 3: Entschlüsseln der XML Datei Kopieren Sie das Programm jencrypt in eine Datei jdecrypt. Schreiben Sie das Programm soweit um, dass es die verschlüsselte Datei diesmal entschlüsselt. Sie können die neue Datei mittels javac jdecrypt kompilieren oder auch die Entwicklungsumgebung Eclipse benutzen. Versuchen Sie zu verstehen wie eine XML-Entschlüsselung abläuft. Praktikumsversuch XML Sicherheit Lehrstuhl Netz- und Datensicherheit 7/13

8 Schritt 4: Public-Keys unter Java Kryptographische Schlüssel werden in Java in so genannte Keystore-Dateien gespeichert. Die Datei keystore.jks ist so eine Datei. Mittels des Programms keytool (was bei einer Java-Installation dabei ist) können Keystores erzeugt werden bzw. die Informationen angezeigt werden. Was für Schlüssel liegen in dieser Datei? Schreiben Sie alle Informationen auf. Das Passwort der Datei ist xmlsecurity. Schritt 5: Signieren der XML Datei Signieren Sie mittels des Programmes jsign die Datei: java jsign Versuchen Sie zu verstehen wie eine XML-Signierung abläuft. Welche Daten werden benötigt und wie ist der Ablauf. Schritt 6: Überprüfung der Signatur Kopieren Sie das Programm jsign in eine Datei jsignverifier. Schreiben Sie das Programm soweit um, dass es die signierte Datei diesmal überprüft. Sie können die neue Datei mittels javac jsignverifier kompilieren oder auch die Entwicklungsumgebung Eclipse benutzen. Versuchen Sie zu verstehen wie eine XML-Signaturverifikation abläuft. Was sind die Gefahren bei einer Signatur-Überprüfung? Schritt 7 (optional): Signieren mit XPath Passen Sie das Programm jsign so an, dass es nur die PHONE-Elemente statt das ganze Dokument signiert. Muss auch jsignverifier angepasst werden? Wieso und was für Anpassungen sind nötig? Ende des Versuchs Praktikumsversuch XML Sicherheit Lehrstuhl Netz- und Datensicherheit 8/13

9 Voraussetzungen für die Teilnahme an diesem Versuch Grundkenntnisse zu Java Grundkenntnisse zum Arbeiten mit Windows Sie müssen mit Kommandozeilen umgehen können Dieses Dokument muss vorher gelesen werden; siehe Kontrollfragen zum Verständnis des Dokumentes Kontrollfragen Sie sollten folgende Fragen beantworten können (bevor der Versuch beginnt): Was ist XML? Was sind die Stärken von XML? Was sind die Schwächen von XML? Was ist eine DTD? Was ist ein XML-Schema? Was ist der Unterschied zwischen eine DTD und ein Schema? Was bedeutet wohlgeformt? Was bedeutet gültig? Istein wohlgeformtes Dokument auch gültig? Ist ein gültiges Dokument auch wohlgeformt? Was ist der Unterschied zwischen enveloped, enveloping und dettached Signatur? Was sind die erforderlichen Schritte um ein XML-Dokument zu signieren? Was sind die erforderlichen Schritte um eine XML-Signatur zu überprüfen? Was sind die erforderlichen Schritte um ein XML-Dokument zu verschlüsseln? Was sind die erforderlichen Schritte um ein XML-Dokument zu entschlüsseln? Schriftliche Versuchsauswertung Jedes Team fertigt eine schriftliche Auswertung an. Diese sollte insbesondere die bei jedem Schritt verwendeten Befehle enthalten (also unbedingt dokumentieren, was Sie bei der Versuchsdurchführung getan haben) und die Ausgabe der Befehle erläutern. Bitte geben Sie auch Feedback, ob Sie den Praktikumsversuch als interessant empfunden haben und ob dieses Dokument für Sie bei der Versuchsdurchführung hilfreich war. Verbesserungsvorschläge sind willkommen! Die Versuchsauswertung ist schriftlich beim nächsten Termin mitzubringen Praktikumsversuch XML Sicherheit Lehrstuhl Netz- und Datensicherheit 9/13

10 Weiterführende Informationen - Links Einführung in XML XML in 10 points: XML Tutorial vom W3C: Standards XML: XML-Schema: XML-Signature: XML-Encryption: XML Path Language: Tools: Java: Eclipse: XML Libraries von Apache: The Legion of the Bouncy Castle: Praktikumsversuch XML Sicherheit Lehrstuhl Netz- und Datensicherheit 10/13

11 Anhang jencrypt.java /** jencrypt: Simple programm to encrypt a XML file */ import java.io.file; import java.io.fileoutputstream; import java.security.key; import javax.crypto.keygenerator; import org.apache.xml.security.encryption.xmlcipher; import org.apache.xml.security.encryption.encrypteddata; import org.apache.xml.security.encryption.encryptedkey; import org.apache.xml.security.keys.keyinfo; import org.apache.xml.security.utils.xmlutils; import org.w3c.dom.document; import org.w3c.dom.element; import javax.xml.parsers.documentbuilderfactory; import javax.xml.parsers.documentbuilder; public class jencrypt { public static void main(string unused[]) throws Exception { // Initialisieren der XML-Funktionen org.apache.xml.security.init.init(); // Oeffne unser XML-Dokument File XMLFile = new File("daten.xml"); DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance(); dbf.setnamespaceaware(true); DocumentBuilder db = dbf.newdocumentbuilder(); Document doc = db.parse(xmlfile); // Kreiere einen symmetrischen Schluessel und speichere in // verschluesselt in die Datei kekfile KeyGenerator keygenerator = KeyGenerator.getInstance("AES"); keygenerator.init(128); Key symmetrickey = keygenerator.generatekey(); keygenerator = KeyGenerator.getInstance("DESede"); Key kek = keygenerator.generatekey(); byte[] keybytes = kek.getencoded(); File kekfile = new File("kekfile"); FileOutputStream fkek = new FileOutputStream(kekFile); fkek.write(keybytes); fkek.close(); System.out.println("Key encryption key ist in Datei " + kekfile.tourl().tostring() + " gespeichert"); // Verschluesseln der Datei XMLCipher keycipher = XMLCipher.getInstance(XMLCipher.TRIPLEDES_KeyWrap); keycipher.init(xmlcipher.wrap_mode, kek); EncryptedKey encryptedkey = keycipher.encryptkey(doc, symmetrickey); Element rootelement = doc.getdocumentelement(); XMLCipher xmlcipher = XMLCipher.getInstance(XMLCipher.AES_128); Praktikumsversuch XML Sicherheit Lehrstuhl Netz- und Datensicherheit 11/13

12 } } xmlcipher.init(xmlcipher.encrypt_mode, symmetrickey); EncryptedData encrypteddata = xmlcipher.getencrypteddata(); // Fuege Schluesselinformation in der Datei KeyInfo keyinfo = new KeyInfo(doc); keyinfo.add(encryptedkey); encrypteddata.setkeyinfo(keyinfo); xmlcipher.dofinal(doc, rootelement, true); // Und schreibe die Ausgabedatei File encryptedfile = new File("VerschluesselteDaten.xml"); FileOutputStream f = new FileOutputStream(encryptedFile); XMLUtils.outputDOMc14nWithComments(doc, f); f.close(); System.out.println("Verschluesseln erfolgreich, neue Datei: " + encryptedfile); jsign.java /** jsign: Simple programm to sign a XML file */ import java.io.file; import java.io.fileinputstream; import java.io.fileoutputstream; import java.security.keystore; import java.security.privatekey; import java.security.cert.x509certificate; import org.apache.xml.security.signature.xmlsignature; import org.apache.xml.security.transforms.transforms; import org.apache.xml.security.utils.constants; import org.apache.xml.security.utils.xmlutils; import org.w3c.dom.document; import javax.xml.parsers.documentbuilderfactory; import javax.xml.parsers.documentbuilder; public class jsign { public static void main(string unused[]) throws Exception { // Initialisieren der XML-Funktionen org.apache.xml.security.init.init(); // Parameter fuer die Schluesseldatei String keystoretype = "JKS"; String keystorefile = "keystore.jks"; String keystorepass = "xmlsecurity"; String privatekeyalias = "test"; String privatekeypass = "xmlsecurity"; String certificatealias = "test"; KeyStore ks = KeyStore.getInstance(keystoreType); FileInputStream fis = new FileInputStream(keystoreFile); ks.load(fis, keystorepass.tochararray()); PrivateKey privatekey = (PrivateKey) ks.getkey(privatekeyalias, privatekeypass.tochararray()); Praktikumsversuch XML Sicherheit Lehrstuhl Netz- und Datensicherheit 12/13

13 } } // Unsere Ein- und Ausgabe- Dateien File XMLFile = new File("daten.xml"); // Oeffne unser XML-Dokument DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance(); dbf.setnamespaceaware(true); DocumentBuilder db = dbf.newdocumentbuilder(); Document doc = db.parse(xmlfile); // Kreiere Signaturbaum im Speicher String BaseURI = XMLFile.toURL().toString(); XMLSignature sig = new XMLSignature(doc, BaseURI, XMLSignature.ALGO_ID_SIGNATURE_DSA); // Enveloped Signatur: Fuege das Signatur-Element bevor der Signatur doc.getdocumentelement().appendchild(sig.getelement()); // Sorge das die Applikation offline ablaeuft sig.getsignedinfo().addresourceresolver(new MyOfflineResolver()); // Kreiere die Transformation fuer das signieren Transforms transforms = new Transforms(doc); // Zuerst muss die Signatur rausgenommen werden: transforms.addtransform(transforms.transform_enveloped_signature); // Dann muss das Dokument auch kanonisiert werden. transforms.addtransform(transforms.transform_c14n_with_comments); // Fuege die Transformationen zur Signatur sig.adddocument("", transforms, Constants.ALGO_ID_DIGEST_SHA1); // Schreibe Informationen ueber den benutzten Schluessel X509Certificate cert = (X509Certificate) ks.getcertificate(certificatealias); sig.addkeyinfo(cert); sig.addkeyinfo(cert.getpublickey()); // Signiere das Dokument sig.sign(privatekey); // Und schreibe die Ausgabedatei File signaturefile = new File("signierteDaten.xml"); FileOutputStream f = new FileOutputStream(signatureFile); XMLUtils.outputDOMc14nWithComments(doc, f); f.close(); System.out.println("Signieren erfolgreich, signierte Datei: " + signaturefile); Praktikumsversuch XML Sicherheit Lehrstuhl Netz- und Datensicherheit 13/13

XML Schema vs. Relax NG

XML Schema vs. Relax NG XML Schema vs. Relax NG p. 1/2 XML Schema vs. Relax NG Semistrukturierten Daten 1 Präsentation der Gruppe 2 XML Schema vs. Relax NG p. 2/2 Wozu XML Schema? W3C Empfehlung zur Definition von XML-Dokumentstrukturen

Mehr

1 Software Engineering 1

1 Software Engineering 1 1 Software Engineering 1 XML 1.1 XML Extensible Markup Language Auszeichnungssprache zur Darstellung hierarchisch strukturierter Daten in Form von Textdaten Wird für den Datenaustausch/Speicherung benutzt

Mehr

Einführung in Datenbanken - XML - Philipp Cimiano AG Semantische Datenbanken und Wissensverarbeitung

Einführung in Datenbanken - XML - Philipp Cimiano AG Semantische Datenbanken und Wissensverarbeitung Einführung in Datenbanken - XML - Philipp Cimiano AG Semantische Datenbanken und Wissensverarbeitung 1 XML XML steht für die extensible Markup Language (XML) XML ist eine sogenannte Markup-Sprache (wie

Mehr

Semistrukturierte Daten. 2. Datenmodellierung mit XML und XML-Schema XML. Lernziele:

Semistrukturierte Daten. 2. Datenmodellierung mit XML und XML-Schema XML. Lernziele: 2. Datenmodellierung mit XML und XML-Schema Was ist XML? 2. Datenmodellierung mit XML und XML-Schema 2. Datenmodellierung mit XML und XML-Schema Was ist XML? Semistrukturierte Daten Lernziele: Eigenschaften

Mehr

Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN 181.135 21. 01. 2011 Kennnr. Matrikelnr. Familienname Vorname

Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN 181.135 21. 01. 2011 Kennnr. Matrikelnr. Familienname Vorname Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN 181.135 21. 01. 2011 Kennnr. Matrikelnr. Familienname Vorname Arbeitszeit: 120 Minuten. Aufgaben sind auf den Angabeblättern zu lösen; Zusatzblätter werden

Mehr

Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN 184.705 25. 10. 2013 Kennnr. Matrikelnr. Familienname Vorname

Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN 184.705 25. 10. 2013 Kennnr. Matrikelnr. Familienname Vorname Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN 184.705 25. 10. 2013 Kennnr. Matrikelnr. Familienname Vorname Arbeitszeit: 100 Minuten. Aufgaben sind auf den Angabeblättern zu lösen; Zusatzblätter werden

Mehr

XML Tutorium mit Oxygen. Oxygen Version 9.3!!

XML Tutorium mit Oxygen. Oxygen Version 9.3!! XML Tutorium mit Oxygen (Version 1.9 vom 4.6.2013) Oxygen Version 9.3!! In den folgenden Lektionen sollen die vermittelten Konzepte zu XML anhand von konkreten Beispielen geübt und vertieft werden. Das

Mehr

Stefan Brass Martin-Luther-Universität Halle-Wittenberg

Stefan Brass Martin-Luther-Universität Halle-Wittenberg XML und Datenbanken 1 XML und Datenbanken Stefan Brass Martin-Luther-Universität Halle-Wittenberg (Professor für Datenbanken, Certified Oracle8 DBA, IBM Certified Advanced DBA: DB2 V8.1) Forschungsgebiete:

Mehr

Rechnungserstellung und Datenformate

Rechnungserstellung und Datenformate Rechnungserstellung und Datenformate Betriebliche Kommunikation Post Telefon PC Vertreter Fax 2 Elektronische Geschäftsabwicklung H2H E-mail Web-Browser H2A B2C A2A EDI & XML B2B 3 Mensch - Maschine? B2C:

Mehr

Michael Fellmann, M.A. Grundlagen Standards und Vokabulare XML-basiertes Prozessmanagement. Universität Osnabrück

<BPM-XML-Seminar/> Michael Fellmann, M.A. Grundlagen Standards und Vokabulare XML-basiertes Prozessmanagement. Universität Osnabrück Grundlagen Standards und Vokabulare XML-basiertes Prozessmanagement Michael Fellmann, M.A. Universität Osnabrück Fachgebiet Informationsmanagement und Wirtschaftsinformatik michael.fellmann@uos.de

Mehr

XML. Basis Syntax. Basis Syntax. XML (extensible Markup Language)

XML. Basis Syntax. Basis Syntax. XML (extensible Markup Language) XML XML (extensible Markup Language) Beschreibt den Inhalt und nicht die Präsentation. Unterschiede zu HTML: Neue Tags können definiert werden. Strukturen können eine willkürliche Tiefe haben. Ein XML

Mehr

6. Datenbanken und XML

6. Datenbanken und XML 6. Datenbanken und XML 6.0 Einführung XML (extended Markup Language) definiert ein Format für Textdateien, das sich sehr gut als Austauschformat zwischen verschiedenen Softwaresystemen (z.b. zwischen Datenbanken

Mehr

XML-Datei für Web Service auslesen und schreiben

XML-Datei für Web Service auslesen und schreiben XML-Datei für Web Service auslesen und schreiben Einleitung Anliegen dieses Tutorials ist das Einbinden einer XML-Datei als Datenquelle für den AutoKauf Web Service. Wenn der Web Service z. B. auf die

Mehr

XML-basierte Standards für den Datenaustausch in der Logistikkette

XML-basierte Standards für den Datenaustausch in der Logistikkette XML und Electronic Data Interchange (EDI) EDIFACT-XML ein kleines Beispiel - Strukturierung von Daten Datensatz 347,M50,L Datensatz mit Pseudocode-ML strukturiert 347

Mehr

XML Signature (DSig) Einführung, Anwendungsbeispiele und Ausblick. heiko@vegan-welt.de GPN4: 22.05.2005

XML Signature (DSig) Einführung, Anwendungsbeispiele und Ausblick. heiko@vegan-welt.de GPN4: 22.05.2005 XML Signature (DSig) Einführung, Anwendungsbeispiele und Ausblick GPN4: 22.05.2005 Übersicht Wofür Signaturen? Wieso ein weiteres Signaturverfahren? Grundlagen Signatur-Typen Juristische Aspekte von Signaturen

Mehr

Reimo Fachhändlerbereich Import Datei

Reimo Fachhändlerbereich Import Datei Allgemein Der Reimo Fachhändlerbereich im Internet bietet die Funktionalität, eine Datei mit Bestelldaten zu importieren. Dies erspart Ihnen die Arbeit, eine Bestellung, die Sie bereits in Ihrer EDV erfasst

Mehr

Extensible Markup Language (XML)

Extensible Markup Language (XML) Extensible Markup Language (XML) Erik Wilde TIK ETH Zürich Sommersemester 2001 Übersicht Motivation für die Einführung von XML XML Positionierung ein Profile von SGML XML Basics Szenarien Syntax DTDs XML

Mehr

Vorlesung - Web Services

Vorlesung - Web Services Vorlesung - IVS Arbeitsgruppe Softwaretechnik Abschnitt 3.1.3 Grundlegende Web Service Technologien Seite 1 - Übersicht UDDI WSDL Requester SOAP over HTTP Provider Seite 2 - Übersicht A web service is

Mehr

Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN 184.705 2. 12. 2013 Kennnr. Matrikelnr. Familienname Vorname

Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN 184.705 2. 12. 2013 Kennnr. Matrikelnr. Familienname Vorname Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN 184.705 2. 12. 2013 Kennnr. Matrikelnr. Familienname Vorname Arbeitszeit: 100 Minuten. Aufgaben sind auf den Angabeblättern zu lösen; Zusatzblätter werden nicht

Mehr

XML-Dateien und Powershell

XML-Dateien und Powershell [Geben Sie Text ein] XML-Dateien und Powershell XML-Dateien und Powershell Inhalt Vorbereitung... 2 Excel Sheet für den Input... 3 Lösung 1... 3 Lösung 2... 4 Lösung 3... 5 Excel und die Entwicklertools...

Mehr

Sicherheitsaspekte von Web Services. Hauptseminar Rechnernetze

Sicherheitsaspekte von Web Services. Hauptseminar Rechnernetze Sicherheitsaspekte von Web Services Hauptseminar Rechnernetze Stefan Hennig sh790883@inf.tu-dresden.de 21. Januar 2005 Gliederung Einführung Überblick Sicherheit auf Netzwerk- und Transportebene XML-Sicherheit

Mehr

DTD: Syntax-Zusammenfassung

DTD: Syntax-Zusammenfassung DTD: Syntax-Zusammenfassung Dokumenttyp-Deklarationen Interne Teilmenge ]> Externe

Mehr

Grundpraktikum Netz- und Datensicherheit. Thema: Sicheres CGI-Scripting

Grundpraktikum Netz- und Datensicherheit. Thema: Sicheres CGI-Scripting Grundpraktikum Netz- und Datensicherheit Thema: Sicheres CGI-Scripting Lehrstuhl für Netz- und Datensicherheit Ruhr-Universität Bochum Versuchdurchführung: Raum ID 2/168 Betreuung: Florian Feldmann Zusammengestellt

Mehr

Allgemeine Erläuterungen zu

Allgemeine Erläuterungen zu en zu persönliche Zertifikate Wurzelzertifikate Zertifikatssperrliste/Widerrufsliste (CRL) Public Key Infrastructure (PKI) Signierung und Verschlüsselung mit S/MIME 1. zum Thema Zertifikate Zertifikate

Mehr

Java API for XML Binding

Java API for XML Binding Java API for XML Binding Eine Einführung Tim Speier Fachbereich MNI Fachhochschule Gießen-Friedberg 24. Juni 2010 1 / 27 XM und Java Teil 1: Aufgabenstellung Aufgabenstellung: In einem XML-Dokument werden

Mehr

Java Kurs für Anfänger LMU SS09 Einheit 1 Javaumgebung

Java Kurs für Anfänger LMU SS09 Einheit 1 Javaumgebung Java Kurs für Anfänger LMU SS09 Einheit 1 Javaumgebung Ludwig-Maximilians-Universität München Institut für Informatik Programmierung und Softwaretechnik (PST) Prof. Wirsing 6. Mai 2009 1 Der Name Java

Mehr

Interface Spezifikation exotargets LS

Interface Spezifikation exotargets LS Interface Spezifikation exotargets LS Einführung Inhaltsverzeichnis Inhaltsverzeichnis Inhalt 1. Einführung 3 2. History 3 3. Online-Schnittstelle 3 4. Offline-Schnittstelle 6 5. Implementationshinweise

Mehr

HTML5. Grundlagen der Erstellung von Webseiten. Linda York, Tina Wegener. 1. Ausgabe, Dezember 2011 HTML5

HTML5. Grundlagen der Erstellung von Webseiten. Linda York, Tina Wegener. 1. Ausgabe, Dezember 2011 HTML5 Linda York, Tina Wegener HTML5 Grundlagen der Erstellung von Webseiten 1. Ausgabe, Dezember 2011 HTML5 2 HTML5 - Grundlagen der Erstellung von Webseiten 2 Die erste Webseite mit HTML erstellen In diesem

Mehr

Code signing mit startssl

Code signing mit startssl Code signing mit startssl Auf der Suche nach einem Anbieter, bei dem ich ein mit Windows 7 nutzbares und günstiges Zertikat erwerben kann bin ich über StartSSL gestolpert. Dort bekommt man ein class 2

Mehr

XML - Extensible Markup Language. Agenda - Oracle XML DB

XML - Extensible Markup Language. Agenda - Oracle XML DB Architektur und Funktionalitäten der Oracle XML DB - ein Überblick mit ausgewählten praktischen Beispielen - im Rahmen des 17. Workshop Grundlagen von Datenbanken 2005 in Wörlitz Annegret Warnecke Senior

Mehr

Praktikum Internetprotokolle - POP3

Praktikum Internetprotokolle - POP3 Technische Universität Ilmenau Fakultät für Informatik und Automatisierung Institut für Praktische Informatik und Medieninformatik Fachgebiet Telematik/Rechnernetze 19. Mai 2008 1 Aufgabenstellung Praktikum

Mehr

Acrolinx IQ. Verbindungen mit externen Terminologiedatenbanken 2.9

Acrolinx IQ. Verbindungen mit externen Terminologiedatenbanken 2.9 Acrolinx IQ Verbindungen mit externen Terminologiedatenbanken 2.9 2 Inhalt Einleitung 3 Über diesen Leitfaden...3 Verbinden mit externen Terminologiedatenbanken 4 Erstellen von Sicherungen vorhandener

Mehr

Bewertung der Einsatzmöglichkeiten von XML Sicherheitslösungen in mobilen Kommunikationsumgebungen. Ziel SSL/TLS. XML Signature/Encryption

Bewertung der Einsatzmöglichkeiten von XML Sicherheitslösungen in mobilen Kommunikationsumgebungen. Ziel SSL/TLS. XML Signature/Encryption Bewertung der Einsatzmöglichkeiten von XML Sicherheitslösungen in mobilen Kommunikationsumgebungen Fabian Pretsch Ziel Implementierung von XML Encryption/Signature in Java Testen der Implementierung auf

Mehr

Sicherheit in Web Services. Seminar Service-orientierte Software Architekturen Melanie Storm

Sicherheit in Web Services. Seminar Service-orientierte Software Architekturen Melanie Storm Sicherheit in Web Services Seminar Service-orientierte Software Architekturen Melanie Storm Agenda Motivation Fallbeispiel WS-Security XML Encryption XML Signature WS-Policy WS-SecurityPolicy WS-Trust

Mehr

Geodaten: Modelle und Strukturen

Geodaten: Modelle und Strukturen XML und Auszeichnungssprachen Dr. Sven-Henrik Kleber IMPRESSUM Diese Publikation ist vom Universitätslehrgang "GEOGRAPHICAL INFORMATION SCIENCE & SYSTEMS" am Zentrum für Geoinformatik der Universität Salzburg

Mehr

Verschlüsselungstool DATUSCodierung

Verschlüsselungstool DATUSCodierung Verschlüsselungstool DATUSCodierung Benutzerhandbuch Stand: Januar 2014 Inhalt Verschlüsselungstool DATUSCodierung... 1 Inhalt... 2 Release Notes... 3 Technische Details... 3 Dateien im Lieferumfang...

Mehr

XML-Sicherheit in der Datenbank

XML-Sicherheit in der Datenbank XML-Sicherheit in der Datenbank Dominik Schadow, Trivadis GmbH Mit der XML-Sicherheit gibt es speziell auf die Bedürfnisse und Möglichkeiten der Extensible Markup Language ausgerichtete Varianten der digitalen

Mehr

Klausur zur Vorlesung Einführung in XML

Klausur zur Vorlesung Einführung in XML Nachname: Klausur zur Vorlesung Einführung in XML MUSTERLÖSUNG Vorname: Matr.Nr.: Studiengang: Bearbeiten Sie alle Aufgaben! Hilfsmittel sind nicht zugelassen. Die Bearbeitungszeit ist 90 Minuten. Aufgabe

Mehr

Acrolinx IQ. Verbindung mit einer externen Terminologiedatenbank herstellen 2.7

Acrolinx IQ. Verbindung mit einer externen Terminologiedatenbank herstellen 2.7 Acrolinx IQ Verbindung mit einer externen Terminologiedatenbank herstellen 2.7 2 Inhalt Einleitung 3 Über diesen Leitfaden...3 Verbinden mit externen Terminologiedatenbanken 4 Erstellen von Sicherungen

Mehr

DocBook-Filter für OpenOffice.org

DocBook-Filter für OpenOffice.org OpenOffice.org als Editor für DocBook-XML Herausgegeben durch das OpenOffice.org Germanophone-Projekt Autoren Autoren vorhergehender Versionen XML-Projekt (http://xml.openoffice.org) Alle in diesem Dokument

Mehr

Cross Media Publishing von Lehrmaterialien mit XML Schema & XSL-Transformationen

Cross Media Publishing von Lehrmaterialien mit XML Schema & XSL-Transformationen Cross Media Publishing von Lehrmaterialien mit XML Schema & XSL-Transformationen Diplomarbeit von Tanja Schniederberend betreut von Prof. Dr. Oliver Vornberger Akad. Dir. Klaus Brauer Fachbereich Mathematik/Informatik

Mehr

Comtarsia SignOn Familie

Comtarsia SignOn Familie Comtarsia SignOn Familie Handbuch zur RSA Verschlüsselung September 2005 Comtarsia SignOn Agent for Linux 2003 Seite 1/10 Inhaltsverzeichnis 1. RSA Verschlüsselung... 3 1.1 Einführung... 3 1.2 RSA in Verbindung

Mehr

XML Signature Wrapping: Die Kunst SAML Assertions zu fälschen. 19. DFN Workshop Sicherheit in vernetzten Systemen Hamburg, 22.02.

XML Signature Wrapping: Die Kunst SAML Assertions zu fälschen. 19. DFN Workshop Sicherheit in vernetzten Systemen Hamburg, 22.02. XML Wrapping: Die Kunst SAML s zu fälschen Andreas Mayer Adolf Würth GmbH & Co. KG Künzelsau-Gaisbach Prof. Dr. Jörg Schwenk Lehrstuhl für Netz- und Datensicherheit Ruhr-Universität Bochum 19. DFN Workshop

Mehr

Beschreibung UTF-8 Codierung

Beschreibung UTF-8 Codierung fabio tripicchio e-mail-marketing Beschreibung: Beschreibung UTF-8 Codierung Beschreibung Bei Verwendung eines Accounts bei XQ der den Zeichensatz UTF 8 nutzt ist es zwingend erforderlich, jegliche Adressdaten

Mehr

Acrolinx IQ. Konfigurieren der serverseitigen Segmentierung

Acrolinx IQ. Konfigurieren der serverseitigen Segmentierung Acrolinx IQ Konfigurieren der serverseitigen Segmentierung 2 Inhalt Überblick über die serverseitige Segmentierung 3 Kontextsegmentierungsdefinitionen (CSD)...3 Elemente und Segmentierungsregeln...6 CSD-Bewertung...9

Mehr

Dataport IT Bildungs- und Beratungszentrum. HTML- Grundlagen und CSS... 2. XML Programmierung - Grundlagen... 3. PHP Programmierung - Grundlagen...

Dataport IT Bildungs- und Beratungszentrum. HTML- Grundlagen und CSS... 2. XML Programmierung - Grundlagen... 3. PHP Programmierung - Grundlagen... Inhalt HTML- Grundlagen und CSS... 2 XML Programmierung - Grundlagen... 3 PHP Programmierung - Grundlagen... 4 Java - Grundlagen... 5 Java Aufbau... 6 ASP.NET Programmierung - Grundlagen... 7 1 HTML- Grundlagen

Mehr

Erhöhung der Datenqualität in XML-Dokumenten von Desktop Applikationen. Alexander Hilliger von Thile - REI/ID

Erhöhung der Datenqualität in XML-Dokumenten von Desktop Applikationen. Alexander Hilliger von Thile - REI/ID Erhöhung der Datenqualität in XML-Dokumenten von Desktop Applikationen Alexander Hilliger von Thile - REI/ID Die Rolle von XML Markup (DQ) < < > > Markup DQ application server < < > Markup application

Mehr

Programmieren was ist das genau?

Programmieren was ist das genau? Programmieren was ist das genau? Programmieren heisst Computerprogramme herstellen (von griechisch programma für Vorschrift). Ein Computerprogramm ist Teil der Software eines Computers. Als Software bezeichnet

Mehr

Es gibt situationsabhängig verschiedene Varianten zum Speichern der Dokumente. Word bietet im Menü DATEI unterschiedliche Optionen an.

Es gibt situationsabhängig verschiedene Varianten zum Speichern der Dokumente. Word bietet im Menü DATEI unterschiedliche Optionen an. 3. SPEICHERN DATEIEN SPEICHERN Dateien werden in Word Dokumente genannt. Jede Art von Datei, die Sie auf Ihrem Computer neu erstellen, befindet sich zuerst im Arbeitsspeicher des Rechners. Der Arbeitsspeicher

Mehr

Seminararbeit. Securing wireless J2ME. Mühlebach Michael, Ia02

Seminararbeit. Securing wireless J2ME. Mühlebach Michael, Ia02 Seminararbeit Securing wireless J2ME Mühlebach Michael, Ia02 Fachhochschule Aargau Departement Technik Studiengang Informatik Betreuende Dozenten: Prof. Dr. Carlo Nicola Windisch, 29. März 2005 Inhaltsverzeichnis

Mehr

Entwicklung einer XML-basierten Tumordatenschnittstelle. TuDaSch-XML

Entwicklung einer XML-basierten Tumordatenschnittstelle. TuDaSch-XML Entwicklung einer XML-basierten Tumordatenschnittstelle TuDaSch-XML Frank Papendorf, Tumorzentrum Hannover / 01.04.2004 Übersicht 1. Einführung 2. XML-Technologie 3. TuDaSch-XML 4. Fazit / Ausblick Frank

Mehr

Berliner XML Tage 2005: Abbildung des V-Modell XT in Projektron BCS

Berliner XML Tage 2005: Abbildung des V-Modell XT in Projektron BCS Berliner XML Tage 2005: Abbildung des V-Modell XT in Projektron BCS Prof. Dr. Roland Petrasch Dipl.-Inform., M.Sc. Florian Fieber Fachbereich VI Informatik und Medien Technische Fachhochschule Berlin Luxemburger

Mehr

Vortrag Keysigning Party

Vortrag Keysigning Party Vortrag Keysigning Party Benjamin Bratkus Fingerprint: 3F67 365D EA64 7774 EA09 245B 53E8 534B 0BEA 0A13 (Certifcation Key) Fingerprint: A7C3 5294 E25B B860 DD3A B65A DE85 E555 101F 5FB6 (Working Key)

Mehr

Terravis - Hinweise zur Implementierung der SSL-Verbindung

Terravis - Hinweise zur Implementierung der SSL-Verbindung Terravis - Hinweise zur Implementierung der -Verbindung Version: 1.0 Datum: 19.04.2013 Autoren: Claude Eisenhut -Hinweise.docx 19.04.2013 Seite 1/8 Verzeichnis: Einführung... 3 Kontaktpersonen 3 Allgemeines...

Mehr

PIWIN 1 Übung Blatt 5

PIWIN 1 Übung Blatt 5 Fakultät für Informatik Wintersemester 2008 André Gronemeier, LS 2, OH 14 Raum 307, andre.gronemeier@cs.uni-dortmund.de PIWIN 1 Übung Blatt 5 Ausgabedatum: 19.12.2008 Übungen: 12.1.2009-22.1.2009 Abgabe:

Mehr

Objektorientierte Programmierung OOP Programmieren mit Java

Objektorientierte Programmierung OOP Programmieren mit Java Aufgaben: 2 JDK/SDK/JRE und Java Entwicklungswerkzeuge Objektorientierte Programmierung OOP Programmieren mit Java 1. Installation von Java 2. Erstes Java Programm Hello World 3. Dreimal Hallo Olten 2

Mehr

XML-Sicherheitsdienste für das Netzwerk der Global Biodiversity Information Facility GBIF

XML-Sicherheitsdienste für das Netzwerk der Global Biodiversity Information Facility GBIF XML-Sicherheitsdienste für das Netzwerk der Global Biodiversity Information Facility GBIF Dipl.-Inf. Lutz Suhrbier Prof. Dr.-Ing. Robert Tolksdorf Dipl.-Inf. Ekaterina Langer Freie Universität Berlin Institut

Mehr

Benutzerhandbuch. Gästebuch Software - YellaBook v1.0 http://www.yellabook.de. Stand: 01.08.2012. by YellaBook.de - Alle Rechte vorbehalten.

Benutzerhandbuch. Gästebuch Software - YellaBook v1.0 http://www.yellabook.de. Stand: 01.08.2012. by YellaBook.de - Alle Rechte vorbehalten. Benutzerhandbuch Gästebuch Software - YellaBook v1.0 http://www.yellabook.de Stand: 01.08.2012 Inhalt 1 Funktionen... 3 2 Systemanforderungen... 4 3 Installation... 4 4 Einbinden des Gästebuchs... 5 5

Mehr

Covum Mailsignatur für Microsoft Outlook

Covum Mailsignatur für Microsoft Outlook Benutzerdokumentation: Covum Mailsignatur für Microsoft Outlook Inhaltsverzeichnis 1. Was macht das Programm? Allgemeine Beschreibung... 2 1.1. Welche Voraussetzungen müssen erfüllt sein?... 2 1.2. Welche

Mehr

Bewertung der Einsatzmöglichkeiten von XML Sicherheitslösungen in mobilen Kommunikationsumgebungen. Fabian Pretsch

Bewertung der Einsatzmöglichkeiten von XML Sicherheitslösungen in mobilen Kommunikationsumgebungen. Fabian Pretsch Bewertung der Einsatzmöglichkeiten von XML Sicherheitslösungen in mobilen Kommunikationsumgebungen Fabian Pretsch Ziel Implementierung von XML Encryption/Signature in Java Testen der Implementierung auf

Mehr

E-Mails versenden aber sicher! Secure E-Mail

E-Mails versenden aber sicher! Secure E-Mail E-Mails versenden aber sicher! Secure E-Mail Leitfaden S Kreisparkasse Verden 1 Vorwort Wir alle leben in einem elektronischen Zeitalter. Der Austausch von Informationen erfolgt zunehmend über elektronische

Mehr

Programmieren für mobile Endgeräte SS 2013/2014. Dozenten: Patrick Förster, Michael Hasseler

Programmieren für mobile Endgeräte SS 2013/2014. Dozenten: Patrick Förster, Michael Hasseler Programmieren für mobile Endgeräte SS 2013/2014 Programmieren für mobile Endgeräte 2 Besprechung der Aufgaben 1) Legen Sie das Android-Projekt HelloWorldApp an so wie es in den vorherigen Folien beschrieben

Mehr

Linux-Info-Tag Dresden - 8. Oktober 2006

Linux-Info-Tag Dresden - 8. Oktober 2006 E-Mails signieren & verschlüsseln Linux-Info-Tag Dresden - 8. Oktober 2006 1 Einleitung 1.1 Willkommen Karl Deutsch Österreich Seit 1985 im IT-Bereich Seit 1997 Linux als Desktopbetriebssystem IT Berater

Mehr

Programmiertechnik II

Programmiertechnik II X.509: Eine Einführung X.509 ITU-T-Standard: Information Technology Open Systems Interconnection The Directory: Public Key and attribute certificate frameworks Teil des OSI Directory Service (X.500) parallel

Mehr

Diese Version ist anwendbar für die Übermittlung von Daten, die die folgenden Veranlagungszeiträume betreffen:

Diese Version ist anwendbar für die Übermittlung von Daten, die die folgenden Veranlagungszeiträume betreffen: Inhaltsübersicht Einzelne Anforderungen an den Inhalt und den Aufbau des Datensatzes Datenübermittlung zwischen der zentralen Stelle und den übermittelnden Stellen im Rahmen der Meldeverfahren für die

Mehr

Klausur zur Vorlesung Einführung in XML

Klausur zur Vorlesung Einführung in XML Klausur zur Vorlesung Einführung in XML MUSTERLÖSUNG Nachname: Vorname: Matr.Nr.: Studiengang: Bearbeiten Sie alle Aufgaben! Hilfsmittel sind nicht zugelassen. Die Bearbeitungszeit ist 120 Minuten. Aufgabe

Mehr

Tutorium Java Ein Überblick. Helge Janicke

Tutorium Java Ein Überblick. Helge Janicke Tutorium Java Ein Überblick Helge Janicke 26. Oktober 2000 1 VORRAUSSETZUNGEN ZUM PROGRAMMIEREN MIT JAVA. 1 1 Vorraussetzungen zum Programmieren mit Java. Was braucht man, wenn man mit Java programmieren

Mehr

Anwenderinnen und Anwender im IT-Verbund des Evangelischen Oberkirchenrats Stuttgart

Anwenderinnen und Anwender im IT-Verbund des Evangelischen Oberkirchenrats Stuttgart Evangelischer Oberkirchenrat Gänsheidestraße 4 70184 Stuttgart Bei Rückfragen wenden Sie sich bitte an folgende Nummer: 0711 2149-533 Anwenderinformation des Referats Informationstechnologie Thema Betroffene

Mehr

Spezifikationen und Voraussetzung

Spezifikationen und Voraussetzung Projekt IGH DataExpert Yellowbill Adapter Spezifikationen Voraussetzungen Datum : 22.08.2013 Version : 1.0.0.2 22.08.2013 Seite 1 von 7 Inhaltsverzeichnis 1 Einleitung...3 2 Architektur...3 2.1 Grundsätze

Mehr

Web Service Security

Web Service Security Hochschule für Angewandte Wissenschaften Hamburg Fachbereich Elektrotechnik und Informatik SS 2005 Masterstudiengang Anwendungen I Kai von Luck Web Service Security Thies Rubarth rubart_t@informatik.haw-hamburg.de

Mehr

Compilerbau I Sommersemester 2008

Compilerbau I Sommersemester 2008 Fachbereich 12 Informatik und Elektrotechnik Programmiersprachen Kurt Sieber Benedikt Meurer Compilerbau I Sommersemester 2008 Übungsblatt 1 Aufgabe 1 Der erweiterte reguläre Ausdruck α{m, n erkennt zwischen

Mehr

CLR CIL MCS ECMA-335. Linux.Ne t. 2005 Albrecht Liebscher, Erlanger Linux Tage

CLR CIL MCS ECMA-335. Linux.Ne t. 2005 Albrecht Liebscher, Erlanger Linux Tage C# CLR CIL MCS ECMA-335 Linux.Ne t Was ist.net? Microsoft Homepage:.NET is the Microsoft Web services strategy to connect information, people, systems and devices through software. Mono Handbuch:.Net besteht

Mehr

Festplattenverschlüsselung

Festplattenverschlüsselung Festplattenverschlüsselung TrueCrypt Sebastian Berschneider sebastian.berschneider@informatik.stud.uni-erlangen.de 1 6. J u n i 2 0 1 0 Motivation Bei physischem Zugang des Angreifers können Schutzsysteme

Mehr

8.2. XML-Grundlagen. XML on iseries 8.2. Seite. Kapitel. XML-Grundlagen

8.2. XML-Grundlagen. XML on iseries 8.2. Seite. Kapitel. XML-Grundlagen XML on iseries Kapitel.2.2 XML ist eine Technologie, welche ihren Ursprung dem Internet zu verdanken hat. Wie einige andere Begriffe auch, so hat die Abkürzung XML für den einen oder anderen Leser vielleicht

Mehr

Spezifikationen und Voraussetzung

Spezifikationen und Voraussetzung Projekt IGH DataExpert Paynet Adapter Spezifikationen Voraussetzungen Datum : 21.07.08 Version : 1.0.0.2 21.07.2008 Seite 1 von 7 Inhaltsverzeichnis 1 Einleitung... 3 2 Architektur... 3 2.1 Grundsätze

Mehr

XML-Praxis. XML-Grammatiken. joern@techfak.uni-bielefeld.de

XML-Praxis. XML-Grammatiken. joern@techfak.uni-bielefeld.de XML-Praxis XML-Grammatiken Jörn Clausen joern@techfak.uni-bielefeld.de 1 Übersicht formale Beschreibung von XML-Sprachen verschiedene Lösungen Document Type Definition Relax NG 2 wohlgeformtes vs. valides

Mehr

.htaccess HOWTO. zum Schutz von Dateien und Verzeichnissen mittels Passwortabfrage

.htaccess HOWTO. zum Schutz von Dateien und Verzeichnissen mittels Passwortabfrage .htaccess HOWTO zum Schutz von Dateien und Verzeichnissen mittels Passwortabfrage Stand: 21.06.2015 Inhaltsverzeichnis 1. Vorwort...3 2. Verwendung...4 2.1 Allgemeines...4 2.1 Das Aussehen der.htaccess

Mehr

Autor: Michael Spahn Version: 1.0 1/10 Vertraulichkeit: öffentlich Status: Final Metaways Infosystems GmbH

Autor: Michael Spahn Version: 1.0 1/10 Vertraulichkeit: öffentlich Status: Final Metaways Infosystems GmbH Java Einleitung - Handout Kurzbeschreibung: Eine kleine Einführung in die Programmierung mit Java. Dokument: Autor: Michael Spahn Version 1.0 Status: Final Datum: 23.10.2012 Vertraulichkeit: öffentlich

Mehr

Containerformat Spezifikation

Containerformat Spezifikation Containerformat Spezifikation Version 1.1-21.02.2014 Inhaltsverzeichnis 0 Einführung... 4 0.1 Referenzierte Dokumente... 4 0.2 Abkürzungen... 4 1 Containerformat... 5 1.1 Aufbau des Container-Headers...

Mehr

Hello World in Java. Der Weg zum ersten Java-Programm

Hello World in Java. Der Weg zum ersten Java-Programm Vorwort Hello World in Java Der Weg zum ersten Java-Programm Diese Anleitung wurde unter Windows XP verfasst. Grundsätzlich sollte sie auch unter späteren Windows Versionen wie Windows Vista oder Windows

Mehr

Sachwortverzeichnis... 251

Sachwortverzeichnis... 251 Inhalt Vorwort... V 1 WWW World Wide Web... 1 1.1 Das Internet Infrastruktur und Administration... 2 1.2 Datenübertragung... 4 1.3 Sprachen im Web... 6 1.4 Webseiten... 7 1.4.1 Clientseitige Dynamik...

Mehr

PrivaSphere Secure Messaging Outlook AddIn V.3.0.0 der Infover AG

PrivaSphere Secure Messaging Outlook AddIn V.3.0.0 der Infover AG PrivaSphere Secure Messaging Outlook AddIn V.3.0.0 der Infover AG Technische Dokumentation für Administratoren Das File Version_3.0.0.zip muss in ein Verzeichnis kopiert werden. Die folgenden Dateien werden

Mehr

FuE-Bereich IuK-Systeme im Gesundheitswesen

FuE-Bereich IuK-Systeme im Gesundheitswesen FuE-Bereich IuK-Systeme im Gesundheitswesen IG XML und Web Services Dipl.-Inform. Axel Schwolow IG Kommunikation im Web Entwicklung früher ausschließlich Kommunikation über Browser heute zunehmend direkt

Mehr

Stammtisch 04.12.2008. Zertifikate

Stammtisch 04.12.2008. Zertifikate Stammtisch Zertifikate Ein Zertifikat ist eine Zusicherung / Bestätigung / Beglaubigung eines Sachverhalts durch eine Institution in einem definierten formalen Rahmen 1 Zertifikate? 2 Digitale X.509 Zertifikate

Mehr

Acer edatasecurity Management

Acer edatasecurity Management 1 Acer edatasecurity Management Mittels erweiterter Kryptographie-Technologien bietet Acer edatasecurity Management eine bessere Sicherheit für Ihre persönlichen Daten und Verschlüsselung von Dateien und

Mehr

Technische Dokumentation SEPPmail Outlook Add-In v1.5.3

Technische Dokumentation SEPPmail Outlook Add-In v1.5.3 Technische Dokumentation SEPPmail Outlook Add-In v1.5.3 In diesem Dokument wird dargelegt, wie das SEPPmail Outlook Add-in funktioniert, und welche Einstellungen vorgenommen werden können. Seite 2 Inhalt

Mehr

E-Mail-Verschlüsselung mit Geschäftspartnern

E-Mail-Verschlüsselung mit Geschäftspartnern E-Mail-Verschlüsselung mit (Anleitung für Geschäftspartner) Datum: 15.07.2013 Dokumentenart: Anwenderbeschreibung Version: 3.2 : Redaktionsteam PKI cio.siemens.com Inhaltsverzeichnis 1. Zweck des Dokumentes:...

Mehr

SingleSignOn Schnittstelle

SingleSignOn Schnittstelle SingleSignOn Schnittstelle Integration vom Seminar-Shop mit der Partnerseite unter Verwendung der Seminar-Shop Formulare 1 Grundidee: Eine Website übernimmt den Seminar-Shop Content und wünscht, dass ein

Mehr

Containerformat Spezifikation

Containerformat Spezifikation Containerformat Spezifikation Version 1.0-09.05.2011 Inhaltsverzeichnis 0 Einführung... 4 0.1 Referenzierte Dokumente... 4 0.2 Abkürzungen... 4 1 Containerformat... 5 1.1 Aufbau des Container-Headers...

Mehr

Import des persönlichen Zertifikats in Outlook2007

Import des persönlichen Zertifikats in Outlook2007 Import des persönlichen Zertifikats in Outlook2007 1. Installation des persönlichen Zertifikats 1.1 Voraussetzungen Damit Sie das persönliche Zertifikat auf Ihren PC installieren können, benötigen Sie:

Mehr

Erste Schritte zum lauffähigen Java Programm

Erste Schritte zum lauffähigen Java Programm Erste Schritte zum lauffähigen Java Programm Diese kleine Einführung ist eine Hilfe für Studenten der Vorlesung SWT I zur Meisterung der sich ergebenden Hürden bei der Erstellung eines ersten kleinen Java-Programms.

Mehr

Grundpraktikum Netz- und Datensicherheit. Thema: Konfiguration von Apache HTTPD

Grundpraktikum Netz- und Datensicherheit. Thema: Konfiguration von Apache HTTPD Grundpraktikum Netz- und Datensicherheit Thema: Konfiguration von Apache HTTPD Lehrstuhl für Netz- und Datensicherheit Ruhr-Universität Bochum Versuchdurchführung: Raum ID 2/168 Zusammengestellt von: Andre

Mehr

Alireza Salemi, Timo Albert. SGML-basierte Datenaustauschformate. Referenten:

Alireza Salemi, Timo Albert. SGML-basierte Datenaustauschformate. Referenten: SGML-basierte Datenaustauschformate Referenten: Alireza Salemi Timo Albert Gliederung Einleitung XML - Kurzeinführung Web Service-Technologien XML-basierte Austauschformate Spezifische Markup-Languages

Mehr

Einführung zu den Übungen aus Softwareentwicklung 1

Einführung zu den Übungen aus Softwareentwicklung 1 Einführung zu den Übungen aus Softwareentwicklung 1 Dipl.-Ing. Andreas Riener Universität Linz, Institut für Pervasive Computing Altenberger Straße 69, A-4040 Linz riener@pervasive.jku.at SWE 1 // Organisatorisches

Mehr

Import von Daten aus Word nach KlasseDozent

Import von Daten aus Word nach KlasseDozent Import von Daten aus Word nach KlasseDozent KlasseDozent ermöglicht Ihnen prinzipiell den Import aus Word-Dateien heraus auf zwei Wegen. Sie können einmal eine Word-Datei im Rich-Text-Format abspeichern

Mehr

XML-RPC, SOAP und Web Services. Jörn Clausen joern@techfak.uni-bielefeld.de

XML-RPC, SOAP und Web Services. Jörn Clausen joern@techfak.uni-bielefeld.de XML-RPC, SOAP und Web Services Jörn Clausen joern@techfak.uni-bielefeld.de Übersicht Was ist RPC? Was hat XML mit RPC zu tun? Was sind XML-RPC und SOAP? Was sind Web Services? Wird das die Welt retten?

Mehr

Installation von VuFind RC1 auf Windows Systemen (Stand: November/Dezember 2009)

Installation von VuFind RC1 auf Windows Systemen (Stand: November/Dezember 2009) Installation von VuFind RC1 auf Windows Systemen (Stand: November/Dezember 2009) Diese Anleitung beschreibt die Installation von VuFind auf Windows Systemen ohne die Verwendung von Komplettpaketen wie

Mehr

TimeSafe Leistungserfassung

TimeSafe Leistungserfassung Keep your time safe. TimeSafe Leistungserfassung Adressimport 1/8 Inhaltsverzeichnis Inhaltsverzeichnis... 2 1 Allgemeines... 3 1.1 Adressen in der TimeSafe Leistungserfassung... 3 1.2 Organisationen und/oder

Mehr