das javacard betriebssystem
Download
Skip this Video
Download Presentation
Das JavaCard-Betriebssystem

Loading in 2 Seconds...

play fullscreen
1 / 19

Das JavaCard-Betriebssystem - PowerPoint PPT Presentation


  • 71 Views
  • Uploaded on

Das JavaCard-Betriebssystem. Raphael Karte & Bert Nitsche. Übersicht. Anforderungen und Eigenschaften eines Chipkarten-Betriebssystems Aktuelle Systeme im Überblick Die JavaCard-Plattform „natives“ Chipkarten - Betriebssystem JCRE JCVM JCAPI Sicherheitsaspekte Ausblick.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'Das JavaCard-Betriebssystem' - rory


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
das javacard betriebssystem

Das JavaCard-Betriebssystem

Raphael Karte & Bert Nitsche

bersicht
Übersicht
  • Anforderungen und Eigenschaften eines Chipkarten-Betriebssystems
  • Aktuelle Systeme im Überblick
  • Die JavaCard-Plattform
    • „natives“ Chipkarten - Betriebssystem
    • JCRE
    • JCVM
    • JCAPI
  • Sicherheitsaspekte
  • Ausblick
chipkarten betriebssysteme anforderungen u eigenschaften
Chipkarten-Betriebssysteme: Anforderungen u. Eigenschaften
  • Keine Benutzeroberfläche
  • Kein Zugriff auf ext. Speicher
  • Sehr geringer Speicherbedarf (3-30kB)
  • hohe Sicherheit für Programme und Daten
  • Schnelle Ausführung der Kommunikation und kryptograph. Algorithmen gefordert
  • Keine Möglichkeit zur Änderung
propriet re betriebssysteme
Proprietäre Betriebssysteme
  • Keine klare Trennung von Anwendung und OS
  • API ist OS-spezifisch
  • Applikationen oft in Assembler (Übergang zu Hochsprachen)
  • Applikationen i.a. nicht nachladbar
  • Geringe Hardwareanforderungen
  • Hohe Performance
  • Standard-konform (z.B. ISO 7816, EMV)
offene plattformen
Offene Plattformen
  • Nutzt VM-Technik
    • Klare Trennung zw. Anwendung und OS
    • plattformunabhängige API
  • In Hochsprache programmierbar
  • Anwendungen nachladbar
  • Höhere Speicheranforderungen
  • Geringere Performance
  • Standard-konform, z.B. ISO 7816, EMV
natives betriebssystem
Natives Betriebssystem

Enthält zeitkritische und hardwarenahe Routinen

  • I/O Manager
    • Übertragungsprotokolle
    • Fehlererkennung und -korrektur
  • Kryptographie – Algorithmen
  • Direkte Hardware und Speicherzugriffe
  • Speichermanagement
javacard runtime environment
JavaCard Runtime Environment
  • Beschreibt Laufzeitverhalten der Plattform
  • Enthält Systemklassen für bestimmte Dienste
    • Applet-Management
      • Auswahl des Applets, Firewall, Object Sharing, Installation
    • Transaktions-Management
    • Verwaltung transienter Objekte und von Channels
  • Kann native methods enthalten
  • Installer
  • JavaCard Virtual Machine (JCVM)
  • JavaCard Application Programming Interface (JCAPI)
  • Sonstige Erweiterungen (z.B. VISA Open Platform API)
die javacard vm
Die JavaCard VM
  • Aufgaben:
    • Bytecode ausführen
    • Klassen und Objekte verwalten
    • Verschiedene Anwendungen separieren
    • Abgesicherte Nutzung gemeinsamer Datenbereiche
  • Aufbau:
m glichkeiten der jcvm
Package-Konzept

Vererbung

Virtuelle Methoden

Iterfaces

Exceptions

Atomare Operationen

Datentypen boolean, byte, short

Keine Threads

Kein Security-Manager

Keine Finalize-Methode

Keine Datentypen String, char, double, float, long oder mehrdim. Arrays

Keine Garbage Collection

Möglichkeiten der JCVM
namen f r klassen und packages
Namen für Klassen und Packages
  • JavaVM: Unicode-Strings, die wie Internet-Domainnamen strukturiert sind
  • JCVM: ApplicationIdentifier (AID)
    • RID : 5 Byte, von Registrierungsstelle vergeben
    • PIX: 0-11 Byte, vom Anbieter gewählt
token konzept
Token-Konzept
  • CAB-File enthält Token als Referenz zu anderen Packages, bzw. für Klassen und Methoden
objekttypen
Objekttypen
  • Persistente Objekte
    • Inhalt bleibt bis zum Löschen des Cardlets erhalten
    • Zugriff atomar
    • Nicht referenzierte Objekte verbleiben im Speicher
  • Transistente Objekte
    • Verlieren bei Stromausfall ihren Inhalt
    • Zugriff nicht atomar
    • Bisher nur Typen boolean, byte, short und Object als TOs realisierbar

JCSystem JCSystem.makeTransientShortArray (20,

JCSystem JCSystem.CLEAR_ON_.CLEAR_ON_DESELECT);

javacard api
JavaCard API
  • Core-Packages (1)
    • java.lang
      • Object, Throwable, Exception-Klassen
    • javacard.framework
      • AID - kapselt den ApplicationIdentifier
      • APDU - Kommunikation mit der Außenwelt
      • Applet - Basisklasse aller Anwendungen
      • JCSystem - Ressourcen-Management
      • OwnerPIN - Authorisation
      • Util - hilfreiche Zusatz-Funktionen
javacard api1
JavaCard API
  • Core-Packages (2)
    • java.io
      • Ein Subset des normalen java.io-Package
    • java.rmi
      • Ein Remote-Interface zur Realisierung von Klassen, deren Methoden durch das CAD aufgerufen werden
    • Javacard.framework.service
      • Ein Interface zur Realisierung von Sicherheits-Mechanismen und Diensten, welche direkt auf APDU-Daten zugreifen
javacard api2
JavaCard API
  • Core-Packages (3)
    • javacard.security
      • Hashing-Algorithmen
      • Zufallsgenerator
      • Methoden zum gesicherten Schlüsselaustausch
  • Extension-Package
    • javacardx.crypto
      • Implementation des asymmetrischen RSA-Algorithmus und mehrerer symmetrischer Algorithmen
      • Interface zur Realisierung eigener Krypto-Algorithmen
sicherheitsaspekte
Sicherheitsaspekte
  • Java
    • Keiner Pointer-Arithmetik
    • Feldergrenzen zur Laufzeit überwacht
    • Strikte Typprüfung
    • Überwachte Objektzugriffe
  • JavaCard
    • Firewall
    • Transaktions-Mechanismus
    • Kein direkter Hardware-Zugriff durch Applet
    • ...
zuk nftige entwicklungen
Zukünftige Entwicklungen
  • Chipkarte als aktives Element
  • Superchipkarten (mit Display, Folientastatur, eigener Stromversorgung, etc.)
  • Netzanschluss
  • On-the-Fly-Installation von Software-Komponenten
  • Karte als Kleinst-Computer
ad