DE69732323T2 - Unterstützung für die Verteilung von vertrauter Software - Google Patents
Unterstützung für die Verteilung von vertrauter Software Download PDFInfo
- Publication number
- DE69732323T2 DE69732323T2 DE69732323T DE69732323T DE69732323T2 DE 69732323 T2 DE69732323 T2 DE 69732323T2 DE 69732323 T DE69732323 T DE 69732323T DE 69732323 T DE69732323 T DE 69732323T DE 69732323 T2 DE69732323 T2 DE 69732323T2
- Authority
- DE
- Germany
- Prior art keywords
- code
- resources
- acl
- permissions
- 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 - Lifetime
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/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network 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/0435—Network 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 symmetric encryption, i.e. same key used for encryption and decryption
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
-
- 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/54—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 adding security routines or objects to programs
-
- 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/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0823—Network architectures or network communication protocols for network security for authentication of entities using certificates
-
- 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/12—Applying verification of the received information
-
- 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/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/321—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority
-
- 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/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3263—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
-
- 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
- G06F2211/00—Indexing scheme relating to details of data-processing equipment not covered by groups G06F3/00 - G06F13/00
- G06F2211/009—Trust
-
- 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/101—Access control lists [ACL]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Storage Device Security (AREA)
- Stored Programmes (AREA)
Description
- Die vorliegende Erfindung bezieht sich im Allgemeinen auf die Bereitstellung von Software über Verteilungssysteme wie beispielsweise Netzwerke.
- Die Verteilung von Software stellt heutzutage einen wichtigen Industriezweig dar. Dabei wird Software über Disketten, CD-ROMs und zunehmend auch über Netzwerke verteilt. Neben dem einfachen Herunterladen von Code von entfernten Standorten aus über das Internet können Clients heute Applets von Servern herunterladen und ausführen, wobei dieses Modell in der Programmiersprache Java oder auch in anderen Sprachen wie Telescript angelegt ist.
- Ein kritischer Aspekt in Zusammenhang mit Code, der von anderer Stelle erhalten wurde, besteht in der Sicherheit. So wird unter dem Betriebssystem Unix der Code beispielsweise in der Shell des Clients und mit allen Berechtigungen des Clients ausgeführt, wobei dies den Zugriff auf alle seine Dateien sowie möglicherweise das Senden von Mail, den Versuch eines unzulässigen Eindringens in das System usw. beinhaltet. Mit Blick auf Applets sieht Java eine Lösung dieses Problems vor, indem die Applets in einer sehr eingeschränkten Umgebung ausgeführt werden. Als Folge hiervon ist jedoch die Nützlichkeit und Funktionsvielfalt von Java-Applets begrenzt. Java-Anwendungen sind dagegen von dem Maß an Sicherheit abhängig, das vom Betriebssystem bereitgestellt wird, und verfügen über keinerlei Echtheitsnachweisfunktionen. Sie bringen somit die gleichen Sicherheitsprobleme mit sich wie jeder andere Code.
- Eine Form des Echtheitsnachweises wird in „Trusted Distribution of Software Over the Internet", A. D. Rubin, Internet Society Symposium on Network and Distributed Security, 1995, vorgestellt. Hier unterzeichnet eine vertrauenswürdige Fremdpartei ein Zertifikat, um so den Verfasser eines Programms anzugeben und die Unversehrtheit des Programms zu gewährleisten. Obwohl dies einem Client die Überprüfung der Echtheit des Codes gestattet, wird dabei weder ein dem Code zugehöriger flexibler Satz von Berechtigungen festgelegt noch ein automatisches Verfahren bereitgestellt, mit dem der Client diese Berechtigungen durchsetzen kann.
- In einer bevorzugten Ausführungsform kommuniziert ein System für die Codeerzeugung mit einer Zertifizierungsstelle, bei der es sich um eine vertrauenswürdige Fremdpartei handelt. Die Zertifizierungsstelle gibt ein Zertifikat für den Code sowie ein Zertifikat für die Zugriffskontrollliste (Access Control List, ACL) für diesen Code aus. Nach der Ausgabe des Zertifikats kann der Code bzw. die Zugriffskontrollliste von niemandem geändert werden, ohne dass das Zertifikat seine Gültigkeit verliert. Der Code und seine ACL werden mit ihren Zertifikaten auf einem Server gespeichert. Ein Client, der den Code oder die Zugriffskontrollliste herunterlädt, kann die Unversehrtheit des Codes bzw. der Zugriffskontrollliste überprüfen, und das System kann die Anwendung der Zugriffskontrollliste durchsetzen, so dass die Berechtigungen und Betriebsmittel nicht überschritten werden.
- US-A-45412217 beschreibt ein Verfahren und eine Vorrichtung für die Sicherheit von Computersystemen, das/die über Strukturen zur Programmberechtigungserteilung verfügt.
- US-A-5 412 717 beschreibt ein Systemüberwachungsprogramm, das die Ausführbarkeit eines Programms auf die Nutzung vorgegebener Betriebsmittel beschränkt. Hierfür sind dem Programm zertifizierte Fremd-Programmberechtigungsdaten (Program Authorization Information, PAI) zugehörig, welche die dem Programm zugewiesenen Beschränkungen beinhalten.
- US-A-5 210 872 beschreibt ein Verfahren für die Aufgabeneinplanung, das jeder Aufgabe eine Betriebsmittel-Verbrauchsquote zuweist und jede Aufgabe bei ihrer Ausführung überwacht, indem eine Aufgabe, die ihre Quote übersteigt, deaktiviert wird.
- Gemäß einem Aspekt der vorliegenden Erfindung wird ein Verfahren für die Verteilung von Programmcode bereitgestellt, das die Schritte umfasst, mit denen einem Empfängersystem eine vertrauenswürdige Fremd-Zertifizierung zur Verfügung gestellt wird, wobei die vertrauenswürdige Fremd-Zertifizierung eine computerlesbare Beschreibung der Betriebsmittel und Berechtigungen beinhaltet, die für die nachgewiesenermaßen ungefährliche Ausführung des Codes notwendig sind, dadurch gekennzeichnet, dass die Beschreibungen der erforderlichen Betriebsmittel Daten beinhalten, die sowohl eine Mengenangabe zu einem jeden Betriebsmittel beschreiben, das von dem Code genutzt wird, als auch eine maximale Verbrauchsrate eines jeden Betriebsmittels durch den Code.
-
1 zeigt eine Übersichtsdarstellung eines Systems für die Codeverteilung und -zertifizierung gemäß der bevorzugten Ausführungsform der Erfindung; -
2 zeigt, wie die beschriebenen Teile des Client-Systems zusammenarbeiten, um die in der Ausführungsform beschriebenen Funktionen auszuführen; -
3 zeigt die Zugriffskontrollliste (ACL); -
4 zeigt die Datenstrukturen, die von dem ACL-Durchsetzungsprogramm verwendet werden; -
5 zeigt, wie logische Betriebsmittelberechtigungen von dem ACL-Durchsetzungsprogramm durchgesetzt werden; -
6 zeigt, wie physische Betriebsmittelbeschränkungen von dem ACL-Durchsetzungsprogramm durchgesetzt werden. -
7 zeigt den Pseudocode für die Operationen zur Überprüfung der Unversehrtheit, zur Ausführung und zur Durchsetzungsinitialisierung der Client-Systems; -
8 zeigt den Pseudocode für das ACL-Verwaltungsprogramm; und -
9 zeigt den Pseudocode für das ACL-Durchsetzungsprogramm. -
1 zeigt eine Übersichtsdarstellung eines Systems zur Codeverteilung und -zertifizierung gemäß einer bevorzugten Ausführungsform der Erfindung. Es beinhaltet ein oder mehrere Code-Erzeugungssysteme (Code Production Systems, CPS)10 , eine Zertifizierungsstelle (Certification Agency, CA)15 , einen oder mehrere Server20 und ein oder mehrere Client-Systeme30 . Die Client-Systeme können über ein herkömmliches weiträumiges Netzwerk (Wide Area Network, WAN) oder ein lokales Netz (Local Area Network, LAN) mit den Servern verbunden sein. Das CPS verfügt über einen Programmcode (Code)140 und eine Zugriffskontrollliste (ACL)150 für denjenigen Code, den es von der Zertifizierungsstelle zertifiziert haben möchte. Die CA stellt einen öffentlichen Schlüssel K bereit, der weit verbreitet und dem Client-System bekannt ist. Zusätzlich verfügt die CA über einen privaten Schlüssel P, den nur sie kennt. Um für den Code ein Zertifikat zur Verfügung zu stellen, erzeugt die CA ein Zertifikat mit dem Codenamen und der Hash-Verschlüsselung des Codes und unterzeichnet es mit ihrem privaten Schlüssel. Das Zertifikat kann nun nicht geändert werden, ohne dass die Signatur der CA ungültig gemacht wird. Entsprechend erzeugt und unterzeichnet die CA ein anderes Zertifikat für die ACL, die zu dem betreffenden Code gehört (falls gewünscht, kann ein einziges Zertifikat für den Code und seine Zugriffskontrollliste verwendet werden). In der Ausführungsform aus1 empfangen die Client-Systeme das Zertifikat, die ACL und den Code über das WAN oder LAN. Dabei sollte jedoch klar sein, dass die Client-Systeme zertifizierten Code zusätzlich oder alternativ auch über ein Wechselspeichermedium empfangen können, das von einer lokalen Vorrichtung für den Datenimport wie beispielsweise einem Disketten- oder Bildplattenlaufwerk gelesen wird. - Das in
2 dargestellte Client-System beinhaltet ein Prüfprogramm110 , ein ACL-Verwaltungsprogramm130 , ein Ausführungsprogramm170 , ein ACL-Durchsetzungsprogramm180 und eine Client-Schnittstelle190 . Das Client-System beinhaltet außerdem eine herkömmliche Zentraleinheit und eine zugehörige Steuerlogik192 , eine Kommunikationssteuerung/Netzwerkschnittstelle194 , ein CD-ROM- und/oder Diskettenteilsystem196 sowie andere Betriebsmittel wie beispielsweise Netzzugangsmodule, ein Anzeigenteilsystem und verschiedene Spezialadapter. Der Fachmann weiß, dass das Client-System eine Anzahl von zusätzlichen, herkömmlichen Komponenten beinhaltet, die hier nicht ausführlich beschrieben werden. - Das ACL-Verwaltungsprogramm
130 und das ACL-Durchsetzungsprogramm180 sind bevorzugt als Programmcode ausgeführt, dessen Funktionsweise weiter unten ausführlicher beschrieben wird. Das Ausführungsprogramm ist ein herkömmlicher Teil des Client-Betriebssystems (nicht abgebildet), mit dem der in das Client-System importierte Code ausgeführt wird. Die Client-Schnittstelle190 kann als grafische Benutzeroberfläche im Vordergrund ausgeführt sein, welche die Client-Kommunikation mit dem ACL-Verwaltungsprogramm ermöglicht (z. B. kann der Client dem ACL-Verwaltungsprogramm130 so mitteilen, dass er den Programmzugriff auf ein bestimmtes Betriebsmittel zulassen, nicht zulassen oder steuern soll). Das Prüfprogramm110 ist vorzugsweise als Programmcode mit einem Entschlüsselungsmodul ausgeführt, mit dem die Echtheit des importierten Codes, einschließlich der Zugriffskontrollliste, überprüft wird. Das Prüfprogramm beinhaltet außerdem ein Modul für die Hash-Codierung, das die Unversehrtheit des importierten Codes und der ACL prüft. - Beim Herunterladen des Codes bzw. der ACL und seines/ihres Zertifikats
100 prüft das Prüfprogramm110 zunächst (unter Verwendung des bekannten öffentlichen Schlüssels der CA), ob die Signatur der CA auf dem Zertifikat gültig ist. Danach berechnet das Prüfprogramm die Hash-Verschlüsselung des Codes bzw. der ACL und überprüft, ob sie mit dem im Zertifikat genannten Wert übereinstimmt. Wenn die Signatur nicht gültig ist oder der Hash-Code nicht übereinstimmt, werden der Code und die ACL zurückgewiesen120 . Wenn die Überprüfung ein positives Ergebnis erbringt, wird das ACL-Verwaltungsprogramm130 aufgerufen. Das ACL-Verwaltungsprogramm zeigt dem Client über die Client-Schnittstelle190 die ACL an (Beschreibung siehe unten) und stellt fest, ob der Client die einzelnen Einträge der ACL zulassen möchte. Das ACL-Verwaltungsprogramm speichert den Code140 entsprechend der Anweisungen, die der Client über die Client-Schnittstelle gibt, und speichert die ACL150 zusammen mit Berechtigungsmerkern160 . - Zu den Betriebsmitteln, deren Zugriff durch das ACL-Durchsetzungsprogramm gesteuert werden kann, gehören sowohl logische Betriebsmittel wie beispielsweise Dateisysteme, bestimmte Dateien und Systemaufrufe als auch physische Betriebsmittel, die z. B. den Festplattenspeicherplatz, den Festplattenzugriff, die Hauptspeicherverwaltung und den Zugriff auf verschiedene Systemsteuerungen und -adapter beinhalten. Mit Blick auf den Zugriff auf logische Betriebsmittel (d. h. Vorrichtungen des Client-Systems) geben die Berechtigungsmerker
160 an, ob einzelne Elemente zulässig sind; mit Blick auf den Zugriff auf physische Betriebsmittel können die Berechtigungsmerker dazu dienen, die höchste zulässige Verbrauchsmenge oder -rate anzugeben. -
2 zeigt außerdem, wie die verschiedenen Teile des Client-Systems zusammenwirken. In einem Client-System mit vielen Benutzern kann jeder Benutzer seinen eigenen Satz von Berechtigungsmerkern haben. Die ACL kann außerdem Umgebungsvariablen enthalten; indem sie die Umgebungsvariablen während der Ausführung ändern, können einzelne Benutzer die Zugriffsberechtigungen anpassen. Die ACL und die Berechtigungsmerker werden in einem sicheren Bereich gespeichert; das Lesen oder Aktualisieren dieses Bereichs ist eine Berechtigung, die vom ACL-Durchsetzungsprogramm180 durchgesetzt wird. - Das ACL-Verwaltungsprogramm kann jederzeit durch den Client aufgerufen werden, um die Berechtigungen einer ACL anzuzeigen oder zu ändern. Der Code wird durch das Ausführungsprogramm
170 ausgeführt. Bevor der Zugriff auf ein beliebiges Betriebsmittel gestattet wird, ruft das Ausführungsprogramm das ACL-Durchsetzungsprogramm auf, um die Gültigkeit des Zugriffs überprüfen zu lassen. Hierfür fügt das Ausführungsprogramm170 Einstiegsstellen in eine Prüfroutine, die das ACL-Durchsetzungsprogramm aufruft, in den Code ein. Die Funktionsweise des ACL-Durchsetzungsprogramms wird weiter unten ausführlicher beschrieben. - Das System ermöglicht, dass der Code und seine ACL nach Bedarf entweder getrennt oder zusammen heruntergeladen werden können. So kann es möglicherweise sein, dass das CPS die ACL allen Clients kostenlos zur Verfügung stellen will, während für den eigentlichen Code Gebühren anfallen.
-
3 zeigt die Zugriffskontrollliste. Die ACL besteht aus zwei Teilen: der Tabelle200 der physischen Betriebsmittel (Physical Resources Table, PRT), welche die physischen Betriebsmittel enthält, die der Code benötigt, und der Tabelle 250 der logischen Betriebsmittel (Logical Resources Table, LRT) mit den Berechtigungen und logischen Betriebsmitteln, die der Code benötigt. - Die PRT
250 enthält für jedes Betriebsmittel eine Zeile, die den Namen205 des physischen Betriebsmittels (Physical Resource Name, PRN), das Betriebsmittelattribut210 , die maximale Verbrauchsrate215 und die maximale Menge220 enthält. Das Betriebsmittelattribut210 wird verwendet, wenn eine physische Vorrichtung oder eine Betriebsmittel-Festplatte über mehrere Attribute verfügt, wie beispielsweise Speicherplatz und Anzahl der Ein-/Ausgaben für Speichergeräte. Die maximale Verbrauchsrate215 und die maximale Menge sind die höchstzulässige Verbrauchsrate und der höchstzulässige Verbrauch des Betriebsmittels bzw. Attributs. - Die LRT
250 enthält eine Zeile für jeden Aufruf einer externen Routine, die von dem Code benötigt wird (als logisches Betriebsmittel bezeichnet). Dabei enthält jede Zeile den Namen255 des logischen Betriebsmittels (Logical Resource Name) und eine Parameterliste260 , die auf eine Liste mit Parametereinträgen verweist. Jeder Parametereintrag265 gibt einen Satz gültiger Parameterbereiche an, d. h. einen Satz von Werten für jeden Parameter, die zusammen genommen gültig sind, sowie ein Feld nextPE280 , das auf den nächsten Parametereintrag verweist. Der Parameterbereich für jeden Parameter enthält zwei Felder, den Parametertyp270 und den Parameterwert275 , der den Gültigkeitsbereich für diesen Parameter angibt. Bei Kettenparametern lautet der Parametertyp270 STR, und der Parameterwert275 ist eine Liste der regulären Ausdrücke, die gültige Formen für die Zeichenkette angeben. Bei ganzzahligen Parametern lautet der Parametertyp270 INT, und der Parameterwert275 ist eine Liste der Ganzzahlbereiche. Der Parameterwert275 kann die Namen der Umgebungsvariablen beinhalten, wobei die Umgebungsvariable in diesem Fall einen Wert enthalten soll, der während der Laufzeit ersetzt wird. - Das ACL-Durchsetzungsprogramm des Clients stellt sicher, dass die in der ACL für den Code festgelegten Berechtigungen und Betriebsmittel bereitgestellt werden und dass keine zusätzlichen Berechtigungen bzw. Betriebsmittel zugelassen werden.
- Die ACL-Durchsetzung kann statisch oder dynamisch erfolgen. Bei der statischen Durchsetzung kann die Durchsetzung vollständig stattfinden, bevor der Code ausgeführt wird, so dass während der Codeausführung keine Durchsetzung erforderlich ist. Bei der dynamischen Durchsetzung muss die Durchsetzung während der Ausführung des Codes erfolgen. Wenn die CA selbst die ACL überprüft und gewährleistet, dass die Berechtigungen und Betriebsmittel durch den Code nicht überschritten werden, ist die ACL-Durchsetzungsfunktion für das Client-System möglicherweise nicht notwendig.
-
4 zeigt die vom ACL-Durchsetzungsprogramm verwendeten Datenstrukturen. Die Tabelle300 der physischen Betriebsmittel während der Laufzeit (Runtime Physical Resources Table, RPRT) enthält eine Zeile für jedes Betriebsmittel. Der Betriebsmittelname300 , das Betriebsmittelattribut310 , die maximale Verbrauchsrate315 und die maximale Menge320 sind Kopien der entsprechenden Felder in der PRT200 . Die Felder für die tatsächliche Verbrauchsrate325 und den tatsächlichen Verbrauch330 dienen zur Erfassung der tatsächlichen Verbrauchsrate bzw. des tatsächlichen Verbrauchs durch den Code während der Laufzeit. Die Tabelle350 der logischen Betriebsmittel während der Laufzeit (Runtime Logical Resources Table, RLRT) enthält eine Zeile für jedes erforderliche logische Betriebsmittel. Die RLRT ist eine Kopie der LRT mit einem zusätzlichen Merker, der für jede gültige Kombination von Parametern angibt, ob die Kombination vom ACL-Verwaltungsprogramm zugelassen ist. Der Name355 des logischen Betriebsmittels (Logical Resource Name, LRN) ist eine Kopie des entsprechenden Felds der LRT250 , und die Parameterliste360 verweist auf eine Liste365 der Laufzeit-Parametereinträge (Runtime Parameter Entries, RPE). Der Parametertyp370 und die Parameterwerte der Laufzeit-Parametereinträge375 sind Kopien der entsprechenden Felder in der LRT. Das Feld nextPE380 verweist auf den nächsten Laufzeit-Parametereintrag365 , und das Zulässigkeitsfeld385 kann auf JA oder NEIN gesetzt werden, um anzuzeigen, ob dieser Laufzeit-Parametereintrag365 zulässig ist. Das ACL-Durchsetzungsprogramm erfasst außerdem die Code-Startzeit395 . -
5 zeigt, wie Berechtigungen für logische Betriebsmittel durch das ACL-Durchsetzungsprogramm durchgesetzt werden. Dieser Pfad wird immer dann aufgerufen, wenn der Code eine externe Funktion aufruft. In Schritt410 ermittelt das ACL-Durchsetzungsprogramm die Anzahl der Parameter, ihre Werte und den Namen der aufgerufenen Funktion. Die genaue Art und Weise, wie dies geschieht, ist abhängig von der Ausführungsform; so befinden sie sich in Java z. B. auf dem Operandenstapel. In Schritt415 ermittelt das ACL-Durchsetzungsprogramm die Zeile für diese Funktion in der RLRT350 sowie den ersten RPE365 , dessen Zulässigkeitsfeld auf JA gesetzt wurde. Wenn der Name der Funktion nicht gefunden wird oder wenn es keinen derartigen RPE365 gibt, fährt das ACL-Durchsetzungsprogramm mit Schritt455 fort und beendet die Routine, wobei es angibt, dass der Aufruf nicht zulässig ist. In Schritt420 ermittelt das ACL-Durchsetzungsprogramm den Wert des ersten Parameters und macht ihn zum aktuellen Parameter. In Schritt425 prüft das ACL-Durchsetzungsprogramm, ob der Wert des aktuellen Parameters durch den RPE365 zugelassen ist. Wenn der Wert zulässig ist, prüft das ACL-Durchsetzungsprogramm in Schritt430 , ob es noch mehr Parameter gibt. Wenn dies der Fall ist, setzt das ACL-Durchsetzungsprogramm in Schritt435 den aktuellen Parameter auf den nächsten Parameter und kehrt zu Schritt425 zurück. Wenn in Schritt430 keine weiteren Parameter gefunden werden, fährt das ACL-Durchsetzungsprogramm mit Schritt450 fort und gibt eine Rückmeldung aus, dass der Aufruf zulässig ist. - Wenn die Zulässigkeitsprüfung in Schritt
425 nicht erfolgreich ist, fährt das ACL-Durchsetzungsprogramm mit Schritt445 fort und überprüft die RLRT350 , um einen anderen RPE365 zu finden, dessen Zulässigkeitsfeld385 auf JA gesetzt ist. Wenn kein derartiger RPE vorhanden ist, kehrt das ACL-Durchsetzungsprogramm zu Schritt455 zurück und beendet die Routine, wobei es angibt, dass der Aufruf nicht zulässig ist. Wenn es einen derartigen RPE365 gibt, fährt das ACL-Durchsetzungsprogramm mit Schritt420 fort. -
6 zeigt, wie Anforderungen für physische Betriebsmittel durch das ACL-Durchsetzungsprogramm durchgesetzt werden. Das ACL-Durchsetzungsprogramm wird in Schritt500 aufgerufen, bevor das Betriebsmittel zugeteilt wird. Es werden zwei Parameter, die Menge des angeforderten Betriebsmittels (Amount of the Resource Requested, REQAMT) und die geschätzte Dauer des Betriebsmittelverbrauchs (Time of Consumption, COMPT) bereitgestellt. Für Festplatten-E/A ist die REQAMT die Anzahl der Festplatten-E/A, und die COMPT ist die geschätzte Dauer für die E/A-Durchsetzung. In Schritt505 ermittelt das ACL-Durchsetzungsprogramm die Zeile in der RPRT300 für dieses Betriebsmittel und überprüft, ob die maximale Menge320 angegeben ist und ob der tatsächliche Verbrauch plus der REQAMT die maximale Menge320 übersteigt. Wenn dies der Fall ist, meldet es in Schritt527 einen Fehler, der angibt, dass der Verbrauch nicht zulässig ist. Wenn die maximale Menge320 nicht überschritten wird, berechnet das ACL-Durchsetzungsprogramm in Schritt510 die veranschlagte Verbrauchsrate dieses Betriebsmittels als (tatsächlichen Verbrauch330 + REQAMT)/(aktuelle Zeit – Code-Startzeit395 + COMPT). In Schritt515 prüft das ACL-Durchsetzungsprogramm, ob die maximale Verbrauchsrate315 angegeben ist und ob die veranschlagte Verbrauchsrate größer ist als die maximale Verbrauchsrate315 . Wenn die maximale Verbrauchsrate315 nicht angegeben ist oder wenn die veranschlagte Verbrauchsrate nicht größer ist, gibt das ACL-Durchsetzungsprogramm eine Meldung aus, dass der Verbrauch zulässig ist. Wenn die veranschlagte Verbrauchsrate größer ist, berechnet das ACL-Durchsetzungsprogramm in Schritt530 die erforderliche Verzögerung für die Durchsetzung dieser Operation als (tatsächlicher Verbrauch300 + REQAMT)/maximale Verbrauchsrate315 – (aktuelle Zeit – Code-Startzeit395 – COMPT) und gibt die erforderliche Verzögerung mit einer Meldung zurück, die besagt, dass der Verbrauch um die berechnete Verzögerung verzögert werden muss. - In Schritt
550 wird das ACL-Durchsetzungsprogramm aufgerufen, nachdem das Betriebsmittel mit einem Parameter, der die Menge des verbrauchten Betriebsmittels (CONSAMT) angibt, verbraucht wurde. Darauf aktualisiert das ACL-Durchsetzungsprogramm die tatsächliche Verbrauchsrate325 und den tatsächlichen Verbrauch330 . - Verschiedenen Benutzern können auch unterschiedliche Betriebsmittel und Berechtigungen des empfangenden Systems für ein und denselben Code zugewiesen werden. Dies kann entweder zum Zeitpunkt der Installation des Codes vom ACL-Verwaltungsprogramm durchgeführt werden, indem die Berechtigungen der verschiedenen Benutzer betrachtet und mit den Betriebsmitteln und Berechtigungen verknüpft werden, die für den Code zulässig sind. In diesem Fall muss der Satz von Betriebsmitteln und Berechtigungen für jeden Benutzer getrennt gespeichert werden. Bei der Codeausführung werden die Betriebsmittel und Berechtigungen auf einer Benutzerbasis durchgesetzt. Alternativ hierzu können die Betriebsmittel und Berechtigungen während der Ausführung des Codes vom ACL-Durchsetzungsprogramm ermittelt werden, indem die Berechtigungen der verschiedenen Benutzer betrachtet und mit den Betriebsmitteln und Berechtigungen verknüpft werden, die für den Code zulässig sind.
-
7 zeigt den Pseudocode für die Operationen zur Überprüfung der Unversehrtheit, zur Ausführung und die Durchsetzungsinitialisierung des Client-Systems. Dabei sollte klar sein, dass die verschiedenen hier beschriebenen Tabellen, Listenmerker und anderen Datenstrukturen an speziellen Speicherorten des Client-Systems abgelegt sind (z. B. im flüchtigen Arbeitsspeicher, auf der Festplatte oder in einer Kombination beider Speicherarten). Wie bereits erwähnt, sind das ACL-Durchsetzungs- und ACL-Verwaltungsprogramm vorzugsweise als Programmcode ausgeführt, der mit dem Betriebssystem des Client-Systems verknüpft oder in dieses eingebettet ist.8 zeigt den Pseudocode für das ACL-Verwaltungsprogramm.9 zeigt den Pseudocode für das ACL-Durchsetzungsprogramm. - Nachdem die Erfindung nun mit Blick auf die bevorzugte Ausführungsform beschrieben wurde, sind für den Fachmann verschiedene Änderungen und Verbesserungen offensichtlich. Somit sollte klar sein, dass die bevorzugte Ausführungsform als Beispiel und nicht als Beschränkung der Ansprüche bereitgestellt wurde.
- Zusammenfassend wird eine Art des Echtheitsnachweises beschrieben, bei dem eine vertrauenswürdige Fremdpartei ein Zertifikat unterzeichnet, um so den Verfasser eines Programms anzugeben und die Unversehrtheit des Programms zu gewährleisten. Der Programmcode ist gekapselt oder zu dem Zertifikat und zu einer Zugriffskontrollliste (ACL) zugehörig. Die Zugriffskontrollliste beschreibt die von dem Code benötigten Berechtigungen und Betriebsmittel. Ein Durchsetzungsmechanismus weist Systemberechtigungen und Betriebsmittel gemäß der ACL zu.
- In einer bevorzugten Ausführungsform kommuniziert ein System für die Codeerzeugung mit einer Zertifizierungsstelle, bei der es sich um eine vertrauenswürdige Fremdpartei handelt. Die Zertifizierungsstelle gibt ein Zertifikat für den Code sowie ein Zertifikat für die Zugriffskontrollliste für diesen Code aus. Nach der Ausgabe des Zertifikats kann der Code bzw. die Zugriffskontrollliste von niemandem geändert werden, ohne dass das Zertifikat seine Gültigkeit verliert. Der Code und seine ACL werden mit ihren Zertifikaten auf einem Server gespeichert. Ein Client, der den Code oder die Zugriffskontrollliste herunterlädt, kann die Unversehrtheit des Codes bzw. der Zugriffskontrollliste überprüfen, und das System kann die Anwendung der Zugriffskontrollliste durchsetzen, so dass die Berechtigungen und Betriebsmittel nicht überschritten werden.
Claims (11)
- Verfahren für die Verteilung von Programmcode, das die Schritte umfasst, mit denen einem Empfängersystem (
30 ) eine vertrauenswürdige Fremd-Zertifizierung (150 ) zur Verfügung gestellt wird, wobei die vertrauenswürdige Fremd-Zertifizierung (150 ) eine computerlesbare Beschreibung der Betriebsmittel und Berechtigungen beinhaltet, die für die nachgewiesenermaßen ungefährliche Ausführung des Codes (200 ) notwendig sind, dadurch gekennzeichnet, dass die Beschreibungen der erforderlichen Betriebsmittel Daten beinhalten, die sowohl eine Mengenangabe zu einem jeden Betriebsmittel beschreiben, das von dem Code genutzt wird, als auch eine maximale Verbrauchsrate eines jeden Betriebsmittels durch den Code. - Verfahren nach Anspruch 1, wobei die Bereitstellung den Schritt der Kapselung der Zertifizierung mit dem Programmcode umfasst.
- Verfahren nach Anspruch 1 oder 2, das die weiteren Schritte des Lesens (
410 ) der Zertifizierung durch das Empfängersystem und des Zuweisens (520 ) von Betriebsmitteln und Berechtigungen des Empfängersystems auf eine Art und Weise umfasst, dass die in der Zertifizierung vorgegebenen Berechtigungen nicht überschritten werden. - Verfahren nach Anspruch 1, 2 oder 3, das die weiteren Schritte umfasst, mit denen dem Code Zugriff auf und Berechtigungen für die Betriebsmittel des Empfängersystems verweigert oder gestattet wird bzw. werden, wobei vom Benutzer ausgewählte, der Zertifizierung zugehörige Optionen berücksichtigt werden.
- Verfahren nach einem beliebigen der Ansprüche 1 bis 4, wobei die computerlesbare Beschreibung der Betriebsmittel und Berechtigungen dem Empfängersystem in verschlüsselter Form bereitgestellt wird.
- Verfahren nach einem beliebigen der Ansprüche 1 bis 5, wobei die Zertifizierung weiterhin verschlüsselte Prüfdaten beinhaltet und wobei das Empfängersystem die Prüfdaten entschlüsselt, um so die Unversehrtheit der Beschreibung der Betriebsmittel und Berechtigungen zu überprüfen.
- Verfahren nach einem beliebigen der Ansprüche 1 bis 6, wobei die Beschreibungen der erforderlichen Berechtigungen Daten beinhalten, die bestimmte Leistungsmerkmale des Empfängersystems beschreiben, auf die durch den Code zugegriffen werden soll.
- Verfahren nach einem beliebigen der Ansprüche 1 bis 7, wobei die Fremd-Zertifizierung eine Beschreibung der Funktionalität des Codes beinhaltet, wie diese durch die Fremdpartei geprüft wurde.
- Verfahren nach einem beliebigen der Ansprüche 1 bis 8, wobei der Programmcode ein Applet ist, das als ein Programmobjekt von einem Server heruntergeladen wurde.
- Verfahren nach einem beliebigen der Ansprüche 1 bis 8, wobei verschiedenen Benutzern für denselben Code unterschiedliche Betriebsmittel und Berechtigungen des Empfängersystems zugewiesen werden.
- Verfahren nach Anspruch 10, wobei der unterschiedlichen Benutzern zur Verfügung gestellte Satz an Betriebsmitteln und Berechtigungen während der Installation des Codes oder während der Ausführung des Codes festgelegt wird.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US08/661,517 US5825877A (en) | 1996-06-11 | 1996-06-11 | Support for portable trusted software |
US661517 | 1996-06-11 |
Publications (2)
Publication Number | Publication Date |
---|---|
DE69732323D1 DE69732323D1 (de) | 2005-03-03 |
DE69732323T2 true DE69732323T2 (de) | 2005-12-22 |
Family
ID=24653934
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE69732323T Expired - Lifetime DE69732323T2 (de) | 1996-06-11 | 1997-05-20 | Unterstützung für die Verteilung von vertrauter Software |
Country Status (6)
Country | Link |
---|---|
US (1) | US5825877A (de) |
EP (1) | EP0813132B1 (de) |
JP (1) | JP3701773B2 (de) |
KR (1) | KR100267872B1 (de) |
DE (1) | DE69732323T2 (de) |
TW (1) | TW318230B (de) |
Families Citing this family (267)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6604118B2 (en) | 1998-07-31 | 2003-08-05 | Network Appliance, Inc. | File system image transfer |
US5963962A (en) | 1995-05-31 | 1999-10-05 | Network Appliance, Inc. | Write anywhere file-system layout |
DE69434381T2 (de) | 1993-06-04 | 2006-01-19 | Network Appliance, Inc., Sunnyvale | Verfahren zur Paritätsdarstellung in einem Raid-Untersystem unter Verwendung eines nichtflüchtigen Speichers |
US5978484A (en) * | 1996-04-25 | 1999-11-02 | Microsoft Corporation | System and method for safety distributing executable objects |
US5987123A (en) * | 1996-07-03 | 1999-11-16 | Sun Microsystems, Incorporated | Secure file system |
US8079086B1 (en) | 1997-11-06 | 2011-12-13 | Finjan, Inc. | Malicious mobile code runtime monitoring system and methods |
US9219755B2 (en) | 1996-11-08 | 2015-12-22 | Finjan, Inc. | Malicious mobile code runtime monitoring system and methods |
US7058822B2 (en) | 2000-03-30 | 2006-06-06 | Finjan Software, Ltd. | Malicious mobile code runtime monitoring system and methods |
US6148401A (en) * | 1997-02-05 | 2000-11-14 | At&T Corp. | System and method for providing assurance to a host that a piece of software possesses a particular property |
US6167522A (en) * | 1997-04-01 | 2000-12-26 | Sun Microsystems, Inc. | Method and apparatus for providing security for servers executing application programs received via a network |
US6108420A (en) * | 1997-04-10 | 2000-08-22 | Channelware Inc. | Method and system for networked installation of uniquely customized, authenticable, and traceable software application |
US6381698B1 (en) | 1997-05-21 | 2002-04-30 | At&T Corp | System and method for providing assurance to a host that a piece of software possesses a particular property |
JPH1131105A (ja) * | 1997-07-10 | 1999-02-02 | Fuji Xerox Co Ltd | データカプセル生成装置および方法 |
US6275938B1 (en) * | 1997-08-28 | 2001-08-14 | Microsoft Corporation | Security enhancement for untrusted executable code |
US6167521A (en) * | 1997-08-29 | 2000-12-26 | International Business Machines Corporation | Securely downloading and executing code from mutually suspicious authorities |
US6032257A (en) * | 1997-08-29 | 2000-02-29 | Compaq Computer Corporation | Hardware theft-protection architecture |
KR100246608B1 (ko) * | 1997-11-13 | 2000-03-15 | 이계철 | 웹 인포샵 서비스 시스템의 대체 인증 및 대체 과금 방법 |
US6516351B2 (en) | 1997-12-05 | 2003-02-04 | Network Appliance, Inc. | Enforcing uniform file-locking for diverse file-locking protocols |
US6457130B2 (en) * | 1998-03-03 | 2002-09-24 | Network Appliance, Inc. | File access control in a multi-protocol file server |
US6317844B1 (en) | 1998-03-10 | 2001-11-13 | Network Appliance, Inc. | File server storage arrangement |
JPH11282672A (ja) * | 1998-03-31 | 1999-10-15 | Hitachi Software Eng Co Ltd | オンラインプログラム転送方法およびオンラインプログラム実行システム |
US6298443B1 (en) * | 1998-04-24 | 2001-10-02 | Dell Usa, L.P. | Method and system for supplying a custom software image to a computer system |
WO1999066383A2 (en) * | 1998-06-15 | 1999-12-23 | Dmw Worldwide, Inc. | Method and apparatus for assessing the security of a computer system |
US6279011B1 (en) | 1998-06-19 | 2001-08-21 | Network Appliance, Inc. | Backup and restore for heterogeneous file server environment |
US6138235A (en) * | 1998-06-29 | 2000-10-24 | Sun Microsystems, Inc. | Controlling access to services between modular applications |
US6574591B1 (en) | 1998-07-31 | 2003-06-03 | Network Appliance, Inc. | File systems image transfer between dissimilar file systems |
US6119244A (en) * | 1998-08-25 | 2000-09-12 | Network Appliance, Inc. | Coordinating persistent status information with multiple file servers |
US6343984B1 (en) | 1998-11-30 | 2002-02-05 | Network Appliance, Inc. | Laminar flow duct cooling system |
US6694434B1 (en) * | 1998-12-23 | 2004-02-17 | Entrust Technologies Limited | Method and apparatus for controlling program execution and program distribution |
JP3873624B2 (ja) * | 1999-01-13 | 2007-01-24 | 株式会社日立製作所 | モバイルコードの実行方法およびそのシステム |
JP4294142B2 (ja) | 1999-02-02 | 2009-07-08 | 株式会社日立製作所 | ディスクサブシステム |
WO2000054127A1 (en) * | 1999-03-08 | 2000-09-14 | Spyrus, Inc. | Method and system for enforcing access to a computing resource using a licensing certificate |
JP3098513B1 (ja) | 1999-04-14 | 2000-10-16 | インターナショナル・ビジネス・マシーンズ・コーポレ−ション | 改変判定装置およびその方法 |
US6449720B1 (en) * | 1999-05-17 | 2002-09-10 | Wave Systems Corp. | Public cryptographic control unit and system therefor |
US6816965B1 (en) | 1999-07-16 | 2004-11-09 | Spyrus, Inc. | Method and system for a policy enforcing module |
US6954777B1 (en) * | 1999-07-29 | 2005-10-11 | International Business Machines Corporation | Method for extending capabilities of an arbitrary web server |
US6961749B1 (en) | 1999-08-25 | 2005-11-01 | Network Appliance, Inc. | Scalable file server with highly available pairs |
US7406603B1 (en) * | 1999-08-31 | 2008-07-29 | Intertrust Technologies Corp. | Data protection systems and methods |
KR100367094B1 (ko) * | 1999-10-22 | 2003-01-06 | 한국전자통신연구원 | 컴퓨터 프로그램 온라인 유통 방법 |
CA2287871C (en) * | 1999-11-01 | 2007-07-31 | Ibm Canada Limited-Ibm Canada Limitee | Secure document management system |
US6571030B1 (en) | 1999-11-02 | 2003-05-27 | Xros, Inc. | Optical cross-connect switching system |
US6792174B1 (en) | 1999-11-02 | 2004-09-14 | Nortel Networks Limited | Method and apparatus for signaling between an optical cross-connect switch and attached network equipment |
US6597826B1 (en) | 1999-11-02 | 2003-07-22 | Xros, Inc. | Optical cross-connect switching system with bridging, test access and redundancy |
US6882765B1 (en) | 1999-11-02 | 2005-04-19 | Xros, Inc. | Connection protection between clients and optical cross-connect switches |
US6650803B1 (en) * | 1999-11-02 | 2003-11-18 | Xros, Inc. | Method and apparatus for optical to electrical to optical conversion in an optical cross-connect switch |
FR2801451B1 (fr) * | 1999-11-22 | 2002-02-08 | Cit Alcatel | Procede de validation de donnees dans un terminal |
US6883120B1 (en) | 1999-12-03 | 2005-04-19 | Network Appliance, Inc. | Computer assisted automatic error detection and diagnosis of file servers |
JP2001175467A (ja) * | 1999-12-07 | 2001-06-29 | Kizna.Com Inc | コンピュータのセキュリティー確保方法及びそのプログラムを記録した媒体 |
US6715034B1 (en) | 1999-12-13 | 2004-03-30 | Network Appliance, Inc. | Switching file system request in a mass storage system |
JP3546787B2 (ja) * | 1999-12-16 | 2004-07-28 | インターナショナル・ビジネス・マシーンズ・コーポレーション | アクセス制御システム、アクセス制御方法、及び記憶媒体 |
US6928550B1 (en) | 2000-01-06 | 2005-08-09 | International Business Machines Corporation | Method and system for generating and using a virus free file certificate |
DE10008974B4 (de) * | 2000-02-25 | 2005-12-29 | Bayerische Motoren Werke Ag | Signaturverfahren |
DE10008973B4 (de) * | 2000-02-25 | 2004-10-07 | Bayerische Motoren Werke Ag | Autorisierungsverfahren mit Zertifikat |
EP1132796A1 (de) * | 2000-03-08 | 2001-09-12 | Universite Catholique De Louvain | Mobiler Kode und Verfahren zur Betriebsmittelverwaltung für mobilen Kode |
GB2366640B (en) * | 2000-03-30 | 2004-12-29 | Ibm | Distribution of activation information |
JP2004534973A (ja) * | 2000-04-14 | 2004-11-18 | ゴー アヘッド ソフトウェア インコーポレイテッド | ネットワークデバイスのアップグレードシステム及び方法 |
US7093135B1 (en) * | 2000-05-11 | 2006-08-15 | Cybersoft, Inc. | Software virus detection methods and apparatus |
US20040158353A1 (en) * | 2000-05-30 | 2004-08-12 | Poterek Michael G. | Inspection equipment integrity enhancement system |
US6714930B1 (en) | 2000-05-31 | 2004-03-30 | International Business Machines Corporation | Lightweight directory access protocol, (LDAP) trusted processing of unique identifiers |
JP4095232B2 (ja) * | 2000-05-31 | 2008-06-04 | 日本電信電話株式会社 | アプリケーション管理・運用方法及びシステム及びコンピュータ読み取り可能な記録媒体 |
AU2000252248A1 (en) * | 2000-06-14 | 2001-12-24 | Smarttrust Systems Oy | Interpretation of the identity of an entity |
US7219304B1 (en) * | 2000-06-19 | 2007-05-15 | International Business Machines Corporation | System and method for developing and administering web applications and services from a workflow, enterprise, and mail-enabled web application server and platform |
US7360082B1 (en) * | 2000-06-19 | 2008-04-15 | International Business Machines Corporation | System and method for downloading security context elements governing execution of downloadable and distributable agents |
US6981281B1 (en) | 2000-06-21 | 2005-12-27 | Microsoft Corporation | Filtering a permission set using permission requests associated with a code assembly |
US7699699B2 (en) | 2000-06-23 | 2010-04-20 | Igt | Gaming device having multiple selectable display interfaces based on player's wagers |
DE10035171A1 (de) | 2000-07-19 | 2002-02-07 | Siemens Ag | Verfahren zur Bereitstellung eines Programmoduls in einem Kommunikationssystem |
JP4503794B2 (ja) * | 2000-07-19 | 2010-07-14 | 株式会社日立製作所 | コンテンツ提供方法及び装置 |
US6948060B1 (en) * | 2000-08-11 | 2005-09-20 | Intel Corporation | Method and apparatus for monitoring encrypted communication in a network |
DE10043499A1 (de) | 2000-09-01 | 2002-03-14 | Bosch Gmbh Robert | Verfahren zur Datenübertragung |
US20020144122A1 (en) * | 2001-04-03 | 2002-10-03 | S.W.I.F.T. | System and method for facilitating trusted transactions between businesses |
US6807577B1 (en) | 2000-09-14 | 2004-10-19 | International Business Machines Corporation | System and method for network log-on by associating legacy profiles with user certificates |
US6883098B1 (en) | 2000-09-20 | 2005-04-19 | International Business Machines Corporation | Method and computer system for controlling access by applications to this and other computer systems |
JP2002132585A (ja) * | 2000-10-20 | 2002-05-10 | Sony Corp | 情報記録装置、情報再生装置、情報記録媒体、および情報記録方法、情報再生方法、並びにプログラム提供媒体 |
TW584801B (en) * | 2000-12-11 | 2004-04-21 | Ntt Docomo Inc | Terminal and repeater |
JP2002182983A (ja) * | 2000-12-13 | 2002-06-28 | Sharp Corp | データベースへのアクセス制御方法、データベース装置、リソースへのアクセス制御方法、情報処理装置 |
US20020078380A1 (en) * | 2000-12-20 | 2002-06-20 | Jyh-Han Lin | Method for permitting debugging and testing of software on a mobile communication device in a secure environment |
NZ536782A (en) | 2001-01-31 | 2005-10-28 | Ntt Docomo Inc | System for program delivery to a storage module of a mobile terminal |
FR2820848B1 (fr) * | 2001-02-13 | 2003-04-11 | Gemplus Card Int | Gestion dynamique de listes de droits d'acces dans un objet electronique portable |
DE60100363T2 (de) | 2001-05-11 | 2004-05-06 | Sospita A/S | Sequenznummerierungsmechanismus zur sicherung der ausführungsordnungs-integrietät von untereinander abhängigen smart-card anwendungen |
EP1391810A4 (de) | 2001-05-14 | 2008-04-16 | Ntt Docomo Inc | System zur verwaltung eines in einem speicherblock eines mobilen endgeräts gespeicherten programms |
US7320027B1 (en) * | 2001-05-14 | 2008-01-15 | At&T Corp. | System having generalized client-server computing |
JP2002351563A (ja) * | 2001-05-30 | 2002-12-06 | Canon Inc | 情報処理装置、情報処理方法およびプログラム |
US7099663B2 (en) | 2001-05-31 | 2006-08-29 | Qualcomm Inc. | Safe application distribution and execution in a wireless environment |
US20030167350A1 (en) * | 2001-06-07 | 2003-09-04 | Curl Corporation | Safe I/O through use of opaque I/O objects |
US7065783B2 (en) * | 2001-07-06 | 2006-06-20 | Aramira Corporation | Mobile application access control list security system |
US7421411B2 (en) | 2001-07-06 | 2008-09-02 | Nokia Corporation | Digital rights management in a mobile communications environment |
US7380271B2 (en) * | 2001-07-12 | 2008-05-27 | International Business Machines Corporation | Grouped access control list actions |
GB0119629D0 (en) | 2001-08-10 | 2001-10-03 | Cryptomathic As | Data certification method and apparatus |
US6687638B2 (en) * | 2001-08-10 | 2004-02-03 | General Hills, Inc. | Inspection equipment integrity enhancement system |
DE10140721A1 (de) * | 2001-08-27 | 2003-03-20 | Bayerische Motoren Werke Ag | Verfahren zur Bereitstellung von Software zur Verwendung durch ein Steuergerät eines Fahrzeugs |
EP1289326A1 (de) * | 2001-08-30 | 2003-03-05 | Motorola, Inc. | Verfahren und Gerät zum Überprüfen von heruntergeladener Software |
JP2003202929A (ja) * | 2002-01-08 | 2003-07-18 | Ntt Docomo Inc | 配信方法および配信システム |
AU2003220927A1 (en) * | 2002-04-03 | 2003-10-13 | Ntt Docomo, Inc. | Distribution method, distribution system, and terminal device |
JP3818504B2 (ja) * | 2002-04-15 | 2006-09-06 | ソニー株式会社 | 情報処理装置および方法、並びにプログラム |
EP1361527A1 (de) * | 2002-05-07 | 2003-11-12 | Sony Ericsson Mobile Communications AB | Verfahren zum Laden einer Anwendung in einem Gerät, Gerät und Chipkarte dafür |
US7900048B2 (en) * | 2002-05-07 | 2011-03-01 | Sony Ericsson Mobile Communications Ab | Method for loading an application in a device, device and smart card therefor |
JP2003337716A (ja) | 2002-05-20 | 2003-11-28 | Ntt Docomo Inc | 電子機器、データ共用方法、プログラム及び記憶媒体 |
US8155314B2 (en) | 2002-06-24 | 2012-04-10 | Microsoft Corporation | Systems and methods for securing video card output |
AU2003242968A1 (en) * | 2002-07-16 | 2004-02-02 | Haim Engler | Automated network security system and method |
GB2391341A (en) * | 2002-07-31 | 2004-02-04 | Hewlett Packard Co | A method of validating the rights of a user to participate in an interactive computer environment |
US7162744B2 (en) * | 2002-08-27 | 2007-01-09 | Micron Technology, Inc. | Connected support entitlement system and method of operation |
JP4073284B2 (ja) | 2002-10-03 | 2008-04-09 | 大日本印刷株式会社 | 通信管理システム、携帯端末装置および通信管理プログラム |
KR100499669B1 (ko) * | 2002-10-18 | 2005-07-05 | 한국과학기술정보연구원 | 자원할당 시스템 및 방법 |
EP1420323A1 (de) * | 2002-11-18 | 2004-05-19 | Koninklijke KPN N.V. | Verfahren und System zur Verteilung von Software-Komponenten |
JP2006508436A (ja) | 2002-11-28 | 2006-03-09 | インターナショナル・ビジネス・マシーンズ・コーポレーション | ファイルをハイパーリンクするための方法及びシステム |
FI20022278A (fi) | 2002-12-27 | 2004-06-28 | Nokia Corp | Menetelmä ja järjestelmä ohjelman testaamiseksi ja laite |
EP1582053A4 (de) * | 2002-12-31 | 2006-04-12 | Motorola Inc | System und verfahren zur verteiltenautorisierung für zugang zu einem kommunikationsgerät |
US7401105B2 (en) | 2003-10-02 | 2008-07-15 | International Business Machines Corporation | Method, system, and program product for retrieving file processing software |
US7370212B2 (en) | 2003-02-25 | 2008-05-06 | Microsoft Corporation | Issuing a publisher use license off-line in a digital rights management (DRM) system |
DE10309507A1 (de) * | 2003-03-05 | 2004-09-16 | Volkswagen Ag | Verfahren und Einrichtung zur Wartung von sicherheitsrelevanten Programmcode eines Kraftfahrzeuges |
GB2399902A (en) * | 2003-03-28 | 2004-09-29 | Hewlett Packard Development Co | Security in trusted computing systems |
JP4248913B2 (ja) * | 2003-03-31 | 2009-04-02 | 株式会社エヌ・ティ・ティ・ドコモ | 端末装置、プログラムおよび通信システム |
JP4176533B2 (ja) | 2003-03-31 | 2008-11-05 | 株式会社エヌ・ティ・ティ・ドコモ | 端末装置及びプログラム |
GB2400933B (en) * | 2003-04-25 | 2006-11-22 | Messagelabs Ltd | A method of, and system for, heuristically detecting viruses in executable code by detecting files which have been maliciously altered |
JP2005122474A (ja) * | 2003-10-16 | 2005-05-12 | Fujitsu Ltd | 情報漏洩防止プログラムおよびその記録媒体並びに情報漏洩防止装置 |
US20050091658A1 (en) * | 2003-10-24 | 2005-04-28 | Microsoft Corporation | Operating system resource protection |
US20050091535A1 (en) * | 2003-10-24 | 2005-04-28 | Microsoft Corporation | Application identity for software products |
WO2005079038A1 (fr) * | 2004-01-14 | 2005-08-25 | France Telecom | Procede, terminal mobile, systeme et equipement pour la fourniture d’un service de proximite accessible par l’intermediaire d’un terminal mobile |
US8046763B1 (en) * | 2004-02-20 | 2011-10-25 | Oracle America, Inc. | Regulation of resource requests to control rate of resource consumption |
US20050229004A1 (en) * | 2004-03-31 | 2005-10-13 | Callaghan David M | Digital rights management system and method |
CA2561335C (en) * | 2004-04-08 | 2013-03-19 | International Business Machines Corporation | Method and system for linking certificates to signed files |
US20060242406A1 (en) | 2005-04-22 | 2006-10-26 | Microsoft Corporation | Protected computing environment |
US8074287B2 (en) * | 2004-04-30 | 2011-12-06 | Microsoft Corporation | Renewable and individualizable elements of a protected environment |
WO2005106653A1 (en) * | 2004-04-30 | 2005-11-10 | Research In Motion Limited | System and method of owner application control of electronic devices |
DE102004024869A1 (de) * | 2004-05-19 | 2006-01-19 | Siemens Ag | Verfahren zur Priorisierung von Telekommunikations-Netzwerken in einem Telekommunikations-Endgerät |
US20090205037A1 (en) * | 2004-06-25 | 2009-08-13 | Nec Corporation | Mobile terminal, resource access control system for mobile terminal, and resource access control method in mobile terminal |
US8251791B2 (en) | 2004-08-19 | 2012-08-28 | Igt | Gaming system having multiple gaming machines which provide bonus awards |
US7963847B2 (en) | 2004-08-19 | 2011-06-21 | Igt | Gaming system having multiple gaming machines which provide bonus awards |
US8021230B2 (en) | 2004-08-19 | 2011-09-20 | Igt | Gaming system having multiple gaming machines which provide bonus awards |
US7587594B1 (en) | 2004-08-30 | 2009-09-08 | Microsoft Corporation | Dynamic out-of-process software components isolation for trustworthiness execution |
US8312431B1 (en) * | 2004-09-17 | 2012-11-13 | Oracle America, Inc. | System and computer readable medium for verifying access to signed ELF objects |
US8347078B2 (en) | 2004-10-18 | 2013-01-01 | Microsoft Corporation | Device certificate individualization |
US8336085B2 (en) | 2004-11-15 | 2012-12-18 | Microsoft Corporation | Tuning product policy using observed evidence of customer behavior |
FR2881854B1 (fr) | 2005-02-04 | 2008-01-11 | Radiotelephone Sfr | Procede de gestion securisee de l'execution d'une application |
CN101853355B (zh) | 2005-02-14 | 2013-04-24 | 松下电器产业株式会社 | 集成电路 |
US8438645B2 (en) | 2005-04-27 | 2013-05-07 | Microsoft Corporation | Secure clock with grace periods |
US8725646B2 (en) | 2005-04-15 | 2014-05-13 | Microsoft Corporation | Output protection levels |
US9363481B2 (en) | 2005-04-22 | 2016-06-07 | Microsoft Technology Licensing, Llc | Protected media pipeline |
WO2006115532A2 (en) * | 2005-04-22 | 2006-11-02 | Microsoft Corporation | Renewable and individualizable elements of a protected computing environment |
CN101189615B (zh) * | 2005-04-22 | 2010-06-09 | 微软公司 | 建立并维护受保护计算环境的方法 |
US9436804B2 (en) | 2005-04-22 | 2016-09-06 | Microsoft Technology Licensing, Llc | Establishing a unique session key using a hardware functionality scan |
US7665098B2 (en) | 2005-04-29 | 2010-02-16 | Microsoft Corporation | System and method for monitoring interactions between application programs and data stores |
US7631198B2 (en) * | 2005-05-10 | 2009-12-08 | Seagate Technology | Protocol scripting language for safe execution in embedded system |
US20060265758A1 (en) | 2005-05-20 | 2006-11-23 | Microsoft Corporation | Extensible media rights |
US8128491B2 (en) | 2005-09-09 | 2012-03-06 | Igt | Server based gaming system having multiple progressive awards |
US7841939B2 (en) | 2005-09-09 | 2010-11-30 | Igt | Server based gaming system having multiple progressive awards |
US8137188B2 (en) | 2005-09-09 | 2012-03-20 | Igt | Server based gaming system having multiple progressive awards |
US8045958B2 (en) | 2005-11-21 | 2011-10-25 | Research In Motion Limited | System and method for application program operation on a wireless device |
US7664924B2 (en) * | 2005-12-01 | 2010-02-16 | Drive Sentry, Inc. | System and method to secure a computer system by selective control of write access to a data storage medium |
US10503418B2 (en) | 2005-12-01 | 2019-12-10 | Drive Sentry Limited | System and method to secure a computer system by selective control of write access to a data storage medium |
US9600661B2 (en) * | 2005-12-01 | 2017-03-21 | Drive Sentry Limited | System and method to secure a computer system by selective control of write access to a data storage medium |
JP4556857B2 (ja) * | 2005-12-07 | 2010-10-06 | セイコーエプソン株式会社 | 情報配信装置、情報配信装置の制御方法および制御プログラム |
US7788181B2 (en) * | 2005-12-27 | 2010-08-31 | Microsoft Corporation | Software licensing using certificate issued by authorized authority |
US8332906B2 (en) | 2006-02-27 | 2012-12-11 | Research In Motion Limited | Method of customizing a standardized IT policy |
JP4419977B2 (ja) * | 2006-03-31 | 2010-02-24 | ブラザー工業株式会社 | プログラム作成装置、及びプログラム |
US8751946B2 (en) * | 2006-04-05 | 2014-06-10 | International Business Machines Corporation | Enhanced display of properties for a program object |
US8812556B2 (en) * | 2006-04-06 | 2014-08-19 | International Business Machines Corporation | Storing modification data for recreating modifications |
US7716653B2 (en) * | 2006-04-06 | 2010-05-11 | International Business Machines Corporation | Configurable importers and resource writers for converting data into another format |
US8512130B2 (en) | 2006-07-27 | 2013-08-20 | Igt | Gaming system with linked gaming machines that are configurable to have a same probability of winning a designated award |
US8615801B2 (en) * | 2006-08-31 | 2013-12-24 | Microsoft Corporation | Software authorization utilizing software reputation |
US8616959B2 (en) | 2006-09-27 | 2013-12-31 | Igt | Server based gaming system having system triggered loyalty award sequences |
US7862430B2 (en) | 2006-09-27 | 2011-01-04 | Igt | Server based gaming system having system triggered loyalty award sequences |
US7674180B2 (en) | 2006-09-27 | 2010-03-09 | Igt | Server based gaming system having system triggered loyalty award sequences |
WO2008135692A1 (fr) * | 2007-03-30 | 2008-11-13 | France Telecom | Gestion d'acces a des ressources d'un systeme d'exploitation |
US7900248B2 (en) * | 2007-05-31 | 2011-03-01 | Microsoft Corporation | Access control negation using negative groups |
US20080307486A1 (en) * | 2007-06-11 | 2008-12-11 | Microsoft Corporation | Entity based access management |
US8468579B2 (en) * | 2007-06-15 | 2013-06-18 | Microsoft Corporation | Transformation of sequential access control lists utilizing certificates |
US7985133B2 (en) | 2007-07-30 | 2011-07-26 | Igt | Gaming system and method for providing an additional gaming currency |
US8900053B2 (en) | 2007-08-10 | 2014-12-02 | Igt | Gaming system and method for providing different bonus awards based on different types of triggered events |
US9142097B2 (en) | 2007-10-26 | 2015-09-22 | Igt | Gaming system and method for providing play of local first game and remote second game |
JP2008123514A (ja) * | 2007-10-29 | 2008-05-29 | Ntt Docomo Inc | 配信方法および配信システム |
US8127235B2 (en) | 2007-11-30 | 2012-02-28 | International Business Machines Corporation | Automatic increasing of capacity of a virtual space in a virtual world |
US20090164919A1 (en) | 2007-12-24 | 2009-06-25 | Cary Lee Bates | Generating data for managing encounters in a virtual world environment |
EP2252957A1 (de) * | 2008-03-04 | 2010-11-24 | Apple Inc. | Verwaltung von codeberechtigungen für software-entwickler in sicheren operationsumgebungen |
JP5159375B2 (ja) | 2008-03-07 | 2013-03-06 | インターナショナル・ビジネス・マシーンズ・コーポレーション | メタバースにおけるオブジェクトの真贋判断システム、方法及びそのコンピュータ・プログラム |
KR101590188B1 (ko) * | 2009-05-08 | 2016-01-29 | 삼성전자주식회사 | 휴대단말기에서 소프트웨어 패키지의 무결성을 검증하는 방법 |
US9039516B2 (en) | 2009-07-30 | 2015-05-26 | Igt | Concurrent play on multiple gaming machines |
US8782086B2 (en) * | 2009-08-27 | 2014-07-15 | Cleversafe, Inc. | Updating dispersed storage network access control information |
EP2534604A4 (de) * | 2010-02-11 | 2013-12-04 | Hewlett Packard Development Co | Zugang zu ausführbaren dateien auf identitätsbasis |
US9205328B2 (en) | 2010-02-18 | 2015-12-08 | Activision Publishing, Inc. | Videogame system and method that enables characters to earn virtual fans by completing secondary objectives |
US9082127B2 (en) | 2010-03-31 | 2015-07-14 | Cloudera, Inc. | Collecting and aggregating datasets for analysis |
US9317572B2 (en) | 2010-03-31 | 2016-04-19 | Cloudera, Inc. | Configuring a system to collect and aggregate datasets |
US8874526B2 (en) | 2010-03-31 | 2014-10-28 | Cloudera, Inc. | Dynamically processing an event using an extensible data model |
US9081888B2 (en) | 2010-03-31 | 2015-07-14 | Cloudera, Inc. | Collecting and aggregating log data with fault tolerance |
US9682324B2 (en) | 2010-05-12 | 2017-06-20 | Activision Publishing, Inc. | System and method for enabling players to participate in asynchronous, competitive challenges |
JP5132730B2 (ja) * | 2010-07-20 | 2013-01-30 | 株式会社エヌ・ティ・ティ・ドコモ | 配信方法および配信システム |
JP5429880B2 (ja) * | 2010-08-10 | 2014-02-26 | Necビッグローブ株式会社 | アプリケーション配布システム、アプリケーション配布方法、端末及びプログラム |
US8788815B1 (en) * | 2011-01-31 | 2014-07-22 | Gazzang, Inc. | System and method for controlling access to decrypted data |
US8880592B2 (en) | 2011-03-31 | 2014-11-04 | Cloudera, Inc. | User interface implementation for partial display update |
JP5734095B2 (ja) * | 2011-05-30 | 2015-06-10 | 三菱電機株式会社 | 端末装置およびサーバ装置および電子証明書発行システムおよび電子証明書受信方法および電子証明書送信方法およびプログラム |
US9128949B2 (en) | 2012-01-18 | 2015-09-08 | Cloudera, Inc. | Memory allocation buffer for reduction of heap fragmentation |
US9172608B2 (en) | 2012-02-07 | 2015-10-27 | Cloudera, Inc. | Centralized configuration and monitoring of a distributed computing cluster |
US9405692B2 (en) | 2012-03-21 | 2016-08-02 | Cloudera, Inc. | Data processing performance enhancement in a distributed file system |
US9338008B1 (en) | 2012-04-02 | 2016-05-10 | Cloudera, Inc. | System and method for secure release of secret information over a network |
US9842126B2 (en) | 2012-04-20 | 2017-12-12 | Cloudera, Inc. | Automatic repair of corrupt HBases |
US9753954B2 (en) | 2012-09-14 | 2017-09-05 | Cloudera, Inc. | Data node fencing in a distributed file system |
US10137376B2 (en) | 2012-12-31 | 2018-11-27 | Activision Publishing, Inc. | System and method for creating and streaming augmented game sessions |
US9342557B2 (en) | 2013-03-13 | 2016-05-17 | Cloudera, Inc. | Low latency query engine for Apache Hadoop |
US9477731B2 (en) | 2013-10-01 | 2016-10-25 | Cloudera, Inc. | Background format optimization for enhanced SQL-like queries in Hadoop |
JP5612748B2 (ja) * | 2013-10-07 | 2014-10-22 | ソフトバンクモバイル株式会社 | 通信端末装置 |
US9934382B2 (en) | 2013-10-28 | 2018-04-03 | Cloudera, Inc. | Virtual machine image encryption |
US9690671B2 (en) | 2013-11-01 | 2017-06-27 | Cloudera, Inc. | Manifest-based snapshots in distributed computing environments |
US10171635B2 (en) | 2013-12-04 | 2019-01-01 | Cloudera, Inc. | Ensuring properly ordered events in a distributed computing environment |
JP6471698B2 (ja) | 2014-02-06 | 2019-02-20 | ソニー株式会社 | 情報処理装置、情報処理方法、プログラム、及びサーバ |
US9998914B2 (en) | 2014-04-16 | 2018-06-12 | Jamf Software, Llc | Using a mobile device to restrict focus and perform operations at another mobile device |
US10322351B2 (en) | 2014-07-03 | 2019-06-18 | Activision Publishing, Inc. | Matchmaking system and method for multiplayer video games |
US9875618B2 (en) | 2014-07-24 | 2018-01-23 | Igt | Gaming system and method employing multi-directional interaction between multiple concurrently played games |
US9647897B2 (en) | 2014-08-20 | 2017-05-09 | Jamf Software, Llc | Dynamic grouping of managed devices |
US9747333B2 (en) | 2014-10-08 | 2017-08-29 | Cloudera, Inc. | Querying operating system state on multiple machines declaratively |
US11351466B2 (en) | 2014-12-05 | 2022-06-07 | Activision Publishing, Ing. | System and method for customizing a replay of one or more game events in a video game |
US10118099B2 (en) | 2014-12-16 | 2018-11-06 | Activision Publishing, Inc. | System and method for transparently styling non-player characters in a multiplayer video game |
US10120904B2 (en) | 2014-12-31 | 2018-11-06 | Cloudera, Inc. | Resource management in a distributed computing environment |
US10148662B1 (en) * | 2015-01-21 | 2018-12-04 | EMC IP Holding Company LLC | De-duplication of access control lists |
US10486068B2 (en) | 2015-05-14 | 2019-11-26 | Activision Publishing, Inc. | System and method for providing dynamically variable maps in a video game |
US10315113B2 (en) | 2015-05-14 | 2019-06-11 | Activision Publishing, Inc. | System and method for simulating gameplay of nonplayer characters distributed across networked end user devices |
US10286314B2 (en) | 2015-05-14 | 2019-05-14 | Activision Publishing, Inc. | System and method for providing continuous gameplay in a multiplayer video game through an unbounded gameplay session |
US10668367B2 (en) | 2015-06-15 | 2020-06-02 | Activision Publishing, Inc. | System and method for uniquely identifying physical trading cards and incorporating trading card game items in a video game |
US10471348B2 (en) | 2015-07-24 | 2019-11-12 | Activision Publishing, Inc. | System and method for creating and sharing customized video game weapon configurations in multiplayer video games via one or more social networks |
US9972171B2 (en) | 2015-09-24 | 2018-05-15 | Igt | Gaming system and method for providing a triggering event based on a collection of units from different games |
US10099140B2 (en) | 2015-10-08 | 2018-10-16 | Activision Publishing, Inc. | System and method for generating personalized messaging campaigns for video game players |
US11185784B2 (en) | 2015-10-08 | 2021-11-30 | Activision Publishing, Inc. | System and method for generating personalized messaging campaigns for video game players |
US10245509B2 (en) | 2015-10-21 | 2019-04-02 | Activision Publishing, Inc. | System and method of inferring user interest in different aspects of video game streams |
US10376781B2 (en) | 2015-10-21 | 2019-08-13 | Activision Publishing, Inc. | System and method of generating and distributing video game streams |
US10232272B2 (en) | 2015-10-21 | 2019-03-19 | Activision Publishing, Inc. | System and method for replaying video game streams |
US10694352B2 (en) | 2015-10-28 | 2020-06-23 | Activision Publishing, Inc. | System and method of using physical objects to control software access |
US10226703B2 (en) | 2016-04-01 | 2019-03-12 | Activision Publishing, Inc. | System and method of generating and providing interactive annotation items based on triggering events in a video game |
US10226701B2 (en) | 2016-04-29 | 2019-03-12 | Activision Publishing, Inc. | System and method for identifying spawn locations in a video game |
US10179289B2 (en) | 2016-06-21 | 2019-01-15 | Activision Publishing, Inc. | System and method for reading graphically-encoded identifiers from physical trading cards through image-based template matching |
US10586380B2 (en) | 2016-07-29 | 2020-03-10 | Activision Publishing, Inc. | Systems and methods for automating the animation of blendshape rigs |
US10463964B2 (en) | 2016-11-17 | 2019-11-05 | Activision Publishing, Inc. | Systems and methods for the real-time generation of in-game, locally accessible heatmaps |
US10709981B2 (en) | 2016-11-17 | 2020-07-14 | Activision Publishing, Inc. | Systems and methods for the real-time generation of in-game, locally accessible barrier-aware heatmaps |
US10500498B2 (en) | 2016-11-29 | 2019-12-10 | Activision Publishing, Inc. | System and method for optimizing virtual games |
US10055880B2 (en) | 2016-12-06 | 2018-08-21 | Activision Publishing, Inc. | Methods and systems to modify a two dimensional facial image to increase dimensional depth and generate a facial image that appears three dimensional |
US10861079B2 (en) | 2017-02-23 | 2020-12-08 | Activision Publishing, Inc. | Flexible online pre-ordering system for media |
US11392716B2 (en) | 2017-05-12 | 2022-07-19 | Jamf Software, Llc | Mobile device management at a healthcare facility |
US10818060B2 (en) | 2017-09-05 | 2020-10-27 | Activision Publishing, Inc. | Systems and methods for guiding motion capture actors using a motion reference system |
US11040286B2 (en) | 2017-09-27 | 2021-06-22 | Activision Publishing, Inc. | Methods and systems for improved content generation in multiplayer gaming environments |
US10974150B2 (en) | 2017-09-27 | 2021-04-13 | Activision Publishing, Inc. | Methods and systems for improved content customization in multiplayer gaming environments |
US10561945B2 (en) | 2017-09-27 | 2020-02-18 | Activision Publishing, Inc. | Methods and systems for incentivizing team cooperation in multiplayer gaming environments |
US10537809B2 (en) | 2017-12-06 | 2020-01-21 | Activision Publishing, Inc. | System and method for validating video gaming data |
US10463971B2 (en) | 2017-12-06 | 2019-11-05 | Activision Publishing, Inc. | System and method for validating video gaming data |
US10981051B2 (en) | 2017-12-19 | 2021-04-20 | Activision Publishing, Inc. | Synchronized, fully programmable game controllers |
US10765948B2 (en) | 2017-12-22 | 2020-09-08 | Activision Publishing, Inc. | Video game content aggregation, normalization, and publication systems and methods |
US11278813B2 (en) | 2017-12-22 | 2022-03-22 | Activision Publishing, Inc. | Systems and methods for enabling audience participation in bonus game play sessions |
US10596471B2 (en) | 2017-12-22 | 2020-03-24 | Activision Publishing, Inc. | Systems and methods for enabling audience participation in multi-player video game play sessions |
US11263670B2 (en) | 2018-11-19 | 2022-03-01 | Activision Publishing, Inc. | Systems and methods for dynamically modifying video game content based on non-video gaming content being concurrently experienced by a user |
US11192028B2 (en) | 2018-11-19 | 2021-12-07 | Activision Publishing, Inc. | Systems and methods for the real-time customization of video game content based on player data |
US11115712B2 (en) | 2018-12-15 | 2021-09-07 | Activision Publishing, Inc. | Systems and methods for indexing, searching for, and retrieving digital media |
US11679330B2 (en) | 2018-12-18 | 2023-06-20 | Activision Publishing, Inc. | Systems and methods for generating improved non-player characters |
US11305191B2 (en) | 2018-12-20 | 2022-04-19 | Activision Publishing, Inc. | Systems and methods for controlling camera perspectives, movements, and displays of video game gameplay |
US10623520B1 (en) * | 2019-06-13 | 2020-04-14 | Sailpoint Technologies, Inc. | System and method for tagging in identity management artificial intelligence systems and uses for same, including context based governance |
US11344808B2 (en) | 2019-06-28 | 2022-05-31 | Activision Publishing, Inc. | Systems and methods for dynamically generating and modulating music based on gaming events, player profiles and/or player reactions |
US11097193B2 (en) | 2019-09-11 | 2021-08-24 | Activision Publishing, Inc. | Methods and systems for increasing player engagement in multiplayer gaming environments |
CN110620782A (zh) * | 2019-09-29 | 2019-12-27 | 深圳市珍爱云信息技术有限公司 | 账户认证方法、装置、计算机设备和存储介质 |
US11423605B2 (en) | 2019-11-01 | 2022-08-23 | Activision Publishing, Inc. | Systems and methods for remastering a game space while maintaining the underlying game simulation |
US11712627B2 (en) | 2019-11-08 | 2023-08-01 | Activision Publishing, Inc. | System and method for providing conditional access to virtual gaming items |
US11537209B2 (en) | 2019-12-17 | 2022-12-27 | Activision Publishing, Inc. | Systems and methods for guiding actors using a motion capture reference system |
US11420122B2 (en) | 2019-12-23 | 2022-08-23 | Activision Publishing, Inc. | Systems and methods for controlling camera perspectives, movements, and displays of video game gameplay |
US11563774B2 (en) | 2019-12-27 | 2023-01-24 | Activision Publishing, Inc. | Systems and methods for tracking and identifying phishing website authors |
US11351459B2 (en) | 2020-08-18 | 2022-06-07 | Activision Publishing, Inc. | Multiplayer video games with virtual characters having dynamically generated attribute profiles unconstrained by predefined discrete values |
US11524234B2 (en) | 2020-08-18 | 2022-12-13 | Activision Publishing, Inc. | Multiplayer video games with virtual characters having dynamically modified fields of view |
US11717753B2 (en) | 2020-09-29 | 2023-08-08 | Activision Publishing, Inc. | Methods and systems for generating modified level of detail visual assets in a video game |
US11833423B2 (en) | 2020-09-29 | 2023-12-05 | Activision Publishing, Inc. | Methods and systems for generating level of detail visual assets in a video game |
US11724188B2 (en) | 2020-09-29 | 2023-08-15 | Activision Publishing, Inc. | Methods and systems for selecting a level of detail visual asset during the execution of a video game |
US11439904B2 (en) | 2020-11-11 | 2022-09-13 | Activision Publishing, Inc. | Systems and methods for imparting dynamic and realistic movement to player-controlled avatars in video games |
US11853439B2 (en) | 2020-12-30 | 2023-12-26 | Activision Publishing, Inc. | Distributed data storage system providing enhanced security |
US11794107B2 (en) | 2020-12-30 | 2023-10-24 | Activision Publishing, Inc. | Systems and methods for improved collision detection in video games |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5005200A (en) * | 1988-02-12 | 1991-04-02 | Fischer Addison M | Public key/signature cryptosystem with enhanced digital signature certification |
JPH047659A (ja) * | 1990-04-25 | 1992-01-13 | Toshiba Corp | 複合計算機システム |
US5210872A (en) * | 1991-06-28 | 1993-05-11 | Texas Instruments Inc. | Critical task scheduling for real-time systems |
GB9126779D0 (en) * | 1991-12-17 | 1992-02-12 | Int Computers Ltd | Security mechanism for a computer system |
ES2128393T3 (es) * | 1992-05-15 | 1999-05-16 | Addison M Fischer | Metodo y aparato para sistemas de ordenador con estructuras de datos de informacion para programas de autorizacion. |
US5412717A (en) * | 1992-05-15 | 1995-05-02 | Fischer; Addison M. | Computer system security method and apparatus having program authorization information data structures |
US5450593A (en) * | 1992-12-18 | 1995-09-12 | International Business Machines Corp. | Method and system for controlling access to objects in a data processing system based on temporal constraints |
AU683038B2 (en) * | 1993-08-10 | 1997-10-30 | Addison M. Fischer | A method for operating computers and for processing information among computers |
JPH0822393A (ja) * | 1994-07-07 | 1996-01-23 | Nec Corp | 動的ローディング制御装置 |
US5757915A (en) * | 1995-08-25 | 1998-05-26 | Intel Corporation | Parameterized hash functions for access control |
-
1996
- 1996-06-11 US US08/661,517 patent/US5825877A/en not_active Expired - Lifetime
- 1996-12-06 TW TW085115111A patent/TW318230B/zh not_active IP Right Cessation
-
1997
- 1997-04-01 KR KR1019970012051A patent/KR100267872B1/ko not_active IP Right Cessation
- 1997-05-20 DE DE69732323T patent/DE69732323T2/de not_active Expired - Lifetime
- 1997-05-20 EP EP97303443A patent/EP0813132B1/de not_active Expired - Lifetime
- 1997-06-10 JP JP15176897A patent/JP3701773B2/ja not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
DE69732323D1 (de) | 2005-03-03 |
JP3701773B2 (ja) | 2005-10-05 |
TW318230B (en) | 1997-10-21 |
KR980004069A (ko) | 1998-03-30 |
EP0813132A2 (de) | 1997-12-17 |
US5825877A (en) | 1998-10-20 |
KR100267872B1 (ko) | 2000-10-16 |
EP0813132A3 (de) | 2003-01-15 |
EP0813132B1 (de) | 2005-01-26 |
JPH1083310A (ja) | 1998-03-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE69732323T2 (de) | Unterstützung für die Verteilung von vertrauter Software | |
DE60127557T2 (de) | Filtern eines erlaubnissets mit hilfe von erlaubnisanfragen die mit einer kodeanordnung verknüpft sind | |
DE69727198T2 (de) | Durchführen digitaler Unterschriften für Datenströme und Archive | |
DE69838378T2 (de) | Verfahren und gerät um sicherheit, für server die anwenderprogramme ausführen, die über's netzwerk empfangen wurden, zu gewährleisten | |
DE69936384T2 (de) | System und verfahren für die sicherheit eines kodes | |
EP1073939B1 (de) | Intelligentes sicherheitsverwaltungsverfahren und -system | |
DE60036086T2 (de) | Berechtigung und zugriffskontrolle von in set-top geräten vorhandenen programmobjekten | |
DE60015709T2 (de) | Sicherheitspolitik, die auf eine Gemeinschaftsdaten-Sicherheitsarchitektur angewendet wird | |
DE60207812T2 (de) | Verfahren und vorrichtung zum dynamischen zuweisen von benutzungsrechten zu digitalen werken | |
DE60026468T2 (de) | Digitales Zertifikat mit Berechtigungsdaten | |
DE112012002741T5 (de) | Identitäts- und Berechtigungsprüfungsverfahren für die Sicherheit einer Cloud-Datenverarbeitungsplattform | |
DE112011103164T5 (de) | Datenverteilungsvorrichtung, Datenverteilungssystem, Client-Vorrichtung, Datenverteilungsverfahren, Datenempfangsverfahren, Programm und Datenträger, | |
DE102011077218B4 (de) | Zugriff auf in einer Cloud gespeicherte Daten | |
DE112021002245T5 (de) | Verhindern einer unberechtigten bereitstellung von paketen in clustern | |
DE112018005203T5 (de) | Authentifizierung unter Verwendung von delegierten Identitäten | |
DE112018000525T5 (de) | Systeme und Verfahren für die Authentifizierung von Platform Trust bzw. Plattform-Vertrauen in einerNetzwerkfunktions-Virtualisierungsumgebung | |
DE112021005478T5 (de) | Verfahren zum schutz eines edge-gerät-vertrauenswerts | |
DE102004038566A1 (de) | Lizenzsteuerung für Web-Anwendungen | |
DE112011102224T5 (de) | Identitätsvermittlung zwischen Client- und Server-Anwendungen | |
DE10146361B4 (de) | Verteiltes System | |
DE112021005837T5 (de) | Dezentrale sendeverschlüsselung und schlüsselerzeugungseinrichtung | |
EP1010052A1 (de) | Verfahren zur steuerung der verteilung und nutzung von software-objekten bei vernetzten rechnern | |
DE60017438T2 (de) | System zur betriebsmittelzugriffsteuerung | |
EP3497606B1 (de) | Individuelles verschlüsseln von steuerbefehlen | |
WO2022120400A1 (de) | Verfahren zum migrieren einer it-anwendung |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8364 | No opposition during term of opposition | ||
8320 | Willingness to grant licences declared (paragraph 23) | ||
8328 | Change in the person/name/address of the agent |
Representative=s name: DUSCHER, R., DIPL.-PHYS. DR.RER.NAT., PAT.-ANW., 7 |