Schritt für Schritt zur geschützten Java-Anwendung
|
|
- Julia Kramer
- vor 6 Jahren
- Abrufe
Transkript
1 1 Schritt für Schritt zur geschützten Java-Anwendung Wolfgang Völker Produktmanagement Günther Fischer Professional Services
2 2 Agenda Java Rückblick Schutz-Technologien für Java-Anwendungen Grundprinzip des AxProtector Java Optionen des AxProtetcor Java Schutz auf Klassen-Ebene / Methoden-Ebene Kurze Einführung in die Lizenzierung von Java-Anwendungen
3 Java Rückblick 3
4 4 Java und die JVM/JRE Java: von Sun 1995 entwickelte Programmiersprache. Die JVM ist eine abstrakte Maschine. Der Befehlssatz ist der Java Byte Code. Kompilierte Java Programme bestehen aus vielen Klassendateien, die Bytecode (keinen nativen Code) enthalten. JARS sind ZIP-Archive mit zusätzlichem Manifest Bytecode wird zur Laufzeit durch Java Virtual Machine (JVM) interpretiert und ausgeführt. Bytecode lässt sich einfach Reverse Engineeren. Mit dem OpenJDK gibt es eine quelloffene Implementierung der JVM.
5 5 JAVA - Write Once, Run Anywhere (WORA) Java Program (.java) Java Compiler JAVAC Java Byte Code (.class /.jar) Interpreter (JVM) Interpreter (JVM) Interpreter (JVM) Windows Linux MacOS
6 6 Java Architektur Java Program *.class Files Classloader Java API *.class Files Bytecode Verifier Interpreter (JVM) Host Operating System (Windows, Linux, MacOS,..)
7 7 Java und Sicherheit Java-Klassen lassen sich Leicht extrahieren Leicht ersetzen (auch Systemklassen!) Leicht modifizieren Der Java Byte Code ist kein Geheimnis Fazit Alles was in Java geschrieben ist, ist generell unsicher!
8 9 Schutzziele Schutz gegen Raubkopien (Lizenzierung) Schutz des geistigen Eigentums (Reverse Engineering) Schutz gegen Analyse durch Mitbewerber Schutz gegen Verwendung von Code Integritätsschutz von Daten und Code Schutz von Daten als Bestandteil des Produktes (Wettbewerbsvorteil)
9 Das Waffenarsenal der Angreifer (Java Decompiler.jar/.class ->.java) 10
10 Schutz-Technologien für Java-Anwendungen 11
11 12 Betrachtete Optionen Obfuskierung Basic Obfuscation Heavy Duty Protection (Klassmaster) Java2Exe (JET Engine) Umwandlung in nativen Code Evtl. weitere Verschlüsselung durch native Tools Java Verschlüsselung AxProtector Sonstige Methoden Beispiel CodeMeter Core API
12 Java Obfuscation Tools (KlassMasterAltaori/ProGuard.) 13
13 Basic obfuscation 14
14 15 Basic Obfuscation (Name Obfuscation) Quelle: Zelix Webseite
15 16 Decompilieren einer Basic Obfuscation Decompile Quelle: Zelix Webseite
16 Heavy Duty Protection 17
17 Zelix KlassMaster 18
18 19 Heavy Duty Protection (Flow, Exception, String Obfuscation ) Quelle: Zelix Webseite
19 JDO: Java Deobfuscator / JMD: Java bytecode deobfuscation tool 20
20 21 Excelsior JET Engine JAVA2EXE
21 Java Code Java Byte Code Nativer Code 22 Prinzip Java2Exe JAVAC Compiler Excelsior JIT Compiler
22 Java Code Java Byte Code Nativer Code Verschlüsselter nativer Code 23 Zusätzlicher Schutz durch Verschlüsselung JAVAC Compiler Excelsior JIT Compiler AxProtector
23 Verschlüsselung 24
24 25 Verschlüsselung des Codes Verschlüsselung des ausführbaren Codes vor der Auslieferung Ungeschützte Anwendung Verschlüsselung AxEngine Entschlüsselung der benötigten Klassen/Methoden zur Laufzeit im Speicher Entschlüsselung AxEngine
25 26 Die AxProtector Suite AxProtector nativ Windows 32-/64-bit Mac OS X Linux AxProtector.NET.Net 2.0, 3.0, 3.5, 4.0, 4.5 AxProtector Java Java 1.6 Java 1.7 Java 1.8 Java Anwendungen Java Applets Java Servlets
26 27 AxProtector Java - Funktionsprinzip AxProtector Java automatischer Schutz auf Klassen/Methodenebene durch Verschlüsselung des Bytecodes Jede Klasse wird automatisch beim Laden entschlüsselt. Dazu muss die AxProtector Runtime initialisiert werden: Java-Anwendungen mit Main-Klasse => Wrapper (com.wibu.xpm.wrapper) manuelles Laden durch EntryPoint manuelles Laden durch ProtectionManager Einbau erweiterter Schutzmaßnahmen (IxProtector) Einbau von Lizenzabfragen (CoreAPI)
27 Java-Anwendungen mit Main-Klasse 28
28 EntryPoint 29
29 Einbau erweiterter Schutzmaßnahmen (IxProtector) 30
30 31 Unterstützte Anwendungstypen Welche Anwendungstypen kann der AxProtector Java schützen? Konsolen- und Desktopanwendungen Applets, Web Start Anwendungen Servlets Eclipse RCP, Eclipse Plugin OSGi
31 32 Unverschlüsselter Code (CAFEBABE) Magic Number Version Constant Pool Access Flag this Class super Class Interfaces Fields Methods Attributes
32 33 Mit AxProtector Java geschützter Code Magic Number Version Constant Pool Access Flag this Class super Class Interfaces Fields Methods Attributes
33 34 Prinzip des AxProtector Java Klasse im Speicher loadclass JVM AxProtector Runtime Verschlüsselte Klasse auf der Festplatte
34 35 AxProtector Klassen Automatischer Schutz (in das JAR integriert oder als WibuXpm4JRuntime.jar) Anpassungen im Code Laufzeit der geschützten Anwendung Integriert in die geschützte Anwendung WibuXpm4JRuntime.jar im classpath
35 36 Parameterdatei im XML-Format (Lizenzliste) Quelle: CodeMeter Entwicklerhandbuch
36 Beispiel 37
37 Decompilieren nach Verschlüsselung 38
38 Enigma 39
39 D4J 40
40 Lython 41
41 JD-GUI 42
42 43 Angriffe via Tools In Java gibt es einige Tools Interfaces Gedacht, um Byte-Code zu analysieren / modifizieren Debugger, Profiler JVMPI: Java Virtual Machine Profiling Interface Bis einschließlich Java 6 JVMTI: Java Virtual Machine Tools Interface Ab Java 7, Nachfolger von JVMPI
43 44 Besondere Schutzmaßnahmen WibuXPM4J32/64.dll Absicherung Callback Check Prüft, dass keine JNI Funktionen geändert wurden JVMPI / JVMTI Check Prüft, ob ein JVMPI/JVMTI Agent vorhanden ist
44 45 JVM Manipulation / Ändern des JVM Quellcodes OpenJDK ist eine quelloffene Implementierung der JVM Seit Version 6 Kann somit mit Hintertür gebaut werden Einfügen von Code, der geladene Klassen mitschreibt, somit einfach möglich Lösung: JVM Verifizierung
45 Update der Signaturen 46
46 Weitere Verfahren 47
47 48 Schutz von Daten Annahme Geistiges Eigentum sind die Daten z.b. Fahrzeugdaten für Werkstätten Schutzziel Schützen der Daten gegen unbefugte Benutzung (Lizenzierung) Schützen der Daten gegen Extraktion und Nachbau durch Mitbewerber Lösung: Verschlüsselung der Daten
48 49 Schutz von Daten Nur sicher, wenn die Schlüssel in einem vertrauenswürdigem Speicher liegen.
49 50 CodeMeter Core API com.wibu.codemeter Grundlage aller Schutzmechanismen Schnittstelle zur Kommunikation mit CodeMeter Erweiterte Schutzmöglichkeiten Einheitliches Interface durch CodeMeter License Server Lizenz in einem Dongle oder in einer verschlüsselten Lizenzdatei Ihre Software Java Native Interface CodeMeter License Server Aktivierung Dongle Einheitliche Lizenzoptionen Mischen in einer Anwendung möglich
50 51 Schutz von Daten - Verschlüsselung Schutz durch Ver-/Entschlüsselung in der Anwendung cmcrypt2 ()
51 52 Integritätsschutz - Signatur Integritätsschutz von Daten/Bibliotheken cmcalculatedigest() cmcalculatesignature() cmvalidatesignature()
52 53 Core API Dokumentation und Beispiele CodeMeter Java API Help (HTML Format) Servlet Sample CmCalculator CmDemo Lizenzzugriff Auslesen von Lizenzen Verschlüsselung
53 Ein paar Worte über CodeMeter 54
54 55 Flexible Lizenzierungs Modelle für Lizenzgeber Single User Time zone Network Name/PC Feature On Demand Borrowing Perpetual Overflow Trial version High Availability Rent / Leasing / Subscription Standby Pay-Per-Use Version Maintenance period Volume Downgrade Grace Period
55 Zusammenfassung 56
56 57 Erreichung Schutzziele bei Obfuscation Schutz gegen Raubkopien (Lizenzierung) Schutz des geistigen Eigentums (Reverse Engineering) Schutz gegen Analyse durch Mitbewerber Schutz gegen Verwendung von Code Integritätsschutz von Daten und Code Schutz von Daten als Bestandteil des Produktes (Wettbewerbsvorteil)
57 58 Erreichung Schutzziele bei Java2Exe Schutz gegen Raubkopien (Lizenzierung) Schutz des geistigen Eigentums (Reverse Engineering) Schutz gegen Analyse durch Mitbewerber Schutz gegen Verwendung von Code Integritätsschutz von Daten und Code Schutz von Daten als Bestandteil des Produktes (Wettbewerbsvorteil)
58 59 Erreichung Schutzziele bei Verschlüsselung Schutz gegen Raubkopien (Lizenzierung) Schutz des geistigen Eigentums (Reverse Engineering) Schutz gegen Analyse durch Mitbewerber Schutz gegen Verwendung von Code Integritätsschutz von Daten und Code Schutz von Daten als Bestandteil des Produktes (Wettbewerbsvorteil)
59 Wir sind gewappnet! 60
60 61 Vielen Dank! WIBU-SYSTEMS Germany USA China
Die Programmiersprache Java. Dr. Wolfgang Süß Thorsten Schlachter
Die Programmiersprache Java Dr. Wolfgang Süß Thorsten Schlachter Eigenschaften von Java Java ist eine von der Firma Sun Microsystems entwickelte objektorientierte Programmiersprache. Java ist......a simple,
Programmieren I. Die Programmiersprache Java. www.kit.edu. Institut für Angewandte Informatik
Programmieren I Die Programmiersprache Java KIT Universität des Landes Baden-Württemberg und nationales Großforschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu Eigenschaften von Java Java ist eine
Java Einführung Programmcode
Java Einführung Programmcode Inhalt dieser Einheit Programmelemente Der erste Programmcode Die Entwicklungsumgebung: Sun's Java Software Development Kit (SDK) Vom Code zum Ausführen des Programms 2 Wiederholung:
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
1. Java Grundbegriffe
1. Java Grundbegriffe Geschichte von Java Programmieren mit Java Interpretieren vs. Kompilieren Java Byte-Code Jave Virtual Machine Arbeitsmaterialien Allgemeine Informatik 2 SS09 Folie 1.1 Java, eine
Programmieren I. Die Programmiersprache Java. www.kit.edu. Institut für Angewandte Informatik
Programmieren I Die Programmiersprache Java KIT Universität des Landes Baden-Württemberg und nationales Großforschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu Eigenschaften von Java Java ist eine
Vorlesung Objektorientierte Softwareentwicklung. Kapitel 0. Java-Überblick
Vorlesung Objektorientierte Softwareentwicklung Sommersemester este 2008 Kapitel 0. Java-Überblick Was sind die Ziele? Warum Java? Komplexe Anwendungen e-business verteilt zuverlässig sicher mobil persistent
Übung Softwareentwicklung 1, WS0910 Gemeinsame Einführung
Übung Softwareentwicklung 1, WS0910 Gemeinsame Einführung Informatik, Informationselektronik, Wirtschaftsinformatik, Lehramt Informatik, Chemie, etc. Dipl.-Ing. Institute for Pervasive Computing Johannes
Produkte schützen Embedded Security: Schutz vor Reverse Engineering, Nachbauten, Manipulation und gleichzeitig Enabler für neue Geschäftsmodelle
Produkte schützen Embedded Security: Schutz vor Reverse Engineering, Nachbauten, Manipulation und gleichzeitig Enabler für neue Geschäftsmodelle Günther Fischer Embedded Consultant guenther.fischer@wibu.com
Java - Einführung in die Programmiersprache. Leibniz Universität IT Services Anja Aue
Java - Einführung in die Programmiersprache Leibniz Universität Anja Aue Handbücher am RRZN Programmierung. Java: Grundlagen und Einführung Java: Fortgeschrittene Techniken und APIs Java und XML Java -
Schutz und Sicherheit für vernetzte Embedded-Systeme
1 Schutz und Sicherheit für vernetzte Embedded-Systeme Know-How- und Integritätsschutz durch Kryptographie (Grundlagen und Anwendungsbeispiele) Günther Fischer Consulting WIBU SYSTEMS AG Guenther.Fischer@wibu.com
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
Kapitel 02. Java was, wann, warum, wieso. Fachgebiet Knowledge Engineering Prof. Dr. Johannes Fürnkranz
Kapitel 02 Java was, wann, warum, wieso Java, eine objektorientierte Programmiersprache Java ist eine objektorientierte Programmiersprache und als solche ein eingetragenes Warenzeichen der Firma Sun Microsystems.
Programmieren I. Die Programmiersprache Java. www.kit.edu. Institut für Angewandte Informatik
Programmieren I Die Programmiersprache Java KIT Universität des Landes Baden-Württemberg und nationales Großforschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu Eigenschaften von Java Java ist eine
Grundlagen der Programmierung UE
Grundlagen der Programmierung UE Research and teaching network GdP UE H. Prähofer, R. Wolfinger 1 Vortragende Dr. Herbert Praehofer (G1 u. G2) Mag. Reinhard Wolfinger (G3 u. G4) Institute for System Software
Java für C++ Programmierer
Java für C++ Programmierer Alexander Bernauer bernauer@inf.ethz.ch Einführung in die Übungen zu Informatik II (D ITET) FS2010 ETH Zürich Ziel Allgemeiner Überblick Kennenlernen der Suchbegriffe Warum Java?
Grundlagen der Programmierung UE
Grundlagen der Programmierung UE Research and teaching network GdP UE H. Prähofer, M Löberbauer 1 Vortragende Dipl.-Ing. Markus Löberbauer (G1) Dr. Herbert Praehofer (G2 u. G3) Institute for System Software
Einführung in die Programmierung mit Java
Einführung in die Programmierung mit Java Martin Wirsing 2 Ziele Geschichte der OO-Programmiersprachen Warum Java als Programmiersprache verwenden? Ein einfaches Java-Programm erstellen, übersetzen und
Smartphone Entwicklung mit Android und Java
Smartphone Entwicklung mit Android und Java predic8 GmbH Moltkestr. 40 53173 Bonn Tel: (0228)5552576-0 www.predic8.de info@predic8.de Was ist Android Offene Plattform für mobile Geräte Software Kompletter
Rüdiger Kügler VP Sales Security Expert. rk@wibu.com. Seite 1
Das Original ist die beste Kopie Lösungen und Entwicklungen auf dem Softwarelizenzierungsmarkt Rüdiger Kügler VP Sales Security Expert rk@wibu.com Seite 1 Agenda Wer ist WIBU-SYSTEMS Was sind Raubkopien
Eclipse und EclipseLink
Eclipse und EclipseLink Johannes Michler Johannes.Michler@promatis.de PROMATIS, Ettlingen Zugriff auf Oracle Datenbanken aus Eclipse RCP Anwendungen via EclipseLink 18.09.2009 1 Gliederung Eclipse als
Java Programmierung auf der Konsole / unter Eclipse
Fakultät Informatik, HFU Brückenkurs Programmieren 1 Java Programmierung auf der Konsole / unter Eclipse Allgemeine Begriffe Programmiersprache: künstliche Sprache zur Notation von Programmen Programm:
Virtual Machines unter der Haube
Virtual Machines unter der Haube Alexander Lais unfug.org 21.06.2007 Agenda Aufbau der Laufzeitumgebungen Binärformate und Befehlssatz Compilierung Garbage Collection Nativer Code
Einführung in Java. PING e.v. Weiterbildung Andreas Rossbacher 24. März 2005
Einführung in Java PING e.v. Weiterbildung Andreas Rossbacher 24. März 2005 Gliederung 1. Was ist Java / Geschichte von Java 2. Prinzip der Plattformunabhängigkeit 3. Wie kommt man vom Quellcode zum Programm
Einführung in JAVA. Viele Höhen und Tiefen Java war schon einmal nahezu tot. Heute extrem weit verbreitet vom Supercomputer bis hin zum Handy.
Small History Machine Virtual Machine (VM) Komponenten der VM Entwicklungswerkzeuge JDK Woher bekommt man JDK Wie installiert man JDK Wie benutzt man JDK Entwicklungsumgebungen Java 23. May 1995: John
Managed VPSv3 Was ist neu?
Managed VPSv3 Was ist neu? Copyright 2006 VERIO Europe Seite 1 1 EINFÜHRUNG 3 1.1 Inhalt 3 2 WAS IST NEU? 4 2.1 Speicherplatz 4 2.2 Betriebssystem 4 2.3 Dateisystem 4 2.4 Wichtige Services 5 2.5 Programme
Die Geheimnisse meiner SMF Daten
Die Geheimnisse meiner SMF Daten MARTA CIEPLAK, Systemwork Sell, Account Manager, marta.cieplak@systemwork.eu SMF4U Browser 1. Zwei Fälle 2. Das Tool zur Lösung 3. Erfahrungsbericht Fall: Wer hat die Daten
Programmieren I. Die Programmiersprache Java. www.kit.edu. Institut für Angewandte Informatik
Programmieren I Die Programmiersprache Java KIT Universität des Landes Baden-Württemberg und nationales Großforschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu Eigenschaften von Java Java ist eine
eridea AG Installation Eclipse V 1.4
Installation Eclipse Inhaltsverzeichnis Einleitung... 2 Voraussetzungen für die Eclipsenutzung... 2 SAP GUI aktualisieren... 2 Java aktualisieren... 3 VC++ aktualisieren... 3 Eclipse installieren... 5
µcodemeter Security für Infineon XMC 4xxx Marco Blume Produkt Manager Embedded marco.blume@wibu.com
µcodemeter Security für Infineon XMC 4xxx Marco Blume Produkt Manager Embedded marco.blume@wibu.com 07.05.2015 WIBU-SYSTEMS AG 2 Vorstellung WIBU-SYSTEMS AG Wibu-Systems Global Player in Software Security
Eins für alles? Monitoring und Profiling mit VisualVM
Eins für alles? Monitoring und Profiling mit VisualVM Thomas Much thomas@muchsoft.com www.muchsoft.com Eins für alles / VisualVM Copyright 2009 Thomas Much 1 Referent Dipl.-Inform. Thomas Much IT-Architekt,
JAVA. Ein kurzer Überblick. Thomas Karp
JAVA Ein kurzer Überblick Thomas Karp WAS IST JAVA? Java ist eine fast rein objektorientierte Sprache nicht JavaScript eine professionelle Sprache eine im Unterricht weit verbreitete Sprache für verschiedene
Grundlagen zur nebenläufigen Programmierung in Java
Grundlagen zur nebenläufigen Programmierung in Java Karlsruher Entwicklertag 2013 5. Juni 2013 Referent: Christian Kumpe Inhalt des Vortrags Was zeigt dieser Vortrag? Ein einfaches Beispiel mit allerlei
Programmieren lernen mit Groovy Allgemeines Programme und ihre Ausführung
Programmieren lernen mit Groovy Allgemeines Programme und ihre Ausführung Seite 1 Allgemeines Dozent Dr. Th. Letschert Lernziel Einführung in die Software-Entwicklung und Programmierung Kenntnisse einer
Industrie 4.0 Secure Plug & Work
24. Juni 2016 BMBF Kongress Produktionsforschung - Selbstbeschreibung und sichere Kommunikation für Maschinen und Anlagen in Industrie 4.0 - Secure Plug & Work 1 Industrie 4.0 Secure Plug & Work BMBF Kongress
Andreas Mösching Senior IT Architekt Hewlett-Packard (Schweiz) GmbH HP Banking Service Center Bern andreas.moesching@rtc.ch
Eclipse Runtime (OSGi) als Plattform eines Swing Rich Client Andreas Mösching Senior IT Architekt Hewlett-Packard (Schweiz) GmbH HP Banking Service Center Bern andreas.moesching@rtc.ch Zu meiner Person
Berner Fachhochschule Hochschule für Technik und Informatik HTI. Kapitel 1. Einstieg in Java. Dr. Elham Firouzi 06.09.10 1
Kapitel 1 Einstieg in Java Dr. Elham Firouzi 06.09.10 1 1 : Einstieg in Java Einleitung Ein erstes Beispiel Berner Fachhochschule Entwicklung von Java-Programmen Applikationen Applets Vor und Nachteile
Programmierkurs Java. Grundlagen. Prof. Dr. Stefan Fischer Institut für Telematik, Universität zu Lübeck http://www.itm.uni-luebeck.
Programmierkurs Java Grundlagen Prof. Dr. Stefan Fischer Institut für Telematik, Universität zu Lübeck http://www.itm.uni-luebeck.de/people/fischer #2 Algorithmen, Maschinen- und Programmiersprachen Algorithmen
Einführung in Betriebssysteme
Einführung in Betriebssysteme APPLE ios Entwicklung von ios Entwickelt auf der Basis von MacOS X UNIX Vorgestellt am 9.1.2007 Zusammen mit iphone Markenname von Cisco Internetwork Operating System Für
Vorkurs Informatik WiSe 15/16
Java 1 Dr. Werner Struckmann / Stephan Mielke, Jakob Garbe, 12.10.2015 Technische Universität Braunschweig, IPS Überblick Organisatorisches Arbeitsablauf Hello! 12.10.2015 Dr. Werner Struckmann / Stephan
ATHOS Benutzertreffen
ATHOS Benutzertreffen Report of the Lab Glashütten, 10. November 2010 HighQSoft GmbH, Karst Schaap karst.schaap@highqsoft.de www.highqsoft.de / www.highqsoft.com 10 November 2010-1 Themen Aktueller Stand
n2pdf PDF your Notes
n2pdf PDF your Notes Referent: Bernd Engelhardt, SoftVision Development GmbH (be@softvision.de) n2pdf In Kürze Komplettlösung für Notes/Domino (Client/Server) zur Konvertierung von Dokumenten und/oder
Einführung in Javadoc
Einführung in Javadoc Johannes Rinn http://java.sun.com/j2se/javadoc Was ist Javadoc? Javadoc ist ein Werkzeug, dass eine standardisierte Dokumentation für die Programmiersprache Java unterstützt. Vorteil:
Speichermanagement auf Basis von Festplatten und optischer Jukebox
Speichermanagement auf Basis von Festplatten und optischer Jukebox Horst Schellong DISC GmbH hschellong@disc-gmbh.com Company Profile Hersteller von optischen Libraries und Speichersystemen Gegründet 1994
OSGi-basierte Webapplikationen Ein Erfahrungsbericht
OSGi-basierte Webapplikationen Ein Erfahrungsbericht Zürich, 18. März 2009 Pascal Nüesch, Software Engineer 1 www.namics.com Zu meiner Person» Lehre als Elektroniker mit Schwerpunkt SW-Entwicklung» Java
Datenhaltung für Android. Model First
Datenhaltung für Android Model First Frederik Götz, Johannes Tysiak 26.05.2011 Unser Ziel! 26.05.2011 Datenhaltung in Android - Model First» Frederik Götz, Johannes Tysiak 2 Agenda Android Quickstart Datenhaltung
New Features Oracle Forms 11g Nichts Neu für Forms?
New Features Oracle Forms 11g Nichts Neu für Forms? Perry Pakull Technology Manager perry.pakull@trivadis.com Zürich, 20.04.2010 Basel Baden Bern Lausanne Zürich Düsseldorf Frankfurt/M. Freiburg i. Br.
Es war einmal ein müder Programmierer
Es war einmal ein müder Programmierer Was ist Java? Hauptinsel Indonesiens umgangssprachliche Ausdruck für Kaffee in USA plattformunabhängige Programmiersprache kostenlos verfügbar besteht aus Vielzahl
What's new in NetBackup 7.0 What's new in Networker 7.6. best Open Systems Day April 2010. Unterföhring
What's new in NetBackup 7.0 What's new in Networker 7.6 best Open Systems Day April 2010 Unterföhring Marco Kühn best Systeme GmbH marco.kuehn@best.de Agenda NetBackup 7.0 Networker 7.6 4/26/10 Seite 2
Kurzanleitung Installation der Zend Studio Sprachpakete
Kurzanleitung Installation der Zend Studio Sprachpakete Von Zend Technologies, Inc. www.zend.com Installation Zend Studio Sprachpaket Wenn Ihre regionalen Einstellungen für Deutsch, Französisch oder Italienisch
11.10.2010. Eine Einführung - FH Krefeld WS2010-11. NetBeans IDE
NetBeans IDE 1 Entwicklungsumgebung: komplett in Java geschrieben läuft auf NetBeans Plattform wurde hauptsächlich für die Programmiersprache Java entwickelt unterstützt unter anderem C, C++ und dynamische
Applications Applets (eingeschränkte Rechte)
1 Arten von Java-Programmen Man unterscheidet 2 verschiedene Arten von Java-Programmen: Applications Applets (eingeschränkte Rechte) Erstere sind eigenständige Programme. Letztere sind "kleine" Programme,
Verteiltes Debugging. Gemeinsames Debuggen in Saros
Verteiltes Debugging Gemeinsames Debuggen in Saros Motivation Saros unterstützt bislang nur das gemeinsame editieren von Quelltext > Support auf Compile Time Ebene Softwaredesign Fehler (Anw Logik) erst
Die Webtechnologien PHP und ASP.NET im Vergleich
20.1.2010 Vortrag zur Seminararbeit Die Webtechnologien PHP und im Vergleich Autor: Janina Jansen 1. Betreuer: Prof. Dr. Ing. Andreas Terstegge 2. Betreuer: Marion Brandt-Röhrig, M.A. Inhalt: Motivation
Grundlagen der Informatik Übungen 1.Termin
Grundlagen der Informatik Übungen 1.Termin Dr. Ing Natalia Currle-Linde Institut für Höchstleistungsrechnen 1 Kurzvorstellung Dr.-Ing. Natalia Currle-Linde linde@hlrs.de Institut für Höchstleistungsrechnen
Vergleich CLR von.net mit JVM:
Vergleich CLR von.net mit JVM: Art und Martin Ahke, Marco Fiedler und Lars Schittly, Institut für Informatik 30.11.05 Basic mit JVM Applet Designer: - Generiert Javaquell- und Bytecode aus Visual Basic
Einführung in die Programmierung 1
Einführung in die Programmierung 1 Einführung (S.2) Einrichten von Eclipse (S.4) Mein Erstes Programm (S.5) Hallo Welt!? Programm Der Mensch (S.11) Klassen (S.12) Einführung Wie Funktioniert Code? Geschriebener
JavaFX goes Open Source
JavaFX goes Open Source Wolfgang Weigend Sen. Leitender Systemberater Java Technologie und Architektur 1 Copyright 2013, Oracle and/or its affiliates. All rights The following is intended to outline our
Inhaltsverzeichnis. 2.2 Grundlagen der UML... 41. 2.3 Zusammenfassung... 53
Vorwort......................................................... 13 1 Vorbereitungen.................................................. 17 1.1 JDK-Installation unter Windows................................
CS1005 Objektorientierte Programmierung
CS1005 Objektorientierte Programmierung Bachelor of Science (Informatik) Allgemeines Java-Programme erstellen und ausführen Seite 1 Allgemeines Dozenten Dr. Th. Letschert Dr. Andreas Dominik Tutoren Lernziel
.NET und wieder eine Middleware Architektur?
.NET und wieder eine Middleware Architektur? Volker Birk CCC ERFA Ulm vb@ebios.de Volker Birk, vb@ebios.de 1 .NET na und?.net soll die Architektur im Internet werden meint Microsoft. Genau so wie Windows?.NET
Effiziente Java Programmierung
Effiziente Java Programmierung Seminar Implementierung moderner virtueller Maschinen am Beispiel von Java SS 2009 von Reinhard Klaus Losse 20. Mai 2009 Gliederung Definition Effizienz Werkzeuge zum Messen
eridea AG Installation Eclipse V 1.1
Installation Eclipse Inhaltsverzeichnis Einleitung... 2 Voraussetzungen für die Eclipsenutzung... 2 SAP GUI aktualisieren... 2 Java aktualisieren... 3 VC++ aktualisieren... 3 Eclipse installieren... 5
RAP vs. GWT vs. GAE/J + jquery. Web Technologien im Verlgeich
RAP vs. GWT vs. GAE/J + jquery Web Technologien im Verlgeich RAP vs GWT vs jquery Dominik Wißkirchen 30. Oktober 2010 Abkürzungen RAP AJAX RWT Rich AJAX Platform Asynchronous JavaScript and XML RAP Widget
Lösungen zum 2. Komplex
Studiengang Medieninformatik LV Software Engineering I Prof. Dr.-Ing. habil. H. Fritzsche Wintersemester 2013/14 Lösungen zum 2. Komplex Aufgabe 1 Exportieren der Anwendung: Über das Kontext-Menü des Projektes
Reflection. Arthur Zaczek. Nov 2014
Arthur Zaczek Nov 2014 1 Einleitung 1.1 Definition Reflection ist das Auslesen von Metainformationen über Klassen, deren Methoden & Eigenschaften zur Laufzeit. 1.2 Anwendungsfälle Analyse von Programmen
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
NetBeans Rich Client Platform. Anton Epple Göttingen, Source Talk Tage
NetBeans RCP Anton Epple Göttingen, 25.9.2008 Source Talk Tage Was ist eine Rich Client Platform? Framework zur Entwicklung von Desktop Applikationen Besteht aus: Anwendungslaufzeitumgebung ~ Vergleichbar
Begrüssung VMware Partner Exchange Update VMware Virtual SAN GA and use cases SimpliVity Converged Infrastructure Kaffeepause
we do IT better 08:30 Begrüssung VMware Partner Exchange Update VMware Virtual SAN GA and use cases SimpliVity Converged Infrastructure 10:05 10:30 Kaffeepause AirWatch Mobile Device Management VMware
Applets Belebung von Webseiten. Dipl.-Ing. Wolfgang Beer
Applets Belebung von Webseiten Dipl.-Ing. Wolfgang Beer Was sind Applets? Java Klassen, die spezielle Richtlinien befolgen, um: "in Internet-Browsern lauffähig zu sein" Somit ist, komplexere Funktionalität,
Eclipse Smart Client Beyond Eclipse RCP. Christian Campo, compeople, 24.April 2007
Eclipse Smart Client Beyond Eclipse RCP Christian Campo, compeople, 24.April 2007 1 Übersicht Definition / Architektur Smart Client Smart Client mit RCP Gesamtfazit 2 Fat - Thin - Smart Fat Client lokale
Eclipse 3.0 (Mac) 1. Eclipse installieren. 2. Welcome Projekt schliessen
Eclipse Seite 1 Eclipse 3.0 (Mac) 1. Eclipse installieren Eclipse kann man von der Webseite http://www.eclipse.org/downloads/index.php herunterladen. Eclipse ist für Windows, Mac und Linux erhältlich.
4D Server v12 64-bit Version BETA VERSION
4D Server v12 64-bit Version BETA VERSION 4D Server v12 unterstützt jetzt das Windows 64-bit Betriebssystem. Hauptvorteil der 64-bit Technologie ist die rundum verbesserte Performance der Anwendungen und
Spring Dynamic Modules for OSGi Service Platforms
Gerd Wütherich freiberuflicher Softwarearchitekt Spring Dynamic Modules for OSGi Service Platforms Server Anwendungen mit Spring und Eclipse Equinox Agenda OSGi Technologie: OSGi Technologie im Überblick
Programmieren II. Dr. Klaus Höppner. Hochschule Darmstadt WS 2006/2007
Programmieren II Dr. Klaus Höppner Hochschule Darmstadt WS 2006/2007 1 / 15 Einführung: Grafische Benutzeroberflächen 2 / 15 Einführung: GUI Fast alle Programme besitzen mittlerweile eine grafische Benutzeroberfläche
Einführung in. JNLP und Java Web Start
Einführung in Reiner Eberhard, Thomas Forster 1 Arten der Softwareverteilung: Windows.exe Dateien Java Applikationen HTML Anwendungen (Servlets / JSP) Java Applets 2 Derzeitige Problemfelder: Windows.exe
Sicheres C Programmieren in Embedded Systemen ARM II (ARM7TMDI [1] ) Wintersemester 2010-2011
Sicheres C in Embedded Systemen ARM II (ARM7TMDI [1] ) Wintersemester 2010-2011 Dipl. Ing. (FH) Ebrecht Roland, Infineon Technologies AG M.Eng (Electronic Systems) Güller Markus, Infineon Technologies
Kurzanleitung zu XML2DB
Kurzanleitung zu XML2DB Inhaltsverzeichnis 1. Einleitung...3 2. Entwicklungsumgebung...3 3. Betriebsanleitung...3 3.1 Einrichten der Java Umgebung...3 3.2 Allgemeines zu java und javac...4 3.2.1 Allgemeines
Prozedurale Programmierung (PPG)
Prozedurale Programmierung (PPG) HS 2009 Praktikum 3: Einführung in Java und BlueJ Im diesem Praktikum machen Sie ihren Computer bereit für die folgenden Praktikas und erhalten einen ersten Einblick wie
Eclipse :Bis(s) zum Javacode Einführung in die Eclipse-IDE
EF-III-A6 Einführung in Eclipse Seite 1 von 5 Eclipse :Bis(s) zum Javacode Einführung in die Eclipse-IDE Erläuterung Eclipse/IDE Eclipse ist eine integrierte Open-Source-Entwicklungsumgebung für Software
WizTom Localization Suite
Localization Suite ist eine Lokalisationsumgebung die dazu fähig ist jede beliebige Anwendung und jede beliebige Architektur an die örtlichen Begebenheiten sprachlich anzupassen: Windows, 70/550- Emulation,
Einführung in Eclipse und Java
Universität Bayreuth Lehrstuhl für Angewandte Informatik IV Datenbanken und Informationssysteme Prof. Dr.-Ing. Jablonski Einführung in Eclipse und Java Dipl.Inf. Manuel Götz Lehrstuhl für Angewandte Informatik
Implementierung der Jikes Research Virtual Machine
Fakultät Informatik Institut für technische Informatik, Professur für VLSI-Entwurfssysteme, Diagnostik und Architektur Implementierung der Jikes Research Virtual Machine Hauptseminar Technische Informatik
Lizenzmanagement. Lizenzgeber: Produktbeispiele und Zukünftige Entwicklung. Dipl.-Ing. Frank Raudszus
Lizenzmanagement Lizenzgeber: Produktbeispiele und Zukünftige Entwicklung Dipl.-Ing. Frank Raudszus Lizenzmanagement, Hochschule Darmstadt, Wintersemester 2008/2009 1 Kurs-Übersicht 13.10.: Einführung
Modellierung und Programmierung 1
Modellierung und Programmierung 1 Prof. Dr. Sonja Prohaska Computational EvoDevo Group Institut für Informatik Universität Leipzig 21. Oktober 2015 Entstehung von Java 1991 entwickeln Mike Sheridan, James
Dirk Eismann Herrlich & Ramuschkat GmbH. Spring- und Flex- Integration
Dirk Eismann Herrlich & Ramuschkat GmbH Spring- und Flex- Integration Über mich Dirk Eismann Softwareentwickler und Consultant bei der Herrlich & Ramuschkat GmbH in Hannover Schwerpunkt: Projekte und Consulting
SINUMERIK & SINAMICS Productivity in Motion
SINUMERIK & SINAMICS Productivity in Motion SINUMERIK Integrate HMI OA SINUMERIK & SINAMICS Productivity in Motion Einleitung Create MyHMI /3GL Run MyScreens Create MyHMI /PRO Summary SINUMERIK Integrate
CodeMeterAct Erste Schritte
CodeMeterAct Erste Schritte Version 1.3. Copyright Alle Rechte vorbehalten. Diese Dokumentation darf ohne schriftliche Genehmigung von WIBU- SYSTEMS AG (auch nicht in Auszügen) vervielfältigt oder veröffentlicht
JPC Visualisierung in Java
Visualisierung in Java Ihr Partner für f r Embedded Systeme! Hauptsitz: Niederwangen (Bern), Schweiz Niederlassungen: Winterthur (Zürich) und Basel, Schweiz Sales Office: München, Deutschland NetModule
Python Programmierung. Dipl.-Ing.(FH) Volker Schepper
Python Programmierung Kontaktdaten Homepage: http://wwwlehre.dhbw-stuttgart.de/~schepper/ Email: Volker. Schepper [A@T] yahoo.de Vorlesung Skriptsprachen Vorlesung: 06.03.2013 13.03.2013 20.03.2013 27.03.2013
Cnlab / CSI 2011. Demo Smart-Phone: Ein tragbares Risiko?
Cnlab / CSI 2011 Demo Smart-Phone: Ein tragbares Risiko? Agenda Demo 45 Schutz der Smart-Phones: - Angriffsszenarien - «Jailbreak» - Was nützt die PIN? - Demo: Zugriff auf Passwörter iphone Bekannte Schwachstellen
Software-Engineering Grundlagen des Software-Engineering
Software-Engineering Grundlagen des Software-Engineering 7.2 Programmentwicklung und Debuggen mit IDE und CASE-Tools Übungen Prof. Dr. Rolf Dornberger SWE: 7.2 Programmentwicklung und Debuggen mit IDE
App Entwicklung mit Hilfe von Phonegap. Web Advanced II - SS 2012 Jennifer Beckmann
App Entwicklung mit Hilfe von Phonegap Web Advanced II - SS 2012 Jennifer Beckmann http://www.focus.de/digital/internet/netzoekonomie-blog/smartphone-googles-android-laeuft-konkurrenz-in-deutschland-davon_aid_723544.html
Björn Heinemann Leiter Entwicklung Energiewirtschaft
Björn Heinemann Leiter Entwicklung Energiewirtschaft Basis eclipse RCP eclipse platform project als Basis mit frameworks und services RCP Rich Client Platform zur Umsetzung einer Anwendung mit Benutzeroberfläche
Programmierung. Programme, Compiler, virtuelle Maschinen, Java
Programmierung Programme, Compiler, virtuelle Maschinen, Java Programme Ein Programm ist eine Folge von Anweisungen, die einem Computer sagen, was er tun soll tuwas.c for(int i=0; i=0; i
Persönliche Build-Höllen für Jedermann Andreas Hartmann & Dr. Halil-Cem Gürsoy
Über Ant und Maven zu SBT und Gradle Persönliche Build-Höllen für Jedermann Andreas Hartmann & Dr. Halil-Cem Gürsoy 07.04.2011 Speaker Andreas Hartmann [hartmann@adesso.de] Principal Software Engineer
Installationsanleitung NX 10
Installationsanleitung NX 10 Vorbereitung Mindestanforderungen für zertifizierte Betriebssysteme Die folgenden Betriebssysteme sind zertifiziert und die Mindestanforderung für NX 10. Neuere Versionen und
XE IDE Cloud Web. secure Data Agile. RAD Studio XE was gibt es Neues in Delphi? Daniel Magin Delphi Experts. Daniel Wolf Delphi-Praxis
RAD Studio XE was gibt es Neues in Delphi? Daniel Magin Delphi Experts Daniel Wolf Delphi-Praxis Matthias Eißing Embarcadero Germany GmbH XE IDE Cloud Web 1 secure Data Agile Agenda Neues in der IDE, RTL
Plattformunabhängige App-Entwicklung - Eine für alle?
Plattformunabhängige App-Entwicklung - Eine für alle? AGENDA Kurze Firmenpräsentation: M&M Software GmbH Motivation Komponenten der plattformunabhängigen App-Entwicklung Vergleich der App-Arten Beispiele
Zentrale Informatik. Cross-platform Apps. Andrea Grössbauer David Meier. 11/11/15 Lunchveranstaltungen HS16 - Crossplatform Apps 1
Cross-platform Apps Andrea Grössbauer David Meier 1 Was sind cross-platform Apps? Bei cross-platform Apps muss der Code nicht für jede Plattform einzeln geschrieben werden. Es wird sozusagen eine Universalapp