DE19954532A1 - Verfahren und System zur Speicherung von JAVA-Objekten in Vorrichtungen mit einer verringerten Unterstützung von höheren Programmierkonzepten - Google Patents
Verfahren und System zur Speicherung von JAVA-Objekten in Vorrichtungen mit einer verringerten Unterstützung von höheren ProgrammierkonzeptenInfo
- Publication number
- DE19954532A1 DE19954532A1 DE19954532A DE19954532A DE19954532A1 DE 19954532 A1 DE19954532 A1 DE 19954532A1 DE 19954532 A DE19954532 A DE 19954532A DE 19954532 A DE19954532 A DE 19954532A DE 19954532 A1 DE19954532 A1 DE 19954532A1
- Authority
- DE
- Germany
- Prior art keywords
- objects
- application
- devices
- interface
- smartcard
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Ceased
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/448—Execution paradigms, e.g. implementations of programming paradigms
- G06F9/4488—Object-oriented
- G06F9/4493—Object persistence
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
Die auf einer SmartCard oder einer ähnlichen Vorrichtung zu speichernden Objekte sind Ausgaben des Hostanwendungscomputers in einer Form, die der Vorrichtung angepasst wurde, insbesondere in Form eines Byte-Arrays, das leicht auf einer derartigen SmartCard gespeichert werden kann. Diese Serialisierung umfasst das Konvertieren jedes einzelnen Objektes in eine Bytefolge, die das Objekt und seinen gegenwärtigen Status durch Speicherung aller Attribute, dessen Namen und aller weiterer Objekte, auf die sich das Objekt bezieht, das Gegenstand des Serialisierungsschrittes ist, repräsentiert. Mit der Gesamtheit dieser Informationen kann das Objekt in unveränderter Form nach einem Rücksetzen oder einer Unterbrechung, zu denen es während der Nutzung der SmartCard in einem jeweiligen SmartCard-Terminal kommen kann, wieder hergestellt werden. Die Wiederherstellungsprozedur wird auf analoge Weise durchgeführt: das Objekt, sowie alle weiteren Objekte auf die sich das Objekt bezieht, wird mit den aus der SmartCard ausgelesenen Daten instanziert und initialisiert. Das das Objekt repräsentierende Byte-Array kann sowohl auf gewöhnlichen dateisystemorientierten SmartCards als auch auf JavaCards gespeichert werden, ohne dass man die spezifischen weiteren Problemen konfrontiert wird (Fig. 1).
Description
Die vorliegende Erfindung bezieht sich auf die
Programmierung und den Betrieb von Anwendungen für den
Einsatz mit Vorrichtungen mit einer verringerten
Unterstützung von höheren Programmierkonzepten, insbesondere
für den Einsatz von SmartCards, sie bezieht sich
insbesondere auf Verbesserungen für die Programmierlese- und
-schreiboperationen in derartigen Vorrichtungen.
Seit eine Chipkarte für öffentliche Telefone 1984 in
Frankreich eingeführt wurde, ist das Chipkartengeschäft, die
ökonomischen und technologischen Aspekte betreffend, rapide
gewachsen. Bis zum Jahr 2000 wird ein jährliches Wachstum
von 25% erwartet. Die Deutsche Geldkarte wurde über 40
Millionen mal herausgegeben. Frühere einfache
Speicherchipplatten entwickelten sich zu modernen SmartCards
mit ihrem eigenen Mikroprozessor, eigenem Betriebssystem und
über 32 KBytes freiem Speicher für Anwendungen. Sehr
zuverlässige Authentisierung, elektronische Unterschriften
und Kryptografie sind Aufgaben bei denen SmartCards
traditionellen Technologien wie Magnetstreifenkarten
überlegen sind. Der integrierte Prozessor erlaubt es
SmartCards unabhängig zu arbeiten und nicht durch die
Umgebung beeinflussbar zu sein: empfindliche Daten, z. B. ein
geheimer Schlüssel, müssen die Karte niemals verlassen.
SmartCards sind in der Lage, kryptografische Algorithmen
oder Passwortüberprüfungen lokal durchzuführen, bevor
gespeicherte Daten freigegeben werden. Elektronische
Geldtransaktionen können auf diese Weise ohne eine
aufwendige Online-Verbindung zu Hostsystemen durchgeführt
werden. Deshalb spielen SmartCards insbesondere im
Electronic Business und Bankwesen eine besondere Rolle.
Ein anderes bedeutendes Gebiet von Anwendungen ist die
Konsumelektronik: Mobiltelefone und Set-Top-Boxen wenden
bereits SmartCard-Technologie an. Schließlich wird es in
einigen Jahren eine neue Generation kleiner Elektronikgeräte
geben, z. B. Computergeräte mit verringerten Ressourcen, die
in Massenproduktion hergestellte Niedrigpreisgeräte für eine
Vielzahl Einsatzfälle des täglichen Lebens darstellen, von
denen jedes einen Prozessorchip und etwas Programmspeicher
enthält.
Beiden Gerätetypen ist gemeinsam, dass sie durch den Besitz
einer verringerten Unterstützung für höhere
Programmierkonzepte gekennzeichnet sind.
Wenigstens ein großer Nachteil steht der Verbreitung
derartiger Vorrichtungen und besonders der von SmartCards
und ihrer Anwendungsentwicklung entgegen: die
Softwareentwicklungsprobleme, die mit dem Speichern und
Lesen auf/von derartigen Vorrichtungen einhergehen.
Das Speichern von Objekten, z. B. Programmierobjekten als ein
Element von objektorientierten Programmier (OOP-)Techniken,
ist eine wesentliche Aufgabe von objektorientierter
Softwareentwicklung. Das Speichern eines Objektes umfasst
sowohl das Speichern der Attribute, die das Objekt
beschreiben, und das Speichern des Status in dem (OOP)
Verfahren und Algorithmen enthalten sind, wenn das Objekt
gespeichert wird, um in der Lage zu sein, die Verfahren und
Algorithmen einfach und konsistent nach einem Rücksetzen
oder einer Unterbrechung eines Programms fortzuführen, das
beliebige Operationen an den Objekten ausgeführt hat.
Derartig hoch entwickelte Speicherverfahren können jedoch
auf Computer-Vorrichtungen mit verringerten Ressourcen, d. h.
beliebigen Vorrichtungen die einen Chip geringer Größe und
sehr beschränkter Rechenleistung und Speicherkapazität
besitzen, kaum genutzt werden. Weiterhin können sie auf den
obigen Vorrichtungen mit einer verringerten Unterstützung
höherer Programmierkonzepte nicht einfach ausgeführt werden.
Dateisystemorientierte SmartCards sind ein wichtiges
Beispiel für derartige Vorrichtungen. Auf SmardCards wird
jede Information unter Nutzung traditioneller
Dateistrukturen bei dem beschränkten Speicherplatz und
Dateizugriffseinschränkungen insbesondere für derartige
Vorrichtungen gespeichert. Derartige Strukturen enthalten
eine Sammlung einfacher Dateitypen und zugehöriger
Dateiverzeichnisse um die Anwendungsdaten zu speichern, die
zu einer Hostanwendung gehören, mit dem die SmartCard
genutzt wird. Zwischen Hostcomputer und SmartCard werden
Daten ausgetauscht, indem eine Vielzahl einfacher
Befehlsfolgen, gewöhnlich als APDU abgekürzt, genutzt
werden, welche die Daten als Abspann hinter den jeweiligen
Anweisungen tragen und in die SmartCards über die meist
vorhandenen zweipoligen Kontakte eingebracht werden.
Derartige dateisystemorientierte SmartCards sind die am
meisten eingesetzten und die billigsten, im Vergleich mit
den sogenannten JavaCards, wobei deren Entwicklung noch
nicht abgeschlossen ist. Derartige JavaCards sind in der
Lage, vollständige SmartCard-Anwendungen in Form von Applets
zu speichern, und sie können diese auch autonom ausführen.
In derartigen Karten können sowohl die einfachen Datentypen
als auch komplette Programmierobjekte gespeichert werden.
Eine derartige komfortable Speicherprozedur kann jedoch nur
von der SmartCard-Anwendung selbst realisiert werden und
kann nicht von der zum Austausch von Daten mit der jeweilige
SmartCard-Anwendung nötigen Hostanwendung angestoßen werden.
Wenn die Hostanwendung irgendein Objekt auf der JavaCard zu
speichern hat, muss zum Datenaustausch die traditionelle
Prozedur zur Übertragung von APDUs ausgeführt werden. Wenn
jedoch Daten in APDUs übertragen werden hat der
Anwendungsentwickler auf Datenformate Rücksicht zu nehmen,
um alle Daten in adäquater Form auf der SmartCard
anzuordnen. Diese Aufgabe erfordert eine Menge spezieller
Erfahrung, die spezifisch für jede SmartCard-
Dateisystemarchitektur ist.
Um das Datenmanagementproblem zu illustrieren mit dem der
Anwendungsprogrammierer konfrontiert ist, wird als nächstes
ein kleines und einfaches Beispiel gegeben.
Ein Anwendungsobjekt soll ein Bankkonto beschreiben. Die
Klasse wird "BankKonto" genannt. Sie hat die Merkmale
"Konto" und "KreditGrenze". Daneben umfasst diese Klasse die
Programmiermethoden "Abheben()", "Einzahlen()" und
"HoleAnzahlVonTransaktionen()". Der Anwendungsentwickler hat
nun die einzelnen Attribute von dem Objekt auszulesen und
diese auf der SmartCard spezifisch für das jeweilige Objekt
jeweils getrennt zu speichern. Somit sind Konto,
KreditGrenze sowie ein interner Zähler der
HoleAnzahlVonTransktionen, der für das Zwischenspeichern der
aktuellen Anzahl von SmartCard-Zugriffen notwendig ist, auf
diese komplizierte Weise zu behandeln.
Wenn der Anwendungsentwickler die jeweiligen Daten getrennt
und möglicherweise in einer Vielzahl verschiedener Weisen
speichern muss, wobei jeder Weg für einen bestimmten
SmartCard-Typ typisch ist, dann kann ein
Anwendungsentwickler keinen großen Vorteil aus dem
Softwareentwicklungskomfort ziehen, der zu
objektorientierten Anwendungen, z. B. visuelle
Programmiermethoden, gehört, da die SmartCards nur die oben
betrachteten einfachen Datentypen unterstützen. Der
Anwendungsentwickler hat die Objekte explizit in einfache
Datentypen umzuwandeln, die von der SmartCard unterstützt
werden, für die die Anwendung entworfen wurde. Derartige
Aufgaben unterbrechen eine schnelle vorwärts gerichtete
objektorientierte Softwareentwicklung und verkomplizieren
visuelle Programmiertechniken.
Eine Alternative zur Nutzung von JavaCards für die
Handhabung komplexer Objekte auf JavaCards ist nicht einfach
zu realisieren, da die JavaCard-Technologie nicht zur
Nutzung fertiggestellt, teuer und noch nicht ausreichend
standardisiert ist. Somit ist der bedeutendste SmartCard-
Sektor heute derjenige mit traditionellen
dateisystemorientierten SmartCards.
Deshalb ist es eine Aufgabe der vorliegenden Erfindung, die
Softwareentwicklung für Computergeräte mit verringerter
Unterstützung von höheren Programmierkonzepten und
insbesondere für SmartCard-Anwendungen durch Bereitstellung
eines Zugriffs durch objektorientierte Programmierung auf
SmartCards zu verbessern.
Diese Aufgabe der Erfindung wird durch die Merkmale erzielt,
die in den unabhängigen Ansprüchen festgehalten werden.
Weitere vorteilhafte Anordnungen und Ausführungsformen der
Erfindung werden in den jeweiligen Unterabschnitten
dargelegt.
Die Objekte, die auf einer SmartCard oder einer ähnlichen
Vorrichtung in dem oben genannten Sinn zu speichern sind,
sind Ausgaben von dem Hostanwendungscomputer, die in einer
seriellen Weise an die Vorrichtung angepasst sind,
insbesondere in Form eines Byte-Arrays, das leicht auf einer
derartigen SmartCard gespeichert werden kann. Die
Serialisierung umfasst zur Umwandlung eines bestimmten
Objektes in eine Folge aus Bytes, die das Objekt und dessen
aktuellen Status durch Speichern aller Attribute darstellt,
den Namen von diesem und allen weiteren Objekten, auf die
sich das Objekt bezieht, das bei der Serialisierung
betrachtet wird. Mit der Gesamtheit der Information kann das
Objekt später prinzipiell sofort oder in Verbindung mit
einem anderen Anschluss an eine Hostanwendung, die sich an
einem anderen Ort befindet, einschließlich der
Aktualisierungen, die vorher durchgeführt wurden, wieder
hergestellt werden. Weiterhin können die Objekte in einer
unveränderten Form nach einem Rücksetzen oder nach
Unterbrechungen wieder hergestellt werden, zu denen es
möglicherweise während der Nutzung der SmartCard in einem
entsprechenden SmartCard-Terminal kommen kann. Die
Wiederherstellungsprozedur wird auf analoge Weise
ausgeführt: Das Objekt sowie alle weiteren Objekte auf die
sich das Objekt bezieht wird instanziert und wird mit den
Daten, die aus dieser SmartCard ausgelesen wird,
initialisiert. Das Byte-Array, das das Objekt darstellt,
kann sowohl in üblichen dateisystemsorientierten SmartCards
als auch auf JavaCards gespeichert werden, ohne dass man mit
irgendwelchen weiteren spezifischen Problemen konfrontiert
wird.
Das Verfahren der vorliegenden Erfindung mit den Merkmalen
von Anspruch 1 hat in Bezug zu dem Verfahren, das in der
Diskussion zum Stand der Technik grob skizziert wurde, den
Vorteil, dass Geschäftsobjekte wie JavaBeans in integraler
Form, einschließlich der Attribute und der Verfahren des
Objektes, hintereinander und in einem einzigen Schritt
gespeichert werden können, anstatt eine Vielzahl einzelner
Attribute zu speichern oder ein besonderes Dateiformat zu
definieren. Dies vereinfacht das Entwickeln von Anwendungen
außerordentlich: Die Anwendungsentwickler definieren ihre
eigenen Objekte ohne deren binäre Darstellung
berücksichtigen zu müssen.
In einer bevorzugten Ausführungsform des erfindungsgemäßen
Verfahrens, das auf Java-Anwendungen angewandt wird, ist es
vorteilhaft, diesen Serialisierungsschritt einfach durch
Einsatz der "Objektserialisierung" zu realisieren, die Teil
von Java 1.1 ist.
Es ist somit möglich, die Nutzung von JavaBean-Items zu
erweitern, um die derartige Itemtechnologie auf bestimmte
Verfahren zur Handhabung derartiger Objekte, wie dem
Speichern und Lesen der Objekte, für Programmierungszwecke
anzuwenden.
In einer weiteren bevorzugten Ausführungsform werden die
Objekte in TLV-formatierter Form gepackt, d. h. Kennzeichen,
Länge und Wert werden komprimiert bevor sie gespeichert
werden. Dies erhöht den Nutzungsgrad des begrenzten
Speicherplatzes auf derartigen SmartCards und ähnlichen
Vorrichtungen.
So werden SmartCard-Anwendungsdaten transparenter, die
Handhabung derartiger Daten wird einfacher und flexibler, da
alle Datentypen der angelegten objektorientierten
Programmiersprache bereitgestellt werden. Eine spezielle
Kenntnis für SmartCard-Dateisystemstrukturen ist für den
Anwendungsentwickler nicht erforderlich.
Indem eine objektorientierte Anwendungsentwicklung für
dateisystemorientierte SmartCards nach dem Stand der Technik
ermöglicht wird, können diese zur Entwicklung innovativer
Softwarelösungen genutzt werden, die mit modernen
objektorientierten Softwareentwicklungstechniken
einschließlich visueller Programmiertechniken ausgeführt
werden können. Somit schließt das Grundprinzip der
vorliegenden Erfindung eine Lücke zwischen modernen
Programmiertechniken und ihrer Anwendbarkeit auf
Vorrichtungen mit einer verringerten Unterstützung höherer
Programmierkonzepte, wie etwa SmartCards. Das Schließen
dieser Lücke ist bedeutend, da neue JavaCards noch nicht
völlig fertig entwickelt sind und diese viel teurer als
dateisystemorientierte SmartCards sind.
Somit können mit der Hilfe von JavaBean-Technologie aus
einfachen und flexiblen Softwareelementen SmartCard-
Anwendungen in Java zusammengestellt werden, die die
Anwendungsdaten enthalten und die ohne getrennte
Programmierleistungen als eine Gesamteinheit auf jeder
SmartCard gespeichert werden können. Derartige Elemente
liefern für die Zusammenstellung komplexer Strukturen von
SmartCard Informationen durch visuelle Programmiertechniken
ohne besondere Kenntnis von SmartCards und ohne weitere
Kenntnis auf diesem Gebiet. Die Nutzung der vorgeschlagenen
Java-Serialisierung zur Durchführung der vorgeschlagenen
Umwandlung bietet den Vorteil eines allgemein akzeptierten
Quasistandards, der sich auf das Speicherformat der
Objektzustände bezieht.
Weiterhin können Forderungen nach größerem Speicherplatz im
Vergleich zu den Anforderungen von konventionellem,
optimiertem Kartenlayout durch die oben betrachteten
Vorteile und durch den deutlich erkennbaren Trend zu
SmartCards mit stetig anwachsendem Speicherplatz
ausgeglichen und ausgewogen werden.
Weiterhin erfordert das vorgeschlagene Verfahren keine
JavaSmartCard-Technologie, sie kann jedoch JavaSmartCards
zur Nutzung beinhalten.
Weiterhin kann eine feste Speicherung eines Objektstatus
erzielt und genutzt werden, um komplexe eigene Klassen einer
objektorientierten Anwendung in Verbindung mit SmartCards
elegant zu nutzen.
Schließlich ist dieser Ansatz für visuelle
Softwareentwicklung prädestiniert, bei der der Programmierer
seine Anwendungsobjekte erzeugt und diese durch Ereignisse
quasi intuitiv in einer grafischen Umgebung verbindet.
Die vorliegende Erfindung wird beispielhaft illustriert und
ist nicht durch die Form der Figuren der zugehörigen
Zeichnungen begrenzt, wobei:
Fig. 1 eine schematische Skizze ist, die einen
zusammenfassenden Überblick der erfindungsgemäßen
Speicher- und Leseverfahren einschließlich der
Objekte und der Darstellung ihrer Stati darstellt,
Fig. 2 eine schematische Darstellung eines Blockdiagramms
ist, das die wesentlichen Schritte des
Speicherverfahrens gemäß der Erfindung zeigt,
Fig. 3 eine schematische Darstellung eines Blockdiagramms
ist, das die wesentlichen Schritte des
Leseverfahrens gemäß der Erfindung zeigt.
Unter allgemeiner Bezugnahme auf die Figuren und mit
besonderer Bezugnahme auf Fig. 1 wird als nächstes das
Grundprinzip der vorliegenden Erfindung unten illustriert
und zusammengefasst.
Das Prinzip wird an Hand einer Bankanwendung 6 illustriert,
von der angenommen werden kann, dass sie mit einer Vielzahl
unterschiedlicher SmartCards 7, 8 über eine
Programmierschnittstelle 9 arbeitet, die eine zentrale Rolle
bei der Implementierung des erfindungsgemäßen Verfahrens
spielt. Die Anwendung umfasst wenigstens zwei beispielhafte
Anwendungsobjekte, ein Anwendungsobjekt 10 hält die Daten,
die den Kartenhalter beschreiben, und ein weiteres Objekt 12
beschreibt das Bankkonto des Kartenhalters. Dieses Beispiel
wird absichtlich einfach gehalten, um den Blick auf den Kern
der vorliegenden Erfindung zu richten.
Die Serialisierung von Objekten vor deren Speicherung und
die jeweilige Deserialisierung nach deren Lesen findet in
der Schnittstelle 9 statt und kann eine JavaBeanItem-Klasse
umfassen, die dem Anwendungsingenieur zur Verfügung gestellt
wird.
Die BeanItem-Klasse liefert die Funktionalität zum Speichern
und Wiederherstellen, d. h. zum Lesen der
anwendungsspezifischen Objekte auf beziehungsweise von den
SmartCards. Aber jedes besondere Anwendungsobjekt kann durch
den Anwendungsingenieur selbst definiert werden. Das
Kontoobjekt 12 kann wie folgt beschrieben werden:
Wie man sehen kann besitzt es drei Datenitems, d. h. Konto,
Kreditgrenze und Anzahl von Transaktionen, und drei
Methoden, die mit den drei Items arbeiten, d. h. zum Abheben
von Geld, zum Einzahlen von Geld und zum Auslesen der Anzahl
von Transaktionen, die mit jedem Abheben oder Einzahlen
erhöht wird.
Gemäß der Erfindung gibt es keine Notwendigkeit, irgendeine
Zuordnung zwischen beliebigen Daten und dem Ort auf der
SmartCard zu machen an dem sie gespeichert werden
beziehungsweise von dem sie wiederhergestellt werden. Der
Anwendungsingenieur muss nicht die bestimmten Attribute
identifizieren und muss nicht spezielle Verfahren nutzen um
den Zugriff auf SmartCard-Dateien zu realisieren. Der Status
des Objektes "BankKonto" kann in integraler Form auf der
SmartCard mit Hilfe der BeanItem-Methode "sichereAufCard()"
gespeichert werden, die unten detaillierter beschrieben
wird.
Die Serialisierung ist allgemein und gültig für alle Objekte
und kann leicht vom BeanItem für beliebig andere SmartCards
angewandt werden.
Als nächstes und unter zusätzlicher Bezugnahme auf Fig. 2
werden die grundlegenden Schritte zur Speicherung eines
Objektes 'o' auf einer SmartCard mit Hilfe eines BeanItem-
Objekts zusätzlich mit Hilfe eines Auszugs aus dem folgenden
kommentierten Programmiercode beschrieben, der als Teil des
Quellcodes der Hostanwendung 6 betrachtet werden kann:
Dementsprechend ist der Wiederherstellungsschritt des
Objektes 'o' unabhängig von dem Objekt selbst, was durch den
folgenden kommentierten Programmiercode illustriert wird,
der unter Bezugnahme auf Fig. 3 gelesen werden sollte.
Jetzt, nach dem Speichern und der anschließenden
Wiederherstellung wird derselbe Objektstatus
wiederhergestellt, außer dem Status des internen Standes des
Transaktionszählers, der von einem zugehörigen Zähler von
sieben auf acht erhöht wurde.
Wie man aus dem Obigen sehen kann, kann das Lesen und
Schreiben von Objekten ohne besondere Kenntnis des
SmartCard-Dateisystems programmiert werden, wenn der
Anwendungsingenieur mit den jeweiligen JAVA-BeanItem-
Objekten loadFromCard() beziehungsweise saveToCard()
ausgestattet ist.
In Verbindung mit der ebenfalls anhängigen Beschreibung die
visuelle Programmierung von SmartCard-Anwendungen durch
Nutzung von kartenunabhängigen Objekten betreffend, kann das
Speichern und Wiederherstellen von Objekten von Java-
Anwendungen auch kartenunabhängig durch Nutzung einer
visuellen Entwicklungsumgebung realisiert werden: Dort wird
eine Java-Schnittstelle bereitgestellt, die Verfahren zur
Speicherung und Wiederherstellung von Objekten definiert.
Die Anwendung kann derartige Methoden als einen Platzhalter
nutzen, d. h. einen Dummy um seine eigenen SmartCard-
Zugriffsprozeduren zu definieren, was wiederum ebenso
vorteilhaft durch visuelle Programmiertechniken ausgeführt
werden kann. Bei Nutzung des Prinzips, das in der anhängigen
Beschreibung dargestellt wird, wird die aktuelle
Implementierung der Schnittstelle zur Anwendungslaufzeit
ausgeführt und ist spezifisch für jede der angewandten
SmartCards. Somit ist die passende Implementierung von der
aktuell genutzten SmartCard instantiell abhängig, um das
betreffende Objekt zu serialisieren und in der SmartCard zu
speichern oder von dieser wiederherzustellen.
In der obigen Spezifikation wurde die Erfindung in Bezug auf
eine spezielle exemplarische Ausführungsform von ihr
beschrieben. Es wird jedoch offensichtlich, dass
unterschiedliche Modifikationen und Änderungen daran
durchgeführt werden können, ohne von dem breiteren Sinn und
Umfang der Erfindung abzuweichen, wie sie in den anhängigen
Ansprüchen dargelegt werden. Die Spezifikation und
Zeichnungen sind dementsprechend im illustrativen und nicht
im restriktiven Sinn zu betrachten.
6
Hostanwendung
7
,
8
SmartCards
9
Schnittstelle
10
,
12
Objekte
110-156
Vom erfindungsgemäßen Verfahren umfasste Schritte
Claims (11)
1. Verfahren zur Speicherung von Objekten (10, 12) in
Vorrichtungen (7, 8) mit verringerten Ressourcen für
die Unterstützung höherer Programmiersprachen, bei dem
die Objekte sowohl einer Anwendung, die auf der
Vorrichtung implementiert ist, als auch einer
Hostanwendung (6) die auf einem Hostcomputer läuft,
zugeordnet sind, wobei das Verfahren den folgenden
Schritt umfasst:
Nutzung einer Schnittstelle (9) zwischen der Hostanwendung (6) und der Geräteanwendung, wobei die Schnittstelle den Objekten (10, 12) zugeordnet ist und Verfahren umfasst, die in der Lage sind, an den Attributen ausgeführt werden können, die den Objekten (10, 12) zugeordnet sind,
wobei das Verfahren durch den folgenden Schritt gekennzeichnet ist:
Nutzung einer erweiterten Form der Schnittstelle, die von einem hinzugefügten Serialisierungsitem herrührt, das die Serialisierung der Objekte (10, 12) in ein Format umfasst, das an solchen Vorrichtungen anwendbar ist.
Nutzung einer Schnittstelle (9) zwischen der Hostanwendung (6) und der Geräteanwendung, wobei die Schnittstelle den Objekten (10, 12) zugeordnet ist und Verfahren umfasst, die in der Lage sind, an den Attributen ausgeführt werden können, die den Objekten (10, 12) zugeordnet sind,
wobei das Verfahren durch den folgenden Schritt gekennzeichnet ist:
Nutzung einer erweiterten Form der Schnittstelle, die von einem hinzugefügten Serialisierungsitem herrührt, das die Serialisierung der Objekte (10, 12) in ein Format umfasst, das an solchen Vorrichtungen anwendbar ist.
2. Verfahren gemäß Anspruch 1, bei dem die Computergeräte
mit verringerten Ressourcen (7, 8) SmartCards sind.
3. Verfahren gemäß Anspruch 1, bei dem die Serialisierung
mit Java-Class-Technologie durch Bereitstellung eines
serialisierenden BeanItems ausgeführt wird.
4. Verfahren gemäß einem der vorherigen Ansprüche, bei dem
die Objekte (10, 12) vor dem Speichern der Objekte (10,
12) in einer TLV-formatierten Form gepackt und/oder
komprimiert wurden.
5. Verfahren zur Wiederherstellung von Objekten (10, 12)
von Vorrichtungen (7, 8) mit verminderten Ressourcen
für höhere Programmierunterstützung, bei dem Objekte
sowohl einer Anwendung, die in einer solchen
Vorrichtung (7, 8) implementiert sind, als auch
Hostanwendungen, die auf einem Hostcomputer laufen,
zugeordnet sind, wobei das Verfahren den folgenden
Schritt umfasst;
Nutzung einer Schnittstelle (9) zwischen der Hostanwendung (6) und der Geräteanwendung, wobei die Schnittstelle den Objekten (10,12) zugeordnet ist und Verfahren umfasst, die an den Attributen ausgeführt werden können, die den Objekten (10, 12) zugeordnet sind;
wobei das Verfahren durch den folgenden Schritt gekennzeichnet ist:
Nutzung einer erweiterten Form der Schnittstelle, die von einem hinzugefügten Deserialisierungs-Item kommt, das eine Deserialisierung der Objekte (10, 12) von einem Format umfasst, das an solchen Vorrichtungen (7, 8) anwendbar ist.
Nutzung einer Schnittstelle (9) zwischen der Hostanwendung (6) und der Geräteanwendung, wobei die Schnittstelle den Objekten (10,12) zugeordnet ist und Verfahren umfasst, die an den Attributen ausgeführt werden können, die den Objekten (10, 12) zugeordnet sind;
wobei das Verfahren durch den folgenden Schritt gekennzeichnet ist:
Nutzung einer erweiterten Form der Schnittstelle, die von einem hinzugefügten Deserialisierungs-Item kommt, das eine Deserialisierung der Objekte (10, 12) von einem Format umfasst, das an solchen Vorrichtungen (7, 8) anwendbar ist.
6. Verfahren gemäß Anspruch 5, bei dem die Vorrichtungen
(7, 8) SmartCards sind.
7. Verfahren gemäß Anspruch 1, bei dem die Deserialisierung
mit Java-Class-Technologie durch Bereitstellen eines
De-serialisierenden BeanItem ausgeführt wird.
8. Verfahren gemäß einem der vorherigen Ansprüche, bei dem
die Objekte nach der Widerherstellung von einer TLV-
formatierten Form dekomprimiert und/oder ausgepackt
werden.
9. Vorrichtung (7, 8) mit verringerten Ressourcen von
höherer Programmierunterstützung, die die Objekte (10,
12) umfasst, die durch Nutzung des Verfahrens gemäß
einem der vorherigen Ansprüche gespeichert wurden.
10. Vorrichtung (7, 8) gemäß dem vorherigen Anspruch,
dadurch gekennzeichnet, dass diese Vorrichtung eine
SmartCard ist.
11. Vorrichtung (7, 8) gemäß dem vorherigen Anspruch,
dadurch gekennzeichnet, dass die Vorrichtung eine JAVA-
kompatible SmartCard ist.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP98122660 | 1998-11-30 |
Publications (1)
Publication Number | Publication Date |
---|---|
DE19954532A1 true DE19954532A1 (de) | 2000-06-08 |
Family
ID=8233050
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19954532A Ceased DE19954532A1 (de) | 1998-11-30 | 1999-11-12 | Verfahren und System zur Speicherung von JAVA-Objekten in Vorrichtungen mit einer verringerten Unterstützung von höheren Programmierkonzepten |
Country Status (2)
Country | Link |
---|---|
US (1) | US6754886B1 (de) |
DE (1) | DE19954532A1 (de) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2836568A1 (fr) * | 2002-02-28 | 2003-08-29 | Bull Sa | Procede iteratif de serialisation d'objets logiciels structures |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20010007146A1 (en) * | 1999-12-23 | 2001-07-05 | Uwe Hansmann | Method for providing a set of software components |
US7577834B1 (en) * | 2000-05-09 | 2009-08-18 | Sun Microsystems, Inc. | Message authentication using message gates in a distributed computing environment |
US7020869B2 (en) * | 2000-12-01 | 2006-03-28 | Corticon Technologies, Inc. | Business rules user interface for development of adaptable enterprise applications |
US6961932B2 (en) * | 2001-08-15 | 2005-11-01 | Microsoft Corporation | Semantics mapping between different object hierarchies |
US7076785B2 (en) * | 2001-08-15 | 2006-07-11 | Microsoft Corporation | Lazy loading with code conversion |
FR2833374A1 (fr) * | 2001-12-12 | 2003-06-13 | Cp8 | Procede et dispositif de controle d'acces dans un systeme embarque |
US20100174717A1 (en) * | 2002-02-28 | 2010-07-08 | Olivier Fambon | Interative serialisation procedure for structured software objects |
US7127707B1 (en) | 2002-10-10 | 2006-10-24 | Microsoft Corporation | Intellisense in project upgrade |
US20040205732A1 (en) * | 2003-04-11 | 2004-10-14 | Paul Parkinson | Cross-platform porting tool for web applications |
US20040215537A1 (en) * | 2003-04-25 | 2004-10-28 | Schroter Martin Walter | Banking process and application architecture |
GB0517615D0 (en) * | 2005-08-30 | 2005-10-05 | Ecebs Ltd | Improved smartcard system |
US8200952B2 (en) * | 2006-10-25 | 2012-06-12 | Microsoft Corporation | Platform authentication via a transparent second factor |
EP2575036A1 (de) * | 2011-09-30 | 2013-04-03 | Gemalto SA | Verfahren zur Verarbeitung von Anwendungsdaten und entsprechende erste Vorrichtung |
CN108241705B (zh) * | 2016-12-27 | 2021-10-01 | 北京神州泰岳软件股份有限公司 | 一种数据插入方法及装置 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5790677A (en) * | 1995-06-29 | 1998-08-04 | Microsoft Corporation | System and method for secure electronic commerce transactions |
US5689565A (en) * | 1995-06-29 | 1997-11-18 | Microsoft Corporation | Cryptography system and method for providing cryptographic services for a computer application |
FR2741972B1 (fr) * | 1995-11-30 | 1998-01-02 | Thomson Multimedia Sa | Dispositif et procede de chargement d'une interface utilisateur |
SE515611C2 (sv) * | 1995-12-18 | 2001-09-10 | Combitech Traffic Syst Ab | Anordning för dataöverföring medelst radiokommunikation |
RU2000115287A (ru) * | 1998-01-16 | 2002-07-27 | Медиадна | Система и способ для подтверждения подлинности равноправных компонентов |
US6101477A (en) * | 1998-01-23 | 2000-08-08 | American Express Travel Related Services Company, Inc. | Methods and apparatus for a travel-related multi-function smartcard |
US6311165B1 (en) * | 1998-04-29 | 2001-10-30 | Ncr Corporation | Transaction processing systems |
-
1999
- 1999-10-21 US US09/422,283 patent/US6754886B1/en not_active Expired - Fee Related
- 1999-11-12 DE DE19954532A patent/DE19954532A1/de not_active Ceased
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2836568A1 (fr) * | 2002-02-28 | 2003-08-29 | Bull Sa | Procede iteratif de serialisation d'objets logiciels structures |
WO2003073390A2 (en) * | 2002-02-28 | 2003-09-04 | Axalto Sa | Iterative serialisation procedure for structured software objects |
WO2003073390A3 (en) * | 2002-02-28 | 2003-12-31 | Schlumberger Systems & Service | Iterative serialisation procedure for structured software objects |
CN1301462C (zh) * | 2002-02-28 | 2007-02-21 | 艾斯奥托公司 | 用于结构化软件对象的重复串行化过程 |
Also Published As
Publication number | Publication date |
---|---|
US6754886B1 (en) | 2004-06-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE19954532A1 (de) | Verfahren und System zur Speicherung von JAVA-Objekten in Vorrichtungen mit einer verringerten Unterstützung von höheren Programmierkonzepten | |
DE69835879T2 (de) | Multifunktionschipkarte mit delegierungsmerkmal | |
DE69311554T3 (de) | Massenspeicherkarte mit eingangs- ausgangsfunktion. | |
DE69813208T2 (de) | Chipkarte mit datenumsetzer | |
DE3127825C2 (de) | ||
DE19600081C2 (de) | Sicherung der Datenintegrität bei Datenträgerkarten | |
DE69400549T3 (de) | IC-Karten-Übertragungssystem | |
DE19522527A1 (de) | Verfahren zur Vereinfachung der Kommunikation mit Chipkarten | |
EP1088280A1 (de) | Verfahren und system zur schnellen speicherresidenten verarbeitung von transaktionsdaten | |
DE2916658A1 (de) | Selbstprogrammierbarer mikroprozessor | |
DE19628168A1 (de) | Vernetztes multimediales Netz | |
DE69932412T2 (de) | Chipkartenkonfiguration | |
DE69634550T2 (de) | Terminal mit Kartenleser und Verfahren zur Verarbeitung von mehreren Anwendungen mit diesem Terminal | |
DE19933584A1 (de) | Verfahren zur kompakten Darstellung von Informationspaketen und deren Speicherung oder Übertragung | |
DE10054001A1 (de) | Automatisierte Schnittstellengenerierung für Computerprogramme in unterschiedlichen Umgebungen | |
DE10038289A1 (de) | Verfahren und System zur Integration von Basisbanktätigkeiten (Core Banking System) | |
DE69825461T2 (de) | Verfahren und gerät zum transferieren von daten zwischen einem registerstapel und einer speicherquelle | |
DE4427039C2 (de) | Verfahren zur Bestimmung des aktuellen Geldbetrages in einem Datenträger und System zur Durchführung des Verfahrens | |
DE69932630T2 (de) | Verfahren und vorrichtung zur initialisierung eines anwendungsprogrammes einer chipkarte | |
DE19932149A1 (de) | System zur Ausführung von Transaktionen | |
DE60220510T2 (de) | Elektronishes Medium-Ausgabesystem und tragbares elektronisches Medium mit dazugehöriger Ausgabemethode | |
DE19928939A1 (de) | Datenträger sowie Verfahren zur Datenübertragung und zur Speicherverwaltung | |
EP1044409B1 (de) | Programmablaufverfahren und verfahren zur erweiterung eines programmkomponentensystems | |
DE102007027935A1 (de) | Tragbarer Datenträger und Verfahren zur Personalisierung eines tragbaren Datenträgers | |
EP2053524A1 (de) | Vorgangsbearbeitungsmodul und Verfahren zum Erfassen von Daten |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OP8 | Request for examination as to paragraph 44 patent law | ||
8131 | Rejection |