Rechtsprechung / BPatG / 2003

BPatG Beschluss vom 26.08.2003 – 17 W (pat) 51/01

17. Senat

BUNDESPATENTGERICHT

_______________

(Aktenzeichen)

Verkündet am

26. August 2003

B E S C H L U S S

In der Beschwerdesache

betreffend die Patentanmeldung 199 44 991.0-53

hat der 17. Senat (Technischer Beschwerdesenat) des Bundespatentgerichts auf

die mündliche Verhandlung vom 26. August 2003 unter Mitwirkung des Richters

Dipl.-Ing. Bertl

als

Vorsitzenden

sowie

der

Richter

Dr. Schmitt,

Dipl.-Phys. Dr. Kraus und Dipl.-Ing. Prasch 6.70

beschlossen:

Auf die Beschwerde der Anmelderin wird der Beschluß der Prüfungsstelle für Klasse G06F des Deutschen Patent- und Markenamts vom 13. Februar 2001 aufgehoben und das Patent erteilt.

Der Erteilung liegen folgende Unterlagen zugrunde:

Patentansprüche 1 – 4 und Beschreibung Seiten 1 – 7 mit Seite 2a,

beides überreicht

in der mündlichen Verhandlung

vom

26. August 2003,

sowie 2 Blatt Zeichnungen mit Figuren 1 – 3, eingegangen am Anmeldetag (20. September 1999).

G r ü n d e

I.

Die vorliegende Patentanmeldung wurde von der Prüfungsstelle für Klasse G 06 F

des Deutschen Patent- und Markenamts zurückgewiesen. In den Gründen ist ausgeführt, daß die Gegenstände der Patentansprüche 1 und 2 nicht auf einer erfinderischen Tätigkeit beruhen.

Gegen diesen Beschluß richtet sich die Beschwerde der Anmelderin.

Der geltende Patentanspruch 1 lautet:

„Verfahren zur Sicherung des Programmablaufs beim Aufruf von

Unterprogrammen, wobei das aufgerufene Programm eine Überprüfung der vom aufrufenden Programm direkt oder indirekt übermittelten Parameter ausführt

dadurch gekennzeichnet, dass

- das aufrufende Programm über die zu übergebenden Parameter eine erste Checksumme bildet,

-

- diese erste Checksumme in einem dafür vorgesehenen Speicherbereich abgelegt wird,

-

- das aufgerufene Programm zu Beginn seiner Ausführung

über die erhaltenen Parameter eine zweite Checksumme bildet

und auf Gleichheit mit der ersten Checksumme überprüft und

- bei Ungleichheit der ersten und der zweiten Checksumme das

Programm abgebrochen oder eine Fehlermeldung ausgegeben

wird.“

Der Anmeldung liegt die Aufgabe zugrunde, ein Verfahren anzugeben, das die sichere Überprüfung von modular aufgebauten Programmen, insbesondere bei Unterprogrammaufrufen, zuläßt (Beschreibung Seite 2, Zeilen 4 bis 6).

Die Anmelderin führt aus, daß es beim vorliegenden Verfahren darum gehe, den

Schutz von Programmen, die auf einer Chipkarte ablaufen, vor Manipulationen zu

verbessern. Im Unterschied zum Stand der Technik erfolge die Überprüfung zu

Beginn der Ausführung des Unterprogramms und nicht erst beim Rücksprung. Sie

ist der Ansicht, daß der Gegenstand des nunmehrigen Patentanspruchs 1 patentfähig sei.

Sie stellt den Antrag,

den angefochtenen Beschluß aufzuheben und das nachgesuchte

Patent mit folgenden Unterlagen zu erteilen:

Patentansprüche 1 – 4 und Beschreibung, beides überreicht in der

mündlichen Verhandlung vom 26. August 2003,

sowie 2 Blatt Zeichnungen mit Figuren 1 – 3 vom Anmeldetag

(20. September 1999).

II.

Die Beschwerde ist frist- und formgerecht eingereicht. Sie hat auch Erfolg, da der

Gegenstand des Patentanspruchs 1 patentfähig ist, insbesondere auf einer erfinderischen Tätigkeit beruht (§ 4 PatG).

Mit dem Verfahren nach dem Patentanspruch 1 sollen die Übergänge zu Unterprogrammen sicherer gemacht werden, um Manipulationen bei Chipkarten zu verhindern. Dazu bildet das aufrufende Programm über die zu übergebenden Parameter eine Prüfsumme (Checksumme). Das aufgerufene Unterprogramm bildet

über die empfangenen Parameter zu Beginn der Ausführung ebenfalls eine Prüfsumme. Die beiden Prüfsummen werden verglichen. So wird sichergestellt, daß

die übergebenen Parameter bei der Übergabe nicht verändert worden sind.

Im Prüfungsverfahren wurden folgende Druckschriften genannt:

1. DE 197 01 166 A1

2. US-Z: IEEE Transactions on Computer-Aided Design, Vol. 9, No. 6, June

1990, Seiten 665 – 669

3. DE 35 02 387 C2

4. DE 37 09 524 C2.

Das Verfahren nach dem Patentanspruch 1 ist neu gegenüber dem aus diesen

Druckschriften jeweils bekannten Stand der Technik.

Die DE 197 01 166 A1 betrifft ein Verfahren zur Überwachung der bestimmungsgemäßen Ausführung von Softwareprogrammen. Es wird, wie üblich, die Rücksprungadresse über den Stack an das Unterprogramm übergeben. Gleichzeitig

