DE69921454T2 - Prüfung von sofwarenagenten und aktivitäten von agenten - Google Patents

Prüfung von sofwarenagenten und aktivitäten von agenten Download PDF

Info

Publication number
DE69921454T2
DE69921454T2 DE69921454T DE69921454T DE69921454T2 DE 69921454 T2 DE69921454 T2 DE 69921454T2 DE 69921454 T DE69921454 T DE 69921454T DE 69921454 T DE69921454 T DE 69921454T DE 69921454 T2 DE69921454 T2 DE 69921454T2
Authority
DE
Germany
Prior art keywords
agent
software
information
fingerprint
environment
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
Application number
DE69921454T
Other languages
English (en)
Other versions
DE69921454D1 (de
Inventor
Martin Freeman
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Koninklijke Philips NV
Original Assignee
Koninklijke Philips Electronics NV
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Koninklijke Philips Electronics NV filed Critical Koninklijke Philips Electronics NV
Application granted granted Critical
Publication of DE69921454D1 publication Critical patent/DE69921454D1/de
Publication of DE69921454T2 publication Critical patent/DE69921454T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/485Task life-cycle, e.g. stopping, restarting, resuming execution
    • G06F9/4856Task life-cycle, e.g. stopping, restarting, resuming execution resumption being on a different machine, e.g. task migration, virtual machine migration
    • G06F9/4862Task life-cycle, e.g. stopping, restarting, resuming execution resumption being on a different machine, e.g. task migration, virtual machine migration the task being a mobile agent, i.e. specifically designed to migrate

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Storage Device Security (AREA)
  • Stored Programmes (AREA)

Description

  • Die vorliegende Erfindung bezieht sich auf Prüfung von Softwareagenten Aktivitäten von Agenten und insbesondere auf Prüfung von Softwareagenten und deren Aktivitäten in einer verteilten Rechenumgebung.
  • In informationsintensiven Rechenumgebungen neigen Benutzer dazu, mit Information überladen zu werden und Rechenmittel ineffizient zu nutzen. Um eine derartigen Überladung und Ineffizienz zu lindem haben Softwareprogrammierer Programme konstruiert, die als Softwareagenten allgemein bekannt sind. Softwareagenten sind tatsächlich allgemein bekannte Benutzerwerkzeuge.
  • Typischerweise bezwecken Softwareagenten eine oder mehrere Aufgaben zu erfüllen, beispielsweise im Namen des Benutzers. So haben beispielsweise manche Softwareagenten die Aufgabe, Information zu suchen, zu filtern, zu analysieren und Information Prioritäten zuzuordnen. So sind andere Softwareagenten betraut mit empfindlichen Aufgaben und assoziierter Information, wie Banksachen und assoziierter Kontoinformation, E-Kommerzaufgaben und assoziierter Kreditkarteninformation, und mit anderen Geschäftsvorgängen mit Geschäftsgeheimnis oder empfindlicher Information.
  • Zum Durchführen von Aufgaben bewegen sich Softwareagenten typischerweise auf dem Gebiet der Rechenumwelt, beispielsweise zum Erhalten von Dienstleistungen, die von Servern gesteuert werden und/oder zum Zusammenspielen mit anderen Agenten. Unter derartigen Umständen ist ein Softwareagent verschiedenartig Korruption ausgesetzt. So kann beispielsweise ein Softwareagent korrupt gemacht werden (beispielsweise böswillig gemacht werden) durch Änderung des Codes zum Einführen eines Virus oder zum Liefern einer anderen unerwünschten Funktionalität. Ein von einem Virus beschädigter Agent ist typischerweise imstande, den Virus in der Rechenumwelt (beispielsweise zu Servern) zu verbreiten und/oder zu anderen Agenten, mit denen er zusammenarbeitet.
  • In einem anderen Beispiel kann ein Softwareagent selber beschädigt werden, wie durch eine Änderung in dem Code zur Durchführung einer anvertrauten Aufgabe oder einer mit der Aufgabe assoziierten Information. In dem Fall, wo ein Agent einer Banküberweisungsaufgabe betraut ist, wird der Agent beschädigt, wenn der Code geändert wird um die Art oder den Betrag der Überweisung zu ändern.
  • In noch einem anderen Beispiel hat der Softwareagent keine Korruption, aber der Agent wird funktionell indirekt durch einen arglistigen Vorgang innerhalb eines Teils der Umgebung, in der sich der Agent bewegt, beschädigt. Um dieses Beispiel zu illustrieren: ein mit einer Banküberweisungsaufgabe betrauter Agent wird wahrscheinlich Information enthalten, worin gebeten wird, dass die Überweisung ein fester Betrag ist und von einem ersten Konto auf ein zweites Konto überwiesen wird. Der Agent kann aber durch Böswilligkeit beschädigt sein, die in dem Überweisungsserver selber vorhanden ist. Die Beschädigung des Agenten kann in diesem Fall eine Änderung in der Implementierung der Aufgabe sein, wie durch (i) Übertragung eines anderen Betrags oder (ii) durch Zuführung des Betrags zu einem dritten Konto, oder (ii) beides. Die Korruption des Agenten ist gemischt, wenn begleitet durch eine falsche Berichterstattung – zu dem oder über den Agenten oder sonst wie – dass die beantragte Aufgabe einwandfrei erledigt worden ist.
  • In WO 98/45768 ist ein Verfahren beschrieben zum Schaffen, Verteilen und Installieren einer einzigartig zugeschnittenen Instanz einer Softwareapplikation, die authentisierbar ist und zu einem bestimmten Benutzer nachweisbar ist. Ein sicherer Verteilungsagent resident in einem Verteilungscomputer, sammelt Identifikationsinformation und berechnet eine kryptographische Unterschrift der Softwareapplikation und der Identifikationsinformation. Die Identifikationsinformation und die kryptographische Unterschrift sind in die Softwareapplikation durch den sichern Verteilungsagenten eingebettet. Die Softwareapplikation mit den eingebetteten Daten wird über einen Verteilungskanal dem Installationscomputer zugeführt. Ein in dem Installationscomputer vorhandener Benutzerinstallationsagent steuert die Installation der Softwareapplikation mit eingebetteten Daten in dem Installationscomputer. Vor der Installation kann der Benutzerinstallationsagent die kryptographische Unterschrift benutzen um zu überprüfen, ob die Softwareapplikation und die Identifikationsinformation authentisch sind und nicht frisiert worden sind.
  • Agentenkorruption wird im Allgemeinen mit Verschlüsselungstechniken ungenügend geschützt. Das heißt, obschon Verschlüsselungstechniken den Ursprung eines Softwareagenten überprüfen können, haben diese Techniken typischerweise eine begrenzte Fähigkeit, Korruption abzuhalten. Insbesondere haben Verschlüsselungstechniken im Allgemeinen nicht die Fähigkeit, Agentenkorruption abzuhalten, wenn eine derartige Korruption vor der Verschlüsselung oder nach der Entschlüsselung auftreten kann.
  • Auf entsprechende Weise gibt es ein Bedürfnis nach Verfahren und Apparatur, die Softwareagenten und deren Aktivitäten in einer verteilten Rechenumwelt überprüfen. Insbesondere gibt es ein Bedürfnis nach derartigen Methoden und Apparatur, wenn in der Umwelt bösartiger Betrieb vorhanden sein kann.
  • Die vorliegende Erfindung schafft eine Anordnung und ein Verfahren zum Überprüfen von Softwareagenten und deren Aktivitäten. In einer verteilten Rechenumwelt werden ein Quellenmittel, ein Zielmittel und ein zuverlässiges Mittel vorgesehen. Das Quellenmittel ist mit einem Softwareagenten assoziiert, indem im Allgemeinen die Information des Agenten und/oder eine anvertraute Aufgabe für das Quellenmittel relevant sind. Das Quellenmittel liefert typischerweise Information und/oder betraut dem Softwareagenten mit (einer) Aufgabe(n) und erwartet einen Bericht zu empfangen, entweder mit Information über die Aktivitäten des Agenten oder über das Ergebnis der Aktivitäten des Agenten, über entweder den Bericht des Agenten oder sonst wie.
  • Das Quellenmittel startet typischerweise einen Softwareagenten. Ein Softwareagent kann mit einem oder mehreren Quellenmitteln assoziiert werden und kann an sich zunächst von jedem derartiger Mittel gestartet werden oder von einem anderen Mittel (so könnte beispielsweise ein Softwareagent zunächst von einem vertrauten oder einem Zielmittel gestartet werden).
  • Das Zielmittel ist mit dem Softwareagenten darin assoziiert, dass es, ganz allgemein, erwartet wird, dass der Agent in der Durchführung einer anvertrauten Aufgabe fortschreitet. Typischerweise empfängt das Zielmittel den Agenten, arbeitet mit demselben zusammen und erledigt anvertraute Aufgaben und/oder liefert einen Beitrag zu der Durchführung einer oder mehrerer dem Agenten anvertrauten Aufgaben. Jeder Softwareagent kann ein oder mehrere assoziierte Zielmittel haben.
  • Das anvertraute Mittel ist mit dem Softwareagenten dadurch assoziiert, dass das anvertraute Mittel funktioniert zum Schaffen einer Prüfung des Softwareagenten und seiner Aktivitäten. Das vertraute Mittel hat vorzugsweise assoziiert damit selektierte Mechanismen, die eine oder mehrere selektierte Operationen, wie beispielsweise: das Empfangen/Weiterleiten von Softwareagenten; das Verschlüsseln/Entschlüsseln von Teilen Softwareagenten oder von ganzen Softwareagenten; das Erwerben, Speichern, Wiederherstellen und Vergleichen von Fingerabdrücken von Softwareagenten; das Durchführen von Regeln, einschließlich der Kontrolle variabler Information; das Bilden, Einstellen, Aktualisieren und Überprüfen von Berichttimern; das Erzeugen von Kontrollnotizen, Berichten oder anderen Berichten relevant zur Überprüfung des Agenten und seiner Aktivitäten, unterstützen; wobei ein derartiger Prüfungsbericht typischerweise zu einem Quellenmittel und/oder Startmittel gerichtet ist; Erfassung der Aktivitäten von Softwareagenten, mit denen er zusammenarbeitet; und Abbauen, Maskieren oder sonstiges Schützen von Teilen von Softwareagenten oder ganzen Softwareagenten.
  • Ein vertrautes Mittel ist vorzugsweise nicht bestechlich. In dieser Hinsicht schafft die residente Hardware und/oder Software des anvertrauten Mittels Sicherheit des anvertrauten Mittels selber. Diese auf Sicherheit gerichtete Hardware/Software schützt das anvertraute Mittel beispielsweise vor Viren und anderen zerstörenden Einflüssen, ob eingeführt durch Softwareagenten oder sonst wie. Weiterhin ermöglicht, wenn vorausgesetzt wird, dass eine gewisse Korruption in Bezug auf das vertraute Mittel auftreten kann, die auf Sicherheit gerichtete Hardware/Software vorzugsweise eine Identifikation und Korrektur einer derartigen Korruption, einschließlich eines Operationssystems und Applikationssoftware, die mit dem vertrauten Mittel assoziiert ist.
  • Die vorliegende Erfindung schafft ebenfalls einen Softwareagenten, der imstande ist unter Verwendung der Apparatur und der Verfahren nach der vorliegenden Erfindung eine Prüfung durchzuführen. Ein derartiger Agent hat vorzugsweise ein oder mehrere feste und variable Felder. Feste Felder unterstützen typischerweise Adressen, Regeln, Daten oder andere feste Information (Information, die sich nicht ändert, ungeachtet der Aufgabe(n) die dem Agenten anvertraut wurden, durchzuführen). Variable Felder unterstützen typischerweise Operationsmerker (beispielsweise einen Neu/Alt-Merker), Regeln, Daten oder andere variable Information (Information, die sich ändert, wenn der Agent die anvertraute(n) Aufgabe(n) durchführt). Jeder derartige Agent unterstützt ebenfalls bestimmte Regeln, einschließlich Regeln, die selektierte Operationen ermöglichen, wie beispielsweise das Überprüfen geeigneter Modifikationen variabler Information und/oder Gewährleistung, dass die TR-Regeln selber nicht bestechlich sind.
  • Diese Aufgaben werden auf eine vorteilhafte Weise im Grunde dadurch gelöst, dass die Merkmale der Hauptansprüche angewandt werden. Weitere Verbesserungen sind in den Unteransprüchen definiert.
  • Die vorliegende Erfindung kann anhand der nachfolgenden detaillierten Be schreibung zusammen mit der beiliegenden Zeichnung, in der entsprechende Elemente mit demselben Bezugszeichen bezeichnet sind, besser verstanden werden.
  • Es zeigen:
  • 1 ein Blockschaltbild einer verteilten Rechenumwelt nach der vorliegenden Erfindung,
  • 2 ein Blockschaltbild eines vertrauten Mittels nach der vorliegenden Erfindung,
  • 3 ein Flussdiagramm der Schritte zur Überprüfung eines Softwareagenten und seiner Aktivitäten im Zusammenhang mit einem vertrauten Mittel nach der vorliegenden Erfindung, und
  • 4 ein Blockschaltbild eines Softwareagenten nach der vorliegenden Erfindung.
  • Überprüfung von Softwareagenten und deren Aktivitäten umfasst das Ermit teln, welche Softwareagenteninformation und -aufgaben beschädigt sind. Der Ausdruck "Korruption" und Varianten dieses Ausdrucks, wie diese hier benutzt werden, bezeichnen ohne Erschöpfung eine oder alle (i) Irreführungen oder Umlenkungen des Agenten, (ii) Einverleibung von Viruscodes oder einer anderen unerwünschten Funktionalität in oder mit einem Agenten, (iii) Ersatz oder andere betrügerisches Auftreten des Agenten, (iv) andere Änderungen, Ergänzungen oder Modifikationen – als Ganzes oder als Teil – des Agenten (beispielsweise der Aufgaben und/oder Information) auf eine ungeeignete, unerlaubte oder nicht authorisierte Weise, und/oder (v) Abweichung von der erwarteten Implementierung der Aufgaben des Agenten (mit oder ohne falsche Berichterstattung der Implementierung).
  • Überprüfung von Softwareagenten und deren Aktivitäten neigt dazu einen höheren Wert zu haben, wenn Agenten und ihre Aktivität Kritikalität ernten. Kritikalität neigt dazu zu bestehen, beispielsweise wo Agenten betraut sind mit empfindlichen/vertraulichen Aufgaben und assoziierter Information, wie: a) Bankgeschäften und assoziierter Konteninformation; b) E-Kommerzaufgaben und assoziierter Kreditkarteninformation; und c) andere Transaktionen mit Geschäftsgeheimen oder geschäftsempfindlicher Information.
  • Nach der vorliegenden Erfindung arbeiten Überprüfungsapparatur und Verfahren in einer Rechenumwelt oder bilden einen Teil davon. Vorzugswiese umfasst eine derartige Rechenumwelt eine verteilte Rechenumwelt, wie das Internet oder ein Internet ähnliches System, oder das "World Wide Web" oder ein World-Wide-Web-ähnliches System, oder offene Kommunikationsnetzwerke oder Dienste, oder aber jede andere beliebige Umwelt, in der Softwareagenten Gegenstand einer Korruption sein können, einschließlich böswilligen Betriebs innerhalb eines Teils der Umwelt selber.
  • Grob gesagt ziehen die Anordnung und die Verfahren nach der vorliegenden Erfindung ein Quellenmittel, ein Zielmittel und ein vertrautes Mittel in Betracht. Jedes dieser Mittel umfasst eine oder mehrere Stellen, einen Server, Softwareapplikationen, Softwareagenten, Netzwerke, Firmware oder andere Hardware, Software oder Netzwerkmittel (physikalisch und/oder logisch), allein oder in Kombination (nachstehend allgemein als "Hardware, Software und/oder Netzwerkmittel" bezeichnet).
  • Es dürfte einleuchten, dass jedes derartige Quellen-, Ziel- und vertraute Mittel an einer physikalischen Stelle oder an einer Anzahl verteilter physikalischer Stellen implementiert werden können, die sich in der Rechenumwelt befinden oder mit derselben assoziiert sind. So kann beispielsweise das vertraute Mittel als Server implementiert werden, der sich an einer Stelle in einem Netzwerk befindet, wobei diese Stelle typischerweise eine Rechenanordnung umfasst, wobei der Server dazu vorgesehen ist, (direkt oder indirekt) mit selektierten Softwareagenten zusammenzuarbeiten, da derartige Agenten die Umwelt manövrieren, beispielsweise dadurch, dass sie von (zu) dem Quellenmittel (von) zu dem Zielmittel die Umwelt durchkreuzen. So kann als ein anderes Beispiel das vertraute Mittel als ein oder mehrere Server ausgebildet werden mit verteilten Aufenthaltsorten an verschiedenen Stellen in einem oder in mehreren Netzwerken der Rechenumwelt. Ungeachtet dieser zwei Beispiele dürfte es einleuchten, dass das vertraute Mittel im Rahmen der vorliegenden Erfindung auf andere Art und Weise implementiert werden kann.
  • Ein Quellenmittel ist mit einem Softwareagenten assoziiert, wobei im Allgemeinen die Information des Softwareagenten und die anvertraute(n) Aufgabe(n) für das Quellenmittel relevant sind oder relevant werden. Ein Quellenmittel spezifiziert typischerweise einen Agenten dadurch, dass es dem Softwareagenten Information und/oder anvertraute Aufgabe(n) liefert. Ein Quellenmittel betraut Aufgaben dadurch dass es (a) Aufgaben erteilt, beispielsweise in Form von Code, (b) aus angebotenen Aufgaben selektiert, beispielsweise, wenn der Agent von einem anderen Mittel gestartet worden ist, wie einem anvertrauten Mittel, einem Zielmittel oder einem zweiten Quellenmittel, (c) eine Kombination von (a) und (b), oder (d) auf eine andere Art und Weise. (Ein Quellenmittel wird manchmal zu "OR" (Origin Resource) abgekürzt).
  • Ein Quellenmittel erwartet typischerweise einen Bericht zu empfangen, und zwar auf Basis eines Gebrauchs der Rechenumwelt durch den Agenten, wobei ein derartiger Bericht entweder aus Information über die Aktivitäten des Softwareagenten oder über das Ergebnis derselben besteht. Es dürfte aber einleuchten, dass ein Softwareagent, dem Aufgaben oder Information anvertraut worden ist, die von einem bestimmten Quellenmittel geliefert worden ist oder für dieses Mittel geliefert worden ist, auch mit Information und/oder Aufgaben vertraut sein kann, die für ein oder mehrere Quellenmittel relevant sein kann bzw. können.
  • Ein Quellenmittel ist vorzugsweise imstand, einen Softwareagenten zu starten. Es dürfte aber einleuchten, dass ein Softwareagent, der für ein bestimmtes Quellenmittel relevant ist, zunächst von einem anderen als diesem Quellenmittel gestartet worden ist. So kann beispielsweise ein Softwareagent von einem zweiten Quellenmittel gestartet werden, entweder für Zwecke, die für das erste und das zweite Quellmittel relevant sind oder allein im Namen des ersten Quellenmittels. In einem anderen Beispiel kann der Softwareagent zunächst von einem vertrauten Quellenmittel gestartet werden, beispielsweise in Reaktion auf entweder ein Quellenmittel oder ein Zielmittel, oder auf Initiative des vertrauten Quellenmittels selber (beispielsweise um auf effektive Weise Dienste zu leisten), oder sonst wie. In noch einem anderen Beispiel kann der Softwareagent zunächst von einem Zielmittel gestartet werden, beispielsweise in Reaktion auf entweder ein Quellenmittel oder ein vertrautes Mittel, oder auf Initiative des Zielmittels selber (beispielsweise zum Fördern der Dienstleistungen), oder sonst wie. In diesem letzteren Beispiel kann das Zielmittel selber ein effektives Quellenmittel sein, wobei in diesem Fall das Quellenmittel (oder das vertraute Mittel) ein effektives Zielmittel sein kann – d.h. das Zielmittel kann Information liefern und/oder einen Softwareagenten mit Aufgaben betrauen, was Aktion in dem Quellenmittel bedeutet (beispielsweise von einem Endverbraucher).
  • Aus diesen Beispielen dürfte es einleuchten, dass im Rahmen der vorliegenden Erfindung ein Softwareagent mit einem oder mehreren Quellenmitteln assoziiert sein kann und zunächst von einem derartigen Mittel oder von einem anderen Mittel gestartet werden kann. Auf jeden Fall dürfte es einleuchten, dass ein Softwareagent gestartet wird der imstande ist, dass er schlussendlich für ein Quellenmittel relevant wird.
  • Ein Zielmittel ist mit dadurch mit dem Softwareagenten assoziiert, dass im Allgemeinen erwartet wird, dass es eine anvertraute Aufgabe effektuiert. Typischerweise empfängt das Zielmittel den Agenten, ist mit demselben interaktiv und erledigt die Aufgaben, mit denen der Softwareagent betraut worden ist völlig und/oder liefert einen Beitrag zu der Durchführung eines Teils oder aller Aufgaben für den Agenten (nachstehend wird im Allgemeinen "Durchführen" benutzt um Erledigung einer Aufgabe sowie Lieferung eines Beitrags zu der Erleding anzugeben). Es dürfte jedoch einleuchten, dass jeder beliebige Softwareagent ein oder mehrere assoziierte Zielmittel aufweisen kann. So können beispielsweise mehrere Zielmittel des Agenten organisiert werden, und zwar: (a) einzeln, so dass jedes Mittel jede Aufgabe der Anzahl Aufgaben durchführen kann oder (b) in mehreren zusammengesetzten Gruppen, so dass jede betreffende Gruppe jede beliebige Aufgabe einer Anzahl Aufgaben erfüllen kann. (Ein Zielmittel wird nachstehend manchmal als "DR" (Destination Resource) abgekürzt).
  • Ein vertrautes Mittel ist mit dem Softwareagenten dadurch assoziiert, dass der Softwareagent und das vertraute Mittel funktionieren um eine Überprüfung des Softwareagenten und dessen Aktivitäten zu schaffen. Das vertraute Mittel unterstützt einen oder mehrere selektierte Überprüfungsvorgänge. Beispiele von Überprüfungsvorgängen umfassen:
    das Empfangen/Übermitteln von Softwareagenten: Verschlüsseln/Entschlüsseln von Teilen der ganzen Softwareagenten, das Speichern, Wiederherstellen und Vergleichen von Fingerabdrücken von Softwareagenten; das Durchführen von Regeln, einschließlich der Überprüfung variabler Information; das Bilden, Einstellen, Aktualisieren und Überprüfen von Berichttimern; das Erzeugen von Überprüfungsnotizen, Berichten oder anderen Berichten, relevant zur Überprüfung des Softwareagenten und dessen Aktivitäten, wobei ein derartigen Überprüfungsbericht typischerweise an ein Quellenmittel und/oder das startende Mittel gerichtet sein kann; Erfassung der Aktivitäten der Softwareagenten, die mit dem vertrauten Mittel interaktiv sind; und Abbauen, Maskieren oder sonstiges Schützen von Teilen oder des ganzen Softwareagenten. (Der Ausdruck "Fingerabdruck", wie in diesem Dokument verwendet, bezieht sich auf den Fingerabdruck, die Unterschrift, das Profil oder andere Prüfsteininformation des Softwareagenten, einzeln oder kollektiv, sowie auf den Vorgang diese zu erhalten).
  • Ein vertrautes Mittel ist vorzugsweise nicht bestechlich. In dieser Hinsicht effektuiert das vertraute Mittel vorzugsweise Sicherheit des vertrauten Mittels selber. Das heißt, das vertraute Mittel umfasst vorzugsweise Hardware, Software und/oder Netzwerkmittel, gerichtet auf Schutz des TRs, beispielsweise vor Viren und anderen störenden Einflüssen, ob durch Softwareagenten oder auf andere Art und Weise eingeführt. Weiterhin ist, wenn vorausgesetzt wird, dass Korruption in Bezug auf das vertraute Mittel auftreten kann, das vertraute Mittel vorzugsweise imstande eine derartige Korruption zu identifizieren und zu korrigieren, einschließlich eines Betriebssystems und Applikationssoftware, die mit dem vertrauten Mittel assoziiert ist.
  • In einem Ausführungsbeispiel umfasst das vertraute Mittel einen vertrauten Server, der mit und/oder in einer Rechenumwelt gekoppelt ist. Das Ziel- und das Quellenmittel sind ebenfalls mit und/oder in der Rechenumwelt gekoppelt. Auf jeden Fall ist die Kopplung über betreffende Kommunikationsstrecken, wobei diese Strecken ebenfalls einen Teil der Rechenumwelt aufweisen oder damit assoziiert sind. In einem Beispielfall umfasst die Rechenumwelt das Internet und die Kommunikationsstrecken umfassen jedes Kommunikationsmittel einer Vielzahl von Kommunikationsmitteln, allein und in mehreren Kombinationen, einschließlich faseroptischer Kabel, verzwirnter Telefonleitungen, Koaxialkabel, Schalt- und Routingschaltungen, Prozesse dafür, Protokolle, Firmware und andere Hardware, Software und/oder Netzwerkmittel.
  • Bei dieser Ausführungsform umfasst ein Zielmittel einen Server, der mit einer Internetseite assoziiert ist, wobei die Seite bestimmte Vorgänge und Funktionen unterstützt (beispielsweise eine Webseite einer Bank, die eine Kopplung zu den Dienstleistungen der Bank schafft, beispielsweise Überweisungen von und zu den Benutzerkonten). Weiterhin umfasst in dieser Ausführungsform das Quellenmittel einen Internetkunden, wobei der Kunde in den Stand gesetzt wird, Softwareagenten zu spezifizieren und zu starten und die typischerweise von einem Endverbraucher betrieben werden. Nachdem das Quellenmittel einen Softwareagenten startet, benutzt der Agent die Rechenumwelt und auf entsprechende Weise verliert das Quellenmittel typischerweise die Steuerung über den Agenten. Wenn der Agent einem zerstörenden Einfluss in einem Teil der Umwelt, die er benutzt, begegnet, können die Aufgaben oder die Information, die dem Softwareagenten anvertraut wurden verschiedenartig zerstört werden. Aber eine derartige Zerstörung bleibt im Allgemeinen bei dem startenden Quellenmittel unbekannt und/oder bei jedem beliebigen Quel lenmittel, für das der Agent relevant ist. Weiterhin kann, sogar wenn die Zerstörung an ein Quellenmittel berichtet wird, erwartet werden, dass ein derartiger Bericht zu einem Zeitpunkt auftritt, der weit genug hinter der Korruption liegt, dass ein Korrekturvorgang vergeblich ist (beispielsweise ausgeschlossen ist sowohl die eigentliche Beendigung der anvertrauten Aufgabe als auch die Identifikation und die Ausrottung eines verderblichen Vorgangs)
  • Bei der Verwendung der Rechenumwelt in diesem Ausführungsbeispiel benutzt ein Softwareagent typischerweise eine oder mehrere der Kommunikationsstrecken zum Durchqueren des Quellenmittels, des vertrauten Mittels und des Zielmittels. Im Falle des Internets sorgt die Verwendung dafür, dass der Softwareagent von der einen Seite oder dem einen Server zu der nächsten Seite bzw. zu dem nächsten Server geschickt/geschaltet wird, und zwar auf Basis verstandener Protokolle, beispielsweise das Internetprotokoll ("IP"). In einem derartigen Fall unterstützen das Quellenmittel, das Zielmittel und das vertraute Mittel IP. Es dürfte einleuchten, dass mehrere Protokolle benutzt werden können, allein oder zusammen, als Ersatz für das IP oder als Ergänzung dazu, und zwar abhängig von der Rechenumwelt und dass im Rahmen der Grundlagen der vorliegenden Erfindung im Allgemeinen das Quellenmittel, das Zielmittel und das vertraute Mittel die verwickelten Protokolle unterstützen.
  • Obschon die Sequenz, die Dienstleistungen und die Wirkung von oder assoziiert mit der Durchquerung der Mittel durch Benutzung und/oder Implementierung variieren kann, dürfte es einleuchten, dass Überprüfung des Softwareagenten entsprechend der vorliegenden Erfindung unterstützt werden soll. Insbesondere sei bemerkt, dass der Softwareagent einer Überprüfung in Bezug auf wenigstens zwei Überprüfungsereignisse ausgesetzt wird: wobei das erste Überprüfungsereignis sich stützt auf den Zustand des Agenten ohne irgendeine Interaktion mit einem Mittel, das eine Aufgabe erledigt, und das zweite Überprüfungsereignis sich stützt auf den Zustand des Agenten, der einer Interaktion mit einem Mittel ausgesetzt ist, das eine Aufgabe erledigt.
  • Um die Überprüfungsereignisse zu gewährleisten, zieht jede Durchquerung von OR, DR und TR im Allgemeinen die Interaktion des Agenten mit/bei dem vertrauten Mittel in Betracht. Typischerweise wird der Softwareagent von einem Quellenmittel zu dem vertrauten Mittel gerichtet, und wird von demselben schlussendlich empfangen, und von dort wird der Softwareagent zu dem Zielmittel gerichtet und wird schlussendlich von/bei demselben empfangen. Auch typisch ist, dass von einem Zielmittel der Softwareagent zu dem vertrauten Mittel gerichtet wird und schlussendlich von/bei demselben empfangen wird, und von dort wird der Softwareagent zu dem Quellenmittel gerichtet und schlussendlich von/bei demselben empfangen. Noch so typisch ist, dass ein Softwareagent nach einer gewissen Interaktion von dem vertrauten Mittel gerichtet wird, beispielsweise der Durchführung geeigneter Überprüfungsvorgänge von dem vertrauten Mittel an oder im Zusammenhang mit dem Agenten.
  • Mit dem vertrauten Mittel sind vorzugsweise selektierte Hardware, Software und/oder Netzwerkmittel assoziiert, die eine oder mehrere selektierte Überprüfungsvorgänge unterstützen. Die Hardware-, Software- und Netzwerkmittel, allein und in mehreren Kombinationen, umfassen eine Anzahl Mechanismen. Typische Mechanismen von vertrauten Mitteln umfassen: (a) einen Empfangsmechanismus; (b) einen Übermittlungsmechanismus; (c) einen Fingerabdruckerfassungsmechanismus; (d) einen Fingerabdruckspeichermechanismus; (e) einen Fingerabdruckvergleichsmechanismus; (f) einen Überprüfungsberichtmechanismus; (g) einen Timermechanismus; (h) einen vertrautes-Mittel-Regeln-Mechanismus; (i) einen Erfassungsmechanismus; (k) einen Verwaltungsmechanismus; (l) einen Sicherheitsmechanismus; und (m) einen Verschlüsselungsmechanismus. Obschon einzeln aufgelistet, dürfte es einleuchten, dass die Mechanismen im Rahmen der vorliegenden Erfindung einzeln oder in jeder beliebigen Kombination oder sonst wie implementiert werden können.
  • Die vertrautes-Mittel-Mechanismen können verschiedenartig implementiert werden. Typischerweise werden die Mechanismen als Software implementiert um mit einer oder mehreren Rechenanordnungen zusammenzuarbeiten (beispielsweise mit einem PC, einer Arbeitsstation oder einem Server-Computer), wobei jede Rechenanordnung auf herkömmliche Weise ein Operationssystem (beispielsweise Unix, Linux, Windows NT oder sonstiges), einen Kommurnikationsstapel, Kommunikationshardware, Prozessoren und andere logische Hardware, ein Speichersystem (beispielsweise einen oder mehrere Cache-Speicher, dynamische ROMs, Massenspeicher, Archivspeicher und sonstiges), in selektierten Kombinationen aufweist. Wenn als Software implementiert, dürfte es einleuchten, dass jeder der vertrautes-Mittel-Mechanismen als integriertes Software-Objekt oder als eine Sammlung diskreter Software-Objekte in einem objekt-orientiertem Softwareprogramm, oder als ein einzelnes integriertes Softwareprogramm, oder aber sonst wie implementiert werden kann. Auf gleiche Weise kann jede beliebige Kombination von Mittelmechanismen implementiert werden zum Teilen von Softwareobjekten, Modulen oder anderen Softwarekomponenten. Weiterhin dürfte es einleuchten, dass jeder oder mehrere der vertrautes-Mittel-Mechanismen als Ganzes, teilweise oder in Redundanz, in Hardware implementiert werden kann (beispielsweise einschließlich Formware), mit oder ohne Softwarekomponenten. In dieser Hinsicht wie oben in Bezug auf das vertraute Mittel im Allgemeinen beschrieben, kann jeder derartige Mechanismus an/in einer physikalischen Stelle und unter einer Anzahl physikalischer Stellen in einer Rechenumwelt oder assoziiert damit, implementiert werden.
  • Ein Empfangsmechanismus ermöglicht es, dass das vertraute Mittel in der Rechenumwelt empfängt, insbesondere Softwareagenten assoziiert mit einem Quellenmittel. Das Quellenmittel wird in einem derartigen Fall typischerweise in den Stand gesetzt, die Dienstleistungen des vertrauten Mittels zu benutzen, mit oder ohne Bezahlung von Geld, Überweisung gegen Entgelt, oder andere Belohnung. (Nachstehend werden Quellenmittel, die auf diese Weise in den Stand gesetzt werden, Dienstleistungen von einem vertrauten Mittel zu benutzen, manchmal als "teilnehmend" bezeichnet, als wären sie "Teilnehmer" oder eine Abwandlung davon; auf ähnliche Weise werden Quellenmittel mit einem "Abonnement" manchmal als "teilnehmende Quellenmittel" bezeichnet und die assoziierten Softwareagenten werden manchmal als "Teilnehmeragenten" bezeichnet).
  • Softwareagenten werden in die Rechenumwelt für mehrere Zwecke gestartet, einschließlich für mehrere Überprüfungszwecke. Weil ein vertrautes Mittel Agenten empfangen kann, die keine Beziehung mit den Überprüfungsdiensten haben, umfasst ein Empfangsmechanismus eines TRs vorzugsweise ein Filterelement, das bestimmt, welche empfangenen Agenten Teilnehmer sind, einschließlich durch Analyse der Konfiguration und/oder Spezifikation des Agenten (beispielsweise für einen zur Überprüfung freigegebenen Merker). Obschon ein Filter implementiert werden kann, dürfte es einleuchten, dass ein Filter nicht implementiert zu sein braucht, insbesondere dort, wo beispielsweise das vertraute Mittel in der Rechenumwelt implementiert ist um nur teilnehmende Agenten zu empfangen.
  • Der Empfangsmechanismus wird vorzugsweise auch freigegeben zu bestimmen, ob ein Agent neu empfangen wird (beispielsweise von dem Quellenmittel) oder zurückkehrt (beispielsweise von einem Zielmittel). Der Empfangsmechanismus bezeichnet die Bestimmung in Bezug auf den Agenten, beispielsweise dadurch, dass ein empfangener Merker in den Agenten gesetzt/zurückgesetzt wird oder damit assoziiert wird.
  • Ein Übermittlungsmechanismus gibt das vertraute Mittel frei in der Rechenumwelt zu kommunizieren. Insbesondere gibt er Softwareagenten frei von dem vertrauten Mittel zu wandern. Eine derartige Wanderung ist schlussendlich zu einem oder mehreren geeigneten Zielmitteln oder Quellenmitteln. Um das zu tun arbeitet der Übermittlungsmechanismus vorzugsweise in Übereinstimmung mit anwendbaren Protokollen.
  • Ein Übermittlungsmechanismus kann verschiedenartig implementiert werden. So kann der Übermittlungsmechanismus beispielsweise derart implementiert werden, dass er eine Kopie des empfangen Agenten übermittelt um den Fingerabdruckerfassungsmechanismus und/oder den Fingerabdruckvergleichsmechanismus frei zu geben parallel zu der Übermittlung fort zu fahren.
  • Weiterhin kann der Übermittlungsmechanismus derart implementiert werden, dass er ein oder mehrere Zielmittel, mehrere Quellenmittel und zusätzliche, redundante oder andere zusätzliche vertraute Mittel unterstützt.
  • Ein Fingerabdruckerfassungsmechanismus erfasst Fingerabdrücke von Agenten. Der Fingerabdruckerfassungsmechanismus kann unter Anwendung einer Vielheit von Technologien implementiert werden. Bei jeder Implementierung schafft die Technologie vorzugsweise einen Fingerabdruck, der wirklich oder nahezu einzigartig ist, Agent zu Agent. Eine Beispielstechnologie ist eine Einweg-Hash-Funktion (beispielsweise MDS). Eine Einweg-Hash-Funktion, wobei der Agent als Eingang verwendet wird, erzeugt eine Hash-Unterschrift, die nicht nur einzigartig ist, sondern auch dazu neigt, Umkehrtechnik auszuschließen.
  • Der Fingerabdruckerfassungsmechanismus wird vorzugsweise implementiert, einen Fingerabdruck zu nehmen auf Basis fester Information des Softwareagenten. So kann beispielsweise der Fingerabdruck basieren auf die Adressinformation (beispielsweise eine oder mehrere der Quellen-, Ziel- und vertrautes-Mitteladressen) und/oder die Information und betrauten Aufgaben, assoziiert mit dem Agenten (und/oder andere wesentliche Transaktionsinformation). Es dürfte aber einleuchten, dass der Mechanismus implementiert werden kann zum Nehmen eines Fingerabdrucks auf Basis der variablen Information des Agenten, allein oder zusammen mit fester Information (siehe die Beschreibung in diesem Dokument in Bezug auf die festen und variablen Felder des Agenten). (Die nachstehend beschriebenen TR Regeln werden vorzugsweise nicht benutzt bei der Erfassung eines Fingerabdrucks). Der Fingerabdruck kann tatsächlich den ganzen Agenten einschließen oder der ganze Agent selber sein.
  • Der Fingerabdruckerfassungsmechanismus kann unter Verwendung einer oder mehrerer Annäherungen auf Basis der Implementierung getriggert werden. Bei einer Ausführungsform wird der Mechanismus durch den Empfangsmechanismus für selektierte Agenten getriggert. So kann beispielsweise der Empfangsmechanismus implementiert werden zum Triggern des Fingerabdruckerfassungsmechanismus nur dann, wenn ein Filterelement eines Empfangsmechanismus bestimmt, dass ein empfangener Agent teilnimmt. In einer anderen Ausführungsform wird der Fingerabdruckerfassungsmechanismus durch den Empfangsmechanismus getriggert für alle empfangenen Agenten. In diesem letzteren Fall, wenn die vertrauten Mittel andere als teilnehmende Agenten empfangen können, kann der Fingerabdruckerfassungsmechanismus implementiert werden zum Bestimmen oder zum Liefern eines Beitrags zu der Bestimmung, ob ein empfangener Agent teilnimmt. In anderen Ausführungsformen triggert der Fingerabdruckerfassungsmechanismus selber oder wird durch irgendeinen Mechanismus anders als der Empfangsmechanismus getriggert. Auf jeden Fall führt der Empfang wenigstens selektierter Agenten vorzugsweise zu der Triggerung des Fingerabdruckerfassungsmechanismus.
  • Ein Fingerabdruckspeichermechanismus effektuiert die Speicherung und den Abruf von Fingerabdrücken. Der Speichermechanismus wird vorzugsweise implementiert unter Verwendung eines Speichersystems (beispielsweise eines oder mehrerer Cache-Speicher, dynamischer RAM, Massenspeicher, Archivspeicher und sonstiger Speicher, ob Pauschalspeicher oder verteilte Speicher). Der Speichermechanismus umfasst vorzugsweise auch ein Steuerelement. In einer typischen Ausführungsform schafft das Steuerelement die Speicherung eines erfassten Fingerabdrucks an einer vorbestimmten Stelle des Speichersystems und es schafft die Wiederherstellung des Fingerabdrucks, beispielsweise als Fingerabdruckdatei/-eingabe in eine Fingerabdruckdatei. In einem Beispiel wird das Fingerabdruckspeichermechanismus implementiert zum Speichern nur derjenigen Fingerabdrücke, die mit den teilnehmenden Agenten übereinstimmen, und zwar auf Basis einer Teilnahmebestimmung, die er durchführt oder auf Basis einer anderen Mechanismusdurchführung (beispielsweise parallel zu dem Fingerabdruck).
  • Ein Fingerabdruckspeichermechanismus kann unter Verwendung einer oder mehrerer Annäherungen getriggert werden, und zwar auf Basis der Implementierung. Im einer Ausführungsform wird der Mechanismus durch den Empfangsmechanismus für selektierte Agenten getriggert. So kann beispielsweise der Empfangsmechanismus implementiert werden zum Triggern des Fingerabdruckspeichermechanismus, und zwar nur dann, wenn ein Filterelement eines Empfangsmechanismus bestimmt, dass ein empfangener Agent teilnimmt. In einer anderen Ausführungsform wird der Fingerabdruckspeichermechanismus durch den Empfangsmechanismus für alle empfangenen Agenten getriggert. In diesem letzteren Fall kann, wenn die vertrauten Mittel andere als teilnehmende Agenten empfangen können, der Speichermechanismus implementiert werden zum Bestimmen oder zum Liefern eines Beitrags zu der Bestimmung, ob ein empfangener Agent teilnimmt. In noch einer anderen Ausführungsform wird der Fingerabdruckspeichermechanismus durch den Fingerabdruckerfassungsmechanismus für empfangene Agenten getriggert. In dieser letzteren Ausführungsform kann der Mechanismus implementiert werden zum Speichern nur derjenigen Fingerabdrücke, die mit teilnehmenden Agenten übereinstimmen, beispielsweise auf Basis einer Teilnahmebestimmung, die er oder ein anderer Mechanismus durchführt.
  • Ein Fingerabdruckvergleichsmechanismus schafft einen Vergleich erworbener Fingerabdrücke eines Softwareagenten zum Identifizieren von Differenzen oder anderen Unregelmäßigkeiten, die eine etwaige Korruption andeuten könnten. In einer typischen Ausführungsform vergleicht der Vergleichsmechanismus (a) einen vorher erworbenen Fingerabdruck eines Softwareagenten, der zu dem vertrauten Mittel zurückgekehrt ist, mit dem aktuellen Fingerabdruck des Agenten, wie dieser durch den Fingerabdruckerfassungsmechanismus erworben ist.
  • Es sei aber bemerkt, dass bei anderen Ausführungsformen die Zeitcharakteristik (beispielsweise "vorher erworben" und 'aktuell", wie oben stehend) der Erwerbung und des Vergleichs nahezu oder völlig unanwendbar sind. Insbesondere sei bemerkt, dass ein Softwareagent Überprüfungsvorgängen ausgesetzt wird in Bezug auf wenigstens zwei Überprüfungsereignisse; wobei das erste Überprüfungsereignis auf den Zustand des Agenten gründet, dass keine Interaktion mit einem Mittel, das eine Aufgabe erledigt, vorhanden ist, und wobei das zweite Überprüfungsereignis auf den Zustand des Agenten gründet, dass er einer Interaktion ausgesetzt ist mit einem Mittel, das eine Aufgabe erledigt. Die zwei Überprüfungsereignisse können bei bestimmten Ausführungsformen der vorliegenden Erfindung völlig oder nahezu ohne Zeitdifferenz sein.
  • Ein Überprüfungsberichtmechanismus erzeugt Notizen, Berichte oder andere Antworten relevant für die Überprüfung des Agenten und seiner Aktivitäten (nachstehend einzeln und kollektiv als "Überprüfungsbericht" bezeichnet). Der Überprüfungsberichtmechanismus kann verschiedenartig implementiert werden. So kann beispielsweise der Überprüfungsberichtmechanismus implementiert werden zum Senden selektierter Berichte zu einem bestimmten Mittel. Weiterhin kann der Überprüfungsberichtmechanismus implementiert werden zum Senden von Berichten über den Bericht des Quellenagenten, oder durch einen Bericht separat von dem Quellenagenten, oder auf andere Art und Weise. In dem ersten Fall erzeugt der Überprüfungsberichtmechanismus vorzugsweise den Bericht, wobei dieser Bericht einem Sendemechanismus zugeführt wird. In dem zweiten Fall unterstützt der Überprüfungsberichtmechanismus einen oder mehrere, in jeder beliebigen Kombination, (a) das Erzeugen und Starten der eigenen Bericht tragenden Agenten, wobei ein derartiger Start vorzugsweise von dem Sendemechanismus, oder in Koordination damit, erfolgt und (b) das Erzeugen und Senden einer bestimmten Nicht-Agentennachricht, und (c) andere Lösungen.
  • Außerdem kann der Überprüfungsbericht nach der vorliegenden Erfindung verschiedenartig konfiguriert werden. So kann beispielsweise der Überprüfungsbericht einen Überprüfungsmerker enthalten, der auf Basis davon gestellt oder rückgestellt wird, ob Korruption detektiert wurde oder nicht (beispielsweise ob die Aufgabe erfolgreich erledigt wurde oder nicht). In einem anderen Beispiel kann der Überprüfungsbericht Details enthalten in Bezug auf die Ergebnisse von Überprüfungsvorgängen, geleitet von dem vertrauten Mittel, In noch einem anderen Beispiel kann der Überprüfungsbericht einige oder alle Darstellungen enthalten von Information über oder der Ergebnisse von den Aktivitäten des Agenten (beispielsweise Information gesammelt von oder herrührend von der Leistung einer betrauten Aufgabe). In einem weiteren Beispiel kann der Überprüfungsbericht Information oder Richtlinien enthalten zum Ermöglichen oder Unterstützen von Korrekturvorgängen. Es dürfte einleuchten, dass der Überprüfungsbericht Kombinationen des Obenstehenden enthalten kann, oder Kombinationen des Obenstehenden mit einem anderen Bericht.
  • Der Überprüfungsbericht wird typischerweise Quellenmitteln zugeführt. Überprüfungsberichte können aber auch den Zielmitteln zugeführt werden, sowie anderen vertrauten Mitteln. Insbesondere wird der Überprüfungsbericht denjenigen Mitteln zugeführt, für die der Agent oder seine Aktivitäten relevant sind. Ein Agent oder seine Aktivitäten sind im Allgemeinen für ein Quellenmittel relevant, wenn der Agent an einer bestimmten Stelle mit Aufgaben und mit assoziierter Information, relevant für das Quellenmittel, betraut wurde.
  • Der Überprüfungsberichtmechanismus kann unter Verwendung einer oder mehrerer Annäherungen auf Basis der Implementierung getriggert werden. In einer Ausführungsform wird der Mechanismus von den Fingerabdruckvergleichsmechanismus getriggert und der Überprüfungsbericht wird gesendet, ob der Vergleich der Fingerabdrücke Unregelmäßigkeiten aufweist oder nicht.
  • Ein Timermechanismus umfasst Timerelemente und Überwachungselemente. In einer typischen Ausführungsform behalten die Timerelemente die Zeit, die vergangen ist nach dem Auftritt einer oder mehrerer selektierter zweiter Klassen von Timerereignissen, wobei diese erste und zweite Klasse von Timerereignisse völlig gleich, völlig verschieden oder teilweise gleich sind. Derartige Timerereignisse reflektieren typischerweise den Softwareagenten, seine Information und seine Aufgabe(n), und/oder die Quellenmittel oder Zielmittel.
  • Ein Überwachungselement überwacht vorzugsweise ein assoziiertes Timerelement für vergangene Zeit. So kann beispielsweise ein Überwachungselement implementiert werden zum Überwachen eines assoziierten Timers für vergangene Zeit, die eine vorbestimmte maximale Periode übersteigt (wobei die Periode manchmal als Zeitsperrperiode bezeichnet wird und das Timerereignis manchmal als Zeitsperre bezeichnet wird). Weiterhin effektuiert als Reaktion auf die Zeitsperre das Überwachungselement vorzugsweise eine Zeitsperrnachricht, wobei diese Nachricht vorzugsweise einen Inhalt und Parameter aufweist, welche die Umstände abspiegeln (beispielsweise den Agenten, seine Information und seine Aufgabe(n) und/oder das Quellenmittel oder Zielmittel). In einer Ausführungsform umfasst die Zeitsperrnachricht eines Überwachungselementes (a) einen Zeitsperrmerker, (b) einen originalen Fingerabdruck des Agenten und/oder Information, selektiert zum Identifizieren des Softwareagenten, und (c) andere Information, beispielsweise in Bezug auf den Zustand der Rechenumwelt, Neuigkeiten über das Zielmittel des Agenten oder sonstiges. In dieser und in anderen Ausführungsformen umfasst die Zeitsperrnachricht vorzugsweise genügend Information und Richtlinien um einen Korrekturvorgang oder einen anderen geeigneten Vorgang zu ermöglichen.
  • Eine Zeitsperrnachricht wird vorzugsweise dem Überprüfungsberichtmechanismus zugeführt, wobei in Reaktion darauf der Berichtmechanismus einen geeigneten Überprüfungsbericht erzeugt und versendet. Auf diese Art und Weise wird jede beliebige Zeitsperrnachricht dem einen oder mehreren Mitteln, für welche die Nachricht Relevanz enthält, bekannt gegeben. So wird beispielsweise in einer typischen Ausführungsform der Überprüfungsbericht einem Quellenmittel zugeführt, wenn der Softwareagent nicht innerhalb der Sperrzeitperiode einwandfrei zurückkehrt von einer Interaktion mit einem Zielmittel, wobei die Sperrzeitperiode von einem vorbestimmten Ereignis gemessen wird und wobei ein derartiges vorbestimmtes Ereignis, beispielsweise den ersten Empfang des Softwareagenten bei dem vertrauten Mittel umfasst. Trotz dieses Beispiels und der oben stehenden Beschreibung dürfte es einleuchten, dass der Überprüfungsbericht, geeignet für die oben stehende und andere Sperrzeitnachrichten jedem beliebigen Mittel zugeführt werden kann, einschließlich des Zielmittels oder zu anderen oder anderen Teilen von vertrauten Mitteln.
  • Die Timer- und Überwachungselemente können getriggert werden, und zwar unter Verwendung einer oder mehrerer Annäherungen, abhängig von der Implementierung. In einem Ausführungsbeispiel wird ein Timerelement durch die Bestimmung des Empfangsmechanismus, dass ein Agent (beispielsweise ein teilnehmender Agent) neu empfangen wird oder zurückkehrt, aktiviert. In einem anderen Ausführungsbeispiel wird ein Timerelement durch die Richtung eines Sendemechanismus eines empfangenen Agenten aktiviert, beispielsweise zu einem Zielmittel.
  • In einer Ausführungsform unterstützt ein Timerelement vorzugsweise in deaktiviertem Zustand. Um diese letztere Ausführungsform zu erläutern wird ein Timerelement, das mit einem ersten Agenten assoziiert ist, vorzugsweise deaktiviert, wenn der Agent oder ein anderer zurückkehrende Agent vor einer Sperrzeit eintrifft. Vorzugsweise wird das Timerelement deaktiviert, wenn der Agent und sein Eintreffen beide geeignet sind.
  • Das heißt, Deaktivierung umfasst im Allgemeinen eine Bestimmung, dass ein Agent rechtzeitig zu dem vertrauten Mittel zurückgekehrt ist, wobei diese Bestimmung von dem Empfangsmechanismus begleitet werden kann (beispielsweise bei Identifikation eines Rückkehrereignisses eines Agenten), von dem Fingerabdruckerfassungsmechanismus (beispielsweise bei erfolgreicher Erfassung des aktuellen Fingerabdrucks des Agenten), von dem Fingerabdruckspeichermechanismus (beispielsweise bei erfolgreicher Wiederherstellung des vorher erfassten Fingerabdrucks des Agenten), oder auf andere Art und Weise. In einer derartigen Ausführungsform wird bevorzugt, dass ein assoziiertes Überwachungselement auf geeignete Art und Weise getriggert und gesteuert wird.
  • Eine Regelnmechanismus führt vertraute Mittelregeln durch (manchmal hier als "TR-Regeln" bezeichnet). So rühren beispielsweise die TR-Regeln von einem Quellenmittel her und werden über einen Softwareagenten, der für das Quellenmittel relevant ist, dem vertrauten Mittel zugeführt, wobei die Zuführung vorzugsweise auftritt, wenn der Softwareagent zunächst mit dem vertrauten Mittel interaktiv ist. In einem anderen Beispiel können die TR-Regeln von dem vertrauten Mittel selber herrühren. In diesem letzteren Beispiel können die TR-Regeln aufgestellt werden, und zwar in Reaktion auf (a) empfangene Information des Softwareagenten und/oder Aufgaben von ihm, auf (b) vorherige Benutzung der Dienstleistungen von TR durch das Quellenmittel, oder (c) auf andere Eingaben, Konfigurationen oder (d) auf Kombinationen von (a) – (c) oder sonst wie.
  • Der Regelnmechanismus kann verschiedenartig implementiert werden zum Durchführen der TR-Regeln. So kann er beispielsweise die TR-Regeln entweder (a) im Zusammenhang mit der ersten Interaktion des Softwareagenten mit dem vertrauten Mittel durchgeführt werden, oder (b) bei Rückkehr des Agenten von dem Zielmittel, oder (c) beides. Weiterhin kann er die TR-Regeln unter Verwendung einer festen oder variablen Information des Softwareagenten, unter Verwendung anderer Information oder unter Verwendung einer Kombination derselben durchführen.
  • Die TR-Regeln ermöglichen selektierte Vorgänge durchzuführen. Diese Vorgänge umfassen beispielsweise (a) Vorgänge, die gewährleisten, dass die TR-Regeln selber nicht korrupt sind und (b) Vorgänge, die den Softwareagenten auf Korruption überprüfen, beispielsweise von variabler Information. Was diese letztere anbelangt sind in einem Ausführungsbeispiel die TR-Regeln implementiert zum Spezifizieren von Datenbegrenzungen (beispielsweise Bereichen, Typen usw.) die auf die variable Information derart anwendbar sind, dass bei Rückkehr des Agenten zu dem vertrauten Server, die TR-Regeln durchgeführt werden um die aktuelle variable Information auf solche Begrenzungen zu überprüfen.
  • Die TR-Regeln sind nicht zugänglich für selektierte Teile der Rechenumwelt. Als ein typisches Beispiel: ein teilnehmender Softwareagent, gestartet durch und hat TR-Regeln, die herrühren von einem OR, wird vorzugsweise derart konfiguriert, spezifiziert oder verarbeitet, dass derartige Regeln für das Zielmittel nicht zugänglich sind. In einem derartigen Beispiel wird die Nicht-Zugänglichkeit vorzugsweise durch das vertraute Mittel effektuiert. Das vertraute Mittel macht die TR-Regeln vorzugsweise unzugänglich durch Entkleidung, Maskierung, Codierung, Verschlüsselung oder durch eine andere geeignete Verarbeitung. Auf diese Art und Weise schützen die Regeln vor regelwidriger Manipulation der Regeln und schließt die Verwendung der Regeln zum Bestechen anvertrauter Aufgaben und assoziierter Information aus (beispielsweise Korruption auf Basis der Bestimmung aus den TR-Regeln der erlaubten Werte oder Zustände für ein bestimmtes variables Feld). Kurz gesagt, die TR-Regeln und die relatierte Information werden unzugänglich gemacht zum Helfen bei dem Ausschließen (und dem, Identifizieren) von Korruption des Agenten und seiner Aktivitäten.
  • Ein Erfassungsmechanismus erfasst Information in Bezug auf alle oder selektierte Ereignisse, die im Zusammenhang mit einem Softwareagenten auftreten. Auf diese Weise (a) sichert der Erfassungsmechanismus vorzugsweise die Information des Ereignisses, beispielsweise in einer separaten Erfassung der Datei oder der Datenbank des Fingerabdrucks des Agenten, oder in einer anderen Datenbank mit Agenten-bezogener Information, (b) schafft aktuelle oder gespeicherte Ereignisinformation zur Verwendung, beispielsweise für spurhistorische Aktivitäten von Softwareagenten, und/oder (c) verarbeitet Ereignisinformation auf Basis selektierter Kriterien zum Schaffen von berichten, beispielsweise über einen Agenten oder über Gruppen oder Typen von Agenten. So kann beispielsweise der Erfassungsmechanismus implementiert werden zum Erfassen von Ereignisinformation, die eingeschlossen ist, oder er kann verarbeitet werden zum Schaffen von Berichten in Bezug auf die Frequenz, die ein bestimmter Agententyp verwendet, den gesamten Agentenverkehr und die historischen Rückkehrzeiten (insgesamt oder typenweise, oder aber sonst wie). Der Erfassungsmechanismus wird u. a. vorzugsweise implementiert zum Schaffen von Eingaben zu dem Verwaltungs- und Haushaltsmechanismus.
  • Ein Haushaltsmechanismus schafft Instandhaltung der jeweiligen Mechanismen und Elemente mit dem vertrauten Mittel, sowie anderer ähnlichen Funktionen, welche die Überprüfungsdienste unterstützen. So wird der Haushaltsmechanismus vorzugswei se implementiert zum Löschen von Fingerabdruckeingaben, -aufzeichnungen, -dateien, -datenbanken und anderer gespeicherter Information, im Ganzen oder teilweise, auf Basis vorbestimmter Faktoren (beispielsweise beendeter Überprüfungsdienste oder Abgestandenheit). In einem anderen Beispiel wird der Haushaltsmechanismus implementiert zum Aktualisieren von Fingerabdruckeingaben, -aufzeichnungen, -dateien, -datenbanken und anderer gespeicherter Information, als Ganzes oder teilweise, basiert auf vorbestimmten Faktoren (beispielsweise zum Verlagern von Information zu einer nicht aktiven Agentendatei, so dass die Information als für Berichterstattungszwecke betrachtet werden kann, von Zeit zu Zeit durchgeführt in Bezug auf den Dateiinhalt). In noch einem anderen Beispiel ist der Haushaltsmechanismus implementiert zum Modifizieren von Sperrzeitperioden, benutzt von dem Timermechanismus, beispielsweise auf Basis historischer Rückkehrzeiten für einen bestimmten Agententyp (wobei derartige Information typischerweise von dem Erfassungsmechanismus geliefert wird), und/oder auf Basis anderer Parameter, wie des Zielmittels oder des Zielmitteltyps, und/oder des chronologischen oder Kalenderkontextes (d.h. Tageszeit, Tag der Woche oder Saison) an dem der Agent aktiv is. Ein Verwaltungsmechanismus schafft amtliche Funktionen am Rande der Überprüfungsdienste. So wird beispielsweise der Verwaltungsmechanismus vorzugsweise implementiert zum Schaffen von Fakturierung und Buchung. In Bezug auf Fakturierung kann der Verwaltungsmechanismus verschiedenartig implementiert werden. Zur Illustration können Gebühren belastet werden (über das Quellenmittel) im Zusammenhang mit der Verwendung des Überprüfungsdienstes, wobei derartige Gebühren gebildet werden auf (i) Agentenbasis, (ii) auf Zielmittelbasis, (iii) auf Basis des Typs oder der Art des Agenten, (iv) auf Basis des Typs oder der Art des Quellenmittels, (v) auf Basis des Typs oder der Art des Zielmittels, (vi) auf Basis des Typs oder der Art der TR-Regeln, (vii) auf Basis einer Kombination einer oder mehrerer dieser Bases, (viii) auf einer anderen Basis oder auf anderen Bases, allein oder in Kombination mit einer oder mehreren der beschriebenen Bases. Der Verwaltungsmechanismus erhält typischerweise von dem Erfassungsmechanismus, wenigstens teilweise, Information, die für die Buchung relevant ist.
  • In einem anderen Beispiel ist der Verwaltungsmechanismus vorzugsweise implementiert zum Schaffen von Diensten, die mehrere Leistungsstatistiken oder andere Parameter bewerten, welche die Rechenumwelt kennzeichnen. Auf diese Art und Weise wird dem Verwaltungsmechanismus vorzugsweise die Möglichkeit geboten, Eingaben von teilnehmenden Quellenmitteln zu empfangen (oder wenigstens von denjenigen Quellenmitteln, die einen derartigen Bewertungsdienst leisten), wobei derartige Eingaben beispielsweise Identifikation der interessanten Statistiken/Parameter und Begrenzungen oder Selektionen zum Vollenden/Berichten der Bewertungsergebnisse enthalten. Zur Illustration kann der Verwaltungsmechanismus implementiert werden zum Identifizieren und Verfolgen anderer auf Überprüfung gerichteten Angebote, die sich mit den Überprüfungsdiensten des vertrauten Mittels messen können, oder die diese ersetzen. Auf diese Weise kann der Verwaltungsmechanismus selektierte Leistungscharakteristiken qualifizieren (beispielsweise Gebrauch) von Agenten, die mit den sich messenden/ersetzenden Angeboten interaktiv sind. Als andere Illustration kann der Verwaltungsmechanismus implementiert werden zum Bewerten der Belastung der Rechenumwelt. Auf diese Weise können die Eingaben des Quellenmittels einen Antrag enthalten – beispielsweise basiert auf einen oder mehrere Pegel einer vorherrschenden Belastung – zum Verzögern oder Beschleunigen oder zur Timing eines oder mehrerer Agenten, die von dem vertrauten Mittel herrühren (beispielsweise entweder zu dem Zielmittel oder dem Quellenmittel), sowie zum Beantragen von Fortschrittsberichten in Bezug auf den Zustand der Durchquerung (beispielsweise das Quellenmittel kann keine Fortschrittsberichterstattung wählen oder es kann wählen, Berichte der Verzögerung und/oder des Durchquerungsbeginns zu haben).
  • Ein Sicherheitsmechanismus schafft Sicherheit für selektierte Teile der Rechenumwelt vor Korruption. Der Sicherheitsmechanismus kann verschiedenartig implementiert werden. So kann der Sicherheitsmechanismus beispielsweise implementiert werden zum Verarbeiten empfangener Agenten, zum Schützen eines oder mehrerer Softwareagenten, des Quellenmittels, des Zielmittels und des vertrauten Mittels vor Korruptionseinflüssen, die potentiell in dem Agenten selber vorhanden sind, ungeachtet des Mittels (beispielsweise Mittel die eintreffen zum Benutzen der Rechenumwelt). Um das zu vollenden wird dem Sicherheitsmechanismus typischerweise die Möglichkeit geboten, jeden empfangenen Agenten oder alle empfangenen Agenten, die korrupt sein können, zu entfernen, auszuschalten oder auf andere Art und weise uneffektiv zu machen. Ein derartiger Mechanismus umfasst vorzugsweise überwachende Firmware und/oder andere Hardware, die benutzt wird zum Identifizieren von Agenten und anderen potentiell durchführbaren Codes, die korrupt sein können.
  • In einem anderen Beispiel kann der Sicherheitsmechanismus derart implementiert werden, dass das vertraute Mittel in den Stand gesetzt wird, nur eine bestimmte Prozedur oder einen Satz von Prozeduren durchzuführen, wobei diese Prozeduren durch die verarbeitete Information identifiziert werden, durch Schritte oder durch Kombinationen von Schritten in der Prozedur, durch die Ergebnisse, die sie erzeugen, oder auf andere Art und Weise. Derartige nicht korrupte Systeme umfassen beispielsweise auf Fähigkeiten basierte Systeme oder eine derartige Architektur. Darunter ist jeder Aufgabe eine Karte zugeordnet (oder ein anderer Identifizierer) und nur einwandfrei mit einer Karte versehene Aufgaben sind durchführbar. Zur weiteren Information in Bezug auf auf Fähigkeiten basierte Systeme sei auf den Artikel von Welbey, M.V. und Needham, R.M. verwiesen mit dem Titel: "The Cambridge CAP Computer and Its Operating System", "Operating and Programming Systems Series", ed. P.J. Denning, 1979, N.Y. North Holland.
  • Der Sicherheitsmechanismus kann als Ganzes oder teilweise oder in Redundanz in Hardware implementiert werden (beispielsweise einschließlich als Formware), um den Mechanismus selber völlig oder im Wesentlichen nicht korrupt zu machen. In dieser Implementierung wird bevorzugt, dass andere vertraute Mittelmechanismen sowie Softwareelemente davon (beispielsweise das Operationssystem und der Kommunikationsstapel) ebenfalls implementiert sind, als Ganzes, teilweise oder in Redundanz, in Hardware (beispielsweise einschließlich als Firmware). Indem diese Mechanismen (und die Elemente) auf diese Weise implementiert werden, wird die Möglichkeit geboten, dass (a) das vertraute Mittel im Wesentlichen vor Korruption geschützt funktioniert und/oder (b) die in dem vertrauten Mittel eingeschlossenen Mechanismen verglichen werden, beispielsweise von Zeit zu Zeit mit Firmware-Kopien verglichen werden, so dass, wenn eine Korruption entdeckt wird, Korrekturmaßnahmen getroffen werden können. Typische Korrekturmaßnahmen umfassen das Reparieren von Software, beispielsweise durch Neuladung von Objekten, durch Löschung von nicht relevanten Codes, durch Anwendung von Codevergleichs- und Korrekturalgorithmen oder ähnlicher Routinen, und/oder durch andere herkömmliche Annäherungen, ob automatisch oder auf menschliche Initiative, wie von einem Systemoperator.
  • Ein Verschlüsselungsmechanismus schafft eine Verschlüsselung und Entschlüsselung von allen oder von Teilen von Softwareagenten, von Überprüfungsberichten und anderen relevanten Nachrichten, die von einem vertrauten Mittel empfangen worden sind oder die von einem vertrauten Mittel gesendet werden sollen. Ein Verschlüsselungs mechanismus kann verschiedenartig implementiert werden. So kann beispielsweise ein Verschlüsselungsmechanismus implementiert werden, und zwar unter Verwendung von Verschlüsselung mit einem öffentlichen Schlüssel plus Zertifikaten. Auf diese Art und Weise implementiert liefert der Verschlüsselungsmechanismus einen Beitrag in der Adressierung mehrerer Risiken, die dazu neigen in der Rechenumwelt inhärent zu sein, wobei eingeschlossen sind: (a) die Gefahr, dass Zwischenpersonen Kommunikationen abfangen zum Erhalten empfindlicher oder geheimer Information (oft als "Lauschen" bezeichnet); (b) die Gefahr vor Korruption durch Zwischenpersonen, die Information/Aufgaben in der Kommunikation ändern (oft als "Manipulation" bezeichnet); und (c) die Gefahr, dass das Quellenmittel oder das Zielmittel nicht authentisch ist (oft als "betrügerisches Auftreten" bezeichnet). Aber jeder Verschlüsselungsmechanismus ist im Allgemeinen ineffektiv zum Schützen eines Softwareagenten zu jeder Zeit bevor er von einem Mittel befördert wird oder nachdem er in einem Mittel empfangen worden ist (d.h. vor Verschlüsselung und nach Entschlüsselung).
  • Die vertrautes-Mittel-Mechanismen sind vorzugsweise implementiert zur wirksamen Koordination unter allen derartigen oder selektierten Mechanismen. Diese Koordination kann einen parallelen, einen sequentiellen oder einen anderen betrieb unter Mechanismen erzeugen, je nach ihrer betreffenden Implementieren. In einer typischen Ausführungsform wird beispielsweise der Speichermechanismus in Kooperation mit dem Fingerabdruckerfassungsmechanismus und dem -vergleichsmechanismus: der Fingerabdruckerfassungsmechanismus erfasst den Fingerabdruck eines neu eintreffenden Agenten, worauf der Speichermechanismus den Fingerabdruck speichert (beispielsweise in dem Speichersystem des vertrauten Mittels) so dass bei Rückkehr des Agenten zu dem vertrauten Mittel der Speichermechanismus den vorher erfassten Fingerabdruck abrufen kann zur Lieferung zu dem Vergleichsmechanismus, wobei der Vergleichsmechanismus den vorher erfassten Fingerabdruck mit dem aktuellen Fingerabdruck des Agenten vergleicht, wobei ein derartiger aktueller Fingerabdruck von dem Fingerabdruckerfassungsmechanismus in Reaktion auf den vergleich erfasst wird, beispielsweise zur Überprüfung des Agenten.
  • In dieser typischen Ausführungsfonm triggert der Fingerabdruckvergleichsmechanismus den Prüfungsberichtmechanismus zum Erzeugen von Prüfungsberichten. Eine derartige Triggerung und Erzeugung wird vorzugsweise geschaffen ob der Vergleich Korruption detektiert oder nicht. Wenn Korrutption detektiert wird, schafft aber der Finger abdruckvergleichsmechanismus vorzugsweise Information zu dem Überprüfungsberichtmechanismus. Unter Verwendung derartiger Information wird der Überprüfungsberichtmechanismus vorzugsweise in den Stand gesetzt, strukturierte Überprüfungsberichte zu erzeugen zum Informieren über die Korruption und vorzugsweise auch um Korrekturvorgänge in Gang zu setzen. Die Information des Vergleichsmechanismus kann als nicht ausschließende Beispiele jeden der verglichenen Fingerabdrücke und die Differenzen zwischen denselben umfassen. Der Überprüfungsbericht kann diese in der gelieferten Form oder in der verarbeiteten Form enthalten (beispielsweise Vorschläge für den Korrekturvorgang). Der Überprüfungsbericht kann auch andere Information enthalten, beispielsweise vergangene Zeit und etwaige Zeitsperren, das Zielmittel (beispielsweise in Form einer Adresse) und andere Daten, die das vertraute Mittel über den Agenten oder über die Korruption gelernt hat.
  • Weiterhin koordiniert in diesem typischen Ausführungsbeispiel der Überprüfungsberichtmechanismus typischerweise mit den Sendemechanismen um dadurch den Bericht dem Quellenmittel zuzuführen, für das Verifikation relevant ist. Eine derartige Zusendung wird typischerweise dadurch ausgeführt, dass der Bericht als Teil des überprüften Agenten versandt wird, wobei ein derartiger Agent selber durch den Sendemechanismus gesandt wird. Auf diese Art und Weise wird vollendet, dass der Agent mit dem Bericht von dem Verschlüsselungsmechanismus verarbeitet wird zum Schützen des Agenten von Korruptionseinflüssen bei Durchqueren des Quellenmittels. Auf diese Weise wird auch vorgesehen, dass der Agent verarbeitet wird, beispielsweise durch den Sicherheitsmechanismus zum Schützen eines oder mehrerer von dem Überprüfungsbericht, dem Softwareagenten, dem Quellenmittel und dem vertrauten Mittel vor etwaigen Korruptionseinflüssen, die ggf. in dem zurückgekehrten Agenten selber vorhanden sind, beispielsweise dadurch, dass ein Agent oder alle Agenten, die korrupt sein können, entfernt, unfähig gemacht oder auf andere Art und Weise ineffektiv gemacht wird bzw. werden.
  • Bei dieser typischen Ausführungsform werden die Timer- und Überwachungselemente des Timermechanismus benutzt. Ein Timerelement wird im Allgemeinen im Zusammenhang mit dem ersten Eintreffenden des Softwareagenten bei dem vertrauten Mittel aktiviert (beispielsweise wenn der Zustand des Agenten überhaupt keine Interaktion mit dem Zielmittel hat). Zur Erläuterung wird das Timerelement vorzugsweise auf Basis des Versandes des Agenten zu dem Zielmittel aktiviert.
  • Durch Aktivierung eines Timerelementes wird wenigstens ein assoziiertes Überwachungselement vorzugsweise aktiviert zur Überwachung dieses Timerelementes. Zur Erläuterung wird vorzugsweise ein Überwachungselement aktiviert zum Überwachen der rechtzeitigen und einwandfreien Rückkehr des Softwareagenten von dem Zielmittel, wobei eine derartige Überwachung entgegen einer vorbestimmten Rückkehrsperrzeitperiode ist. Als Solches, wenn der Agent nicht einwandfrei zurückkehrt bevor eine Rückkehrsperrzeit auftritt, effektuiert das Überwachungselement eine Sperrzeitnachricht, wobei diese Nachricht das Rückkehrsperrzeitereignis durch Inhalt und Parameter, geeignet für die Umstände, angibt. Die Sperrzeitnachricht wird typischerweise benutzt bei dem Versand eines Überprüfungsberichtes.
  • In anderen erläuternden Beispielen von Koordination: (a) koordiniert der Speichermechanismus mit dem Haushaltsmechanismus zum Löschen abgelaufener Fingerabdrücke, und (b) der Erfassungsmechanismus wird u. a. vorzugsweise implementiert zum Schaffen von Eingaben zu dem Haushalts- und dem Verwaltungsmechanismus, so dass diese letzten Mechanismen Information haben, die sie in den Stand setzt, die Sperrzeitperioden aufzustellen/zu aktualisieren bzw. Rechnungen zu berechnen.
  • Ein Softwareagent nach der vorliegenden Erfindung wird derart implementiert, dass Überwachung ermöglicht wird unter Verwendung des Geräts und der Verfahrens nach der vorliegenden Erfindung. Jeder derartige Agent hat vorzugsweise ein oder mehrere feste und variable Felder. Feste Felder unterstützen typischerweise Adressen, Regeln, Daten, Codes, Sicherheitsprotokolle oder andere feste Information (Information, die die sich nicht ändert, bzw. nicht ändern soll, ungeachtet der Aufgabe(n), die der Agent erfüllen soll). So können beispielsweise die festen Adressen Quellenmitteladressen, Zielmitteladressen und vertrautes-Mittel-Adressen umfassen, wobei derartige Adressen geeignet sind für die Rechenumwelt. Durch diese Adressen macht der Softwareagent auf geeignete Weise die Rechenumwelt geltend um das OR, DR und TR zu durchlaufen.
  • Variable Felder unterstützen typischerweise operationelle Merker (beispielsweise einen neunen/alten Merker), Zeitmerker (beispielsweise Zeit/Datum des Empfangs, des Versandes und/oder der Rückkehr), Regeln, Daten (beispielsweise Überwachungsberichtdaten), Aufgabenbezogene Information, Aufgabenbezogene Codes oder andere variable Information. Die variable Information umfasst im Allgemeinen Information, die ändern kann, innerhalb erlaubter Grenzen, in Reaktion auf oder im Zusammenhang mit die bzw. den Aktivitäten des Softwareagenten. Derartige Aktivitäten umfassen beispielsweise eine oder mehrere Ankünfte des Agenten bei dem DR, die Erledigung anvertrauter Aufgaben durch den Agenten oder die Ankunft des Agenten (von dem OR oder dem DR) bei dem TR. Während die variable Information sich ändern kann, wird eine derartige Änderung typischerweise auf bestimmte, erlaubte Grenzen begrenzt.
  • Ein Agent nach der vorliegenden Erfindung unterstützt ebenfalls TR-Regeln. TR-Regeln ermöglichen typischerweise selektierte Vorgänge. Diese Vorgänge umfassen beispielsweise die Gewährleistung, dass die TR-Regeln selber nicht korrupt sind und/oder die Überprüfung auf geeignete Modifikationen der variablen Information. In Bezug auf dieses Letztere sind in einem Ausführungsbeispiel die TR-Regeln implementiert zum Spezifizieren von Datenbeschränkungen (beispielsweise Bereiche, Typen usw.) anwendbar auf die variable Information, so dass bei Rückkehr des Agenten bei dem vertrauten Server die TR-Regeln durchgeführt werden zum Überprüfen der aktuellen variablen Information gegenüber derartigen Beschränkungen.
  • Durch die Felder enthält der Softwareagent Information und anvertraute Aufgaben. Die anvertrauten Aufgaben befinden sich im Allgemeinen in festen Feldern in Form von Codes, die in oder im Zusammenhang mit einem Zielmittel durchgeführt werden. Diese Durchführung führt typischerweise zu Änderungen in dem Inhalt eines oder mehrerer variabler Felder. So kann beispielsweise der Durchführungscode selektierte variable Information modifizieren oder neue Daten zu dem Agenten hinzufügen, einschließlich Daten, erhalten von oder auf andere Weise assoziiert mit dem Zielmittel. Der Durchführungscode kann sich auch auf assoziierte Information verlassen, die in dem Softwareagenten vorhanden ist. Derartige assoziierte Information befindet sich im Allgemeinen auch in festen Feldern, und zwar in Form von Daten. Derartige Information kann stattdessen (oder auch) in variablen Feldern vorhanden sein.
  • Softwareagenten nach der vorliegenden Erfindung können implementiert werden zum Durchführen von mehr als nur einer Aufgabe und/oder um mit mehr als nur einem Ziellmittel interaktiv zu sein. Auf entsprechende Weise kann der Versand des Agenten verschiedenartig durchgeführt werden. So kann beispielsweise ein Softwareagent damit assoziierte Aufgaben T1, T2, T3 und T4 haben, die alle in den Zielmitteln DR1, DR2, DR3 bzw. DR4 durchgeführt werden sollen. In einer Implementierung sendet ein vertrautes Mittel TR1 Kopien des Agenten parallel zu jedem der Zielmittel. In einer anderen Implemen tierung sendet ein vertrautes Mittel TR1 den Agenten sequentiell zu jedem der Zielmittel, so dass die betreffenden Aufgaben entweder in einer vorbestimmten Reihenfolge oder basiert auf Verfügbarkeit von Mitteln durchgeführt werden. In noch einer anderen Ausführungsform kombiniert das vertraute Mittel TR1 einen parallelen und einen sequentiellen Versand.
  • Das (Die) an der Überprüfung von Agenten beteiligte(n) vertraute(n) Mittel mit vielen Aufgaben und/oder Zielmitteln können verschiedenartig implementiert werden zum Überprüfen von Vorgängen. So können beispielsweise vertraute Mittel, die eine sequentielle Durchführung von Aufgaben in Zielmitteln überwachen, implementiert werden zum Signalisieren von Korruption (d.h. über einen Überprüfungsbericht) (a) in Bezug auf die ganze Sequenz, wenn eine Aufgabe mit einer fehlerhaften Überprüfung assoziiert ist, (b) in Bezug auf nur die sequentielle Aufgabe, die mit der fehlerhaften Überprüfung assoziiert ist, oder (c) in Bezug auf die sequentielle Aufgabe, die mit der fehlerhaften Überprüfung assoziiert ist und alle nachfolgende Aufgaben nacheinander. In noch einem anderen Beispiel können vertraute Mittel, die eine parallele Durchführung von Aufgaben in Zielmitteln überwachen, implementiert werden zum Signalisieren von Korruption (a) in Bezug auf nur diejenigen Aufgaben, die mit einer fehlerhaften Überprüfung assoziiert sind, oder (b) in Bezug auf alle Aufgaben, wenn eine davon mit einer fehlerhaften Überprüfung assoziiert ist.
  • Insbesondere bei Ausführungsformen, bei denen ein Agent im Spiel ist, der mit vielen Aufgaben und/oder Zielmitteln assoziiert ist, können viele vertraute Mittel benutzt werden. Eine derartige Benutzung wird im Allgemeinen über eine geeignete Konfiguration des Agenten implementiert (beispielsweise einen Merker, der eine Anzahl TRs frei gibt und/oder Adressen für viele TRs) und/oder eine geeignete Konfiguration der vertrauten Mittel, an denen der Agent beteiligt ist. So kann beispielsweise, wenn der Agent an nur einem einzigen vertrauten Mittel TR1 teilnimmt, dieses Mittel selber ein oder mehrere zusätzliche zwischen gestellte vertraute Mittel benutzen. Auf diese Weise modifiziert TR1 typischerweise selber die Adressinformation des vertrauten Mittels zum versenden des Agenten, beispielsweise zu jedem zwischen gestellten vertrauten Mittel, ob parallel, sequentiell oder auf andere Weise. In diesem Beispiel wird der Agent typischerweise einen Merker gesetzt haben, der die Tauglichkeit vieler TRs angibt; wobei es aber einleuchten dürfte, dass im Rahmen der Grundlagen der vorliegenden Erfindung auf einen derartigen Merker verzichtet werden kann.
  • Die Verwendung zwischen liegender vertrauter Mittel hat im Allgemeinen Folgen für die Behandlung der TR-Regeln eines Agenten durch das abonnierte vertraute Mittel. Wie oben bereits beschrieben, wird ein abonniertes vertrautes Mittel im Allgemeinen implementiert zum Durchführen der TR-Regeln eines Agenten. Auf diese Weise wird das abonnierte vertraute Mittel in den Stand gesetzt, auf die TR-Regeln zuzugreifen. Auf entsprechende Art und Weise wird, wenn zwischen liegende vertraute Mittel die TR-Regeln benutzen sollen, derartigen Mitteln vorzugsweise Zugriff geboten. Als solches wird bevorzugt, dass das abonnierte vertraute Mittel Entkleidung der TR-Regeln von dem Agenten unterlässt. Während Entkleidung im Allgemeinen nicht bevorzugt wird, dürfte es einleuchten, dass unter spezifischen Umständen (beispielsweise wenn TR-Regeln örtlich bei einem zwischen liegenden TR vorgesehen sind, oder wenn die TR-Regeln letztendlich bei dem Abonnenten TR durchgeführt werden), kann Entkleidung der TR-Regeln implementiert werden. Auf gleiche Weise wie bei der Maskierung, der Codierung, der Verschlüsselung oder bei einer anderen Verarbeitung der TR-Regeln, vorgesehen bei dem abonnierten vertrauten Mittel, wird bevorzugt, dass wenn das (die) zwischen liegende(n) vertraute(n) Mittel die TR-Regeln durchführen soll(en), (ein) solches) Mittel in den Stand gesetzt wird (werden) zu entlarven, zu decodieren, zu entschlüsseln (beispielsweise durch öffentliche Verschlüsselungstechniken) oder auf andere Art und Weise umgekehrt zu verarbeiten. Weiterhin sogar wenn (ein) zwischen liegendes) vertrautes) Mittel wirksam (ist) sind, TR-Regeln einzuhalten, koordinieren das abonnierte und das zwischen liegende vertraute Mittel vorzugsweise derart, dass das abonnierte vertraute Mittel nach wie Vor Zugriff hat.
  • Immer dort, wo ein Agent viele Aufgaben unterstützt, kann ein vertrautes Mittel implementiert werden zum Beenden, Aufheben oder auf andere Art und Weise unfähig Machen restlicher Aufgaben, wenn eine Aufgabe mit einem Überprüfungsfehler assoziiert ist. Im Falle von Untauglichkeit wird das vertraute Mittel vorzugsweise in den Stand gesetzt, eine Korrektur der Korruption des Agenten zu versuchen. Eine derartige Korrektur basiert typischerweise auf die TR-Fingerabdruckdateien, die mit dem Agenten assoziiert sind. Weiterhin kann eine derartige Korrektur, wenn auf diese Weise implementiert, auf zusätzliche Eingaben basieren, beispielsweise von dem implizierten Quellenmittel, wobei derartige Eingaben im Allgemeinen eine Reaktion auf einen Überprüfungsbericht sind, der demselben zugeführt worden ist, und zwar in Bezug auf den Überprüfungsfehler. Wenn Korrekturen durchgeführt werden, zeigt das vertraute Mittel vorzugsweise das betreffende Quellenmittel OS an und ermöglicht Durchführung der vorher gesperrten restlichen Aufgaben.
  • Auf diese Weise beabsichtigt die vorliegende Erfindung die Verwendung vieler vertrauter Mittel, wobei Überprüfung von Agenten und von Aktivitäten von Agenten effizient und produktiv auf Basis von Kooperation und Streuung (beispielsweise dynamisch) von Überprüfungsvorgängen unter den vertrauten Mitteln stattfindet.
  • In 1 ist ein System 100 mit dem Gerät und den Verfahren nach der vorliegenden Erfindung dargestellt mit einer Quellenstelle 102, einer vertrauten Stelle 104 und einer Zielstelle 106 in Kommunikation mit (und vorzugsweise einen Teil bildend von) einer Rechenumwelt 108. Die Stellen 102, 104 und 106 kommunizieren in der Rechenumwelt 108 über Kommunikationsstrecken 110. Die Stellen 102, 104 und 106 entsprechen einem Quellenmittel, einem vertrauten Mittel bzw. einem Zielmittel. Die Rechenumwelt 108 ist typischerweise ein Teil vom Internet. (Die Quellenstelle, die vertraute Stelle und die Zielstelle werden hier manchmal als "OS", als "TS" bzw. als "DS" bezeichnet).
  • Im Allgemeinen ist die vertraute Stelle 104 eine Rechenanordnung oder ein Rechensystem (zwei oder mehrere Rechenanordnungen), die zusammen mit Software als Server wirksam sind. Wenn die Umwelt 108 ein Internet ist, ist die vertraute Stelle 104 ein Internetserver. Die Quellen- und die Zielstelle 102 bzw. 106 können jede beliebige Stelle sein, einschließlich beispielsweise ein selbständiger PC im Haus des Benutzers oder ein Knotenpunkt einer LAN-basierten Rechenumwelt, oder jede beliebige andere örtliche/geschlossene Rechenumwelt mit Kommunikationszugriff auf die Umwelt 108 zur Kopplung derselben mit nicht relatierten Computerplattformen, Umwelten oder anderen Installationen.
  • In 2 ist ein Beispiel einer vertrauten Stelle 200 dargestellt mit einem Prozessor ("P") 202, einem Speichersystem ("MEMORY") 204, das über eine Kopplung 206 mit dem Prozessor 202 gekoppelt ist. Der Prozessor kann jede beliebige digitale Verarbeitungsanordnung sein, mit, ohne Einschränkungen, Mikroprozessoren, Mikrocontrollern, digitalen Signalprozessoren oder dergleichen, hergestellt von "Intel Corporation, Motorola Corporation, Texas Instruments, Inc. IBM, AMD, Cyrix oder einem anderen Hersteller von digitalen Verarbeitungsanordnungen. Die vertraute Stelle 200 kann auch viele Peripheriege räte enthalten mit, ohne Einschränkungen, Druckern, Wiedergabeanordnungen, Batterieladegeräten und Stromaufbereitungsanordnungen.
  • Der vertraute Server 200 umfasst ebenfalls Software 212, die sich vorzugsweise in dem Speichersystem 204 befindet. Die Software 212 umfasst ein Operationssystem 218, das jedes beliebige Operationssystem sein kann, das imstande ist, Instruktionen durchzuführen zum Effektuieren der erforderlichen Aufgaben, die der vertraute Server 200 auferlegt hat. Geeignete Operationssysteme umfassen, ohne Einschränkungen, Windowing-Operationssysteme, UNIX-basierte Operationssysteme oder jedes beliebige andere Operationssystem.
  • Die Software 212 umfasst ebenfalls ein Softwareagenten-Überprüfungssystem 220 zum Überprüfen von Softwareagenten und ihren Aktivitäten. Die Software 212 kann auch ein Sicherheitssystem 222 enthalten zum Schützen der TS vor Viren oder vor anderen zerstörenden Softwaremechanismen. Es dürfte einleuchten, dass im Rahmen der Grundlagen der vorliegenden Erfindung das Sicherheitssystem in dem Überprüfungssystem integriert sein kann.
  • Das TS 200 kann auch einen Eingangsport 224 und einen Ausgangsport 230 haben. Der Eingangsport 224 ist mit dem Prozessor 202 (über die Kopplung 226) und mit der Umwelt 108 (über die Strecke 228) gekoppelt sein. Der Ausgangsport 230 ist mit dem Prozessor 202 (über die Kopplung 232) und mit der Umwelt 108 (über die Strecke 234) gekoppelt.
  • In 3 zeigt ein Flussdiagramm 300 einen bevorzugten Satz von Schritten dar zum Implementieren des Überprüfungssystems 220 bei dem vertrauten Server 200. Das Flussdiagramm 300 umfasst einen Nenn-Start 302, der im Allgemeinen beim Aufstarten des Systems ausgelöst wird. Das Überprüfungssystem 220 wird freigegeben zum Erfassen aller Aktivitäten von Softwareagenten in einer Erfassungsdatei in einem Erfassungsaktualisierungsschritt 304. Wenn ein Softwareagent einem vertrauten Server 200 zugeführt wird, empfängt das Überprüfungssystem 220 den Softwareagenten in einem Empfangsschritt 306, und führt eventuell eine Sicherheitsüberprüfung des Agenten durch, in dem Schritt 308, zur Beibehaltung der TS Integrität.
  • Wenn einmal empfangen und eventuell die Sicherheit getestet worden ist, führt die Sicherheitssoftware die TR-Regeln durch (oder sie werden gespeichert), die einen Teil des Festcodeteils des Agenten bilden, und in dem Schritt 309 entkleidet sich der Agent von den TR-Regeln (oder schützt sonst solche Regeln).
  • In dem Schritt 310 nimmt das System 220 Fingerabdrücke von dem Agenten.
  • In dem Schritt 312 aktiviert die Überprüfungssoftware einen Rückkehrtimer für empfangene Softwareagenten. Das System 220 führt einen Zeitsperrschritt 314 durch, der eine Sperrzeitbedingung für den Softwareagenten in der Fingerabdruckdatei überprüft. Der Zeitsperrschritt 314 kann eine Unterbrechungsroutine sein, die aktiv wird, wenn eine Zeitsperrbedingung auftritt, kann aber auch eine Routine sein, welche die Fingerabdruckdatei für eine Zeitsperrbedingung mit einem vorbestimmten Intervall abtastet. Wenn eine Zeitsperrbedingung auftritt, wird eine Steuerung über einen "Ja"-Zweig 316 zu einem Schritt 318 zum Erzeugen einer Zeitsperrnotiz, sowie zu einem Schritt 320 zum senden einer Notiz gesandt. Die Schritte 318 und 320 erzeugen und senden eine Zeitsperrnotiz zu dem geeigneten Mittel (beispielsweise einer Quellenstelle 102). Steuerung wird danach zu dem Aktualisierungserfassungsschritt 304 zurück gesandt und der Prozess setzt die Überwachung von Agenten fort.
  • Wenn eine Zeitsperrbedingung nicht in dem Schritt 314 auftritt, wird eine Steuerung über einen "Nein"-Zweig 322 zu dem Schritt 324 gesandt, der testet, ob der empfangene Agent "neu" ist. Sollte der Agent "neu" sein, so wird über einen "Ja"-Zweig 326 eine Steuerung zu einem Schritt 328 zum Speichern des Fingerabdrucks gesandt, der den Fingerabdruck des Agenten speichert, beispielsweise in einer Fingerabdruckdatei. Nach der Speicherung des Fingerabdrucks führt das System 220 einen Schritt 330 durch, und zwar das Einstellen des Timers, wodurch der Agentenrückkehrtimer in den EIN-Stand bringt. Daraufhin führt der "Ja"-Zweig 326 einen Schritt 332 durch, der dem Agenten Information zufügt, so dass das System 220 imstande sein wird, bei Rückkehr des Agenten in dem System den Agenten als ein "alter" Agent zu identifizieren. Vorzugsweise setzt der Schritt 332 ein Merkerbit in dem Agenten von "Aus" in "Ein" (0 → 1 oder 1 → 0). (Außerdem kann der Merker einen Sicherheitsalgorithmus enthalten, wie ein Schloß-und-Schlüssel zur Sicherung gegen Fälschung.) Der "Ja"-Zweig 326 sendet danach den Agenten in einem Sendeschritt 334 zu dem Ziel. Daraufhin wird die Steuerung zu dem Aktualisierungserfassungsschitt 304 zurück gesandt und der Prozess setzt sich zur Überwachung von Agenten fort.
  • In dem Schritt 324 wird, wenn der Agent "alt" ist (d.h. nicht "neu", beispielsweise weil der "Alt-Agent"-Merker vorher über einen Schritt 332 gesetzt worden ist), Die Steuerung über einen "Nein"-Zweig 336 einem zweiten Timereinstellschritt 338 zugeführt, der den Agentenrückkehrtimer in einen AUS-Zustand bringt. Der "Nein"-Zweig 336 führt einen Schritt 340 zum Wiedergewinnen des ursprünglichen Fingerabdrucks durch, wobei dieser Schritt nach dem vorher erfassten/gespeicherten Fingerabdruck sucht, der mit dem Agenten assoziiert ist, und wenn der Fingerabdruck gefunden worden ist, den ursprünglichen Fingerabdruck des Agenten wiedergewinnt. Der ursprüngliche Fingerabdruck und der aktuelle Fingerabdruck werden danach in einem Fingerabdruckvergleichsschritt 342 miteinander verglichen. Der Vergleichsschritt 342 bestimmt, ob die Information in dem ursprünglichen Fingerabdruck mit der Information des Rückkehrfingerabdrucks genügend übereinstimmt.
  • In dem Schritt 343 werden die TR-Regeln an den zurückgekehrten Datenwerten durchgeführt. Wenn die Regeln befriedigt worden sind und die Fingerabdrucke auf günstige Weise miteinander übereinstimmen, wird angegeben, dass die Aufgaben des Agenten erfolgreich erledigt worden sind. Vorzugsweise hat die Zielstelle Abschlussinformation in den Agenten eingeschrieben, so dass der Vergleich der Fingerabdrücke und die Durchführung der Regeln zum Überprüfen variabler Daten einen erfolgreichen Abschluss der Aufgabe des Agenten bilden kann.
  • Es wird nun vorausgesetzt, dass der Agent entworfen ist zum Übertragen einer bestimmten Summe aus einem Konto zu einem anderen Konto bei der Bank "MYBANK" des Kunden. Der Agent hat eine TS-Adresse, eine MYBANK-Adresse, die Kontonummern und den zu übertragenden Betrag. Wenn der Agent bei der TS anlangt, schafft das TS-Überprüfungssystem eine Datei, die einen einzigartigen Identifizierer für den Agenten aufweist und speichert Transaktionsinformation. Vorzugsweise hat die Zielstelle Software um in den Softwareagenten eine Aufzeichnung des von der Zielstelle durchgeführten Transaktion einzuschreiben, bevor der Agent zur Überprüfung zu der TS zurückgesandt wird. Wenn der Agent zurückkehrt, vergleicht das TS-Überprüfungssystem die ursprüngliche Transaktionsinformation mit der Transaktionsinformation in dem zurückkehrenden Agenten und mit der Erfassungsinformation, welche die Zielstelle den Agenten angehängt hat.
  • Weil der Fingerabdruck, das Profil oder die Unterschrift eines Softwareagenten nahezu ausschließlich feste Information des Agenten enthält (d.h. Information in nicht variablen Feldern oder in Feldern, die während der Aktivität des Softwareagenten nicht ändern soll), wird der Überprüfungskontrollalgorithmus bei/in der TS imstande sein auf Fehler oder Abweichungen in jedem Teil der festen Felder des Agenten zu prüfen. Außerdem kann der Agent feste Regeln enthalten, die Information in Bezug auf die Art und Weise, wie bestimmte variable Felder geändert werden können, aufweisen, beispielsweise bei/von der Zielstelle. Die Regeln können der TS erlaubte Gebiete mitteilen, die variable Daten annehmen können, sie können der TS mitteilen, was für einen zusätzlichen Code der Agent braucht, sie können der TS mitteilen, welcher Codetyp von dem Agenten extrahiert sein soll, oder sie können der TS jede andere einschlägige Information über die Art und Weise mitteilen, wie das variable Feld des Agenten modifiziert werden kann.
  • Nachdem der Vergleichsschritt 342 die zwei Fingerabdrücke des Agenten verglichen hat und das Ergebnis des Vergleichs ermittelt hat, werden die Ergebnisse dem Regelüberwachungsschritt 343 zugeführt, wobei die Ergebnisse einem Nachrichtenerzeugungsschritt 344 zugeführt werden, der die Vergleichsergebnisse nimmt und die Ergebnisse überprüft und eine geeignete Notiz erzeugt. Wenn der Vergleich und die Überprüfung keine Unregelmäßigkeiten aufweisen, erzeugt der Nachrichtenschritt 344 eine erfolgreich vollendete Nachricht oder Notiz (d.h. einen Überprüfungsbericht). Wenn der Vergleich und die Überprüfung Unregelmäßigkeiten aufweist, dann erzeugt der Nachrichtenschritt 344 eine Nachricht oder Notiz, die informiert, beispielsweise über die Quellenstelle der Unregelmäßigkeiten.
  • Die erfolgreich vollendete Nachricht kann detaillierte Information über den Agenten enthalten oder einfach einen Agentenidentifizierer, so dass die Quellenstelle die Aufzeichnungen aktualisieren kann. Die Nachrichten, die über die Quellenstelle einer Unregelmäßigkeit informieren enthalten vorzugsweise alle Information, die erforderlich ist und ausreicht für die Quellenstelle um unmittelbar Korrektionsvorgänge durchzuführen. Eine derartige Information kann nebst allen Timinginformationen, aufgestöbert von dem Überprüfungssystem, die beiden Fingerabdrücke enthalten. Die TS kann auch Rout5ine(n) enthalten zur Anzeige der richtigen Authorität zur Behandlung derartiger Unregelmäßigkeiten, wie Bankprovisionen, Bundesagenturen, Staatsagenturen oder dergleichen.
  • Wenn die geeignete Notiz einmal erzeugt worden ist, kann der "Nein"-Zweig 336 ggf. den Fingerabdruck des Agenten aus der Fingerabdruckdatei entfernen, den Fingerabdruck zu einen nicht aktiven Agentendatei übertragen oder den Agenten markieren, so dass der Schritt 340 dies überschlagen wird bei der Suche nach der Datei, oder sonst wie, alle in einem Schritt 346 zum Ändern der Datei. Die Notiz wird danach in einem Sende-Notiz-Schritt 348 beispielsweise der Quellenstelle zugeführt. Steuerung wird danach zu dem Aktualisierungserfassungsschritt 304 zurück übertragen und der Prozess setzt sich zur Überwachung von Agenten fort.
  • Es dürfte einleuchten, dass viele dieser Schritte kombiniert, global gemacht oder mit vielen geteilt werden können. So können beispielsweise der Sende- und der Empfangsschritt kombiniert werden. Außerdem kann der Programmfluss neu entworfen oder zu diskreten Objekten oder Modulen segmentiert werden, die abgerufen oder auf andere Art und Weise getriggert werden können, und die während der Durchführung Information austauschen. Auf jeden Fall sind die primären Vorgänge des Flussdiagramms 300 ausreichend und effektiv implementiert.
  • In 4 ist die Konfiguration eines Beispiels eines Softwareagenten nach der vorliegenden Erfindung dargestellt. Der Agent 400 in diesem Beispiel umfasst feste Felder 410 und variable Felder 450. Die festen Felder umfassen Adressenfelder 412. In dieser Darstellung umfassen die Adressenfelder: Quellenstellenfelder 414, vertraute Stellenfelder 416 und Zielstellenfelder 418. Die festen Felder 410 umfassen auch Regelfelder 420, Sicherheitsfelder 422, feste durch Softwareagenten durchführbare Codefelder 424 und feste Datenfelder 426. Die variablen Felder 450 umfassen: einen Neu/Alt-Merker 452, Regelfelder 454, Ergebnisfelder 456, variable durch Softwareagenten durchführbare Codefelder 458 und variable Datenfelder 460.
  • Die Sicherheitsfelder 422 umfassen typischerweise Information/Protokolle zur Steigerung der Sicherheit der Quellenstelle, der vertrauten Stelle, der Zielstelle, des Agenten (beispielsweise des Neu/Alt-Merkers) oder einer Kombination derselben. So können beispielsweise die Sicherheitsfelder Schloss-und-Schlüssel-Protokolle mit oder ohne Verschlüsselung schaffen. Was für ein Sicherheitsprotokoll implementiert wird, die Quellenstelle, die vertraute Stelle und die Zielstelle haben eine Information/Code-Stelle als geeignet, zum Effektuieren des Sicherheitsprotokolls (beispielsweise Aufschließung und Entschlüsselung eines Agenten oder eines Teils davon).
  • Obschon die vorliegende Erfindung in Bezug auf verschiedene Ausführungsformen beschrieben worden ist, dürfte es einleuchten, dass aus der Lektüre dieser Beschreibung dem Fachmann Änderungen und Modifikationen einleuchten dürften, die im Rahmen der vorliegenden Erfindung, wie oben beschrieben und nachstehend beansprucht, durchgeführt werden können.

Claims (18)

  1. Rechenumfeld, das die nachfolgenden Elemente umfasst: – eine Herkunftsstelle (102), die imstande ist einen Softwareagenten (400) zu erzeugen und zu senden; – eine Zielstelle (106), die imstande ist, einen Softwareagenten (400) zu empfangen und durchzuführen; und – ein offenes Kommunikationsnetzwerk (110), wobei diese Stellen über das Netzwerk miteinander in Kommunikation sind; dadurch gekennzeichnet, dass – die Zielstelle (106) ebenfalls imstande ist den Softwareagenten (400) zurückzuschicken; und – das Umfeld weiterhin eine zuverlässige Stelle (104) aufweist, auf der Software implementiert worden ist zum Empfangen eines Softwareagenten (400) von der Herkunftsstelle (102), zum Fingerabdrucken des Softwareagenten (400), zum Übermitteln des Agenten (400) zu der Zielstelle (106), zum Vergleichen der ursprünglichen und der Berichtsoftwarefingerabdrücke und zum Senden von Nachweisnotizen zu der Herkunftsstelle (102).
  2. Umfeld nach Anspruch 1, wobei das Netzwerk (110) ein Internet ist.
  3. Umfeld nach Anspruch 1, wobei das Netzwerk (110) unter Anwendung von World Wide Web Protokollen arbeitet.
  4. Umfeld nach Anspruch 1, wobei der Fingerabdruck eine Einweg-Hash-Funktion ist.
  5. Umfeld nach Anspruch 1, wobei der Softwareagenten (400) eine Anzahl fester Felder (420) und eine Anzahl variabler Felder (450) aufweist und wobei der Fingerabdruck Information aufweist, hauptsächlich aus den festen Feldern (410).
  6. Umfeld nach Anspruch 5, wobei die festen Felder (410) einen Satz von Regeln aufweist, die von der vertrauten Stelle (104) 106) durchgeführt werden sollen, wenn der Agent (400) von der Zielstelle (106) zu der vertrauten Stelle zurückkehrt.
  7. Umfeld nach Anspruch 6, wobei der Satz von Regeln es ermöglicht, dass die vertraute Stelle (104) überprüft, dass variable Information in den variablen Feldern (450) an der Zielstelle (106) auf geeignete Weise modifiziert worden ist.
  8. Umfeld nach Anspruch 7, wobei die auf Regeln basierte Information akzeptierbare Bereiche von Werten für jede mit dem Agenten (400) assoziierte Datenvariable enthält.
  9. Umfeld nach Anspruch 5, wobei die festen Felder (410) einen Satz mit Leitfeldern (414, 416, 418) enthalten um es zu ermöglichen, dass die vertraute Stelle (104) den Agenten (400) durch das offene Kommunikationsnetzwerk (110) leitet.
  10. Umfeld nach Anspruch 5, wobei die variablen Felder (450) ein neues Agentenmerkerfeld (452) aufweisen, so dass die vertraute Stelle (104) den Agenten (400) als zurückkehrenden Agenten identifizieren kann.
  11. Umfeld nach Anspruch 5, wobei die festen Felder (410) feste Daten (426) und/oder einen festen ausführbaren Code (424) enthalten, der während der Durchführung der Aufgabe unmodifiziert bleiben soll.
  12. Umfeld nach Anspruch 5, wobei die variablen Felder (450) variable Daten (460) enthalten und/oder einen variablen ausführbaren Code (458), der während der Durchführung der Aufgabe modifiziert werden soll.
  13. Umfeld nach Anspruch 5, wobei der Softwareagent (400) ein Sicherheitsfeld (422) enthält zum Identifizieren der Benutzerstelle und zum Aussperren anderer spezifizierter Information.
  14. Verfahren implementiert an einer vertrauten Stelle eines verteilten Rechenumfeldes, wobei dieses Verfahren dadurch gekennzeichnet ist, dass es die nachfolgenden Verfahrensschritte umfasst: – das Empfangen eines Softwareagenten (400) von einer Herkunftsstelle (102); – das Erzeugen eines ursprünglichen Agentenfingerabdrucks des Agenten (400); – das Senden des Agenten (400) zu einer Zielstelle (106); – das Empfangen des Agenten (400), der von der Zielstelle (106) zurückkehrt; – das Erzeugen eines Rückkehragentenfingerabdrucks des Agenten (400); – das Vergleichen des ursprünglichen und des Rückkehragentenfingerabdrucks zum Bilden eines Prüfungsergebnisses; und – das Senden des Prüfungsergebnisses zu der Herkunftsstelle (102).
  15. Verfahren nach Anspruch 14, wobei dieses Verfahren die nachfolgenden Verfahrensschritte umfasst: – das Erzeugen eines Agentenrückkehrzeitgebers, – das Überwachen der Rückkehr des Agenten von der Zielstelle (106); und wenn der Agentenrückkehrzeitgeber läuft, das Senden einer Zeitsperrenangabe zu der Herkunftsstelle (102) und andernfalls das Erzeugen des Rückkehragentenfingerabdrucks in Reaktion auf die Rückkehr des Agenten von der Zielstelle (106).
  16. Verfahren nach Anspruch 14, wobei dieses Verfahren die nachfolgenden Verfahrensschritte umfasst: – das Durchführen von Agentenregeln zum Informieren der vertrauten Stelle (104) über die richtige Erledigung der variablen Agenteninformation; – das Überprüfen der variablen Agenteninformation gegenüber den Regeln bei der Rückkehr des Agenten von der Zielstelle (106); und – das Senden einer Angabe zu der Herkunftsstelle (102), so dass die Herkunftsstelle ermitteln kann, ob die variable Information auf richtige Art und Weise modifiziert wurde.
  17. Verfahren nach Anspruch 14, wobei dieses Verfahren weiterhin den Verfahrensschritt (304) der Erfassung aller Aktivitäten des Softwareagenten in einer Log-Datei umfasst.
  18. Softwareagent (400) zur Verwendung in dem Rechenumfeld nach Anspruch 6, wobei der Softwareagent in einem Speicher der vertrauten Stelle (104) implementiert ist und eine Anzahl fester Felder (410) und eine Anzahl variabler Felder (450) aufweist und wobei die festen Felder (410) einen Satz von Regeln umfassen. Die von der vertrauten Stelle durchgeführt werden sollen, wenn der Agent von der Zielstelle (106) zu der vertrauten Stelle zurückkehrt.
DE69921454T 1998-12-21 1999-11-29 Prüfung von sofwarenagenten und aktivitäten von agenten Expired - Lifetime DE69921454T2 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US217413 1998-12-21
US09/217,413 US6330588B1 (en) 1998-12-21 1998-12-21 Verification of software agents and agent activities
PCT/EP1999/009258 WO2000038034A1 (en) 1998-12-21 1999-11-29 Verification of software agents and agent activities

Publications (2)

Publication Number Publication Date
DE69921454D1 DE69921454D1 (de) 2004-12-02
DE69921454T2 true DE69921454T2 (de) 2005-10-13

Family

ID=22810978

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69921454T Expired - Lifetime DE69921454T2 (de) 1998-12-21 1999-11-29 Prüfung von sofwarenagenten und aktivitäten von agenten

Country Status (10)

Country Link
US (1) US6330588B1 (de)
EP (1) EP1057097B1 (de)
JP (1) JP4553491B2 (de)
KR (1) KR100711017B1 (de)
CN (1) CN1174302C (de)
AU (1) AU1387400A (de)
DE (1) DE69921454T2 (de)
ES (1) ES2230919T3 (de)
TW (1) TWI223738B (de)
WO (1) WO2000038034A1 (de)

Families Citing this family (73)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6430618B1 (en) * 1998-03-13 2002-08-06 Massachusetts Institute Of Technology Method and apparatus for distributing requests among a plurality of resources
US6609199B1 (en) * 1998-10-26 2003-08-19 Microsoft Corporation Method and apparatus for authenticating an open system application to a portable IC device
US7174457B1 (en) 1999-03-10 2007-02-06 Microsoft Corporation System and method for authenticating an operating system to a central processing unit, providing the CPU/OS with secure storage, and authenticating the CPU/OS to a third party
US7194092B1 (en) * 1998-10-26 2007-03-20 Microsoft Corporation Key-based secure storage
US7139915B2 (en) 1998-10-26 2006-11-21 Microsoft Corporation Method and apparatus for authenticating an open system application to a portable IC device
CA2368558C (en) 1999-03-31 2009-11-03 British Telecommunications Public Limited Company Distributed software system visualisation
US6775779B1 (en) * 1999-04-06 2004-08-10 Microsoft Corporation Hierarchical trusted code for content protection in computers
US6651171B1 (en) * 1999-04-06 2003-11-18 Microsoft Corporation Secure execution of program code
US7146505B1 (en) 1999-06-01 2006-12-05 America Online, Inc. Secure data exchange between date processing systems
US7743089B2 (en) * 1999-10-13 2010-06-22 Intel Corporation Method and system for dynamic application layer gateways
US7401115B1 (en) 2000-10-23 2008-07-15 Aol Llc Processing selected browser requests
TW503355B (en) * 1999-11-17 2002-09-21 Ibm System and method for communication with mobile data processing devices by way of ""mobile software agents""
US6757824B1 (en) 1999-12-10 2004-06-29 Microsoft Corporation Client-side boot domains and boot rules
FI111567B (fi) * 1999-12-27 2003-08-15 Nokia Corp Menetelmä ohjelmamoduulin lataamiseksi
JP3755394B2 (ja) * 2000-09-29 2006-03-15 日本電気株式会社 電子商取引監査システム、電子商取引監査方法及び電子商取引監査プログラムを記録した記録媒体
US6938164B1 (en) 2000-11-22 2005-08-30 Microsoft Corporation Method and system for allowing code to be securely initialized in a computer
US7150045B2 (en) * 2000-12-14 2006-12-12 Widevine Technologies, Inc. Method and apparatus for protection of electronic media
US8200818B2 (en) * 2001-07-06 2012-06-12 Check Point Software Technologies, Inc. System providing internet access management with router-based policy enforcement
GB2377783B (en) * 2001-07-20 2005-04-27 Ibm A method, system and computer program for controlling access in a distributed data processing system
JP3772102B2 (ja) * 2001-07-30 2006-05-10 株式会社東芝 情報処理方法、情報処理装置及びプログラム
US7370358B2 (en) 2001-09-28 2008-05-06 British Telecommunications Public Limited Company Agent-based intrusion detection system
US7376625B2 (en) * 2001-11-15 2008-05-20 Nokia Corporation System and method for activating individualized software modules in a digital broadcast environment
US7137004B2 (en) 2001-11-16 2006-11-14 Microsoft Corporation Manifest-based trusted agent management in a trusted operating system environment
US7243230B2 (en) 2001-11-16 2007-07-10 Microsoft Corporation Transferring application secrets in a trusted operating system environment
US7159240B2 (en) * 2001-11-16 2007-01-02 Microsoft Corporation Operating system upgrades in a trusted operating system environment
EP1315066A1 (de) * 2001-11-21 2003-05-28 BRITISH TELECOMMUNICATIONS public limited company Rechnersicherheitssystem
AU2003213875B2 (en) * 2002-04-11 2009-05-28 Endresz, Allan An information storage system
AUPS169002A0 (en) 2002-04-11 2002-05-16 Tune, Andrew Dominic An information storage system
US7890771B2 (en) 2002-04-17 2011-02-15 Microsoft Corporation Saving and retrieving data based on public key encryption
US20030216927A1 (en) * 2002-05-17 2003-11-20 V. Sridhar System and method for automated safe reprogramming of software radios
US20070118899A1 (en) * 2002-05-17 2007-05-24 Satyam Computer Services Limited Of Mayfair Centre System and method for automated safe reprogramming of software radios
US7676541B2 (en) * 2002-05-30 2010-03-09 Microsoft Corporation Peer communication channel partitioning
US7478233B2 (en) * 2002-05-30 2009-01-13 Microsoft Corporation Prevention of software tampering
US7634806B2 (en) * 2002-05-30 2009-12-15 Microsoft Corporation Peer assembly inspection
US7043522B2 (en) * 2002-05-30 2006-05-09 Microsoft Corporation Unbounded computing space
US7832011B2 (en) * 2002-08-30 2010-11-09 Symantec Corporation Method and apparatus for detecting malicious code in an information handling system
US7748039B2 (en) * 2002-08-30 2010-06-29 Symantec Corporation Method and apparatus for detecting malicious code in an information handling system
US7509679B2 (en) 2002-08-30 2009-03-24 Symantec Corporation Method, system and computer program product for security in a global computer network transaction
US7331062B2 (en) * 2002-08-30 2008-02-12 Symantec Corporation Method, computer software, and system for providing end to end security protection of an online transaction
US7469418B1 (en) 2002-10-01 2008-12-23 Mirage Networks, Inc. Deterring network incursion
US8819285B1 (en) 2002-10-01 2014-08-26 Trustwave Holdings, Inc. System and method for managing network communications
US7506360B1 (en) 2002-10-01 2009-03-17 Mirage Networks, Inc. Tracking communication for determining device states
US7735134B2 (en) * 2002-10-16 2010-06-08 Aramira Corporation Jumping application security system
US7287052B2 (en) * 2002-11-09 2007-10-23 Microsoft Corporation Challenge and response interaction between client and server computing devices
WO2004055632A2 (en) * 2002-12-13 2004-07-01 Wholesecurity, Inc. Method, system, and computer program product for security within a global computer network
US8145710B2 (en) * 2003-06-18 2012-03-27 Symantec Corporation System and method for filtering spam messages utilizing URL filtering module
US7243245B2 (en) * 2003-06-20 2007-07-10 International Business Machines Corporation Method and system for performing automatic startup application launch elimination
US7530103B2 (en) 2003-08-07 2009-05-05 Microsoft Corporation Projection of trustworthiness from a trusted environment to an untrusted environment
US8271588B1 (en) 2003-09-24 2012-09-18 Symantec Corporation System and method for filtering fraudulent email messages
US7269758B2 (en) * 2004-01-20 2007-09-11 International Business Machines Corporation Method and system for identifying runaway software agents
CN100429601C (zh) * 2004-03-04 2008-10-29 日本电气株式会社 数据更新系统、数据更新方法和机器人系统
BRPI0400265A (pt) * 2004-03-10 2006-02-07 Legitimi Ltd Sistema de controle de acesso a serviços de informação baseado em assinatura de hardware e software do dispositivo solicitante
US20050235284A1 (en) * 2004-04-14 2005-10-20 International Business Machines Corporation Systems and methods for tracking processing unit usage
US7941490B1 (en) 2004-05-11 2011-05-10 Symantec Corporation Method and apparatus for detecting spam in email messages and email attachments
GB2415580B (en) * 2004-06-24 2006-08-16 Toshiba Res Europ Ltd Network node security analysis method
US7596690B2 (en) * 2004-09-09 2009-09-29 International Business Machines Corporation Peer-to-peer communications
US20060248522A1 (en) * 2005-04-15 2006-11-02 Microsoft Corporation Deploying agent software to managed computer systems
US8010609B2 (en) * 2005-06-20 2011-08-30 Symantec Corporation Method and apparatus for maintaining reputation lists of IP addresses to detect email spam
US7739337B1 (en) 2005-06-20 2010-06-15 Symantec Corporation Method and apparatus for grouping spam email messages
US8090945B2 (en) * 2005-09-16 2012-01-03 Tara Chand Singhal Systems and methods for multi-factor remote user authentication
US8065733B2 (en) 2005-09-23 2011-11-22 Google, Inc. Method for evolving detectors to detect malign behavior in an artificial immune system
WO2007038245A2 (en) 2005-09-23 2007-04-05 Widevine Technologies, Inc. Method for evolving detectors to detect malign behavior in an artificial immune system
US8689016B2 (en) * 2005-12-02 2014-04-01 Google Inc. Tamper prevention and detection for video provided over a network to a client
US20080010538A1 (en) * 2006-06-27 2008-01-10 Symantec Corporation Detecting suspicious embedded malicious content in benign file formats
ATE425491T1 (de) * 2007-01-19 2009-03-15 Sap Ag Verfahren und system zur sicheren erweiterung des weges eines mobilagenten innerhalb eines netzwerksystems
US8176473B2 (en) 2007-05-14 2012-05-08 Microsoft Corporation Transformations for software obfuscation and individualization
JP4993733B2 (ja) * 2007-09-28 2012-08-08 東芝ソリューション株式会社 暗号クライアント装置、暗号パッケージ配信システム、暗号コンテナ配信システム及び暗号管理サーバ装置
US8752008B2 (en) * 2009-09-02 2014-06-10 Advanced Micro Devices, Inc. Lightweight service based dynamic binary rewriter framework
US9098333B1 (en) 2010-05-07 2015-08-04 Ziften Technologies, Inc. Monitoring computer process resource usage
US10600219B2 (en) 2015-06-26 2020-03-24 Idex Asa Pattern mapping
US10621765B2 (en) * 2015-07-07 2020-04-14 Idex Asa Image reconstruction
US10289456B2 (en) 2017-06-01 2019-05-14 International Business Machines Corporation Software bot conflict-resolution service agent
US11822951B2 (en) * 2020-06-10 2023-11-21 Vmware, Inc. Hypercall authentication in a guest-assisted virtual machine introspection (VMI) implementation

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3115157B2 (ja) * 1993-06-29 2000-12-04 三菱電機株式会社 ソフトウェア配布サービス方式
JPH10504150A (ja) * 1994-07-19 1998-04-14 バンカーズ トラスト カンパニー 商用暗号システムにおけるディジタル署名を安全に使用するための方法
US6157721A (en) * 1996-08-12 2000-12-05 Intertrust Technologies Corp. Systems and methods using cryptography to protect secure computing environments
US5633931A (en) * 1995-06-30 1997-05-27 Novell, Inc. Method and apparatus for calculating message signatures in advance
US5638446A (en) * 1995-08-28 1997-06-10 Bell Communications Research, Inc. Method for the secure distribution of electronic files in a distributed environment
FR2744818B1 (fr) * 1996-02-12 1998-03-27 Bull Sa Procede de verification de la conservation de l'integrite d'une requete emise sans protection par un client vers un serveur au moyen de l'integrite de la reponse
JPH09288469A (ja) * 1996-04-22 1997-11-04 Sharp Corp 液晶表示装置
AU3000897A (en) * 1996-05-13 1997-12-05 Corporation For National Research Initiatives Identifying, managing, accessing, and tracking digital objects and associated rights and payments
SG67354A1 (en) * 1996-06-27 1999-09-21 Inst Of Systems Science Nation Computationally efficient method for trusted and dynamic digital objects dissemination
US5958051A (en) * 1996-11-27 1999-09-28 Sun Microsystems, Inc. Implementing digital signatures for data streams and data archives
US6108420A (en) * 1997-04-10 2000-08-22 Channelware Inc. Method and system for networked installation of uniquely customized, authenticable, and traceable software application
US6065040A (en) * 1997-07-07 2000-05-16 International Business Machines Corporation Computer system having agent retracting method and agent returning method
US6112304A (en) * 1997-08-27 2000-08-29 Zipsoft, Inc. Distributed computing architecture
US6144739A (en) * 1998-01-20 2000-11-07 Motorola, Inc. Computer network protection using cryptographic sealing software agents and objects
US6115699A (en) * 1998-12-03 2000-09-05 Nortel Networks Corporation System for mediating delivery of a document between two network sites

Also Published As

Publication number Publication date
ES2230919T3 (es) 2005-05-01
TWI223738B (en) 2004-11-11
CN1298499A (zh) 2001-06-06
KR20010041169A (ko) 2001-05-15
KR100711017B1 (ko) 2007-04-25
EP1057097B1 (de) 2004-10-27
WO2000038034A1 (en) 2000-06-29
CN1174302C (zh) 2004-11-03
JP2002533799A (ja) 2002-10-08
DE69921454D1 (de) 2004-12-02
US6330588B1 (en) 2001-12-11
JP4553491B2 (ja) 2010-09-29
AU1387400A (en) 2000-07-12
EP1057097A1 (de) 2000-12-06

Similar Documents

Publication Publication Date Title
DE69921454T2 (de) Prüfung von sofwarenagenten und aktivitäten von agenten
DE69737083T2 (de) Verfahren und Vorrichtung zur Prüfung von Daten
EP1108308B1 (de) System und verfahren zur ablaufkontrolle bei netzwerk-anwendungen
DE60102555T2 (de) Verhinderung der map-aktivierten modulmaskeradeangriffe
DE69931967T2 (de) Methode zur sicherung von elektronischer information
DE60011431T2 (de) Sichere systeme zum drucken von authentifizierenden digitalen unterschriften
DE60007724T2 (de) Chipkarten-benutzerschnittstelle für eine vertraute computerplattform
DE60220959T2 (de) Verfahren und Vorrichtung zur Bereitstellung einer Liste von öffentlichen Schlüsseln in einem Public-Key-System
JP3351318B2 (ja) 計算機システムの監視方法
DE69431944T3 (de) Verfahren zum effizienten Aktualisieren des Hashwertes einer Datei
DE112011103048B4 (de) Ein Verfahren zum Beglaubigen einer Vielzahl von Datenverarbeitungssystemen
DE102018104637A1 (de) Ausfallsicherungsantwort unter verwendung eines bekannten guten zustands eines dezentral geführten kontobuchs
DE10254621A1 (de) Vorrichtung und Verfahren zum Erzeugen einer vertrauenswürdigen Umgebung
EP0760987A1 (de) Verfahren zur prüfung der unversehrtheit von gespeicherten daten auf einer verarbeitungsanlage für blattgut, wie z.b. banknoten oder wertpapiere
DE69720972T2 (de) Computersystem und Verfahren zum Schutz von Software
EP3576368A1 (de) Verfahren und system zum steuern einer freigabe einer ressource
DE60221861T2 (de) Server mit dateiverifikation
Dreyer When the postman beeps twice: the admissibility of electronic mail under the business records exception of the Federal Rules of Evidence
Hansen Audit considerations in distributed processing systems
DE10024347B4 (de) Sicherheitsservice-Schicht
EP3806415B1 (de) Verfahren zum sicheren ausführen eines workflows in einem computersystem
DE10305730A1 (de) Verfahren zum Überprüfen der Gültigkeit von digitalen Freimachungsvermerken und Vorrichtung zur Durchführung des Verfahrens
DE60021985T2 (de) Verfahren ind vorrichtung zur sicheren erzeugung von öffentlichen/geheimen schlüsselpaaren
DE202020004275U1 (de) Ferntesten
WO2021104995A1 (de) Verfahren und system zur prozessnachverfolgung und/oder prozessüberprüfung

Legal Events

Date Code Title Description
8364 No opposition during term of opposition