Urteil des BPatG vom 28.01.2010

BPatG: ausführung, stand der technik, hardware, smart card, elektronischer zahlungsverkehr, patentanspruch, computer, eintrag, nummer, sicherheit

BPatG 154
08.05
BUNDESPATENTGERICHT
17 W (pat) 317/06
_______________
(Aktenzeichen)
Verkündet am
28. Januar 2010
B E S C H L U S S
In der Einspruchssache
betreffend das Patent 103 40 411
- 2 -
hat der 17. Senat (Technischer Beschwerdesenat) des Bundespatentgerichts auf
die mündliche Verhandlung vom 28. Januar 2010 unter Mitwirkung des Vorsit-
zenden Richters Dipl.-Phys. Dr. Fritsch, der Richterin Eder sowie des Richters
Dipl.-Ing. Baumgardt und der Richterin Dipl.-Ing. Wickborn
beschlossen:
Das deutsche Patent 103 40 411 wird widerrufen.
G r ü n d e
I.
Auf die am 2. September 2003 beim Deutschen Patent- und Markenamt eingegan-
gene Patentanmeldung 103 40 411.2 - 53 wurde durch Beschluss der Prüfungs-
stelle für Klasse G 06 F das Patent unter der Bezeichnung
" Vorrichtung und Verfahren zur sicheren Ausführung eines Programms "
erteilt. Veröffentlichungstag der Patenterteilung ist der 13. Oktober 2005.
Gegen das Patent ist Einspruch erhoben worden. Die Einsprechende stützt den
Einspruch auf neue und die in der Patentschrift zitierten Druckschriften und macht
geltend, der Gegenstand der erteilten unabhängigen Ansprüche sei durch den
Stand der Technik vorweggenommen oder zumindest nahegelegt; dies treffe unter
der Berücksichtigung des allgemein bekannten Fachwissens ebenfalls für die Un-
- 3 -
teransprüche zu. Ferner gehe der Gegenstand des Patents über den Inhalt der ur-
sprünglichen Anmeldung hinaus.
Sie hält ihre Argumentation auch gegenüber dem nunmehr geltenden Hauptantrag
und den fünf Hilfsanträgen aufrecht und beantragt,
das Patent in vollem Umfang zu widerrufen.
Die Patentinhaberin verteidigt das Patent in beschränkter Fassung. Sie stellt den
Antrag,
das Patent in beschränktem Umfang mit folgenden Unterlagen
aufrechtzuerhalten:
Hauptantrag
mündlichen Verhandlung, noch anzupassender Beschreibung und
Zeichnungen mit Figuren gemäß Patentschrift,
erstem Hilfsantrag
in der mündlichen Verhandlung, im Übrigen wie Hauptantrag,
zweitem Hilfsantrag
reicht in der mündlichen Verhandlung, im Übrigen wie Haupt-
antrag,
drittem Hilfsantrag
reicht in der mündlichen Verhandlung, im Übrigen wie Haupt-
antrag,
viertem Hilfsantrag
in der mündlichen Verhandlung, im Übrigen wie Hauptantrag,
- 4 -
fünftem Hilfsantrag
in der mündlichen Verhandlung, im Übrigen wie Hauptantrag.
Im Laufe des Einspruchsverfahren wurden insgesamt folgende Druckschriften als
Stand der Technik in Betracht gezogen:
D1
Hölscher, Holger: Microcomputers in safety technique: An aid
to orientation for developer and manufacturer. TÜV Study
Group on Computer Safety - München: Verlag TÜV Bayern;
Köln: Verlag TÜV Rheinland, 1986, Umschlagseite, bibl.
ferner
Seiten 7-86 bis 7-90
D2
Kollmann, Karl: Chipkarten und Verbraucher. In: “ASA
NEWS“ der Austrian Smart Card Association, Nr. 4, Juni
1996, S. 1-20
D3
„Anforderungen zur informationstechnischen Sicherheit bei
Chipkarten“ des Bayerischen Landesbeauftragten für Daten-
schutz, Stand 02.12.1996; als Internet-Auszug gemäß
D4
US 2003 / 131 210 A1
D5
US 5 018 146 A
D6
EP 1 305 708 B1
D7
US 6 006 328 A
D8
Ramamoorthy, C.V. et al.: Reliability and integrity of large
computer programs. In: GFK-GI-GMR Fachtagung Prozess-
rechner 1974, Springer Verlag, Berlin / Heidelberg, S. 86 –
161, hier insbesondere Seiten 147 – 151 (siehe.
springerlink.com/content/y507239287640828/fulltext.pdf)
- 5 -
D9
Keim, G.: Die Erhöhung der Sicherheit von Mikrocomputer-
systemen. In: Angewandte Informatik 2/80, S. 45 - 50
D10
Hauptantrag
11 und 12, hier mit der Gliederung der Einsprechenden und mit einer kursiven
Kennzeichnung der Änderungen gegenüber der erteilten Fassung versehen:
1.
Vorrichtung (202; 302; 402) zur sicheren Ausführung eines
Programms, das eine Sequenz (100) von Programm-Befeh-
len umfasst,
(a)
wobei die Programm-Befehle Nutzbefehle (110, 112, 114,
116) und Überprüfungsbefehle (120, 122, 124) umfassen,
(b)
wobei die Überprüfungsbefehle zwischen den Nutzbefehlen
angeordnet sind,
(b1)
Programms eine Reihenfolge der Ausführung der Überprü-
fungsbefehle festgelegt ist,
mit folgenden Merkmalen:
(c)
einer Einrichtung (203; 303; 403) zum Ausführen der Se-
quenz von Programm-Befehlen,
(c1)
beim Ausführen eines Überprüfungsbefehls, gemäß einer
Erstellungsvorschrift einen Überprüfungswert (130, 132, 134;
230; 330; 430) zu erzeugen;
- 6 -
(d)
einer Einrichtung (205; 512) zum separaten Bereitstellen
eines Kontrollwertes (250; 550)
,
(d1)
einem vorangegangenen Kontrollwert abgeleitet ist;
(e)
einer Einrichtung (206; 514) zum Vergleichen des Überprü-
fungswertes mit dem Kontrollwert
; und
(f)
einer Einrichtung (207; 514) zum Liefern eines Hinweises
(262; 562) auf eine Störung der Ausführung des spezifizier-
ten Ausführungspfads des Programms, bei Nichtüberein-
stimmung des Überprüfungswertes und des Kontrollwertes.
11.
Verfahren zur sicheren Ausführung eines Programms, das
eine Sequenz von Programm-Befehlen umfasst,
(a)
wobei die Programm-Befehle Nutzbefehle und Überprüfungs-
befehle umfassen,
(b)
wobei die Überprüfungsbefehle zwischen den Nutzbefehlen
angeordnet sind,
(b1
Programms eine Reihenfolge der Ausführung der Überprü-
fungsbefehle festgelegt ist,
- 7 -
wobei das Verfahren folgende Schritte umfasst:
(c)
a) Ausführen der Sequenz von Programm-Befehlen,
(c1)
ner Erstellungsvorschrift ein Überprüfungswert erzeugt wird;
(d)
b) Separates Bereitstellen eines Kontrollwertes
,
(d1)
einem vorangegangenen Kontrollwert abgeleitet ist;
(e)
c) Vergleichen des Überprüfungswertes mit dem Kontrollwert
; und
(f)
d) Liefern eines Hinweises auf eine Störung der Ausführung
des spezifizierten Ausführungspfad des Programms, bei
Nichtübereinstimmung des Überprüfungswertes und des
Kontrollwertes.
12.
Computer-Pro-
gramm mit einem Programmcode zur Durchführung des Ver-
fahrens gemäß Anspruch 11 . ”
Wegen der Unteransprüche wird auf die Akten verwiesen.
ersten Hilfsantrag
des geändertes Merkmal (identisch in den Patentansprüchen 1 und 11):
- 8 -
(d1*)
von einem vorangegangenen Kontrollwert abgeleitet
ist;
(im Übrigen wie Hauptantrag).
zweite Hilfsantrag
unverändert), mit folgendem zusätzlichem Merkmal am Ende des Patent-
anspruchs 1:
(g)
wobei die Einrichtung (205; 512) zum separaten Bereitstel-
len des Kontrollwertes (250; 550), die Einrichtung (206; 514)
zum Vergleichen und die Einrichtung (207; 514) zum Liefern
eines Hinweises (262; 562) in Hardware separat von der
Einrichtung zum Ausführen der Sequenz von Programm-
Befehlen ausgeführt sind.
und entsprechend am Ende des Patentanspruchs 11:
(g)
wobei das separate Bereitstellen des Kontrollwertes (250;
550), das Vergleichen und das Liefern eines Hinweises (262;
562) in einer Hardware separat von der Einrichtung zum
Ausführen der Sequenz von Programm-Befehlen ausgeführt
werden.
Der nebengeordnete Patentanspruch 12 ist weggefallen.
dritten Hilfsantrag
(d1)
- 9 -
(d1*)
nete Patentanspruch 12 fällt ebenfalls weg.
vierte Hilfsantrag
unverändert), mit folgenden zusätzlichen Merkmalen am Ende des Patentan-
spruchs 1:
(g*)
Kontrollwertes ein Register (510) und einen Vorwärtszähler
(512) aufweist, um ansprechend auf einen Überprüfungswert
einen vorangegangenen Kontrollwert (550) zu erhöhen, um
einen nachfolgenden Kontrollwert (551) zu erzeugen, oder
(h)
wobei die Einrichtung zum Erzeugen eines Kontrollwertes
einen Pseudo-Zufallszahlengenerator aufweist, der anspre-
chend auf einen Überprüfungswert einen nächsten Kontroll-
wert aus einem vorangegangenen Kontrollwert erzeugt.
Die Unteransprüche 7 und 8 (des Hauptantrages) sind gestrichen, der Neben-
anspruch trägt daher die Nummer 9, und er ist entsprechend dem Hauptanspruch
am Ende ergänzt:
(g*)
(510) und eines Vorwärtszähler (512) erzeugt wird, um
ansprechend auf einen Überprüfungswert einen vorange-
gangenen Kontrollwert (550) zu erhöhen, um einen nach-
folgenden Kontrollwert (551) zu erzeugen, oder
(h)
wobei der Kontrollwert unter Verwendung einen Pseudo-
Zufallszahlengenerators erzeugt wird, der ansprechend auf
- 10 -
einen Überprüfungswert einen nächsten Kontrollwert aus
einem vorangegangenen Kontrollwert erzeugt.
Der nebengeordnete Patentanspruch 12 fällt ebenfalls weg.
fünften Hilfsantrag
(g*)
gestrichen ist.
Im Übrigen wird auf die Akte verwiesen.
Aufgabe
ren zur sicheren Ausführung eines Programms zu schaffen, die einen flexiblen,
einfach und kostengünstig zu realisierenden sowie wirksamen Schutz der Ausfüh-
rung des Programms ermöglichen (siehe Patentschrift Absatz [0011]).
II.
Der Einspruch wurde frist- und formgerecht erhoben, er ist mit nachprüfbaren
Gründen versehen und auch sonst zulässig.
Er hat auch Erfolg, da sich der jeweilige Gegenstand der unabhängigen Patentan-
sprüche nach Hauptantrag und nach allen fünf Hilfsanträgen als nicht patentfähig
erweist.
1.
Das Streitpatent betrifft Maßnahmen zur Erkennung einer Veränderung des
vorgesehenen Programmlaufs eines Computerprogramms, beispielsweise verur-
sacht durch einen Angreifer, der eine Schutzroutine des Programms durch geziel-
te Einflussnahme „überspringen“ möchte. In der Beschreibungseinleitung ist aus-
geführt, dass insbesondere bei Chipkarten die Gefahr bekannt sei, durch elektri-
- 11 -
sche Störimpulse den Programm-Befehlszähler auf eine vom Entwickler nicht vor-
gesehene Weise zu verändern, so dass der Chipkarten-Controller danach die Pro-
gramm-Ausführung an einer „falschen“ Stelle fortsetzt. Dadurch könnte es möglich
sein, gezielt einzelne Programmabschnitte wie den Authentisierungsprozess, der
die Chipkarte vor einem Zugriff Unbefugter schützt, zu umgehen (siehe Streitpa-
tentschrift Absätze [0002], [0003]).
Das Streitpatent schlägt als Gegenmaßnahme vor, in den aus „Nutzbefehlen“ be-
stehenden Programmcode in beliebiger Häufigkeit besondere „Überprüfungsbe-
fehle“ einzufügen, welche bei ihrer Ausführung gemäß einer vorgegebenen Erstel-
lungsvorschrift (in der vorgesehenen Reihenfolge) Überprüfungswerte erzeugen.
Parallel dazu werden separat nach derselben Erstellungsvorschrift Kontrollwerte
bereitgestellt, die von dem jeweils vorangegangenen Kontrollwert abgeleitet sind,
und mit dem aktuellen Überprüfungswert verglichen; bei fehlender Übereinstim-
mung wird ein Hinweis auf die damit entdeckte gestörte Ausführungs-Reihenfolge
der Programmbefehle geliefert.
Fachmann
gen Angriffe sieht der Senat einen Entwicklungsingenieur für mit Mikroprozesso-
ren oder -controllern arbeitende Einrichtungen, insbesondere Chipkarten, mit
Hochschul- oder Fachhochschulausbildung an.
2.
Es kann dahinstehen, ob – wie die Einsprechende geltend macht – der Ge-
genstand des erteilten Patents oder der nunmehr geltenden Patentansprüche über
den Inhalt der ursprünglich eingereichten Anmeldung hinausgeht; ebenfalls kann
offenbleiben, inwieweit ein auf ein „Computer-Programm“ gerichteter Patentan-
spruch zulässig ist (und wie er nach Patenterteilung ohne Schutzbereichserwei-
terung noch geändert werden könnte). Denn hinsichtlich der gesetzlichen Paten-
tierungsvoraussetzungen und Patentierungsausschlüsse muss keine bestimmte
Prüfungsreihenfolge eingehalten werden (BGH BlPMZ 2004, 428 “Elektronischer
Zahlungsverkehr” II. 4.).
- 12 -
Im vorliegenden Fall ist das erteilte Patent schon deshalb zu widerrufen, weil der
Gegenstand des Patentanspruchs 1 nach Hauptantrag ebenso wie nach dem
ersten bis fünften Hilfsantrag zumindest nicht auf einer erfinderischen Tätigkeit be-
ruht.
2.1
Zum Hauptantrag
2.1.1
D1
te, vom Senat nachträglich benannte Literaturstelle:
D8
Ramamoorthy, C.V. et al.: Reliability and integrity of large
computer programs. In: GFK-GI-GMR Fachtagung Prozess-
rechner 1974, Springer Verlag, Berlin / Heidelberg, S. 86 –
161, hier insbesondere Seiten 147 – 151 (siehe.
springerlink.com/content/y507239287640828/fulltext.pdf)
Sie beschreibt im Kapitel 4.3.2.2 (Seiten 147 – 151) ein Verfahren (und, auf den
das Verfahren nutzenden Rechner bezogen, implizit auch eine Vorrichtung) zur
sicheren Ausführung einer Sequenz von Programm-Befehlen, welches eine Stö-
rung in der festgelegten Ausführungsreihenfolge erkennt
. Gemäß Seite 148 / Figur 25 sind Überprüfungsbefehle (checkpoints)
zwischen den Nutzbefehlen (normal program / CODES) angeordnet
. Jeder Überprüfungsbefehl vergleicht den Inhalt einer vorbestimm-
ten, der jeweiligen Programm-Sequenz zugeordneten Speicherzelle (im Sinne ei-
nes „Kontrollwerts“ –) mit einem Überprüfungswert, der
fest in den Überprüfungsbefehl eingefügt ist (vgl. Streitpatent Absatz [0033]
Zeile 1-9 – ). Bei Nicht-Übereinstimmung bricht das Programm ab („a
trap routine is invoked“ – ), bei Übereinstimmung wird der Inhalt ge-
ändert und die der nächsten Programm-Sequenz zugeordnete Speicherzelle mit
einem neuen Kontrollwert beschrieben, welcher dann wiederum am Ende der
- 13 -
Sequenz verglichen und geändert wird.
Figur 27
belle (KODE(IXn)) vorgesehen, die zahlreiche Einträge enthält, welche als Kon-
trollwerte verwendet werden können. Gemäß Flussdiagramm wird zuerst Eintrag
Nummer 5 auf den Wert 123 („Kontrollwert“) gesetzt, der Index hingegen zeigt auf
Eintrag Nummer 9. Im Laufe der Programm-Abarbeitung wird der Index verändert,
so dass er bei ordnungsgemäßer Programmdurchführung am Ende auf den Ein-
trag Nummer 5 zeigt, und dann der Tabelleninhalt am angezeigten Eintrag mit
dem Kontrollwert 123 verglichen (wenn hingegen ein Teil des Programms nicht
ausgeführt wurde, würde der Index nicht auf Eintrag Nummer 5 zeigen und somit
keine Übereinstimmung bestehen). Anschließend wird aus dem alten Kontrollwert
(im Flussdiagramm: KODE(5) = 123) ein neuer Kontrollwert (KODE(3)
KODE(5)
minus 26) berechnet, d. h. der nächste Kontrollwert wird gemäß einer Erstellungs-
vorschrift von einem vorangegangenen Kontrollwert abgeleitet .
Damit ist der Gegenstand des erteilten Patentanspruchs 1 und des ihm nebenge-
D8
2.1.2
(d)
(e)
nebenläufig zur Ausführung des Programms
mäß Hauptantrag stellen diese beiden Zusätze die einzige Beschränkung dar.)
Eine entsprechende Offenbarung findet sich in den Absätzen [0029] und [0039]
der Streitpatentschrift, die Formulierung ist daher insoweit zulässig.
Der Begriff „nebenläufig“ ist im Streitpatent allerdings nicht näher erläutert oder
gar definiert. In der mündlichen Verhandlung hat die Patentinhaberin ausgeführt,
dass hier „unabhängig von der Ausführung des Programms“ gemeint sei: das Be-
- 14 -
reitstellen eines Kontrollwertes und das Vergleichen mit dem Überprüfungswert
solle neben der Ausführung der Nutzbefehle herlaufen, den Programmablauf nicht
unterbrechen oder stören. Eine solche Maßnahme stelle einen deutlichen Unter-
D8
geführt und unterbreche den normalen Programmablauf.
Dem ist entgegenzuhalten, dass der Begriff „nebenläufig“ wenig trennscharf, viel-
D8
Bereitstellung und der Vergleich mit dem Überprüfungswert in ein Unterprogramm
ausgelagert würden, wie es beim strukturierten Programmieren üblich ist, könnte
dessen Ausführung als „nebenläufig“ zum Hauptprogramm verstanden werden.
Somit wäre durch eine einfache, programmierer-typische Maßnahme, angewendet
D8
bereits erreicht.
Unabhängig davon war es dem Fachmann zum Anmeldezeitpunkt des Streitpa-
tents seit langem vertraut, die Sicherstellung eines ungestörten Programmablaufs
nicht allein einer Software zu überlassen.
D1
Zählerstand an bestimmten Stellen im Programmablauf hochgezählt und später
mit einem Kontrollwert verglichen wird. Der Zähler kann in Software ausgeführt
sein oder als Hardware-Zähler, außerhalb des Systems (siehe 7.34.1 Absatz 2).
D9
und Software zur gegenseitigen Überprüfung einzusetzen, um die Sicherheit eines
Mikrocomputersystems zu erhöhen.
D10
führung eines Programms, bei dem die Abfolge der Programmbefehle überwacht
wird. In einem Vorbereitungsschritt wird für die Befehle eines bestimmten zu über-
wachenden Programmblocks (unter Berücksichtigung ihrer Reihenfolge) ein Hash-
- 15 -
Wert gebildet und im Programm abgespeichert. Bei Ausführung des Programms
startet ein erster Überwachungsbefehl die Überprüfung des folgenden Befehls-
nebenläufig zum Programm
in einer separaten Schaltung
Hash-Wert-Bildung benutzt wird; ein zweiter Überwachungsbefehl beendet diese
Phase und veranlasst, dass der aus den einzelnen Befehlen (unter Berücksichti-
gung ihrer Reihenfolge) gebildete Hash-Wert mit dem vorab gespeicherten Hash-
Wert verglichen wird, und zwar in der separaten Unité Surveillance, getrennt vom
D10
Es lag für den Fachmann daher schon aufgrund seines allgemeinen Fachwissens
D1
der Sicherheit die Einrichtungen zur Bereitstellung der Kontrollwerte und zum Ver-
D8
auszuführen; allein dadurch erfolgen dann die Bereitstellung und der Vergleich
„nebenläufig zur Ausführung des Programms“, wie es in der geltenden Antrags-
fassung beansprucht wird.
(d)
zur Ausführung des Programms“ keiner erfinderischen Tätigkeit. Der Hauptantrag
kann daher keinen Bestand haben.
2.2
Zum ersten Hilfsantrag
Auch der erste Hilfsantrag kann keinen Erfolg haben. Er unterscheidet sich vom
(d1)
tentansprüchen 1 und 11 (Ergänzung kursiv dargestellt):
(d1*)
- 16 -
von einem vorangegangenen Kontrollwert abgeleitet
ist.
Das Bestimmen des Kontrollwertes unterscheidet sich dadurch zwar, wie die Pa-
D10
jeder einzelne Nutzbefehl zur Bildung eines Hash-Wertes einbezogen wird; nicht
D8
Kontrollwert (s. o.: KODE(3)
KODE(5) minus 26) unabhängig von Nutzbefehlen
allein durch eine arithmetische Operation aus einem vorangegangenen Kontroll-
wert abgeleitet wird.
Somit ergibt sich der Gegenstand der Patentansprüche 1 und 11 nach dem ersten
D8
sen, wie es bezüglich des Hauptantrags dargestellt wurde.
2.3
Zum zweiten Hilfsantrag
Der zweite Hilfsantrag führt ebenfalls nicht weiter. Er ist gekennzeichnet durch ein
zusätzliches Merkmal in den unabhängigen Ansprüchen, das beim Anspruch 1
lautet:
(g)
wobei die Einrichtung (205; 512) zum separaten Bereitstel-
len des Kontrollwertes (250; 550), die Einrichtung (206; 514)
zum Vergleichen und die Einrichtung (207; 514) zum Liefern
eines Hinweises (262; 562) in Hardware separat von der
Einrichtung zum Ausführen der Sequenz von Programm-
Befehlen ausgeführt sind.
Wie bereits beim Hauptantrag erläutert, lag eine Ausführung in Hardware für den
D10
gur 2: Unité Surveillance 22) zur Bereitstellung des Kontrollwertes (Hash-Wert),
- 17 -
zum Vergleichen mit dem Überprüfungswert (siehe Absatz [0074]) und zum
Liefern eines Hinweises (siehe Absatz [0078]). Das genannte zusätzliche Merk-
(g)
2.4
Zum dritten Hilfsantrag
Der dritte Hilfsantrag enthält gegenüber dem zweiten Hilfsantrag in den Patentan-
(d1)
D8
Vorliegen einer erfinderische Tätigkeit nicht begründen, so dass auch der dritte
Hilfsantrag erfolglos bleiben muss.
2.5
Zum vierten Hilfsantrag
Gemäß viertem Hilfsantrag ist der Patentanspruch 1 nach Hauptantrag am Ende
um folgende Merkmale ergänzt:
(g*)
Kontrollwertes ein Register (510) und einen Vorwärtszähler
(512) aufweist, um ansprechend auf einen Überprüfungswert
einen vorangegangenen Kontrollwert (550) zu erhöhen, um
einen nachfolgenden Kontrollwert (551) zu erzeugen,
(h)
wobei die Einrichtung zum Erzeugen eines Kontrollwertes
einen Pseudo-Zufallszahlengenerator aufweist, der anspre-
chend auf einen Überprüfungswert einen nächsten Kontroll-
wert aus einem vorangegangenen Kontrollwert erzeugt.
Der nebengeordnete Patentanspruch 9 ist in analoger Weise eingeschränkt.
- 18 -
Die beiden zusätzlichen Merkmale sind (durch das „oder“ am Ende von Merkmal
(g*))
7 und 8, die Anspruchsfassung ist daher insoweit zulässig.
Doch bereits die Untersuchung der ersten Alternative zeigt, dass der Antrag kei-
nen Erfolg haben kann.
D1
Befehls-Ablaufes eines Computer-Programms bekannt, einen Zähler einzusetzen,
der in Hardware ausgeführt sein kann und durch zwischengeschaltete Befehle des
Programms weiterzählt („hardware counter external to the system, which e.g. is
incremented as a result of an output command“). Am Ende muss der Zähler einen
bestimmten, bei der Programmerstellung berechneten Wert haben („which must
- at the end of the run through of the program - have some defined value, which is
computed at the time when the program is set up“); dieser vorberechnete Wert
(„Überprüfungswert“) wird mit dem Zählerstand („Kontrollwert“) verglichen, und bei
Nicht-Übereinstimmung wird eine Fehlermeldung erzeugt („if the value is incorrect
… a fault message is produced“). Offensichtlich sind hier somit sämtliche
Merkmale des erteilten Patentanspruchs 1 vorbeschrieben.
Wie beim Hauptantrag bereits dargelegt, arbeitet dieser Zähler, zumindest wenn
er in Hardware ausgeführt ist, „nebenläufig zur Ausführung des Programms“. Er
erhöht bei jedem zwischengeschalteten Befehl des Programms den Zählerstand
(„Vorwärtszähler“), um so auch nachfolgende Kontrollwerte zu erzeugen. Dass
zum Vergleichen ein „Register“ für den vom Programm gelieferten Überprüfungs-
wert nötig ist, ist für den Fachmann ganz selbstverständlich. Damit sind die zu-
D1
ten.
- 19 -
Sonach ergibt sich eine der nach viertem Hilfsantrag beanspruchten Alternativen
(a)
D1
2.5
Zum fünften Hilfsantrag
Der fünfte Hilfsantrag beschränkt sich auf die zweite Alternative des vierten Hilfs-
(g*)
(h)
wertes ein Pseudo-Zufallszahlengenerator einzusetzen ist, überschreitet nicht den
Rahmen des Wissens und Könnens des Durchschnittsfachmanns, so dass auch
dieser Hilfsantrag keinen Erfolg hat:
Gemäß Absatz [0033] der Streitpatentschrift wird der Einsatz des Pseudo-Zufalls-
zahlengenerators „bei erhöhten Sicherheitsanforderungen“ empfohlen, wobei
„nachfolgende Überprüfungswerte als Pseudo-Zufallszahlensequenz erzeugt“ wer-
den. „Die Nutzung eines Pseudo-Zufallszahlengenerators erhöht die Sicherheit,
wenn eine sehr hohe Zahl von Überprüfungswerten benötigt wird“ (Absatz [0047]).
Es ist demnach klar, dass nicht nur die Kontrollwerte, sondern genauso die Über-
prüfungswerte durch den beanspruchten Pseudo-Zufallszahlengenerator erzeugt
(c1)
vorschrift“ wird sozusagen die in den Pseudo-(!) Zufallszahlengenerator fest imple-
mentierte Erzeugungsregel benutzt).
Das zugrundeliegende objektive (Teil-) Problem bestand also darin, für eine große
Zahl benötigter unterschiedlicher Überprüfungswerte eine möglichst zufällig er-
scheinende Folge von Zahlenwerten bereitzustellen, die aber dennoch reprodu-
(c1)
seits scheinbar zufällige Werte liefern, andererseits an zwei verschiedenen Stellen
- 20 -
(beim Ausführen eines Überprüfungsbefehls und separat davon beim Bereitstellen
eines Kontrollwertes) unter gleichen Ausgangsbedingungen denselben Wert aus-
geben.
Zum Zeitpunkt der Anmeldung des Streitpatents waren Pseudo-Zufallszahlen-
generatoren allerdings, insbesondere im Umfeld des Schutzes von Chipkarten
durch kryptographische Maßnahmen, allgemein bekannt und darum das „Mittel
der Wahl“ für den Durchschnittsfachmann, wenn er viele unterschiedliche Werte in
einer scheinbar zufälligen Zahlenfolge benötigte, die aber dennoch reproduzierbar
sein sollten. Deshalb ist es als rein fachmännisches Handeln zu bewerten, zum
parallelen Erzeugen der Kontroll- und Überprüfungswerte einen Pseudo-Zufalls-
zahlengenerator auszuwählen; eine erfinderische Leistung kann der Senat darin
nicht sehen.
III.
Nachdem keiner der gestellten Anträge einen Hauptanspruch umfasste, dessen
Gegenstand auf erfinderischer Tätigkeit beruht, war das Streitpatent zu wider-
rufen.
Dr. Fritsch
Eder
Baumgardt
Wickborn
Me