wird die Rücksprungadresse auch in einem Speicher 3 hinterlegt. Bei Beendigung

des Unterprogramms wird die Rücksprungadresse aus dem Unterprogramm mit

der hinterlegten Adresse im Speicher 3 verglichen, um Manipulationen erkennen

zu können. Im Patentanspruch 5 heißt es, daß als Sicherungsinformationen die

Rücksprungadresse oder charakteristische Daten verwendet werden. Nähere Angaben hierzu enthält die Beschreibung nicht.

Unterschiedlich ist schon der Zeitpunkt der Überprüfung, beim Anmeldungsgegenstand zu Beginn des Unterprogramms und am Ende des Unterprogramms

nach dieser Druckschrift.

Die Druckschrift 2 beschreibt eine Möglichkeit, Programme schneller zu testen.

Dazu werden über Datenfelder Checksummen gebildet und mit Checksummen

von einem Referenzprogramm verglichen, um so Fehler im Programmablauf zu

entdecken.

Bei der DE 35 02 387 C2 geht es um die Überwachung von Mikroprozessorsystemen. Im Programmablauf sind eine Vielzahl von Kontrollpunkten vorgesehen, die

zu vorgegeben Zeitabläufen im Programmablauf erreicht werden müssen. Dazu ist

eine Uhr vorgesehen, die immer wieder nach Erreichen eines Kontrollpunktes neu

"aufgezogen" wird.

Nach der DE 37 09 524 C2 werden zur Sicherung von Speicherinhalten Prüfsummen über vorgegebene Speicherbereiche gebildet und in einem Speicher abgelegt. Diese Prüfsummen können dann zu gewünschten Zeitpunkten überprüft werden.

Die Druckschriften 2 bis 4 betreffen nicht die Ausführung von Unterprogrammen;

sie können schon deshalb die Neuheit des Verfahrens nach dem Anspruch 1 nicht

in Frage stellen.

Das Verfahren nach dem Patentanspruch 1 beruht auch auf einer erfinderischen

Tätigkeit.

Aus der DE 197 01 166 A1 ist ein Verfahren nach dem Oberbegriff des Patentanspruchs 1 bekannt, nämlich zur Sicherung des Pragrammablaufs beim Aufruf von

Unterprogrammen, wobei das aufgerufene Programm eine Überprüfung der vom

aufrufenden Programm direkt oder indirekt übermittelten Daten ausführt (vgl. insb.

Figur 1 und zugehörige Beschreibung). Zwar ist die Verwendung beim Aufruf von

Unterprogrammen nicht ausdrücklich erwähnt, doch der Fachmann erkennt, daß

dieses Verfahren bei Verwendung von Unterprogrammen angewendet wird (vgl.

insb. Spalte 2, Zeilen 51 bis 63).

Dazu legt das aufrufende Programm Parameter in einem dafür vorgesehenen

Speicherbereich (3) ab, das aufgerufene Programm überprüft die vom aufrufenden

Programm erhaltenen Parameter (in 1) auf Gleichheit (in 5) mit den abgelegten

Parametern. Bei Ungleichheit wird das Programm abgebrochen oder eine Fehlermeldung ausgegeben.

Nach dem Ausführungsbeispiel der Figur 2 dieser Druckschrift ist noch ein

Schreibschutzbit für die Rücksprungadressen im Stack vorgesehen.

Im Patentanspruch 5 ist aufgeführt, daß als Sicherungsinformation die Rücksprungadresse selbst oder diese repräsentierende oder charakterisierende Daten

verwendet werden können. Zusätzliche Hinweise hierzu gibt es in den übrigen

Unterlagen nicht. Der Fachmann weiß zwar, daß hierunter eine Quer- oder

Checksumme fallen kann, doch führt die Beschreibung, insb der Figur 2 mit dem

Schreibschutz, vor allem Spalte 6, Zeilen 50 bis 58, ihn in eine andere Richtung.

Dies hängt vor allem mit der unterschiedlichen Überprüfung zusammen. Der

Schreibschutz ist vorgesehen, weil der Vergleich erst nach Beendigung des Unterprogramms erfolgt und die Daten deshalb geschützt werden müssen. Im Gegensatz hierzu erfolgt beim Anmeldungsgegenstand der Vergleich zu Beginn des

Unterprogramms, wo ein Überschreiben noch nicht zu befürchten ist.

Dadurch werden nach dem beanspruchten Verfahren Auswirkungen von Fehlern

von vornherein verhindert.

Die Druckschriften 2 (US-Z: IEEE Transactions on Computer-Aided Design, Vol. 9,

No. 6, June 1990, Seiten 665 – 669) und 3 (DE 35 02 387 C2) befassen sich nicht

mit Unterprogrammen. Bei der Druckschrift 4 (DE 37 09 524 C2) werden feste Parameter (Speicherplätze) überprüft und keine sich während des Programmablaufs

ergebenden Parameter.

Auch bei Kenntnis der DE 197 01 166 A1 ergibt eine Zusammenschau mit diesen

Druckschriften nicht das Verfahren nach dem Patentanspruch 1.

Die Patentansprüche 2 bis 4 enthalten nicht selbstverständliche Ausgestaltungen

des Verfahrens nach dem Patentanspruch 1.

Der Beschwerde ist somit stattzugeben und das nachgesuchte Patent zu erteilen.

Bertl

Dr. Schmitt

Dr. Kraus

Prasch

Bb