DE10310372B4 - Verfahren zur Übertragung von mobilen Programmen - Google Patents
Verfahren zur Übertragung von mobilen Programmen Download PDFInfo
- Publication number
- DE10310372B4 DE10310372B4 DE10310372A DE10310372A DE10310372B4 DE 10310372 B4 DE10310372 B4 DE 10310372B4 DE 10310372 A DE10310372 A DE 10310372A DE 10310372 A DE10310372 A DE 10310372A DE 10310372 B4 DE10310372 B4 DE 10310372B4
- Authority
- DE
- Germany
- Prior art keywords
- computer
- program
- policies
- mobile
- mobile program
- 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.)
- Expired - Fee Related
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
- H04L63/102—Entity profiles
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/52—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/52—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
- G06F21/53—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by executing in a restricted environment, e.g. sandbox or secure virtual machine
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/34—Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/40—Network security protocols
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing 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/2115—Third party
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/30—Definitions, standards or architectural aspects of layered protocol stacks
- H04L69/32—Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
- H04L69/322—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
- H04L69/329—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]
Abstract
Verfahren
zur Übertragung
von mobilen Programmen (MC) von einem ersten Rechner (1) auf einen
zweiten Rechner (2), auf dem das mobile Programm (MC) ausführbar ist,
wobei:
– das mobile Programm (MC) von dem ersten Rechner (1) auf den zweiten Rechner (2) geladen wird;
– eine oder mehrere Policies (P) auf den zweiten Rechner (2) geladen werden, wobei die Policies (P) eine Menge an Zugriffsrechten des mobilen Programms (MC) auf von dem mobilen Programm (MC) zu verarbeitenden Daten festlegen;
– die Policies (P) eine oder mehrere für den Benutzer des mobilen Programs (MC) anzeigbare Erklärungen umfassen, wobei die Erklärungen Informationen betreffend die Ausführung des mobilen Programms (MC) mit den durch die Policies (P) festgelegten Zugriffsrechten beinhalten;
– die Erklärungen vor der Ausführung des Programms (MC) dem Benutzer angezeigt werden.
– das mobile Programm (MC) von dem ersten Rechner (1) auf den zweiten Rechner (2) geladen wird;
– eine oder mehrere Policies (P) auf den zweiten Rechner (2) geladen werden, wobei die Policies (P) eine Menge an Zugriffsrechten des mobilen Programms (MC) auf von dem mobilen Programm (MC) zu verarbeitenden Daten festlegen;
– die Policies (P) eine oder mehrere für den Benutzer des mobilen Programs (MC) anzeigbare Erklärungen umfassen, wobei die Erklärungen Informationen betreffend die Ausführung des mobilen Programms (MC) mit den durch die Policies (P) festgelegten Zugriffsrechten beinhalten;
– die Erklärungen vor der Ausführung des Programms (MC) dem Benutzer angezeigt werden.
Description
- Die Erfindung betrifft ein Verfahren zur Übertragung von mobilen Programmen sowie eine entsprechende Anordnung zur Übertragung von mobilen Programmen.
- Mobile Programme, insbesondere mobiler Code, wie zum Beispiel JAVA Applets, werden heutzutage häufig in Datenkommunikationssystemen eingesetzt. Insbesondere bei Internet-Anwendungen haben sich solche mobilen Programme bewährt, da ein Benutzer das mobile Programm von einem zentralen Server herunterladen und auf seinem eigenen Rechner ausführen kann. Somit stehen dem Benutzer neben seinen lokal eingesetzten Anwendungen eine Vielzahl von aus dem Internet abrufbaren Programmen zur Verfügung. Die Verwendung von mobilen Programmen auf einem lokalen Rechner bringt jedoch hinsichtlich sicherheitsrelevanter Aspekte Nachteile mit sich, da die Programme unter Umständen nicht vertrauenswürdig sind und somit ungewünscht Daten auf dem lokalen Rechner manipulieren können.
- Es sind bei der Verwendung von mobilen Programmen aus dem Stand der Technik bereits verschiedene Sicherheitsmechanismen bekannt, die unerwünschte Angriffe von außen auf lokale Daten zu vermeiden versuchen. Ein Abriss über bekannte Sicherheitsmechanismen findet sich in der Druckschrift [1].
- Die bekannten Sicherheitsmechanismen können in vier Gruppen eingeteilt werden. Eine erste Methode zur Gewährleistung von Datensicherheit ist das Ausführen von mobilen Programmen in einer sogenannten Sandbox-Umgebung, welche keine gefährlichen Aktionen durch das mobile Programm zulässt. Dieses Verfahren ist zwar sehr sicher, jedoch sind viele nützliche Funktionen des Programms nicht durchführbar.
- Bei einem zweiten Sicherheitsmechanismus wird der mobile Programmcode erst nach der Überprüfung einer digitalen Unterschrift ausgeführt. Durch die digitale Unterschrift wird verifiziert, dass der Programmcode von einer für den Benutzer vertrauenswürdigen Stelle stammt. Erst wenn ein Programmcode von der entsprechenden vertrauenswürdigen Stelle unterschrieben wurde, kann er ohne Einschränkungen ausgeführt werden. Bei dieser Methode ist nachteilhaft, dass der Benutzer dem Signierer des Programmcodes volles Vertrauen entgegenbringen muss, dem Signierer aber eigentlich so wenig wie möglich vertrauen möchte.
- Bei einem weiteren Sicherheitsmechanismus wird der Programmcode ebenfalls signiert, wobei jedoch die Signatur mit für den Signierer definierten Datenzugriffsrechten gekoppelt wird. Es können somit für unterschiedliche Signierer verschiedene Zugriffsrechte je nach Vertrauenswürdigkeit festgelegt werden. Dies entspricht im Wesentlichen der Vergabe von Benutzerkennungen für die Signierer, wobei der Programmanwender jedoch den Umfang der Zugriffsrechte über eine sogenannte Policy definieren muss. Hierbei besteht die Gefahr, dass der Programmanwender aus Unkenntnis die Policy zu weit fasst und im Extremfall sogar auf jegliche sicherheitsrelevanten Einschränkungen bei der Programmausführung verzichtet.
- In einem weiteren Verfahren wird der Programmcode ebenfalls signiert und beim Anwender nur mit einer Verifikation der Signatur ausgeführt, wobei bei der Ausführung des Programms spezifische Zugriffsrechte, die von der Programmanwendung abhängen, berücksichtigt werden. Im Unterschied zum vorherigen Verfahren sind die Zugriffsrechte nun an die Programmanwendung gekoppelt, wobei bei weniger sicherheitskritischen Programmanwendungen weiter gefasste Zugriffsrechte erteilt werden können. Bei diesem Sicherheitsmechanismus müssen jedoch ebenfalls Policies durch den Benutzer definiert werden, was sehr aufwändig ist und für einen nicht mit der Softwareprogrammierung vertrauten Benutzer kaum zu bewerkstelligen ist.
- Aus [2] ist ein Verfahren zum Übertragen von ausführbaren, mobilen Programmen von einem ersten auf einen zweiten Rechner bekannt, wobei jeweils Policies zur Festlegung von Zugriffsrechten des mobilen Programms auf den zweiten Rechner geladen werden.
- Aus [3] und [4] sind spezielle Editoren zum Anzeigen und Bearbeiten von Policies bekannt.
- Die oben beschriebenen Sicherheitsmechanismen haben den Nachteil, dass die Zugriffrechte des Programms dem Benutzer nicht verständlich dargelegt werden bzw. dass die Zugriffsrechte durch den Benutzer des mobilen Programms selbst festgelegt werden müssen, wobei jedoch nur wenige Benutzer ausreichende Programmiererfahrung haben, um die Zugriffsrechte in einer sogenannten Policy nach ihren Bedürfnissen zu definieren.
- Aufgabe der Erfindung ist es deshalb, ein Verfahren zur Übertragung von mobilen Programmen bereitzustellen, wobei dem Benutzer nach der Übertragung des Programms Informationen hinsichtlich der beim Ausführen des Programms verwendeten Sicherheitsmechanismen zur Verfügung stehen.
- Diese Aufgabe wird gemäß den Merkmalen der unabhängigen Patentansprüche gelöst. Weiterbildungen der Erfindung ergeben sich aus den abhängigen Ansprüchen.
- Bei dem erfindungsgemäßen Verfahren werden mobile Programme von einem ersten Rechner auf einen zweiten Rechner übertragen, wobei auf dem zweiten Rechner das mobile Programm ausführbar ist. Der erste Rechner kann hierbei insbesondere ein Internet-Server sein, von dem ein Benutzer ein mobiles Programm auf seinen lokalen PC, der in diesem Fall den zweiten Rechner darstellt, herunterlädt. Nachdem ein mobiles Programm von dem ersten Rechner auf den zweiten Rechner geladen wurde, werden eine oder mehrere Policies, welche eine Menge an Zugriffsrechten des mobilen Programms auf von dem mobilen Programm zu verarbeitenden Daten festlegen, auf den zweiten Rechner geladen. Die Policies umfassen neben maschinenlesbaren Code, durch den die Zugriffsrechte festgelegt werden, auch eine oder mehrere für den Benutzer des mobilen Programms bestimmte und anzeigbare Erklärungen, wobei die Erklärungen Informationen betreffend die Ausführung des mobilen Programms mit den durch die Policies festgelegten Zugriffsrechten beinhalten. Diese Erklärungen werden vor der Ausfüh rung des Programms dem Benutzer angezeigt. Folglich wird dem Benutzer transparent mitgeteilt, inwieweit das Programm mit einer bestimmten Policy Daten auf dem zweiten Rechner manipuliert. In einer besonders bevorzugte Ausführungsform beinhalten die Erklärungen Informationen betreffend sicherheitskritische Programmoperationen bei der Ausführung des Programms. Im Gegensatz zum Stand der Technik, bei dem die verwendeten Policies für den Benutzer nicht einsehbar und darüber hinaus unverständlich sind, werden bei der vorliegenden Erfindung in die Policies Erklärungen implementiert, die für den Benutzer verständlich sind und anhand derer der Benutzer entscheiden kann, ob er das Programm tatsächlich ausführen möchte.
- In einer weiteren Ausführungsform sind in den Policies Er klärungen für unterschiedliche Benutzerzielgruppen enthalten, so dass der Benutzer Informationen einsehen kann, die insbesondere für seine Zielgruppe (z.B. Programmierer, Sicherheitsexperte, Anwender) relevant und verständlich sind.
- Die Verbindung des mobilen Programms mit den Policies wird in einer bevorzugten Ausführungsform wie folgt durchgeführt:
Zunächst werden Identifikationsdaten zur Identifikation des mobilen Programms von dem ersten Rechner an einen dritten Rechner übertragen, wobei der dritte Rechner auf die Policies Zugriff hat. Anschließend wird wenigstens eine der Policies und die Identifikationsdaten mit einer Signatur versehen, wobei mit der Signatur erklärt wird, dass sich ein mobiles Programm, das mit den Identifikationsdaten identifizierbar ist, gemäß den Erklärungen der wenigstens einen Policy verhält. Schließlich wird die mit der Signatur versehene Policy und die mit der Signatur versehenen Identifikationsdaten an den zweiten Rechner übertragen. Auf diese Weise wird die Verwaltung von Policies einem dritten Rechner anvertraut, wobei der Benutzer des mobilen Programms vorzugsweise eine Vertrauensbeziehung zu diesem Rechner hat. Das Vertrauen, das der Benutzer zu dem dritten Rechner hat, besteht insbesondere dar in, dass er dem dritten Rechner vertraut, dass dieser Einschränkungen von Zugriffsrechten durch die Policies nach dem Need-to-Know-Prinzip vornimmt, das heißt, die Policies auf dem dritten Rechner sind hinsichtlich der Datensicherheit dahingehend optimiert, dass nur unbedingt für die Programmoperationen notwendigen Datenzugriffe gewährt werden. Das Vertrauen, dass für das mobile Programm eine hinsichtlich von Sicherheitsaspekten optimierte Policy verwendet wird, ist somit an eine dritte Stelle in der Form eines dritten Rechners ausgelagert. Der Benutzer muss somit dem ersten Rechner nur noch dahingehend vertrauen, dass das Programm bei der Ausführung mit den Policies des dritten Rechners auch die gewünschte Funktionalität besitzt. Ferner muss der Benutzer des Programms die Policies nicht mehr selbst erstellen, sondern die Erstellung der Policies wird einer dritten Stelle anvertraut. - Bei der zuletzt beschriebenen Ausführungsform wird das mobile Programm vorzugsweise in dem ersten Rechner mit einer digitalen Unterschrift versehen und dem mobilen Programm wird eine URL-Adresse (URL = Uniform Resource Locator) zugeordnet, wobei die Identifikationsdaten das zur digitalen Unterschrift gehörige Zertifikat und die URL-Adresse umfassen. Die Verwendung eines Zertifikats an Stelle der digitalen Unterschrift ist vorteilhaft, da sich das Zertifikat auch bei einer Änderung des Programms, zum Beispiel bei einer neuen fehlerbereinigten Programmversion, nicht ändert. Da ein Programm in einer neuen Version im wesentlichen die gleiche Funktionalität aufweist, ist somit eine Identifikation nach der Funktionalität des Programms möglich. Dies ist auch sinnvoll, da sich eine erstellte Policy hauptsächlich nach der Programmfunktionalität richtet.
- In einer weiteren bevorzugten Ausführungsform der Erfindung werden die Policies von einem dritten Rechner unter Verwendung des mobilen Programms und einer Menge an vorgegebenen Zugriffsrechten und Erklärungen erstellt. Die vorgegebenen Zugriffsrechte und Erklärungen sind hierbei vorzugsweise auch auf dem dritten Rechner gespeichert. Alternativ kann die Menge an vorgegebenen Erklärungen auf dem dritten Rechner gespeichert sein, wohingegen die Menge an vorgegebenen Zugriffsrechten auf dem ersten Rechner gespeichert ist und von dem dritten Rechner abrufbar ist. In einer weiteren Alternative kann die Menge an vorgegebenen Zugriffsrechten auf dem dritten Rechner gespeichert sein, wohingegen die Menge an vorgegebenen Erklärungen auf einem weiteren Rechner gespeichert ist und von dem dritten Rechner abrufbar ist. Es spielt somit keine Rolle, von welcher Stelle die vorgegebenen Erklärungen bzw. Zugriffsrechte geliefert werden, entscheidend ist lediglich, dass in dem dritten Rechner aus diesen Daten die entsprechenden Policies erstellt werden.
- In einer weiteren bevorzugten Ausführungsform wird das mobile Programm über eine gegen Datenmanipulation gesicherte Verbindung (z.B. HMAC) übertragen und Rechner
1 mit einem geeigneten Verfahren identifiziert. Die Vertrauensbeziehung wird so zwischen dem Benutzer des Programms und einem Rechner des Herstellers oder einem Rechner, dem der Hersteller die Verteilung seiner Programme anvertraut, hergestellt. - In einer weiteren Ausführungsform des erfindungsgemäßen Verfahrens werden für vorgegebenen Programmanwendungen und/oder Benutzerzielgruppen spezifische Policies erstellt, wobei das mobile Programm mit den spezifischen Policies ausführbar ist und die spezifischen Policies von einem Benutzer auswählbar sind. Folglich kann ein Benutzer in Abhängigkeit von der von ihm gewünschten Programmfunktionalität bzw. Datensicherheit entsprechende Policies auswählen, wobei sichergestellt ist, dass das mobile Programm auch mit diesen Policies ausführbar ist. Die Auswahl einer Policy kann auch automatisiert werden, indem in Abhängigkeit von einem vom Benutzer eingegebenen Programm-Anwendungsprofil eine für das Programm-Anwendungsprofil geeignete Policy ermittelt wird.
- Für das erfindungsgemäße Verfahren sind zwei Implementationsszenarien denkbar. In einem Szenario wird wenigstens eine der Policies zusammen mit dem mobilen Programm von dem ersten Rechner auf den zweiten Rechner geladen. In dem anderen Szenario wird wenigstens eine der Policies von einem dritten Rechner auf den zweiten Rechner geladen. Das erste Szenario kommt zur Anwendung, wenn die Policies von dem ersten Rechner bereitgestellt werden, das zweite Szenario kommt zur Anwendung, wenn die Policies von einer dritten Stelle erstellt und bereitgestellt werden.
- Das mobile Programm, das mit dem erfindungsgemäßen Verfahren übertragen wird, ist vorzugsweise in einer Programmiersprache ausgewählt aus JavaTM, Save-TCLTM, CalmTM, Microsoft Authentic Code, MicrosoftTM ActiveX geschrieben. Es ist jedoch auch jegliche andere Programmiersprache denkbar, mit der ein mobiles Programm erzeugbar ist.
- Neben dem oben beschriebenen Verfahren betrifft die Erfindung eine Anordnung zur Übertragung von mobilen Programmen, wobei mit der Anordnung das erfindungsgemäße Verfahren durchführbar ist. Die Anordnung umfasst einen ersten Rechner und einen zweiten Rechner, wobei auf dem zweiten Rechner das mobile Programm ausführbar ist. Die Anordnung ist derart ausgestaltet, dass das mobile Programm von dem ersten Rechner auf den zweiten Rechner ladbar ist, wobei eine oder mehrere Policies gespeichert sind, welche eine Menge an Zugriffsrechten des mobilen Programms auf von dem mobilen Programm zu verarbeitenden Daten festlegen, wobei die Policies auf den zweiten Rechner ladbar sind. Ferner umfassen die verwendeten Policies eine oder mehrere für den Benutzer des Programms anzeigbare Erklärungen, wobei die Erklärungen Informationen betreffend die Ausführung des Programms mit den durch die Policies festgelegten Zugriffsrechten beinhalten. Diese Erklärungen werden vor der Ausführung des Programms dem Benutzer angezeigt.
- Ausführungsbeispiele der Erfindung werden nachfolgend anhand der Zeichnung dargestellt und erläutert.
- Es zeigt
-
1 den schematischen Aufbau einer Anordnung, mit der das erfindungsgemäße Verfahren durchführbar ist. - Die in
1 gezeigte Anordnung zur Übertragung von mobilen Programmen umfasst einen ersten Rechner1 , einen zweiten Rechner2 sowie einen dritten Rechner3 . Auf dem ersten Rechner1 wird das mobile Programm MC (MC = Mobile Code) bereitgestellt, welches über eine Datenverbindung4 an den Rechner2 übertragen wird. Der Rechner2 stellt einen Personal Computer eines Benutzers dar, wobei auf dem Personal Computer die Programme von Rechner1 ausführbar sind. Die Datenverbindung4 ist eine gesicherte Datenverbindung, welche gegenüber Datenmanipulation von außen geschützt ist, beispielsweise durch signierte Übertragung der Daten. Zwischen dem Rechner1 und dem Rechner2 besteht eine Vertrauensbeziehung, wobei die Programme in Rechner1 signiert werden und die Signatur von Rechner2 überprüft wird. - Neben dem Programm MC werden ferner Sicherheits-Policies P in dem dritten Rechner
3 bereitgestellt, wobei die Policies an den Rechner2 übertragen werden können. Auch zwischen dem Rechner2 und dem Rechner3 besteht eine Vertrauensbeziehung, die beispielsweise durch eine Signatur sichergestellt werden kann. Die Policies werden über die Datenverbindung5 heruntergeladen, welche vorzugsweise eine gesicherte Datenverbindung ist, wobei die Sicherheit beispielsweise durch kryptographische Prüfsummen unter Verwendung eines geheimen Schlüssels gewährleistet ist. - Die in dem Rechner
3 gespeicherten Policies legen eine Menge an Zugriffsrechten für entsprechende in dem Rechner1 gespeicherte mobile Programme fest. Die Policies wurden individuell für jedes mobile Programm erstellt, wobei insbesondere berücksichtigt wurde, welche Zugriffsrechte für ein entsprechendes mobiles Programm unbedingt notwendig sind. Folglich stellt der Rechner3 für entsprechende mobile Programme optimierte Policies bereit. Die Erstellung der Policies wird somit an einen dritten Rechner übergeben und nicht von dem Benutzer des Rechners2 selbst vorgenommen. - Bei der Erstellung der Policies wurde darüber hinaus sichergestellt, dass der Benutzer des mobilen Programms den Inhalt der Policies auch verstehen kann. Deshalb enthalten die Policies für den Benutzer bestimmte Erklärungen, wobei die Erklärungen Informationen betreffend die Ausführung des mobilen Programms mit den durch die Policies festgelegten Zugriffsrechten beinhalten. Diese Erklärungen werden dem Benutzer vor der Ausführung des Programms angezeigt.
- Zur Übertragung eines mobilen Programms von dem Rechner
1 auf den Rechner2 wird das mobile Programm über die Datenverbindung4 auf den Rechner2 heruntergeladen. Ferner werden Identifikationsdaten ID des Programms über eine Datenverbindung6 an den Rechner3 übertragen. Bei der Datenverbindung6 handelt es sich vorzugsweise um eine gesicherte Datenverbindung. In dem Rechner2 werden die Identifikationsdaten des mobilen Programms entsprechenden Policies zugeordnet, mit denen das mobile Programm ausführbar ist. Die Policies werden anschließend zusammen mit den Identifikationsdaten ID über die Datenverbindung5 an den Rechner2 heruntergeladen. - Auf dem Rechner
2 sind schließlich das mobile Programm MC sowie entsprechende zu dem Programm gehörige Policies P gespeichert. Der Benutzer kann sich dann die für ihn bestimmten Erklärungen in den Policies anschauen und entscheiden, mit welcher Policy er das mobile Programm ausführen will. Die Erklärungen können beispielsweise bei einem Internet-Banking-Programm lauten: "Sie können mit diesem Programm Banktransaktionen sicher durchführen". Der Benutzer weiß dann, dass mit der Policy ein sicherer Datentransfer für Banktransaktionen gewährleistet ist und er kann anschließend das Programm mit den durch die Policies festgelegten Zugriffsrechten ausführen. Ferner besteht die Möglichkeit, dass der Benutzer entsprechend der Informationen aus den Erklärungen der Policies eine für ihn geeignete Policy gemäß seinem Sicherheitsbedürfnis auswählt. - Mit dem erfindungsgemäßen Verfahren wird dem Benutzer somit ermöglicht, die Erstellung von Policies an eine vertrauenswürdige dritte Stelle (im vorliegenden Fall dem Rechner
3 ) zu übertragen, wobei der Inhalt der Policies transparent dem Benutzer wiedergegeben wird. Hierdurch wird dem Benutzer eines mobilen Programms ein Werkzeug bereitgestellt, mit dem er Informationen über sicherheitskritische Programmoperationen erhält. - Literaturverzeichnis:
-
- [1] Peter Trommler: "The Application Profile Model: A Security Model for Downloaded Executable Content"; Dissertation an der wirtschaftswissenschaftlichen Fakultät der Universität Zürich; Dezember 1999
- [2] R. Anand et al., "A Flexible Security Model for Using Internet Content", in: Proc. 17th Symp. On Reliable Distributed Systems, 1997, IEEE, S. 89–96
- [3] A. Corradi et al., "A Flexible Access Control for Java Mobile Code", in: Proc. 16th Annual Conf. On Computer Security Applications, 2000, IEEE, S. 356–365
- [4] E. Bertino et al., "Securing XML Documents with Author-X", in: IEEE Internet Computing, 2001, Vol. 5, Issue 3, S. 21–31
Claims (17)
- Verfahren zur Übertragung von mobilen Programmen (MC) von einem ersten Rechner (
1 ) auf einen zweiten Rechner (2 ), auf dem das mobile Programm (MC) ausführbar ist, wobei: – das mobile Programm (MC) von dem ersten Rechner (1 ) auf den zweiten Rechner (2 ) geladen wird; – eine oder mehrere Policies (P) auf den zweiten Rechner (2 ) geladen werden, wobei die Policies (P) eine Menge an Zugriffsrechten des mobilen Programms (MC) auf von dem mobilen Programm (MC) zu verarbeitenden Daten festlegen; – die Policies (P) eine oder mehrere für den Benutzer des mobilen Programs (MC) anzeigbare Erklärungen umfassen, wobei die Erklärungen Informationen betreffend die Ausführung des mobilen Programms (MC) mit den durch die Policies (P) festgelegten Zugriffsrechten beinhalten; – die Erklärungen vor der Ausführung des Programms (MC) dem Benutzer angezeigt werden. - Verfahren nach Anspruch 1, bei dem die Erklärungen sicherheitskritische Programmoperationen des mobilen Programms (MC) betreffen.
- Verfahren nach Anspruch 1 oder 2, bei dem die Policies (P) Erklärungen für unterschiedliche Benutzerzielgruppen enthalten.
- Verfahren nach einem der vorhergehenden Ansprüche, bei dem – Identifikationsdaten (ID) zur Identifikation des mobilen Programms (MC) von dem ersten Rechner (
1 ) an einen dritten Rechner (3 ) übertragen werden, wobei der dritte Rechner (3 ) auf die Policies (P) Zugriff hat; – wenigstens eine der Policies (P) und die Identifikationsdaten (ID) mit einer Signatur versehen werden, wobei mit der Signatur erklärt wird, dass sich ein mobiles Programm (MC), das mit den Identifikationsdaten (ID) identifizierbar ist, gemäß den Erklärungen der wenigstens einen Policy (P) verhält; – die mit der Signatur versehenen Policies (P) und die mit der Signatur versehenen Identifikationsdaten (ID) an den zweiten Rechner (2 ) übertragen werden. - Verfahren nach Anspruch 4, bei welchem dem mobilen Programm (MC) eine URL-Adresse (URL = Uniform Resource Locator) zugeordnet ist und das mobile Programm (MC) in dem ersten Rechner (
1 ) mit einer digitalen Unterschrift versehen bereitgestellt wird, wobei die Identifikationsdaten (ID) das zur digitalen Unterschrift gehörige Zertifikat und die URL-Adresse umfassen. - Verfahren nach einem der vorhergehenden Ansprüche, bei dem die Policies (P) von einem dritten Rechner (
3 ) unter Verwendung des mobilen Programms (MC) und einer Menge an vorgegebenen Zugriffsrechten und Erklärungen erstellt werden. - Verfahren nach Anspruch 6, bei dem die Menge an vorgegebenen Zugriffsrechten und Erklärungen auf dem dritten Rechner (
3 ) gespeichert ist. - Verfahren nach Anspruch 6, bei dem die Menge an vorgegebenen Erklärungen auf dem dritten Rechner (
3 ) gespeichert ist und die Menge an vorgegebenen Zugriffsrechten auf dem ersten Rechner (1 ) gespeichert ist, wobei die Menge an vorgegebenen Zugriffsrechten von dem dritten Rechner abrufbar ist. - Verfahren nach Anspruch 6, bei dem die Menge an vorgegebenen Zugriffsrechten auf dem dritten Rechner (
3 ) gespeichert ist und die Menge an vorgegebenen Erklärungen auf einem weiteren Rechner gespeichert ist, wobei die Menge an vorgegebenen Erklärungen von dem dritten Rechner abrufbar ist. - Verfahren nach einem der vorhergehenden Ansprüche, bei dem das mobile Programm über eine gegen Datenmanipulation gesicherte Verbindung übertragen und der erste Rechner mit einem Identifikationsverfahren identifiziert wird.
- Verfahren nach einem der vorhergehenden Ansprüche, bei dem für vorgegebene Programmanwendungen und/oder vorgegebene Benutzerzielgruppen spezifische Policies erstellt werden, wobei das mobile Programm (MC) mit den spezifischen Policies ausführbar ist und die spezifischen Policies (P) von einem Benutzer auswählbar sind.
- Verfahren nach Anspruch 11, bei dem die spezifischen Policies für die Benutzerzielgruppen spezifische Zugriffsrechte umfassen.
- Verfahren nach Anspruch 11 oder 12, bei dem in Abhängigkeit von einem vom Benutzer eingegebenen Programm-Anwendungsprofil eine für das Programm-Anwendungsprofil geeignete Policy ermittelt wird.
- Verfahren nach einem der vorhergehenden Ansprüche, bei dem wenigstens eine der Policies (P) zusammen mit dem mobilen Programm (P) von dem ersten Rechner (
1 ) auf den zweiten Rechner (2 ) geladen wird. - Verfahren nach einem der Ansprüche 1 bis 13, bei dem wenigstens eine der Policies von einem dritten Rechner (
3 ) auf den zweiten Rechner (2 ) geladen wird. - Verfahren nach einem der vorhergehenden Ansprüche, bei dem das mobile Programm (MC) in einer Progammiersprache ausgewählt aus JavaTM, Safe-TclTM, CamlTM, MicrosoftTM Authenticode, MicrosoftTM ActiveX geschrieben ist.
- Anordnung zur Übertragung von mobilen Programmen (MC), mit der ein Verfahren nach einem der vorhergehenden Ansprüche durchführbar ist, umfassend einen ersten Rechner (
1 ) und einen zweiten Rechner (2 ), auf dem das mobile Programm (MC) ausführbar ist, wobei die Anordnung derart ausgestaltet ist, dass: – das mobile Programm (MC) von dem ersten Rechner (1 ) auf den zweiten Rechner (2 ) ladbar ist; – eine oder mehrere Policies (P) gespeichert sind, welche eine Menge an Zugriffsrechten des mobilen Programms (MC) auf von dem mobilen Programm (MC) zu verarbeitenden Daten festlegen, wobei die Policies auf den zweiten Rechner (2 ) ladbar sind; – die Policies (P) eine oder mehrere dem Benutzer des mobilen Programms (MP) anzeigbare Erklärungen umfassen, wobei die Erklärungen Informationen betreffend die Ausführung des Programms (MC) mit den durch die Policies (P) festgelegten Zugriffsrechten beinhalten; – die Erklärungen vor der Ausführung des Programms (MC) dem Benutzer anzeigbar sind.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE10310372A DE10310372B4 (de) | 2003-03-10 | 2003-03-10 | Verfahren zur Übertragung von mobilen Programmen |
US10/795,581 US20050021953A1 (en) | 2003-03-10 | 2004-03-09 | Method for transferring mobile programs |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE10310372A DE10310372B4 (de) | 2003-03-10 | 2003-03-10 | Verfahren zur Übertragung von mobilen Programmen |
Publications (2)
Publication Number | Publication Date |
---|---|
DE10310372A1 DE10310372A1 (de) | 2004-10-07 |
DE10310372B4 true DE10310372B4 (de) | 2005-02-03 |
Family
ID=32945851
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE10310372A Expired - Fee Related DE10310372B4 (de) | 2003-03-10 | 2003-03-10 | Verfahren zur Übertragung von mobilen Programmen |
Country Status (2)
Country | Link |
---|---|
US (1) | US20050021953A1 (de) |
DE (1) | DE10310372B4 (de) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8307288B1 (en) * | 2006-12-05 | 2012-11-06 | David Gene Smaltz | Active forms content delivery service for entites and mobile networked device users (active forms) |
KR100938063B1 (ko) * | 2008-05-27 | 2010-01-21 | 삼성에스디아이 주식회사 | 플라즈마 디스플레이 장치 및 그 구동 방법 |
EP2273407A1 (de) * | 2009-07-06 | 2011-01-12 | Gemalto SA | Securitisation for localising a remote code using the addressee's fingerprint |
US8825748B2 (en) * | 2011-07-06 | 2014-09-02 | Sharp Laboratories Of America, Inc. | Sandboxed daemon process invocation through HTTP |
US9071347B2 (en) * | 2012-08-21 | 2015-06-30 | Google Technology Holdings LLC | Electronic device and method for transferring information from one device to another device |
EP3532863A4 (de) * | 2016-10-31 | 2020-06-03 | Gerard Dirk Smits | Schnell abtastender lidar mit dynamischer voxel-sondierung |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7058822B2 (en) * | 2000-03-30 | 2006-06-06 | Finjan Software, Ltd. | Malicious mobile code runtime monitoring system and methods |
US5995756A (en) * | 1997-02-14 | 1999-11-30 | Inprise Corporation | System for internet-based delivery of computer applications |
US20020083183A1 (en) * | 2000-11-06 | 2002-06-27 | Sanjay Pujare | Conventionally coded application conversion system for streamed delivery and execution |
-
2003
- 2003-03-10 DE DE10310372A patent/DE10310372B4/de not_active Expired - Fee Related
-
2004
- 2004-03-09 US US10/795,581 patent/US20050021953A1/en not_active Abandoned
Non-Patent Citations (4)
Title |
---|
ANAND, R., et al.: A Flexible Security Model for Using Internet Content. In: Proc. 17th Symp. on Reliable Distributed Systems, 1997, IEEE, S.89-96 * |
BERTINO, E., et al.: Securing XML Documents with Author-X. In: IEEE Internet Computing, 2001, Vol. 5, Issue 3, S. 21-31 * |
CORRADI, A., et al.: A Flexible Access Control for Java Mobile Code. In: Proc. 16th Annual Conf. on Computer Security Applications, 2000, IEEE, S. 356-365 |
ORRADI, A., et al.: A Flexible Access Control for Java Mobile Code. In: Proc. 16th Annual Conf. on Computer Security Applications, 2000, IEEE, S. 356-365 * |
Also Published As
Publication number | Publication date |
---|---|
DE10310372A1 (de) | 2004-10-07 |
US20050021953A1 (en) | 2005-01-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE602004008413T2 (de) | Vorrichtung und Verfahren zur dynamischen Sicherheitsverwaltung | |
EP3437012B1 (de) | Verfahren, prozessor und gerät zur integritätsprüfung von nutzerdaten | |
EP3557463B1 (de) | Verfahren und ausführungsumgebung zum ausführen von programmcode auf einem steuergerät | |
DE60212969T3 (de) | Verfahren und vorrichtung zum verfolgen des status eines betriebsmittels in einem system zur verwaltung der benutzung der betriebsmittel | |
DE10310372B4 (de) | Verfahren zur Übertragung von mobilen Programmen | |
EP3369027A1 (de) | Verfahren und sicherheitsmodul zum bereitstellen einer sicherheitsfunktion für ein gerät | |
DE10340411B4 (de) | Vorrichtung und Verfahren zur sicheren Ausführung eines Programms | |
EP0657820A1 (de) | Verfahren zum Verhindern einer unberechtigten Datenänderung bei einer Vorrichtung mit einem nichtflüchtigen Speicher | |
EP3937039A1 (de) | Verfahren zur erweiterten validierung eines containerabbilds | |
EP3497606B1 (de) | Individuelles verschlüsseln von steuerbefehlen | |
WO2004114131A1 (de) | Verfahren zum nachladen einer software in den bootsektor eines programmierbaren lesespeicher | |
DE102005046696B4 (de) | Verfahren zum Erzeugen von geschütztem Programmcode und Verfahren zum Ausführen von Programmcode eines geschützten Computerprogramms sowie Computerprogrammprodukt | |
WO2009059935A1 (de) | Daten verarbeitende vorrichtung und verfahren zum betreiben einer daten verarbeitenden vorrichtung | |
EP3373180A1 (de) | Verfahren und computer mit einer sicherung gegen cyberkriminelle bedrohungen | |
EP1892639B1 (de) | Sichere Programmcodeausführung | |
DE19709975C2 (de) | Mikrocomputer | |
DE102005056357A1 (de) | Multithreading-fähige virtuelle Maschine | |
EP3745287A1 (de) | Schützen einer softwareapplikation | |
EP4080296B1 (de) | Verfahren zum durchführen einer sicheren konfigurationsaktualisierung eines elektronischen geräts | |
DE102011111698A1 (de) | Verfahren zum Log-in an einem Computersystem sowie Computerprogramm zum Ablauf auf einem Computersystem | |
EP4328772A1 (de) | Kaskadiert signierbares artefakt einer container-instanz | |
EP3673614B1 (de) | Verfahren und validierungseinrichtung zum validieren eines digitalen zertifikats | |
DE102008039121A1 (de) | Verfahren zur Codierung einer Zeichenkette für ein Fahrzeug sowie entsprechend ausgestaltetes Steuergerät und Fahrzeug | |
EP3101875A1 (de) | Ändern von einstellungen einer auf einem mobilen endgerät laufenden applikation | |
EP4312137A1 (de) | Berechtigung zu einem installieren und/oder einem starten eines zweiten anwendungsprogramms |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OP8 | Request for examination as to paragraph 44 patent law | ||
8364 | No opposition during term of opposition | ||
8339 | Ceased/non-payment of the annual fee |