DE19717900A1 - Method and device for processing a computer applet - Google Patents

Method and device for processing a computer applet

Info

Publication number
DE19717900A1
DE19717900A1 DE19717900A DE19717900A DE19717900A1 DE 19717900 A1 DE19717900 A1 DE 19717900A1 DE 19717900 A DE19717900 A DE 19717900A DE 19717900 A DE19717900 A DE 19717900A DE 19717900 A1 DE19717900 A1 DE 19717900A1
Authority
DE
Germany
Prior art keywords
applet
applets
file
access
domain
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.)
Granted
Application number
DE19717900A
Other languages
German (de)
Other versions
DE19717900C2 (en
Inventor
Richard Deadman
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsemi Semiconductor ULC
Original Assignee
Mitel Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Mitel Corp filed Critical Mitel Corp
Publication of DE19717900A1 publication Critical patent/DE19717900A1/en
Application granted granted Critical
Publication of DE19717900C2 publication Critical patent/DE19717900C2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0442Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply asymmetric encryption, i.e. different keys for encryption and decryption
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/12Protecting executable software
    • G06F21/121Restricting unauthorised execution of programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/629Protecting access to data via a platform, e.g. using keys or access control rules to features or functions of an application
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/101Access control lists [ACL]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2211/00Indexing scheme relating to details of data-processing equipment not covered by groups G06F3/00 - G06F13/00
    • G06F2211/007Encryption, En-/decode, En-/decipher, En-/decypher, Scramble, (De-)compress
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2141Access rights, e.g. capability lists, access control lists, access tables, access matrices
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/16Implementing security features at a particular protocol layer
    • H04L63/168Implementing security features at a particular protocol layer above the transport layer

Abstract

A method of processing an applet comprises storing a file in a persistent storage medium (PSM), the file including an access control list 20; transmitting an applet from a server, the applet including at least one of applet identification data and a private key encrypted domain identifier and public key pair, a maximum file size indicator, and a specification of required operations; receiving the applet by an application engine 16; in the event the domain identifier is included in the applet, decrypting the domain identifier using the public key; checking at least one of the applet identification data and decrypted domain identifier against the access control list for a match, and in the event a match is found, allowing the operations specified in the applet on a file stored in a persistent storage medium and as specified in the file access control list.

Description

Die vorliegende Erfindung betrifft das Gebiet der Computer­ netzwerke, und insbesondere ein Verfahren zum Verarbeiten von Computer-Applets auf sichere Art und Weise.The present invention relates to the field of computers networks, and in particular a method for processing Computer applets in a safe way.

Mit dem Aufkommen des objektbasierenden bzw. objektorientier­ ten Programmierens wurde es möglich, Applets über ein Netz­ werk, wie z. B. das Internet, an verschiedene, mit dem Netz­ werk verbundene Computer zu übertragen. Ein Applet ist ein kleines, unabhängiges Anwendungsprogramm bzw. Applikations­ programm, das einen Computer veranlassen kann, eine bestimmte Funktion aus zuführen, und sowohl Anweisungen für den Betrieb des Computers als auch Daten, welche bei seinem Betrieb zu verarbeiten sind, enthält.With the advent of the object-based or object-oriented animal programming, applets became possible over a network plant, such as B. the Internet, to various, with the network computer connected to the factory. An applet is a small, independent application program or application program that can cause a computer to do a certain Perform function from, and both instructions for operation of the computer as well as data, which during its operation too are processed, contains.

Verschiedene Programmiersprachen wurden zur Erstellung von Applets entworfen, wie z. B. Telescript, SafeTCL, Java, Cyber- Agents und ClearLake Agents. Durch Benutzung von Interpretie­ rern können die verschiedenen Applets Hardware-unabhängig sein, d. h. dasselbe Applet kann von Computerhardware mit ver­ schiedenen Betriebssystemen empfangen und verarbeitet werden. Beispielsweise wäre es möglich, daß dasselbe Applet von einem MacIntosh-Betriebssystem empfangen und verarbeitet wird sowie von einem der Microsoft Windows-Betriebssysteme auf Perso­ nalcomputer-Betriebssystemen, basierend auf einem Intel- Prozessor (z. B. IBM). Different programming languages were used to create Applets designed such as B. Telescript, SafeTCL, Java, Cyber- Agents and ClearLake Agents. By using interpretation The various applets can be hardware independent be d. H. the same applet can be used by computer hardware with ver different operating systems are received and processed. For example, it could be the same applet from one MacIntosh operating system is received and processed as well from one of the Microsoft Windows operating systems on Perso nalcomputer operating systems, based on an Intel Processor (e.g. IBM).  

Man hat spekuliert, daß die Programme und Daten, welche Com­ puter, die Applets empfangen, benutzen, all das bereitstellen würden, was ein Computer braucht, um in der Lage zu sein, vollständig zu funktionieren, was in einem signifikant weni­ ger kostenträchtigen Computer als gegenwärtig resultieren würde. Dies kommt daher, daß der Computer erwartungsgemäß das Netzwerk als Massenspeicher-Ablage von Programmen und Daten benutzen würde. Programme würden auf einer Benutzungsbasis bezahlt werden, und nicht auf einer Vorauszahlungsbasis und einer Basis der unbeschränkten Benutzung. Jedoch setzt dies voraus, daß ein Benutzer darauf vorbereitet wäre, zu erlau­ ben, daß eine Massenspeicherung zur Speicherung kritischer Daten, insbesondere geschriebener Programme usw. außerhalb seiner Kontrolle wäre. Aus Sicherheitsgründen, glaubt man, ist es wünschenswert und/oder notwendig, einen lokalen Mas­ senspeicher in Zusammenhang mit jedem oder mit den meisten Computern bereitzustellen.It has been speculated that the programs and data which Com computers that receive applets, use all of that what a computer needs to be able to to function fully, which in a significantly less less expensive computers than currently result would. This is because the computer is expected to do that Network as mass storage of programs and data would use. Programs would be on a usage basis be paid and not on a prepayment basis and a basis of unlimited use. However, this continues assuming that a user is prepared to allow ben that mass storage for storing critical Data, especially written programs etc. outside would be in his control. For security reasons, it is believed it is desirable and / or necessary to have a local mas storage associated with everyone or most Computers.

Bei der Speicherung von Daten auf einer lokalen Massenspei­ chervorrichtung entsteht das Problem der Sicherheit in bezug auf den Empfang der Applets vom Netzwerk, da diese Applets auf Dateien zugreifen, diese übertragen oder beschädigen könnten.When storing data on a local mass storage device The safety problem arises on receiving the applets from the network because these applets access, transfer or damage files could.

Das Sicherheitsproblem wurde bisher auf eine von zwei Arten gehandhabt.The security problem has been solved in one of two ways handled.

Die erste besteht in der Beschränkung der Benutzung der App­ lets auf ein geschlossenes oder verwaltetes System, wobei Softwarekomponenten Domänennamen erhalten können und alle möglichen Ausführungsplätze mit Listen erlaubter Domänen be­ stückt werden können. Beispielsweise werden im CyberAgents- Programm Domänen zur Steuerung der Ausführung und der Sicher­ heit an entfernt gelegenen Plätzen benutzt. Eine Domäne ist eine Gerichtsbarkeitsgruppe von Applets, welche sich Zu­ griffsrechte teilen.The first is to limit the use of the app lets on a closed or managed system, where Software components can get domain names and all possible execution venues with lists of permitted domains pieces can be. For example, in CyberAgents Program domains to control execution and security used in distant places. Is a domain  a jurisdictional group of applets that belong to Zu share rights of grip.

Der zweite Weg der Handhabung der Sicherheit besteht in der Isolierung der Applets von wichtigen Systemressourcen, wie weiter oben bemerkt. Von einem unkontrollierten Systemnetz­ werk, wie z. B. dem Internet, empfangene Applets wurden am Zu­ griff auf Massenspeichervorrichtungen gehindert und wurden zur Bereitstellung fantasievoller Graphiken und zur Bereit­ stellung einer graphischen Benutzerschnittstelle für das Kun­ den-Server-Computing umgeleitet. Programme zur Erzeugung von Applets in offenen unkontrollierten Systemen sind beispiels­ weise Telescript, SafeTCL und Java. Beispielsweise kann Java einen Computer veranlassen, ein Fenster anzuzeigen und den Inhalt des Fensters bereitstellen sowie Klänge zu spielen, aber es kann nicht auf das Computer-Plattenlaufwerk schrei­ ben.The second way of handling security is through Isolation of applets from important system resources, such as noticed earlier. From an uncontrolled system network plant, such as B. Applets received on the Internet were closed resorted to mass storage devices and were prevented to provide imaginative graphics and ready Providing a graphical user interface for the customer redirected server computing. Programs for the generation of Applets in open, uncontrolled systems are one example wise Telescript, SafeTCL and Java. For example, Java cause a computer to display a window and the Provide the content of the window and play sounds, but it cannot scream on the computer disk drive ben.

Obwohl die Benutzung von irgendeinem dieser Schemen die Si­ cherheit hervorbringt, welche erforderlich ist, zu gewährlei­ sten, daß Gauner-Applets keinen Schaden an den Ressourcen ei­ nes Computers anrichten, wie z. B. an den Dateien, erlegen sie ebenfalls der Benutzbarkeit von mobilen Applets eines offenen Systems eine Beschränkung auf. Falls ein heruntergeladenes Applet keinen Zugriff auf das Plattenlaufwerk hat, um eine dauerhafte lokale Speicherung für den Benutzer zu erzeugen, ist die Benutzbarkeit von geschriebenen Applets, die solch ein Isolierungsschema benutzen, sehr beschränkt.Although the use of any of these schemes does not make the Si security that is required to guarantee Most that crook applets do not damage the resources Arrange a computer such. B. on the files, shoot them also the usability of mobile applets of an open Systems a restriction on. If a downloaded one Applet does not have access to the disk drive to a generate permanent local storage for the user is the usability of written applets, such use an isolation scheme, very limited.

Betriebssysteme kümmern sich um die Sicherheit durch Bereit­ stellung von Benutzungsrechten für Verzeichnisse und Dateien. Durch Zuordnung der Applet-Applikationsmaschine zu einer Be­ nutzergruppe werden die durch die Applikationsmaschine ausge­ führten Applets darauf beschränkt, auf die Dateien zuzugrei­ fen, die in der Applikationsmaschine selbst verfügbar sind. Operating systems take care of security through ready Provision of user rights for directories and files. By assigning the applet application machine to a Be user group are created by the application machine led applets to only access the files fen, which are available in the application machine itself.  

Obwohl dies Sicherheit für weitere Dateisystem-Dateien außer­ halb des Einflußgebiets der Applikationsmaschine bietet, bie­ tet es keine Sicherheit zwischen den Applets. In ähnlicher Weise bieten manche Applet-Applikationsmaschinen, wie z. B. HotJava von Sun, Zugriffskontrollisten. Diese Listen spezifi­ zieren, welcher Untersatz der zugriffsfähigen Dateien der Ap­ plikationsmaschinen einen Zugriff durch Applets erfahren kann. Dies bietet eine ausgedehnte Sicherheit, löst aber nicht das Problem der Bereitstellung der Sicherheit für Daten zwischen Applets.Although this is security for other filesystem files besides offers half of the sphere of influence of the application machine, bie there is no security between the applets. More like that Some applet application machines, such as B. Sun's HotJava, access control lists. These lists specifi adorn which subset of the accessible files the Ap machine access through applets can. This offers extensive security, but it solves not the problem of providing security for data between applets.

HotJava spezifiziert ebenfalls ein Verfahren, durch das ein Zugriff auf Dateien für Applets durch Benutzung einer Dialog­ box für den Benutzer des Applet ermöglicht werden kann, wobei der Benutzer eine Sicherheitsautorisierung bzw. -berechtigung eingeben muß. Dies bietet eine größere Sicherheit zwischen den Applets, ist aber intrusiv und erfordert, daß der Benut­ zer die Empfindlichkeit und den Ursprung (virtuelle Inhaber­ schaft) der Daten in jeder Datei versteht.HotJava also specifies a process by which a Access to files for applets using a dialog box for the applet user, where the user has a security authorization or authorization must enter. This offers greater security between the applets, but is intrusive and requires that the user zer the sensitivity and the origin (virtual owner shaft) who understands the data in each file.

Falls die Applikationsmaschine die Quelle des Applets bestim­ men kann, können Zugriffsrechte gemäß bestimmten Regeln ein­ gerichtet werden. Java kann erfassen, ob ein Applet von in­ nerhalb einer Feuerwand bzw. "Firewall" (einer Softwarebar­ riere zu einem Außenzugriff auf ein lokales (internes) Netz­ werk) herrührt; der HotJava-Browser ermöglicht verschiedene Sicherheitsrechte für Applets, die auf jeder Seite der Feuer­ wand geladen werden. Lese- und Schreibzugriff kann nur inter­ nen Applikationen gewährt werden.If the application machine determines the source of the applet access rights according to certain rules be judged. Java can detect whether an applet from in within a firewall or "firewall" (a software bar access to a local (internal) network work) comes from; the HotJava browser enables various Security rights for applets on each side of the fire wall can be loaded. Read and write access can only be inter applications are granted.

General Magic′s Telescript-Technologie bietet einen generi­ schen Satz von Berechtigungen und Zulassungen. Agenten inner­ halb eines Bereichs enthalten alle dieselbe Berechtigung - dies ist ähnlich wie das Konzept der Benutzerdomänen. Jeder Telescript-Agent hat nur eine Berechtigung. Zulassungen kon­ trollieren die Ausführung von Anweisungen oder den Zugriff und die Benutzung einer Ressource. Telescript spezifiziert nicht, wie ein Telescript-Ort über Benutzungsrechte für eine Ressource mit einem Agenten einer bestimmten Berechtigung verhandelt oder die Zugriffsrechte für jede Ressourceninstanz speichert.General Magic’s Telescript technology offers a generi set of permissions and approvals. Agents inside half of an area all have the same permission - this is similar to the concept of user domains. Everyone Telescript agent has only one authorization. Approvals con  control the execution of instructions or access and the use of a resource. Telescript specified not like a telescript site about usage rights for one Resource with an agent with a specific authorization negotiates or access rights for each resource instance saves.

Der Ausdruck "dauerhafte Speicherung" wird in dieser Be­ schreibung als generischer Ausdruck für alle Medien benutzt, welche Dateien, Daten oder Programme, welche zu schützen sind, speichern oder tragen und kann elektronische Schreib-/ Lesespeicher, Floppy- oder Festplattenlaufwerke, Busse usw. umfassen, ist aber nicht darauf beschränkt.The term "permanent storage" is used in this Be used as a generic expression for all media, which files, data or programs to protect are, store or carry and can electronic writing / Read memory, floppy or hard drives, buses, etc. include, but is not limited to.

Die vorliegende Erfindung schafft einen sicheren Zugriff auf einen dauerhaften Speicher für einen verteilten Applet-Code innerhalb einer offenen, unkontrollierten Computing-Umgebung. Sie schützt Dateien vor unberechtigter Benutzung durch unbe­ kannte mobile Applets, wobei sie noch Zugriff auf das Datei- System für diese Applets bietet. Dies involviert die Verhand­ lung von Zugriffsrechten für das unbekannte Applet.The present invention provides secure access to permanent storage for a distributed applet code within an open, uncontrolled computing environment. It protects files from unauthorized use by unbe knew mobile applets, but they still have access to the file System for these applets. This involves the negotiation Access rights for the unknown applet.

In Übereinstimmung mit einer Ausführungsform der Erfindung umfaßt ein Verfahren zur Verarbeitung eines Applet die Spei­ cherung einer Datei in einem dauerhaften Speichermedium (PSM), wobei die Datei eine Zugriffskontrolliste aufweist, und die Übertragung eines Applet von einem Server, wobei das Applet zumindest eines von Applet-Identifizierungsdaten und einem Paar aus Privatschlüssel-kodiertem Domänenidentifizie­ rer und Allgemeinschlüssel, einem Dateimaximalgrößen-Indika­ tor und einer Spezifikation erforderlicher Speicheroperati­ onen enthält, den Empfang des Applet durch eine Applikations­ maschine, und im Fall, daß der Domänenidentifizierer im App­ let enthalten ist, das Entschlüsseln des Domänenidentifizie­ rers unter Benutzung des Allgemeinschlüssels, das Prüfen von zumindest einem von den Applet-Identifizierungsdaten und dem entschlüsselten Domänenidentifizierers gegenüber der Zu­ griffskontrolliste hinsichtlich einer Übereinstimmung, und im Fall, daß eine Übereinstimmung gefunden wird, das Ermögli­ chen der in dem Applet spezifizierten Operationen an einer in einem dauerhaften Speichermedium gespeicherten Datei, für welche ein Zugriff für das Applet, wie in der Dateizugriffs­ kontrolliste spezifiziert, möglich ist.In accordance with an embodiment of the invention includes a method for processing an applet the Spei Saving a file in a permanent storage medium (PSM), where the file has an access control list, and transferring an applet from a server, the Applet at least one of applet identification data and a pair of private key encoded domain identifiers rer and general key, a file maximum size indicator and a specification of required storage operations onen contains the receipt of the applet by an application machine, and in the event that the domain identifier in the app let's include decrypting the domain identifier rers using the general key, checking  at least one of the applet identification data and the decrypted domain identifier to the Zu handle checklist for compliance, and in the event that a match is found, the opportunity of the operations specified in the applet on an in a file stored in a permanent storage medium, for which is an access for the applet as in the file access checklist specified, is possible.

In Übereinstimmung mit einer weiteren Ausführungsform umfaßt ein Verfahren zur Verarbeitung eines Applet den Empfang von Applets in einer Applikationsmaschine, wobei die Applets Spe­ zifikationen von durchzuführenden Operationen aufweisen und einige der Applets zumindest eines von Applet-Identifizie­ rungsdaten und Privatschlüssel-verschlüsselten Domänen auf­ weisen, Verarbeiten der Applets in einem Ausmaß, in dem ein Zugriff auf in einem dauerhaften Speichermedium enthaltene Dateien nicht erforderlich ist, in dem Fall, daß die Applets Privatschlüssel-verschlüsselte Domänen aufweisen, Entschlüs­ seln der Domänen, Prüfen von zumindest einem der Applet-Iden­ tifizierungsdaten und der entschlüsselten Domänen gegenüber einer Kontrolliste, und Verarbeiten der Applets, von denen das zumindest eine von Applet-Identifizierungsdaten und ent­ schlüsselten Domänen mit Einträgen in der Kontrolliste zum Zugriff auf die im dauerhaften Speichermedium enthaltenen Da­ teien übereinstimmt, wie durch die Applets gefordert.In accordance with another embodiment a method of processing an applet receiving Applets in an application machine, the applets Spe have specifications of operations to be performed and some of the applets have at least one of applet identification data and private key-encrypted domains point, processing the applets to an extent to which a Access to contained in a permanent storage medium Files are not required in the event that the applets Having private key-encrypted domains, decryption domains, checking at least one of the applet ids authentication data and the decrypted domains a checklist, and processing the applets, one of which the at least one of applet identification data and ent encrypted domains with entries in the checklist Access to the data contained in the permanent storage medium matches as required by the applets.

In Übereinstimmung mit einer weiteren Ausführungsform umfaßt ein Verfahren zur Verarbeitung eines Applet das Speichern ei­ ner Zugriffskontrolliste, welche eine Identität von Applets oder Domänen enthält, die einen Zugriff auf in einem dauer­ haften Medium gespeicherte Dateien haben können, und Ermögli­ chen des Zugriffs auf das Zugriffskontrollmedium durch die Applets, welche eine Identität oder eine Domäne entsprechend einem Eintrag auf der Liste aufweisen. In accordance with another embodiment a method of processing an applet's saving ner access control list, which is an identity of applets or contains domains that can be accessed at one time may have medium stored files, and allow Chen access to the access control medium by the Applets that match an identity or domain have an entry on the list.  

In Übereinstimmung mit einer weiteren Ausführungsform umfaßt eine Applet-Applikationsmaschine aus einer Zugriffskontrolli­ ste, wobei die Maschine und die Liste in einem Speicher eines Computers gespeichert sind, und eine Vorrichtung zum Bereit­ stellen eines Applet mit einer Identifizierung mit zumindest einem von einem Applet-Identifizier und einer Domäne zum Ver­ gleich mit der Liste und zur Bestimmung einer Übereinstim­ mung, sowie eine Vorrichtung zur Ermöglichung eines Zugriffs auf eine anderenfalls geschützte Computerressource im Fall der Übereinstimmung.In accordance with another embodiment an applet application machine from an access control ste, the machine and the list in a memory of one Computers are stored, and a device for ready provide an applet with an identification with at least one from an applet identifier and a domain to ver same with the list and to determine a match mung, as well as a device to enable access to an otherwise protected computer resource in the case of agreement.

Ein besseres Verständnis der Erfindung wird durch Betrachtung der nachstehenden detaillierten Beschreibung mit Bezug auf die begleitenden Zeichnungen erhalten.A better understanding of the invention will be gained by consideration the detailed description below with reference to receive the accompanying drawings.

Es zeigen:Show it:

Fig. 1 ein Blockdiagramm eines Netzwerks, auf dem die vor­ liegende Erfindung implementiert werden kann; Fig. 1 is a block diagram of a network on which the present invention can be implemented;

Fig. 2 ein Blockdiagramm eines in dem Netzwerk von Fig. 1 benutzten Computers, auf dem die vorliegende Erfin­ dung implementiert werden kann; Fig. 2 is a block diagram of a computer used in the network of Fig. 1 on which the present invention can be implemented;

Fig. 3 eine Illustration eines repräsentativen Applets, welches bei der vorliegenden Erfindung benutzt wird; und Fig. 3 is an illustration of a representative applets, which is used in the present invention; and

Fig. 4 ein repräsentatives Betriebsverfahren nach der vor­ liegenden Erfindung. Fig. 4 shows a representative operating method according to the prior invention.

Fig. 1 illustriert ein offenes und unkontrolliertes Netzwerk und umfaßt einem Server 1, welcher eine Schnittstelle zu ei­ nem Netzwerk 3 aufweist, mit dem verschiedene Computer 5 ver­ bunden sind oder verbunden werden können. Das Netzwerk 3 kann ein Großbereichsnetzwerk, das Internet, ein Telefonnetzwerk usw. sein. Fig. 1 illustrates an open and uncontrolled network and includes a server 1 , which has an interface to a network 3 , with which various computers 5 are connected or can be connected. The network 3 may be a wide area network, the Internet, a telephone network, etc.

Im Betrieb liefert der Server 1 Applets an das Netzwerk 3 zum Empfang durch einen oder mehrere Computer 5. Ein Computer, der das Applet empfängt, das ein vollständiges objektbasie­ rendes Programm ist, verarbeitet es unter Benutzung der darin enthaltenen Daten. Wie oben erwähnt, war bei offenen Systemen nach dem Stand der Technik das Applet daran gehindert, einen Zugriff auf einen dauerhaften Speicher auszuüben.In operation, the server 1 supplies applets to the network 3 for reception by one or more computers 5 . A computer that receives the applet, which is a complete object-based program, processes it using the data contained therein. As mentioned above, in prior art open systems, the applet was prevented from accessing persistent storage.

Fig. 2 illustriert die grundlegende Architektur eines reprä­ sentativen Computersystems 5. Ein Mikroprozessor 7, ein Schreib-/Lesespeicher 8 (RAM), eine Tastatur 9, eine Netz­ werk-Schnittstellenvorrichtung 10, wie z. B. ein Modem, eine dauerhafte Speichervorrichtung in Form eines Festplattenlauf­ werks 11 sowie ein Anzeigeuntersystem 12, mit der eine Anzei­ ge 13 verbunden ist, sind mit einem Bus 14 verbunden oder stehen in Kommunikation damit. FIG. 2 illustrates the basic architecture of a represen tative computer system 5. A microprocessor 7 , a read / write memory 8 (RAM), a keyboard 9 , a network interface device 10 , such as. B. a modem, a permanent storage device in the form of a hard disk drive 11 and a display subsystem 12 with which an indicator GE 13 is connected are connected to a bus 14 or are in communication therewith.

Zusätzlich ist der Schreib-/Lesespeicher 16 (RAM), der ein Teil des RAM 8 sein kann oder darin enthalten sein kann, mit dem Bus 14 verbunden oder steht in Kommunikation damit. Der RAM 16 enthält eine Applet-Applikationsmaschine, die einen Interpretierer für die bestimmte benutzte Applet-Sprache und eine Software-Befehlsstruktur zur Veranlassung des Mi­ kroprozessors 7, die Applets zu verarbeiten, aufweist. Bei­ spielsweise kann für die Java-Sprache eine Applet-Applikati­ onsmaschine eine HotJava sein, die von Sun Microsystems Inc. erhältlich ist.In addition, read / write memory 16 (RAM), which may be part of RAM 8 or may be contained therein, is connected to or in communication with bus 14 . The RAM 16 contains an applet application machine which has an interpreter for the particular applet language used and a software command structure for causing the microprocessor 7 to process the applets. For example, for the Java language, an applet application machine can be a HotJava available from Sun Microsystems Inc.

Beim Betrieb eines Systems nach dem Stand der Technik werden Applets von dem Server 1 über das Netzwerk 3 und die Netz­ werkschnittstelle 10 empfangen und werden von dem Mikropro­ zessor 7 unter Benutzung des Interpretierers in der Anwen­ dungsmaschine 16 interpretiert, und die interpretierten An­ weisungen werden durch den Mikroprozessor 7 verarbeitet, um zu veranlassen, daß das Anzeigeuntersystem 12 Graphiken usw. auf der Anzeige 13 anzeigt. Die Applikationsmaschine hat kei­ nen Zugriff auf dauerhafte Speichermedien, wie z. B. das Fest­ plattenlaufwerk 11, um eine Beschädigung usw. der Dateien, wie beschrieben, zu vermeiden, und deshalb kann sie darin ge­ speicherte Benutzerdaten oder weitere Programme nicht benut­ zen. Solch ein System ist beträchtlich eingeschränkt.When operating a system according to the prior art, applets are received by the server 1 via the network 3 and the network interface 10 and are interpreted by the microprocessor 7 using the interpreter in the application machine 16 , and the instructions are interpreted by processes the microprocessor 7 to cause the display subsystem 12 to display graphics, etc. on the display 13 . The application machine has no access to permanent storage media such as B. the hard disk drive 11 to avoid damage, etc. of the files as described, and therefore they can not use ge stored user data or other programs. Such a system is considerably limited.

In Übereinstimmung mit der vorliegenden Erfindung enthält die Applikationsmaschine 16 ein Allgemeinschlüssel- Entschlüsselungsprogramm 18 sowie eine Zugriffskontrolliste 20 berechtigter Applets und/oder Domänen, welche eine Er­ laubnis erhalten können, auf dauerhafte Speichermedien zuzu­ greifen.In accordance with the present invention, the application machine 16 contains a general key decryption program 18 and an access control list 20 of authorized applets and / or domains, which may be allowed to access permanent storage media.

In Übereinstimmung mit der vorliegenden Erfindung werden, wenn Applets über die Netzwerkschnittstelle empfangen werden, Zugriffsrechte auf die dauerhaften Speichermedien unter Be­ nutzung der Applikationsmaschine 16 verhandelt. Die Zugriffs­ rechte brauchen nicht beschränkt zu werden, und der Zugriff muß nicht nur hinsichtlich dauerhafter Speichermedien verhan­ delt werden; jegliche Ressource des Computers oder jegliche vom Computer gesteuerte oder zum Zugriff verfügbare Ressource kann beschränkt werden, und über ein Zugriff darauf kann ver­ handelt werden.In accordance with the present invention, when applets are received via the network interface, access rights to the permanent storage media are negotiated using the application machine 16 . The access rights need not be restricted, and the access must not only be negotiated with regard to permanent storage media; any resource of the computer or any computer controlled or accessible resource may be limited and access may be negotiated.

Die Zugriffsrechte werden verhandelt durch:The access rights are negotiated by:

  • (a) Berechtigung; die Applet-Applikationsmaschine verifi­ ziert die Identität oder die Domäne aller Applets, wel­ che einen Zugriff auf den dauerhaften Speicher fordern; (a) eligibility; the applet application machine verifi adorns the identity or domain of all applets, wel request access to persistent storage;  
  • (b) Benutzungsrechte-Verhandlung; dies involviert die Veri­ fizierung der Berechtigung des Applet, zu lesen, zu schreiben oder einen Zusatz an eine Datei zu bilden. Verfahren zur Gewährleistung, daß ein Applet Zugriffs­ rechte auf eine bestimmte Datei hat, werden nachstehend beschrieben. Es sollte bemerkt werden, daß in einem of­ fenen unkontrollierten System eine zentrale Berechti­ gungs- oder Domänenverwaltung nicht möglich ist. Aus diesem Grund wird die Verhandlung über die Zugriffsrech­ te zwischen der Applikationsmaschine, der Datei und dem Applet durchgeführt;(b) usage rights negotiation; this involves the Veri the applet's permission to read, too write or form an addition to a file. Procedure to ensure that an applet has access has rights to a particular file are below described. It should be noted that in an of uncontrolled system a central authorization administration or domain management is not possible. Out because of this, the negotiation of access rights te between the application machine, the file and the Applet performed;
  • (c) Servicequalität; eine maximale Plattenbenutzung für eine Applikation wird eingestellt. Grenzen werden den Zu­ griffsrechten vorzugsweise auferlegt, welche Schranken angeben, innerhalb denen die gewährte Ressource benutzt werden kann.(c) quality of service; a maximum disk usage for one Application is discontinued. Limits are becoming right to impose what barriers specify within which the granted resource is used can be.

Durch Wirkung als Vermittler zwischen einem unbekannten App­ let und der Plattenressource verhandelt die Applikationsma­ schine und setzt Zugriffsrechte durch. Für Plattendateien in­ volviert dies die Wirkung als Vermittler für alle Plattenak­ tionen. Wenn eine Zieldatei über eine vorbestimmte Größe hin­ aus anwächst, kann ein Schreibzugriff verneint werden, oder der Benutzer kann nach der Erlaubnis zum Überschreiben ge­ fragt werden, was effektiv ein Wachstum der Zugriffsrechte um einen inkrementierten Betrag ermöglicht. Die Applikationsma­ schine kann eine Überschreibzone definieren, über die hinaus das Zugriffsrecht nicht anwachsen darf.By acting as an intermediary between an unknown app let and the disk resource negotiate the application measure machine and enforces access rights. For disk files in this violates the effect as a mediator for all Plattenak ions. If a target file is over a predetermined size from grows, write access can be denied, or the user can ge overwrite permission be asked what is effectively growing access rights around allows an incremented amount. The application measure machine can define an overwrite zone beyond the access right must not grow.

Als ein Sicherheitsmechanismus kann eine Datei-Versionsver­ waltung durch die Applikationsmaschine vorgesehen werden, um zu gewährleisten, daß irgendwelche Modifikationen oder Löschungen an den Dateien im Fall der Beschädigung des Da­ teisystems behebbar sind. Die Zugriffskontrolliste 20 wird durch die Applikationsmaschine benutzt, um zu spezifizieren, welche vorgegebenen und dateispezifischen Zugriffsrechte für individuelle dauerhafte Speicherobjekte (Dateien) vorliegen.As a security mechanism, file version management can be provided by the application engine to ensure that any modifications or deletions to the files are recoverable in the event of damage to the file system. The access control list 20 is used by the application machine to specify which predefined and file-specific access rights are available for individual permanent storage objects (files).

Jedem Applet sollte ein Server-Platz zugeordnet sein, der das Applet eindeutig identifiziert. Falls beispielsweise von World Wide Web geladen, kann diese Identität der universelle Ressourcen-Lokalisierer (URL) des Applet sein. Wenn ein App­ let eine neue Datei erzeugt, kann es spezifizieren, welche Applets Rechte an der Datei besitzen.A server place should be assigned to each applet Applet clearly identified. For example, if World Wide Web loaded, this identity can be universal Resource localizer (URL) of the applet. If an app let creates a new file, it can specify which Applets have rights to the file.

Domänen sind Gruppen von Applets, welche Zugriffsrechte tei­ len. Unter Benutzung von einer Privatschlüssel- Verschlüsselung und einer vom Applet zugeführten verschlüs­ selten Nachricht kann die Applikationsmaschine gewährleisten, daß ein Applet zu einer spezifizierten Domäne gehört. Applet- Dateien enthalten einen Vorsatz, welcher die Zugriffskon­ trolliste für einen Satz von Domänen und die Allgemein­ schlüssel für jede Domäne enthält.Domains are groups of applets that have access rights len. Using a private key Encryption and an encryption supplied by the applet rarely message can the application machine ensure that an applet belongs to a specified domain. Applet Files contain a header that specifies the access con trollist for a set of domains and the general contains keys for each domain.

Fig. 3 illustriert ein Applet 22, welches eine Nutzlast 24 bestehend aus einem objektbasierendem Anwendungsprogramm ein­ schließlich Daten, sowie einen Vorsatz 26 enthält. Der Vor­ satz 26 enthält einen Allgemeinschlüssel oder mehrere Allge­ meinschlüssel 28 sowie eine Applikationskontrolliste 30. Er enthält ebenfalls eine Identifizierung des Applets (z. B. den URL, falls bei World Wide Web benutzt), welche am Server un­ ter Benutzung eines Privatschlüssels verschlüsselt werden kann, zur Entschlüsselung unter der Steuerung der Applikati­ onsmaschine 16 unter Benutzung eines Allgemeinschlüssels 28. Der Vorsatz enthält ebenfalls einen verschlüsselten Satz von Domänen, z. B. Domänennachrichten, welche unter Benutzung ei­ nes Allgemeinschlüssels 28 entschlüsselt werden können. FIG. 3 illustrates an applet 22 which contains a payload 24 consisting of an object-based application program including data, as well as a header 26 . The prefix 26 contains a general key or several general keys 28 and an application control list 30 . It also contains an identification of the applet (e.g. the URL, if used in the World Wide Web), which can be encrypted on the server using a private key, for decryption under the control of the application machine 16 using a general key 28 . The header also contains an encrypted set of domains, e.g. B. Domain messages, which can be decrypted using egg nes general key 28 .

Ein Applet kann gleichzeitig zu einer oder mehreren Domänen gehören. Es ist die Verantwortlichkeit der Domäneninhaber, zu gewährleisten, daß der Privatschlüssel, der zur Erzeugung der verschlüsselten Domänenauthentizitätsnachrichten benutzt wird, geheimgehalten wird.An applet can go to one or more domains at the same time belong. It is the responsibility of the domain owner, too ensure that the private key used to generate the encrypted domain authentication messages used is kept secret.

Wie oben erwähnt, kann die verschlüsselte Nachricht die App­ let-Identifizierung unter Benutzung des Privatschlüssels ver­ schlüsseln. Dies gewährleistet, daß die verschlüsselte Nach­ richt nicht von einem anderen Applet im Versuch, diese App­ let-Domänenmöglichkeiten zu borgen, kopiert worden ist. Jeg­ licher Versuch, das Server-Applet auf eine ändere Maschine zu klonen und dann in der Lage zu sein, die domäneneigenen Da­ teien zu lesen, würde dann bewirken, daß die verschlüsselte Nachricht nicht mit der Applet-Identifizierung übereinstimmt, und würde die Applet-Domäne innerhalb der Applikationsmaschi­ ne ungültig machen.As mentioned above, the encrypted message can be the app let identification using the private key ver key. This ensures that the encrypted post Don't judge from another applet trying to use this app to borrow let domain possibilities has been copied. Any Attempt to move the server applet to a different machine clone and then be able to use the domain's Da Reading parts would then cause the encrypted Message does not match applet identification, and would become the applet domain within the application machine ne invalidate.

Eine Kombination von Zugriffsverfahren wird vorzugsweise be­ nutzt, um für Applets einen sicheren Zugriff auf dauerhafte Speicher vorzusehen. Sowohl die Applet-Identifizierung als auch vorzugsweise die Domänen werden als Schlüssel innerhalb der Zugriffskontrolliste für eine Datei implementiert.A combination of access methods is preferably be uses secure access to permanent for applets To provide storage. Both applet identification as also preferably the domains are used as keys within implemented the access control list for a file.

Die Sprachenklassen zum Dateizugriff in der Applikationsma­ schine 16 für die bestimmte benutzte Sprache, z. B. Java, sollte verbessert werden, so daß sie einen Zugriff auf das Dateisystem basierend auf der Applet-Identifizierung und der Domäne erlaubt. Applets sollten, wie oben angedeutet bezüg­ lich Fig. 3, modifiziert werden, um optionell ihre Domäne zu enthalten, sowie durch die Benutzung einer Allgemeinschlüs­ sel-Verschlüsselung davon und/oder ihrer Identifizierung. Je­ de Datei mit Zugriffsrechten, die ihr zugeordnet sind, ist in der Zugriffskontrolliste 20 (Fig. 2) in einer im RAM 16 ge­ speicherten Datei, auf die durch die Applikationsmaschine zu­ gegriffen werden kann, z. B. ein Browser-Programm, enthalten. Die Applikationsmaschine, die im RAM 16 enthalten ist, ver­ handelt Zugriffsrechte für jedes geladene Applet. Zugriffs­ rechte können Servicequalitätsinformationen enthalten, welche definiert, wie auf jede Ressource zugegriffen werden kann, einschließlich der Maximalgröße von Änderungen. Jede Änderung am Dateisystem wird überprüft, um offenzulegen, ob sie Zu­ griffsrechte verletzen würde. Dies beinhaltet das Recht auf Zugriff, Änderung oder Schaffung einer Datei und die Grenzen der Größe der Änderungen.The language classes for file access in the application machine 16 for the particular language used, e.g. Java, should be improved so that it allows access to the file system based on applet identification and domain. As indicated above with reference to FIG. 3, applets should be modified to optionally contain their domain, and by using general key encryption thereof and / or their identification. Each de file with access rights that are assigned to it is in the access control list 20 ( FIG. 2) in a ge stored in RAM 16 file to which can be accessed by the application machine, for. B. contain a browser program. The application machine, which is contained in the RAM 16 , handles access rights for each loaded applet. Access rights can include quality of service information that defines how each resource can be accessed, including the maximum size of changes. Every change to the file system is checked to reveal whether it would violate access rights. This includes the right to access, change or create a file and the limits of the size of the changes.

Die Struktur der Zugriffskontrolliste ist vorzugsweise fol­ gende:The structure of the access control list is preferably fol gend:

wobei:
Filename enthält einen oder mehrere Dateinamen, von denen jeder Wild-Cards enthalten kann
AccessMode ist eines von Lesen, Schreiben, Anhängen, Löschen, Neue Datei, Auflisten, Anfragen, (MMaxSize: x)
IDorDomain ist entweder ein URL zum Spezifizieren eines Applet oder ein (DomainName: publicKey)-Paar
in which:
Filename contains one or more file names, each of which can contain wild cards
AccessMode is one of Read, Write, Attach, Delete, New File, List, Requests, (MMaxSize: x)
IDorDomain is either a URL to specify an applet or a (DomainName: publicKey) pair

Beispielsweise kann ein Eintrag, wo alle Dateien in "/public"-Verzeichnis lesbar sind, "/private" durch das App­ let neue Dateien geschaffen bekommen kann, URL "http://www.foo.bar/applet.class" und Applets der Domäne "MyDomain" Schreibzugriff auf die Datei "/private/foo.bar" mit auf 5000 Byte eingestelltem Hinzufügungsmodus haben, vor­ liegen als:For example, an entry where all files are in "/ public" directory are readable, "/ private" through the app let new files get created, url "http://www.foo.bar/applet.class" and applets of the domain "MyDomain" write access to the file "/private/foo.bar"  with add mode set to 5000 bytes lie as:

Eine innerhalb der Applikationsmaschine gesendete Nachricht würde so, wie im Fließdiagramm von Fig. 4 gezeigt, in dem die Zeit von der Oberseite zur Unterseite der Figur verläuft, in Erscheinung treten.A message sent within the application machine would appear as shown in the flow diagram of Fig. 4, in which time is from the top to the bottom of the figure.

In diesem Beispiel fordert das Applet das Öffnen der Datei zum Einschreiben von 4000 Byte an. Die Zugriffskontrolliste (ACL) wird durch die Applikationsmaschine befragt. Die Anfor­ derung wird gebilligt, und die Datei wird geöffnet. Wenn 3500 Byte hinzugefügt werden, hat das Schreiben in die Datei Er­ folg. Ein Versuch, weitere 1000 Byte zu schreiben, beschert einen Mißerfolg, und diese werden nicht geschrieben, da sie die gespeicherten Zugriffsrechte (4000 Byte) der Applikati­ onsmaschine für das Applet hinsichtlich der Datei überschrei­ ten.In this example, the applet requests that the file be opened for writing 4000 bytes. The access control list (ACL) is queried by the application machine. The requirement Change is approved and the file is opened. If 3500 Bytes added, he has to write to the file An attempt to write another 1000 bytes results a failure, and these are not written as they the saved access rights (4000 bytes) of the application ons machine for the applet overwrite the file ten.

Somit ist ersichtlich, daß die vorliegende Erfindung ein Ver­ fahren schafft, durch das Applets Zugriff auf Dateien haben können, die auf dauerhaften Speichermedien gespeichert sind, oder Zugriff auf andere Computersystemressourcen in einem of­ fenen System haben können, die anderenfalls geschützt wären, und zwar auf sichere Art und Weise, ohne Besorgnis, daß ein Gauner-Applet die Domäne eines anderen Applet angenommen hat, oder die Besorgnis, daß eine Datei gestohlen oder beschädigt werden kann. Das Verfahren bietet ebenfalls Schutz gegen Über­ lauf der Speichermedien aufgrund einer Erzeugung von Dateien mit übermäßiger Größe. Und zur gleichen Zeit erlaubt es eine sophistiziertere Funktionsweise eines Computers, der mit ei­ nem offenen System verbunden ist, daß Dateien und weitere Ressourcen, die durch einen lokalen Computer gesteuert werden oder damit verbunden sind, bei der Verarbeitung von Applets benutzt werden können.Thus, it can be seen that the present invention is a ver driving creates through which applets have access to files that are stored on permanent storage media, or access to other computer system resources in one of open system that would otherwise be protected, in a safe manner, without concern that a Crook applet has taken the domain of another applet or concern that a file has been stolen or damaged  can be. The process also offers protection against over-users run of the storage media due to creation of files with excessive size. And at the same time it allows one more sophisticated way a computer works with ei nem open system is connected that files and others Resources that are controlled by a local computer or associated with it when processing applets can be used.

Eine Person, die die Erfindung versteht, kann jetzt alterna­ tive Strukturen und Ausführungsformen oder Variationen der obigen ersinnen. All diejenigen, welche in den Schutzumfang der hieran angehängten Patentansprüche fallen, sollen Teil der vorliegenden Erfindung sein.A person who understands the invention can now alternate tive structures and embodiments or variations of devise the above. All those in the scope part of the claims appended hereto are to fall of the present invention.

Claims (12)

1. Verfahren zum Verarbeiten eines Applet mit den Schrit­ ten:
  • (a) Speichern einer Datei in einem dauerhaften Spei­ chermedium (PSM), wobei die Datei eine Zugriffskon­ trolliste enthält,
  • (b) Übertragen eines Applets von einem Server, wobei das Applet zumindest eines von Applet- Identifizierungsdaten und eines Paares von einem Privatschlüssel -verschlüsselten Domänenidentifizie­ rer und einem Allgemeinschlüssel, einem Dateimaxi­ malgrößenindikator und einer Spezifizierung erforder­ licher Operationen enthält,
  • (c) Empfangen des Applets durch eine Applikationsma­ schine,
  • (d) im Fall, daß der Domänenidentifizierer im Applet enthalten ist, Entschlüsseln des Domänenidentifi­ zierers unter Benutzung des Allgemeinschlüssels,
  • (e) Prüfen des zumindest einen von den Applet- Identifizierungsdaten und dem entschlüsselten Domä­ nenidentifizierer gegenüber der Zugriffskontrolli­ ste hinsichtlich einer Übereinstimmung; und
  • (f) im Fall, daß eine Übereinstimmung gefunden wird, Ermöglichen der in dem Applet spezifizierten Opera­ tionen an einer in einem dauerhaften Speichermedium gespeicherten Datei, für welche ein Zugriff für das Applet, wie in der Dateizugriffskontrolliste spezi­ fiziert, möglich ist.
1. Procedure for processing an applet with the steps:
  • (a) storing a file in a permanent storage medium (PSM), the file containing an access control list,
  • (b) transmitting an applet from a server, the applet containing at least one of applet identification data and a pair of a private key-encrypted domain identifier and a general key, a file maximum size indicator and a specification of required operations,
  • (c) receiving the applet by an application machine,
  • (d) in the event that the domain identifier is contained in the applet, decrypting the domain identifier using the general key,
  • (e) checking the at least one of the applet identification data and the decrypted domain identifier against the access control list for a match; and
  • (f) in the event that a match is found, enabling the operations specified in the applet on a file stored in a permanent storage medium, for which access for the applet as specified in the file access control list is possible.
2. Verfahren nach Anspruch 1, gekennzeichnet durch den Schritt der Beendigung der Durchführung der in dem App­ let spezifizierten Operation in dem Fall, daß die Opera­ tion in einer Dateigröße im dauerhaften Speichermedium resultieren würde, welche die Dateimaximalgröße, die im Applet angezeigt ist, überschreitet.2. The method according to claim 1, characterized by the Step of completing the implementation in the app let specified operation in the event that the Opera tion in a file size in the permanent storage medium which would result in the maximum file size saved in the Applet is displayed exceeds. 3. Verfahren nach Anspruch 1, gekennzeichnet durch den Schritt der Nicht-Durchführung der Operation im Fall, daß keine Übereinstimmung gefunden wird.3. The method according to claim 1, characterized by the Step of not performing the operation in the event that no match is found. 4. Verfahren zur Verarbeitung von Applets mit den Schrit­ ten:
  • (a) Empfangen von Applets in einer Applikationsma­ schine, wobei die Applets Spezifikationen von durchzuführenden Operationen aufweisen und einige der Applets zumindest eines von Applet-Identi­ fizierungsdaten und Privatschlüssel-verschlüsselten Domänen aufweisen,
  • (b) Verarbeiten der Applets in einem Ausmaß, in dem Zu­ griff auf in einem dauerhaften Speichermedium ent­ haltene Dateien nicht erforderlich ist,
  • (c) im Fall, daß Applets Privatschlüssel-verschlüsselte Domänen aufweisen, Entschlüsseln der Domänen,
  • (d) Prüfen des zumindest einen von den Applet- Identifizierungsdaten und den entschlüsselten Domä­ nen gegenüber einer Kontrolliste, und
  • (e) Verarbeiten derjenigen Applets, von denen zumindest das eine von den Applet-Identifizierungsdaten und den entschlüsselten Domänen mit Einträgen in der Kontrolliste zum Zugriff auf die in dem dauerhaften Speichermedium enthaltenen Dateien übereinstimmen, wie durch die Applets gefordert wird.
4. Procedure for processing applets with the steps:
  • (a) receiving applets in an application machine, the applets having specifications of operations to be performed and some of the applets having at least one of applet identification data and private key-encrypted domains,
  • (b) processing the applets to an extent such that access to files contained in a permanent storage medium is not required,
  • (c) in the event that applets have private key-encrypted domains, decrypting the domains,
  • (d) checking the at least one of the applet identification data and the decrypted domains against a checklist, and
  • (e) Processing those applets, of which at least one of the applet identification data and the decrypted domains match entries in the control list for access to the files contained in the permanent storage medium, as required by the applets.
5. Verfahren zum Verarbeiten eines Applet mit den Schritten Speichern einer Zugriffskontrolliste, welche eine Iden­ tität von Applets oder Domänen enthält, die einen Zu­ griff auf in einem dauerhaften Speichermedium gespei­ cherte Dateien haben können, und Ermöglichen eines Zu­ griffs auf das dauerhafte Medium durch Applets, welche eine Identität oder eine Domäne entsprechend einem Ein­ trag auf der Liste aufweisen.5. Procedure for processing an applet with the steps Save an access control list, which is an ID contains applets or domains that have a To resorted to stored in a permanent storage medium backed up files, and allow a To accesses the permanent medium through applets, which an identity or domain corresponding to an one exhibit on the list. 6. Verfahren nach Anspruch 5, gekennzeichnet durch den Schritt der Benutzung einer in einem Computer gespeicher­ ten Applikationssteuermaschine zur Prüfung der Applets, Prüfung der Zugriffskontrolliste und Verarbeitung der Applets, die auf der Zugriffskontrolliste zur Bearbei­ tung einer in dem Zugriffssteuermedium gespeicherten Da­ tei identifiziert werden.6. The method according to claim 5, characterized by the Step of using a stored in a computer application control machine for testing the applets, Checking the access control list and processing the Applets that are on the access control list for editing processing a data stored in the access control medium be identified. 7. Verfahren nach Anspruch 6, gekennzeichnet durch den Schritt des Prüfens eines Applet hinsichtlich einer Dateigrößen-Beschränkungsspezifizierung, die von dem Applet getragen wird, und Ablehnen, die Datei zu bear­ beiten, wenn die durch das Applet spezifizierte Operati­ on in einer Dateigröße oberhalb der spezifizierten Dateigröße resultieren würde.7. The method according to claim 6, characterized by the Step of checking an applet for one File size limit specification specified by the Applet is worn and refuse to edit the file if the operati specified by the applet  on in a file size above the specified File size would result. 8. Verfahren nach Anspruch 5, dadurch gekennzeichnet, daß zumindest eines von der Identifizierung und der Domäne, die von dem Applet getragen werden, Privatschlüssel­ verschlüsselt ist und einen entsprechenden Allgemein­ schlüssel aufweist, und mit den Schritten des Entschlüs­ selns zur Feststellung der Authentizität des zumindest einen von der Identifizierung und der Domäne unter Be­ nutzung des Allgemeinschlüssels, wobei der Schritt der Vergabe eines Zugriffs nur in dem Fall ausgeführt wird, daß das entschlüsseite zumindest eine von der Identifi­ zierung und der Domäne Authentizität aufweist.8. The method according to claim 5, characterized in that at least one of the identification and the domain, that are carried by the applet, private keys is encrypted and a corresponding general key, and with the steps of deciding selns to determine the authenticity of the at least one of the identification and the domain under Be use of the general key, the step of Allocation of access is only carried out in the case that the decision at least one of the identifi ornamentation and the domain authenticity. 9. Applet-Applikationsmaschine mit einer Zugriffssteuerli­ ste, wobei die Maschine und die Liste in einem Speicher eines Computers gespeichert sind, sowie einer Einrich­ tung zum Bereitstellen eines Applet mit einer Identifi­ zierung und zumindest einem von einem Applet- Identifizierer und einer Domäne zum Vergleich mit der Li­ ste und zur Bestimmung einer Übereinstimmung, sowie ei­ ner Einrichtung zur Ermöglichung eines Zugriffs auf eine anderenfalls geschützte Computerressource im Fall der Übereinstimmung.9. applet application machine with an access control ste, the machine and the list in one memory a computer are stored, and a device device for providing an applet with an identification ornament and at least one of an applet Identifier and a domain for comparison with the Li and to determine a match, and ei ner facility to allow access to a otherwise protected computer resource in the case of Accordance. 10. Maschine nach Anspruch 9, dadurch gekennzeichnet, daß die Computerressource ein dauerhaftes Speichermedium ist.10. Machine according to claim 9, characterized in that the computer resource is a permanent storage medium is. 11. Maschine nach Anspruch 9, gekennzeichnet durch eine All­ gemeinschlüssel-Entschlüsselungseinrichtung, wobei das Applet einen Privatschlüssel-verschlüsselten Identifi­ zierer oder eine Domäne und einen Allgemeinschlüssel aufweist, zur Entschlüsselung durch die Entschlüsse­ lungseinrichtung.11. Machine according to claim 9, characterized by an all common key decryption device, the Applet a private key-encrypted Identifi or a domain and a general key  has to decrypt by the decisions processing facility. 12. Computersoftware-Applet mit einem Privatschlüssel­ verschlüsselten Authentizitätscode zum Definieren einer Domäne des Applets.12. Computer software applet with a private key encrypted authenticity code to define a Domain of the applet.
DE19717900A 1996-04-29 1997-04-28 Method and applet application machine for processing a computer applet and a computer software applet Expired - Fee Related DE19717900C2 (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US63880796A 1996-04-29 1996-04-29

Publications (2)

Publication Number Publication Date
DE19717900A1 true DE19717900A1 (en) 1997-10-30
DE19717900C2 DE19717900C2 (en) 2000-05-25

Family

ID=24561525

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19717900A Expired - Fee Related DE19717900C2 (en) 1996-04-29 1997-04-28 Method and applet application machine for processing a computer applet and a computer software applet

Country Status (3)

Country Link
CA (1) CA2202118A1 (en)
DE (1) DE19717900C2 (en)
GB (1) GB2312767A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1462910A3 (en) * 2003-03-28 2006-03-15 NTT DoCoMo, Inc. Terminal device and program

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
IL123512A0 (en) * 1998-03-02 1999-03-12 Security 7 Software Ltd Method and agent for the protection against hostile resource use access
US6223287B1 (en) 1998-07-24 2001-04-24 International Business Machines Corporation Method for establishing a secured communication channel over the internet
IL141530A0 (en) * 1998-08-21 2002-03-10 Visto Corp System and method for enabling secure access to services in a computer network
CA2256934C (en) * 1998-12-23 2002-04-02 Hamid Bacha System for electronic repository of data enforcing access control on data retrieval
GB0012791D0 (en) * 2000-05-25 2000-07-19 Breakertech Inc Mobile node-lock
WO2003003173A1 (en) 2001-06-26 2003-01-09 Sealedmedia Limited Digital rights management
US7815100B2 (en) * 2004-04-30 2010-10-19 Research In Motion Limited System and method of owner application control of electronic devices
US8045958B2 (en) 2005-11-21 2011-10-25 Research In Motion Limited System and method for application program operation on a wireless device
ATE431657T1 (en) 2006-02-27 2009-05-15 Research In Motion Ltd METHOD FOR PERSONALIZING A STANDARDIZED IT POLICY

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5414844A (en) * 1990-05-24 1995-05-09 International Business Machines Corporation Method and system for controlling public access to a plurality of data objects within a data processing system
EP0570123B1 (en) * 1992-05-15 1999-03-17 Addison M. Fischer Computer system security method and apparatus having program authorization information data structures

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1462910A3 (en) * 2003-03-28 2006-03-15 NTT DoCoMo, Inc. Terminal device and program

Also Published As

Publication number Publication date
DE19717900C2 (en) 2000-05-25
GB2312767A (en) 1997-11-05
GB9708608D0 (en) 1997-06-18
CA2202118A1 (en) 1997-10-29

Similar Documents

Publication Publication Date Title
DE60123672T2 (en) COMPUTER SYSTEM PROTECTION
DE69730321T2 (en) METHOD AND DEVICE FOR PROTECTING DATA WITH MULTIPLE ENCRYPTION LEVELS APPLICABLE TO DATA ELEMENTS
DE69531077T2 (en) Method and device with user interaction of the trial-and-buy type, which makes it possible to test software
DE10196006B4 (en) Create a key hierarchy for use in an isolated execution environment
DE60212920T3 (en) METHOD AND SYSTEM FOR MANAGING DIGITAL SUBSCRIPTION RIGHTS
DE69724946T2 (en) Program rental system and method for renting programs
DE69531079T2 (en) Method and device with computer-dependent identification, which makes it possible to test software
DE10051571B4 (en) Method and system to support security policies using stylesheet processing
DE19827659B4 (en) System and method for storing data and protecting the data against unauthorized access
DE69727198T2 (en) Perform digital signatures for data streams and archives
DE69815599T2 (en) Method and device for protecting application data in secure memory areas
DE60218615T2 (en) Method and architecture for the pervasive protection of digital goods
DE60016972T2 (en) ADAPTABLE SAFETY MECHANISM TO PREVENT UNLAWFUL ACCESS TO DIGITAL DATA
DE60218996T3 (en) METHOD AND DEVICE FOR ESTABLISHING USE RIGHTS FOR DIGITAL CONTENT PRODUCED IN THE FUTURE
DE69736310T2 (en) Generation and distribution of digital documents
DE60117757T2 (en) KEY AND CLOSURE DEVICE
EP1184771A1 (en) Method and device for protection of computer software and/or computer-readable data
DE10244728A1 (en) Information protection system for optical disk, transmits user password to optical disk, when stored and obtained serial number of disk are in collation
DE60114069T2 (en) System and method for the protection of digital works
DE60112227T2 (en) PROCESS AND DEVICE FOR SAFE DATA DISTRIBUTION
DE19717900C2 (en) Method and applet application machine for processing a computer applet and a computer software applet
EP4016338A1 (en) Access control for data stored on the cloud
WO2005081089A1 (en) Method for protecting confidential data
EP1700182B1 (en) Authorization code recovering method
EP2491513B1 (en) Method and system for making edrm-protected data objects available

Legal Events

Date Code Title Description
8110 Request for examination paragraph 44
D2 Grant after examination
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee