-
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.