Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
METHOD FOR TAMPER-PROOF IDENTIFICATION OF PRODUCTS
Document Type and Number:
WIPO Patent Application WO/2003/098543
Kind Code:
A1
Abstract:
The invention relates to a method for tamper-proof identification of products, more particularly medicaments, wherein an unencrypted authenticity characteristic is placed on the product in an encrypted manner by means of an asymmetric encrypting method. The buyer or retailer can verify the originator or producer of the product by comparing the unencrypted authenticity characteristic with the decoded information from the encrypted authenticity characteristic.

Inventors:
RUPP PAUL
Application Number:
PCT/EP2003/004591
Publication Date:
November 27, 2003
Filing Date:
May 02, 2003
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
AVENTIS PHARMA GMBH (DE)
International Classes:
A61J1/14; G06F19/00; G06K7/00; G06K19/06; B65D25/20; G06Q10/00; G06Q50/00; G07C1/00; H04L9/32; (IPC1-7): G06K19/06; G06K19/14; G06K17/00; G07F7/08
Domestic Patent References:
WO2000023954A12000-04-27
Foreign References:
EP0889448A21999-01-07
US6069955A2000-05-30
Attorney, Agent or Firm:
AVENTIS PHARMA DEUTSCHLAND GMBH (Industriepark Höchst Gebäude K 801, Frankfurt, DE)
Download PDF:
Claims:
Patentansprüche
1. Methode zur Kennzeichnung eines Produktes und/oder einer Verpackung oder Umverpackung, wobei 1. das Produkt und/oder die Verpackung oder Umverpackung mit mindestens einer Originalitätskomponente bestehend aus mindestens einer individuellen Kennung in unverschlüsselter Form (A) und mindestens einer individuellen Kennung in verschlüsselter Form (B) gekennzeichnet wird, 2. die unverschlüsselte Kennung (A) mindestens eine individuelle Identifikationsnummer und optional ein oder mehrere weitere Merkmale enthält, 3. die verschlüsselte Kennung (B) aus dem Inhalt der unverschlüsselten Kennung (A) erzeugt wird, und 4. die Originalitätskomponente im Klartext oder in maschinenfesbarer Form vorliegt.
2. Methode gemäß Anspruch 1, wobei das Produkt ein pharmazeutisches Erzeugnis oder ein Kosmetikum, vorzugsweise eine Blutkonserve, ein Blister, eine Ampulle, ein Vial, eine Spritze, eine Tablette, eine Kapseln, eine Oblatenkapsel, eine Lutschtablette, ein Pflaster, und/oder eine Verpackung oder eine Umverpackung davon ist.
3. Methode gemäßeinem der Ansprüche 1 oder 2, wobei weitere Merkmale eine 1. Artikelnummer, vorzugsweise eine PZN, eine EAN (European Article Number), UPC (Universal Product Code), NDC (National Drug Code) oder NHRIC (National Health Reläted Item Code), und/oder 2. eine Chargenbezeichnung, und/oder 3. das Herstelldatum, und/oder 4. das Verfalldatum, und/oder 5. eine Kennung der Verpackung oder Umverpackung, und/oder 6. andere das Produkt kennzeichnende Nummern sind.
4. Methode gemäß einem der Ansprüche 1 bis 3, wobei die individuelle Identifikationsnummer aus der Artikeinummer, vorzugsweise der PZN, der Chargenbezeichnung und einer fortlaufenden Nummer innerhalb der Charge gebildet wird.
5. Methode gemäß einem der Ansprüche 1 bis 4, wobei die Originalitätskomponente ein eindimensionaler Code, vorzugsweise Code 39, Extended Code 39 oder Code 128, und/oder ein zweidimensionaler Code, vorzugsweise 3D Barcode, 3DI, ArrayTag, Aztec Code, Small Aztec Code, Codablock, Code 1, Code 16K, Code 49, CP Code, Data Glyphs, Data Matrix Code, Datastrip Code, Dot Code A, hueCode, MaxiCode, MiniCode, PDF417, Micro PDF417, QR Code, SmartCóde, Snowflake Code, SuperCode oder Ultracode ist.
6. Methode gemäß einem der Ansprüche 1 bis 5, wobei die Originalitätskomponente ein Data Matrix Code ist.
7. Methode gemäß einem der Ansprüche 1 bis 6, wobei die verschlüsselte Kennung (B) aus dem Inhalt der unverschlüsselten Kennung (A) mittels eines asymmetrischen Verschlüsselungsverfahrens erzeugt wird.
8. Methode gemäß einem der Ansprüche 1 bis 7, wobei das asymmetrische Verschlüsselungsverfahren das RSAVerfahren ist.
9. Produkt gekennzeichnet gemäß einer Methode entsprechend einem der Ansprüche 1 bis 8.
10. Produkt gemäß Anspruch 9, dadurch gekennzeichnet, daß das Produkt ein Arzneimittel oder ein Kosmetikum ist.
11. Produkt gemäß einem der Ansprüche 9 bis 10, wobei das Produkt ein pharmazeutisches Erzeugnis oder ein Kosmetikum, vorzugsweise eine Blutkonserve, ein Blister, eine Ampulle, ein Vial, eine Spritzen, eine Tablette, eine Kapsel, eine Oblatenkapsel, eine Lutschtablette, ein Pflaster, eine Tube, ein Inhalator, eine Spritzflasche davon ist.
12. Verpackung oder Umverpackung gekennzeichnet gemäß einer Methode entsprechend einem der Ansprüche 1 bis 8.
13. Verpackung oder Umverpackung gemäß Anspruch 12, dadurch gekennzeichnet, daß die Verpackung, Umverpackung oder Verpackungkombination ein Arzneimittel oder ein Kosmetikum enthält.
14. Verfahren zur Detektion von Produktfälschungen, dadurch gekennzeichnet, daß 1. ein Produkt mit mindestens einer Originalitätskomponente bestehend aus mindestens einer individuellen Kennung in unverschlüsselter Form (A) gekennzeichnet wird, wobei die individuelle Kennung (A) mit dem geheimen Schlüssel eines asymmetrischen Verschiüsseiüngsverfahrens in die verschlüsselte Form (B) verschlüsselt wird, das Produkt mit der individuellen Kennung in unverschlüsselter Form (A) und in verschlüsselter Form (B) und optional weiteren Merkmalen gekennzeichnet wird, die verschlüsselte Kennung (B) aus dem Inhalt der unverschlüsselten Kennung (A) erzeugt wird, und die Origirralitätskomponente im Klartext oder in maschinenfesbarer Form vorliegt, 2. die Originalitätskomponente des Produktes von einem Käufer oder Händler ausgelesen wird, und die verschlüsselte individuelle Kennung (B) mit dem zu dem geheimen Schlüssel gehörenden öffentlichen Schlüssel des asymmetrischen Verschlüsselungsverfahrens entschlüsselt wird, 3. die Information aus der entschlüsselten individuellen Kennung mit der unverschlüsselten Kennung verglichen wird.
15. Verfahren gemäß Anspruch 12, wobei das Produkt ein Arzneimittel oder ein Kosmetikum ist.
16. Verfahren gemäß einem der Ansprüche 12 bis 13, wobei das Produkt ein pharmazeutisches Erzeugnis oder ein Kosmetikum, vorzugsweise eine Blutkonserve, ein Blister, eine Ampulle, ein Vial, eine Spritzen, eine Tablette, eine Kapseln, eine Oblatenkapseln, eine Lutschtablette, ein Pflaster, und/oder eine Verpackung oder Umverpackung davon ist.
17. Verfahren gemäß einem der Ansprüche 12 bis 14, wobei weitere Merkmale 1. eine Artikelnummer, vorzugsweise eine PZN, eine EAN (European Article Number), UPC (Universal Product Code), NDC (National Drug Code) oder NHRIC (National Health Related Item Code), und/oder 2. eine Chargenbezeichnung, und/oder 3. das Herstelldatum, und/oder 4. das Verfalldatum und/oder 5. eine Kennung der Verpackung oder Umverpackung, und/oder 6. andere das Produkt kennzeichnende Nummern sind.
18. Verfahren gemäß einem der Ansprüche 12 bis 15, wobei die individuelle Identifikationsnummer aus der Artikelnummer, vorzugsweise der PZN, der Chargenbezeichnung und einer fortlaufenden Nummer innerhalb der Charge gebildet.
19. Verfahren gemäß einem der Ansprüche 12 bis 16, wobei die Originalitäts komponente ein eindimensionaler Code, vorzugsweise Code 39, Extended Code 39 oder Code 128, oder ein zweidimensionaler Code, vorzugsweise 3D Barcode, 3 DI, ArrayTag, Aztec Code, Small Aztec Code, Codablock, Code 1, Code 16K, Code 49, CP Code, Data Glyphs, Data Matrix Code, Datastrip Code, Dot Code A, hueCode, MaxiCode, MiniCode, PDF417, Micro PDF417, QR Code, SmartCode, Snowflake Code, SuperCode oder Ultracode ist.
20. Verfahren gemäß einem der Ansprüche 14 bis 19, wobei die Originalitäts komponente ein Data Matrix Code ist.
Description:
Methode zum fälschungssicheren Kennzeichnen von Produkten Produktfälschungen sind ein lange bestehendes Problem. Insbesondere Arzneimittelfälschungen, die in Reinheit und/oder Zusammensetzung gegenüber den Originalprodukten qualitativ minderwertig sind, gefährden die Sicherheit von Patienten.

Laut Weltgesundheitsorganisation (WHO) wurden bis April 1999 771 Fälle von Medikamentenfälschungen berichtet, wobei von 325 näher analysierten Fällen in. 40 % die Art oder die Qualität der enthaltenen aktiven Komponenten zu bemängeln war, und in 59 % keine aktive Komponente enthalten war. Beispielsweise verursachte das Inverkehrbringen und die spätere Einnahme von Paracetamolsirup, der mit dem Frostschutzmittel Diethylenglycol verunreinigt war, den Tod von 89 Haitianern im Jahre 1995.

Die WHO empfiehlt in ihren Richtlinien zur Inspektion von pharmazeutischen Produkten, die als gefälscht, verunreinigt oder qualitativ minderwertig verdächtigt werden, eine organoleptische Untersuchung von Verpackung und Inhalt des Produktes, und anschließend entweder einfache analytische Methoden wie beispielsweise Dünnschichtchromatographie oder eine vollständige Analyse durch die zuständigen Aufsichtsbehörden (WHO-Publikation WHO/EDM/QSM/99. 1, Seiten 1-5 und 33-37).

Während organoleptische und einfache analytische Methoden nur mäßige Sicherheit gewährleisten, ist eine vollständige Analyse in der Regel aufwendig und teuer.

Medikamente werden ferner zum Zwecke der Rückverfolgbarkeit (traceability) während des Verteilungsweg vom Hersteller zum Händler und weiter zum Verbraucher bzw.

Patienten gekennzeichnet, um beispielsweise im Falle von Rückrufaktionen gezielt Zugriff auf bestimmte Chärgen des Produktes zu ermöglichen. Die Kennzeichnung ist. in Form von Klartext auf dem Produkt aufgebracht und enthält im Fall von Medikamenten oder Kosmetika eine Chargen-Nummer, das Verfalldatum und eindeutige Artikelbezeichnung, beispielsweise die Pharmazentralnummer (PZN) bei Arzneimitteln. Gegebenfalls ist die Verkaufseinheit zusätzlich mit dem Herstelldatum

sowie einer individuellen Seriennummer gekennzeichnet. Alle oder ein Teil dieser Informationen ist neben dem Klartext auch maschinenlesbar in Form eines ein-oder zweidimensionalen Codes aufgedruckt.

In jüngere Zeit wird versucht, die Echtheit von Medikamenten durch Anbringen von Fälschungsschutzmerkmalen ähnlich denen an Geldscheinen kenntlich zu machen, wobei die Herstellkosten und der logistische Aufwand erheblich sind. Beispielsweise soll nach einer Initiative des italienischen Gesundheitsministeriums jede Medikamentenpackung eine neunstellige Seriennummer tragen, die von der staatlichen italienischen Prägeanstalt erstellt werden soll (Focus, Zeitschrift der International Federation of Pharmaceutical Wholesalers, Inc., vol. 8, No. 25, December 27,2001).

Die deutsche Offenlegungsschrift DE 100 19 72 Al beschreibt ein Verfahren zur Produktsicherung, wobei das Produkt mit einer ersten verschlüsselten Kennzeichnung und die dazugehörige Verpackung mit einer zweiten verschlüsselten Kennzeichnung versehen sind, wobei die zweite Kennzeichnung von dem verschlüsselten Inhalt der ersten Kennzeichnung abhängig ist und so Rückschlüsse auf die Zusammengehörigkeit von Verpackung und Produkt erlaubt.

Das europäische Patent EP 360 225 B1 beschreibt eine Vorrichtung zum Aufbringen von Wertstempeln auf Postsendungen, wobei der Wertstempel eine verschlüselte Nachricht in Form eines zweidimensionalen Codes enthält, und der Code mittels eines öffentlichen Schlüssels eines asymmetrischen Verschlüsselungsverfahrens verschlüsselt ist, wodurch eine Gültigkeitsprüfung der Portozahlung möglich wird.

Aufgabe der vorliegenden Erfindung ist es, eine Methode bereitzustellen, mit der die Echtheit von Produkten, insbesondere von Medikamenten auf einfache und kostengünstige Weise überprüft werden kann.

Gegenstand der vorliegenden Erfindung ist demgemäß eine Methode zur Kennzeichnung eines Produktes, wobei

1. das Produkt mit mindestens einer Originalitätskomponente bestehend aus mindestens einer individuellen Kennung in unverschlüsselter Form (A) und mindestens einer individuellen Kennung in verschlüsselter Form (B) gekennzeichnet wird, 2. die unverschlüsselte Kennung (A) mindestens eine individuelle Identifikationsnummer und optional ein oder mehrere weitere Merkmale enthält, 3. die verschlüsselte Kennung (B) aus dem Inhalt der unverschlüsselten Kennung (A) erzeugt wird, und 4. die Originalitätskomponente im Klartext oder in maschinenlesbarer Form vorliegt.

Zur praktischen Handhabung und automatischen Kontrolle kann die Originalitätskomponente in einen maschinenlesbaren Code umgesetzt werden. Durch die Entschlüsselung der verschlüsselten Kennung kann auf die Orginalität des Produkts geschlossen werden..

Produkt im Sinne der vorliegenden Erfindung meint eine Handelsware in jeglicher Ausführung, beispielsweise ein pharmazeutisches Erzeugnis oder ein Kosmetikum, vorzugsweise Blutkonserven, Blister, Ampullen, Vials, Spritzen, Tabletten, Kapseln, Oblatenkapsein, Lutschtabletten, Pflaster, Tube, Inhalator, Spritzflasche, und/oder eine Verpackung oder Umverpackung oder Verpackungskombination davon.

Das Originalitätsmerkmal kann 1 bis 1000 Zeichen enthalten, vorzugsweise enthält die nicht verschlüsselte individuelle Kennung (A) 5 bis 30 Zeichen und die verschlüsselte individuelle Kennung (B) 30 bis 300 Zeichen.

Als weitere Merkmale im Sinne der vorliegenden Erfindung gelten 1. Artikelnummer, vorzugsweise eine PZN, eine EAN (European Article Number), UPC (Universal Product Code), NDC (National Drug Code) oder NHRIC (National Health Related Iterri Code), und/oder 2. eine Chargenbezeichnung, und/oder 3. das Herstelldatum, und/oder 4. das Verfalldatum, und/oder 5. eine Kennung der Verpackung oder Umverpackung, und/oder

6. andere das Produkt kennzeichnende Nummern.

In einer besonderen Ausführungsform wird die individuelle Identifikationsnummer aus der Artikelnummer, vorzugsweise der PZN, der Chargenbezeichnung und einer fortlaufenden Nummer innerhalb der Charge gebildet.

Die Orginalitätskomponenten können maschinenlesbar oder in Klartext vorliegen.

Ferner können die Orginalitätskomponenten aus beliebigen Zeichen bestehen, vorzugsweise aus Buchstaben, Ziffern, Sonderzeichen und/oder Mustern, besonders bevorzugt sind die Orginalitätskomponenten numerisch oder alphanummerisch.

Vorzugsweise werden die Orginalitätskomponenten maschinenlesbar dargestellt, besonders bevorzugt als zweidimensionaler Code.

Die Orginalitätskomponenten können auf dem Produkt auch in einem Magnetstreifen oder in einem Chip gespeichert angebracht werden.

Ein Code kann schwarzweiss, schwarz auf weiss oder weiss auf schwarz, oder farbig oder mehrfarbig sein.

Ein Code kann auf dem Produkt angebracht werden, indem das Produkt bedruckt oder etikettiert wird, wobei jede Art von Drucker benutzt werden kann, beispielsweise ein Tintenstrahldrucker, Laserdrucker, Lasermarkierer, Matrixdrucker, Nadeldrucker oder Thermotransferdrucker.

Ein maschinenlesbarer Code kann mit einem handelsüblichen Scanner gelesen werden, beispielsweise mit einem Laserscanner oder einer CCD-Kamera, zum Beispiel dem Gerät ImagéteamS 440 der Firma WelchAllyn@, Dornstetten, Deutschland.

Ein eindimensionaler Code ist beispielsweise Code 39, Extended Code 39 oder Code 128.

Zweidimensionale Codes sind beispielsweise 3D Barcode, 3-DI, ArrayTag, Aztec Code, Small Aztec Code, Codablock, Code 1, Code 16K, Code 49, CP Code, Data

Glyphs, Data Matrix Code, Datastrip Code, Dot Code A, hueCode, MaxiCode, MiniCode, PDF417, Micro PDF417, QR Code, SmartCode, Snowflake Code, SuperCode, Ultracode (Firmenbroschüre der Firma Barcodat"2D-Code-Fibel, Systematisierung und Lesegräte", Barcodat GmbH, Dornstetten, Deutschland, März 1998). Bevorzugt ist der Data Matrix Code (Code ECC 200, International Symbology Specification-Data Matrix ; ANSI/AIM BC11-1997, May 8,1997, veröffentlicht von AIM International Inc., Reston, USA).

Der Data Matrix Code ist ein zweidimensionaler maschinenlesbarer Symbolcode, der zum Speichern von 1 bis 3116 numerischen oder 2335 alphanumerischen Zeichen oder von 1556 Bytes von binären Informationen benutzt werden kann. Der Data Matrix Code besteht aus 4 wesentlichen Komponenten : einer festen Grenze, einer durchbrochenen Grenze, einer Datenspeicherfläche und einer"QuietZone".

Die feste Grenze erlaubt es dem Dekodiergerät, die Orientierung des Data Matrix Codes zu berechnen. Die durchbrochene Grenze erlaubt es dem Dekodiergerät, die Nummer der Spalten und Reihen oder die Matrixdichte zu bestimmen. Die Datenspeicherfläche enthält die binäre Informationen, die während des Erstellens des Data Matrix Codes kodiert wurden. Die"Quiet Zone"ist eine unbedruckte Zone, die die Data Matrix umgibt und deren Farbe sich von der der festen Grenze unterscheidet.

Wenn die festen Grenze eine dunkle Farbe wie beispielsweise schwarz hat, ist die "Quiet Zone"hell, vorzugsweise weiss.

Jedes kodierte Zeichen innerhalb der Data Matrix wird durch einen Binärcode aus 8 Bits repräsentiert. Der Character"M"ist beispielsweise"01001101", worin vorzugsweise"1"eine dunkle Zone innerhalb der Data Matrix ist, und"0"eine helle Zone.

Der Data Matrix Code besitzt gegenüber dem Barcode den Vorteil, daß er einen höheren Speicherplatz und gesteigerte Lesbarkeit durch das Fehlerkorrekturverfahren (ECC) bietet, wodurch geringere Anforderungen an den Drucker und den Flächenbedarf gestellt werden.

Zur Verschlüsselung wird ein asymmetrisches Verfahren benutzt, bei dem die individuelle Kennung (A) mit dem geheimen Teil (e) des Schlüssel verschlüsselt wird.

Mit dem geheimen Teil des Schlüssels verschlüsselte Daten können nur mit dem öffentlichen Teil (d) des Schlüssels entschlüsselt werden. Daher kann gefolgert werden, daß verschlüsselte Daten, die mit dem öffentlichen Teil des Schlüssels (d) entschlüsselt werden können, mit dem geheimen Teil des Schlüssels (e) verschlüsselt wurden. Da der geheime Teil des Schlüssels der Öffentlichkeit nicht zugänglich ist, kann auf diese Weise der Urheber oder Produzent der Daten und damit des Produktes zweifelsfrei nachgewiesen werden.

Asymmetrische Verschlüsselungsverfahren sind bespielsweise das Verfahren nach Rivest, Shamir und Adleman (RSA-Verfahren), McEliece, ElGamal, LUC oder nach Diffie Hellman.

Bevorzugt ist das RSA-Verfahren zur Generierung der Schlüssel und Verschlüsselung wie beispielsweise in US 4,405, 829 beschrieben. Bei diesem Verfahren ist neben den Schlüsseln (d) und (e) das öffentlich zugängliche Modul (n) definiert, das zur Verschlüsselung und Entschlüsselung der Daten notwendig ist. Basis dieses Verfahrens ist, dass bei der Wahl entsprechender großer Primzahlen p und q zur Generierung des Moduls (n) mit n = p**q es mit bekannten Rechnern und mathematischen Methoden nicht in angemessener Zeit und Kosten möglich ist, auf den geheimen Schlüssel zu schließen.

Der Grad der Verschlüsselung bemisst sich nach der Länge des verwendeten Schlüssels.

Bevorzugt wird ein Schlüssel einer Länge größer gleich 1024 Bit entsprechend einem RSA-Modul von wenigstens 309 Dezimalziffern verwendet.

Dem Käufer und/oder Händler des erfindungsgemäß gekennzeichneten Produktes wird der öffentliche Teil des Schlüssels (d) und das Modul (n) zur Verfügung gestellt,

beispielsweise kann dieser Teil des Schlüssels auf einem öffentlich zugänglichen Datenserver oder im Interne hinterlegt werden, oder auf dem Produkt angebracht sein.

Mit dem Verfahren wird es dem Käufer und/oder Händler ermöglicht, den Hersteller des Produktes zweifelsfrei zu bestimmen, solange der geheime Teil des Schlüssels (e) nicht veröffentlicht wird.

Zur Entschlüsselung werden die Originalitätskomponenten gelesen und die verschlüsselte individuelle Kennung (B) mit dem öffentlichen Teil des Schlüssels entschlüsselt. Entspricht die Kennung, die nach dem Entschlüsseln des verschlüsselten Teiles (B) erhalten wird, der Kennung in unverschlüsselter Form (A), bedeutet dies, daß erstens der verschlüsselte Teil (B) mit dem geheimen Teil des Schlüssels erzeugt wurde, und daß daher zweitens die Quelle oder der Hersteller des Produktes den verschlüsselten Teil (B) erzeugt hat, und daß daher drittens die Quelle oder der Hersteller des Produktes als Inhaber des geheimen Teiles des Schlüssels identifiziert wurde.

Mit der erfindungsgemäßen Methode lassen sich Produktfälschungen detektieren : Entspricht die individuelle Kennung ; die nach dem Entschlüsseln der verschlüsselten Kennung (B) mittels des öffentlichen Schlüssels (d) und des Moduls (n) erhalten wird, der individuellen Kennung, die in der unverschlüsselten Kennung (A) enthalten ist, so wurde die individuelle Kennung vom Inhaber des geheimen Schlüssels (e) erzeugt.

Die individuelle Kennung wird nur ein einziges Mal verwendet. Identische Kopien des Produktes können daher erkannt werden, indem die individuelle Identifikationsnummer mit bereits benutzten individuellen Identifikationsnummern verglichen wird, die durch den Großhändler, Händler oder den Kunden registriert oder durch den Hersteller veröffentlicht wurden. Serienkopien lassen sich beim Großhandel durch Serienerkennung einfach feststellen.

Serienfälschung und Produktfälschung kann zusätzlich erschwert werden, wobei.

1. das Produkt und/oder die Verpackung oder Umverpackung mit mindestens einer Originalitätskomponente bestehend aus mindestens einer individuellen Kennung in unverschlüsselter Form (A) und mindestens einer individuellen Kennung in verschlüsselter Form (B) gekennzeichnet wird, 2. die unverschlüsselte Form (A) der Produkt-Kennung zusätzlich als Bestandteil der zu. verschlüsselnden Nachricht der Umverpackung mit aufgenommen, die eine eigene Kennung (Kennung der Umverpackung) trägt, und wobei 3. sich die Orginalität der Umverpackung und der darin enthaltenen einzelnen Produkte dadurch auszeichnet, daß die decodierte Nachricht neben der Kennung der Umverpackung auch die Originalitätskomponente des Produktes enthalten muss, und wobei 4. die Kennung der Umverpackung unabhängig von der Produkt-Kennung erzeugt wird.

Die Erschwernis einer Fälschung liegt darin, daß die Produkt-Kennung mit gefälscht werden muss. Anderenfalls ist bei einer Einzelpackung eine Serienfälschung bereits zu erkennen.

Bei einfachem Umpacken, ohne der Veränderung des Primärpackguts (Produkt) und dem Herstellen einer Serienfälschung ist somit das Risiko der Enttarnung wesentlich höher.

Darüber hinaus eignet sich die erfindungsgemäße Methode als Fälschungsschutz des Verfalldatums. Viele Verbrauchsartikel wie pharmazeutische Produkte, kosmetische Produkte oder Lebensmittel sind mit einen Haltbarkeits-oder Verfalldatum versehen.

Um Produkte, deren Haltbarkeitszeit gänzlich oder teilweise abgelaufen ist, länger vertreiben zu können wird von dritten in betrügerischer Absicht das Haltbarkeit- Nerfalldatum manipuliert.

Diese Manipulation kann verhindert werden, wenn das Haltbarkeit-oder Verfalldatum mit den im. Patent beschriebenen Methoden verschlüsselt wird. Die Methode beinhaltet folgende Elemente und Verfahrensschritte :

1. Das Haltbarkeit-oder Verfalldatum ist Teil der unverschlüsselten Form (A) der Produkt-Kennung und wird mit einen privaten Schlüssel eines asynchronen Verschlüsselungsverfahrens verschlüsselt ; 2. das Ergebnis der Verschlüsselung (verschlüsselte Nachricht) und das nicht verschlüsselte Haltbarkeit-oder Verfalldatum wird auf die Verkaufspackung aufgebracht. Die verschlüsselte Nachricht wird vorzugsweise maschinenlesbar mittels eines ein-oder zweidimensionalen Codes wie dem DataMatrix-Code oder mittels anderer elektronisch lesbarer Methoden wie Magnetstreifen, Speicherchips, Tranponder oder mittels biocodierter Verfahren aufgebracht ; 3. der Verbraucher oder der Händler hat die Möglichkeit die Orginalität des Haltbarkeit-oder Verfalldatum zu prüfen, wobei der die verschlüsselte Nachricht mit dem zugehörigen öffentlichen Schlüssel decodiert und in der decodierten Nachricht das orginäre Haltbarkeit-oder Verfalldatum erhält, sofern dieses mit dem nicht verschlüsselt aufgebrachten Haltbarkeit-oder.

Verfalldatum übereinstimmt.

Die Erschwernis das Haltbarkeit-oder Verfalldatum zu manipulieren liegt in der Anwendung der im Patent beschriebenen asynchronen Verschlüsselung. Nur mit Kenntnis des privaten Schlüssels ist es möglich eine decodierte Nachricht zu generieren, die nach-der Entschlüsselung mittels öffentlichen Schlüssel mit der nicht decodierten Nachricht übereinstimmt.

Der private Schlüssel ist von dritten nur mit extremen zeitaufwendigen Rechen- verfahren zu bestimmen. Bei entsprechend langen Schlüsseln, liegt die Rechenzeit über der Haltbarkeit-Nerfallzeit. Somit kann die Manipulation durch dritte auf diesem Weg ausgeschlossen werden, sofern der private Schlüssel sicher verwahrt und die verschlüsselte Nachricht stets Bestandteil des Produkts ist.

Beispiele 1 bis 7 demonstrieren das erfindungsgemäße Prinzip mit einer reduzierten Datenmenge, wobei die zu verschlüsselnde Nachricht ein Buchstabe ist.

Beispiele 8 und 9 zeigen eine Ausführungsform des erfindungsgemäßen Verfahrens, wobei die zu verschlüsselnde Nachricht ca. 47 ASCII-Zeichen beträgt und die Schlüssellänge einige hundert Bit ist.

Beispiel 1 : Prinzip der Generierung des privaten und öffentlichen Schlüssels mittels Verschlüsselung nach dem RSA-Verfahren Suche eines Modules n = p q (p und q sind Primzahlen) mit den Primzahlen. p und q ergibt zum Beispiel p = 17, q = 23 Es gilt die Eulersche PHI-Funktion, die die Anzahl-aller zu n teilerfremden ganzen Zahlen, die kleiner als n sind, angibt : PHI (N) = (p-1) (q-1) Beispiel : PHI (n) = 352 Es müssen zwei Zahlen e und d gefunden werden, für welche e d mod PHI (n) = 1 gilt.

Man wählt zuerst d so, daß d relativ prim zu PHI (n) ist. Ideal ist eine Primzahl d > max (p, q) und d < PHI (n) -1.

Um e zu finden, muß man eine Lösung mit ganzzahligen x und y für die Gleichung xd+yPHI (n) =1 finden. Es gilt x d = 1 (mod PHI(n)).

Setzt man e = x mod PHI (n), dann ist auch e d = 1 (mod PHI (n)). e und d sind die Schlüssel, n der sogenannte Modul oder modulo.

Die Verschlüsselungsfunktion ist E (x) = xe mod n, die Entschlüsselungsfunktion ist D (x) = xd mod n.

Da bei den Funktionen E (x) und D (x) modulo n gerechnet wird, muß x < n sein. Jede Nachricht X muß so in Blöcke x1, x2,. .. unterteilt werden, daß x1, x2,... < n sind.

Beispiel 2 : Programm zur Schlüsselgenerierung, Umwandlung der Nachricht in ASCII-Code, Verschlüsselung, Entschlüsselung, Umwandlung des entschlüsselten ASCII-Codes in Klartext und Verifizierung Das Programm läuft auf 80x86-PCs mit Microsoft 32bit-Windows (NT/2000/XP/95B/98/ME). Geschrieben wurde es in Microsoft Visual Basic 6.0.

VERSION 5.00 Begin {C62A69F0-16DC-11CE-9E98-00AA00574A4F} UserForm1 <BR> <BR> <BR> Caption ="RSA-Test"<BR> <BR> <BR> <BR> <BR> ClientHeight 10620<BR> <BR> <BR> <BR> OientLeft = 45 ClientTop = 330 ClientWidth = 12765 OleObjectBlob ="UserForml. dsx" : 0000 StartUpPosition = 1'Fenstermitte End Attribute VB. Name ="UserForm1" Attribute VB_GlobalNameSpace = False Attribute VB_Creatable = False Attribute VB_PredeclaredId = True Attribute VB_Exposed = False Function Findkey (ByVal p, ByVal q As Long) As Long Dim maxpq, zufall, differenz, phin As Long If p > q Then

maxpq = p Else maxpq = q End If phin= (p-1) * (q-1) differenz = phin-maxpq Randomize Do zufall = Int (Rnd * differenz) + maxpq Loop Until IstPrim (zufall) Findkey = zufall End Function Function IstPrim (ByVal a As Long) As Boolean Dim teiler, wurzela As Long Dim Prim As Boolean Prim = True teiler= 2 wurzela int (Sqr (a)) While (teiler <= wurzel) And Prim If a Mod teiler = 0 Then Prim = False End If teiler = teiler + 1 Wend IstPrim = Prim End Function Function FindOtherKey (ByVal p, ByVal q, ByVal e As Long) As Long

Dim d, phin As Long phin= (p-1) * (q-1) d = 0 Do d=d+1 Loop Until ((e * d) Mod phin = 1) Or (d > phin) If d > phin Then d = 0 End if FindOtherKey = d End Function Function ahochbmodc (ByVal a As Long, ByVal b, ByVal c As Long) As Long Dim n, i, m, m2 As Long n = a Mod c m2= 1 Do If b > 2 Then i = n ^ 3 b=b-3 Else i = n ^ b b=0 End If m = i Mod c m2 = m * m2 m2 = m2 Mod c Loop Until b = 0 ahochbmodc = m2 End Function

Private Sub verschluesseln (ByVal unversch As String, ByRef versch As String, ByVal e, ByVal n As Long) Dim zahler, hilf As Long For zaehler = 1 To Len (unversch) hilf = ahochbmodc (Asc (Mid (unversch, zahler, 1)), e, n) versch = versch + CStr (hilft +"" Next zaehler End Sub Private Sub entschluesseln (ByVal versch As String, ByRef unversch As String, ByVal d, ByVal n As Long) Dim zahler1, zahler2, wert_hilf1, wert_hilf2 As Long Dim hilfstring1 As String hilfstring1 = "" zaehler1 = 1 Do zahler2 = zaehler1 Do zahler2 = zaehler2 + 1 Loop Until (Mid (versch, zahler2, 1) Or (zaehler2 > Len (versch)) If zahler2 <= Len (versch) Then wert_hilf1 = CLng (Mid (versch, zahler1, zaehler2-zaehler1)) wert_hilf2 = ahochbmodc (wert_hilf1, d, n) hilfstring1 = hilfstring1 + Chr (wert_hilf2 Mod 256) zaehler1 = zaehler2 + 1 End If Loop Until zaehler1 >= Len (versch) unversch = hilfstring1

End Sub Private Sub ascii_dec(ByVal text1 As String, ByRef text2 As String) Dim zahler, hilf As Long For zaehler = 1 To Len (text1) hilf = Asc (Mid (text1, zaehler, 1)) text2 = text2 + CStr (hilf) + " " Next zaehler End Sub Private Sub ascii_enc (ByVal text1 As String, ByRef text2 As String) Dim zaehler1, zaehler2, wert_hilf1 As Long Dim hilfstring1 As String hilfstring1 = "" zaehler1 = 1 Do zaehler2 = zaehler1 Do zaehler2 = zaehler2 + 1 Loop Until (Mid (text1, zahler2, 1) Or (zaehler2 > Len (text1)) If zaehler2 <= Len (text1) Then wert_hilf1 = CLng (Mid (text1, zaehler1, zaehler2 - zaehler1)) hilfstring1 = hilfstring1 + Chr(wert_hilf1) zaehler1 = zahler2 + 1 End If Loop Until zaehler1 >= Len (text1) text2 = hilfstring1

End Sub Private Sub btn_entsch_Click() Dim tempstring2 As String tempstring2 ="" If Right (txt_versch.Text, 1) <i""Then txtversch. Text = txtversch. Text +"" End If Call entschluesseln (txt versch. Text, tempstring2, txtd, txtn) txtunversch. Text = tempstring2 tempstring2 ="" Call ascii_dec(txt_unversch. Text, tempstring2) txt_unversch_ascii.Text = tempstring2 txt_verkett.Text = txt_unversch_ascii. Text +"/"+ txtversch. Text End Sub Private Sub btn_generieren_Click() lab_n_gen. Caption = txt_p_gen * txt_q_gen lab_phin_gen Caption = (txt_p_gen - 1) * (txtqgen-1) lab_e_gen. Caption = Findkey(txt_p_gen, txt_q_gen) txt_e = lab_e_gen. Caption txtn = iabngen. Caption lab_d_gen. Caption = FindOtherKey (txt_p_gen, txt_q_en, lab_e_gen, Caption) txt_d = lab_d_gen. Caption End Sub Private Sub btn_loesch_unversch_Click () txtunversch. Text=""

txtunverschascii. Text =""<BR> <BR> <BR> <BR> <BR> txtverkett. Text ="" End Sub Private Sub btn_loesch_versch_Click() txt_versch. Text ="" txtverkett. Text ="" End Sub Private Sub btn_schl_gen_Click() fram_schl_gen.Visible = Not fram_schl_gen.Visible End Sub Private Sub btn_verifi_Click() Dim hilfstring1, hilfstring2 As String hilfstring1 = "" hilfstring2 = "" If InStr (1, txt_verifi.Text, "/") > 0 Then hilfstring1 = Left (txt_verifi.Text, Instr (1, txtverifi. Text,"/")-1) Call ascii_enc(hilfstring1, hilfstring2) txtunverschverifi. Text = hilfstring2 hilfstring1 = "" hilfstring2 ="" hilfstring1 = Right (txtverifi. Text, Len (txt_verifi.Text) - InStr (1, txtverifi. Text,"/")) If Right (hilfstring1, 1) <>""Then hilfstring1 = hilfstring1 + "" End If

Call entschluesseln(hilfstring1, hilfstring2, txt_d, txt_n) txtentschverifi. Text = hilfstring2 hintergrundfarbe = lab_ident.BackColor If StrComp (txtentschverifi. Text, txtunverschverifi. Text) Then ! abident. Caption ="NICHT ECHT" lab_ident.BackColor = RGB (255,0, 0) Beep Else lab_ident. Caption ="ECHT" lab_ident.BackColor = RGB (0, 255,0) End If End If End Sub Private Sub btn_versch_Click() Dim tempstring As String tempstring ="" Call verschluesseln(txt_unversch.Text, tempstring, txt_e, txt_n) txt_versch.Text = tempstring tempstring ="" Call ascii_dec(txt_unversch. Text, tempstring) txtunverschascii. Text = tempstring txtverkett. Text = txtunverschascii. Text +"/"+ txtversch. Text

End Sub Private Sub lab_ident_Click() lab_ident. Caption ="" lab_ident. BackColor = UserForm1. BackColor End Sub Beispiel 3 : Zu verschlüsselnde Nachricht in verschlüsseltes Bitmuster oder Zahlenfolge umwandeln Mit dem in Beispiel 2 dargestellten Programmcode wird ein privater Schlüssel = 185, ein öffentlicher Schlüssel = 137, und das Modul = 391 erzeugt.

Die zu verschlüsseln. de Nachricht ist der Buchstabe"A", der als Dezimalzahl entsprechend dem ASCII-Code die Zahl 65 ist bzw. binär der Ziffernfolge 0100 0001 entspricht.

Zur Verschlüsselung wird die Nachricht mit dem privaten Teil des Schlüssels verschlüsselt.

Die Verschlüsselungsfunktion ist E (x) = xe mod n, in diesem Fall also E (x) = 65 185 mod 391 = 241 Die verschlüsselte Nachricht ist in Dezimalzahldarstellung 241, und als Binärzahl 1111 0001.

Beispiel 4 : Nachricht und Code in Data Matrix Code ECC200 erzeugen, Kennzeichnung des Produktes Aus der in Beispiel 3 generierten verschlüsselten Nachricht in unverschlüsselter und verschlüsselter und jeweils in binärer Form wurde entsprechend der Regeln in"AIM International Symbology Specification Data Matrix, Annexe M"mit dem Wolke Drucksystem m600 (Controller Art. Nr. : 620100) ein Data Matrix Code erzeugt und dargestellt : unverschlüsselt verschlüsselt dezimal : 65 241 binär : 0100 0001 1111 0001 Data Matrix Code : Der dargestellte Data Matrix Code wurde mit einem Data Matrix Code-Drucker, beispielsweise Wolke Drucksystem m600/Druckkopf Art. -Nr. 620300, auf eine Medikamentenverpackung aufgedruckt.

Ebenfalls auf der Verpackung aufgedruckt wurde die unverschlüsseite Nachricht in Dezimal-und Binärschreibweise.

Beispiel 5 : Lesen der im Data Matrix Code enthaltenen Informationen

Die im Data Matrix Code enthaltenen Informationen können beim Großhandel mittels stationärem Codeleser, beispielsweise handelsübliche Fabrikate der Pharma Controll Electronic GmbH, Typ : Kamera Data Matrix Control System, ausgelesen werden.

Eine Kontrolle auf Serienfälschungen erfolgt durch Vergleich mit bereits bekannnten Identifikationsnummern.

In der Apotheke werden die im Data Matrix Code enthaltenen Informationen beispielsweise mittels Handlesegeräten wie dem Fabrikat Weich Allyn Inc., Typ : 4410HD-131CK ausgelesen.

Beispiel 6 : Decodieren und Verifizieren der verschlüsselten Nachricht Der öffentliche Schlüssel und das Modul werden vom Hersteller des Produktes (zum Beispiel des Arzneimittels) im Internet offeriert.

Die Entschlüsselungsfunktion ist D (x) = xd mod n.

Die verschlüsselte Nachricht entsprechend Beispiel 4 : dezimal 241 = binär 1111 0001, daher ist D (x) = 241137 mod 391 = 65.

Die entschlüsselte Nachricht entspricht daher dezimal 65, bzw. binär 0100 0001.

Der Vergleich der entschlüsselten Information mit der unverschlüsselten Information erfolgt zur Feststellung der Originalität.

Die entschlüsselte Nachricht (A) ist : dezimal 65 = binär 0100 0001,

die aus dem verschlüsselten Data Matrix Code gelesene unverschlüsselte Nachricht lautet ebenfalls dezimal 65.

Die Umwandlung der ASCII-Darstellung des entschlüsselten Codes und der unverschlüsselten Nachricht in Zeichenfolge ergibt die Nachricht"A"in Klartext, die der aus dem verschlüsselten Data Matrix Code gelesenen unverschlüsselten Nachricht entspricht.

Der Vergleich"A"="A"zeigt, daß der Data Matrix Code auf dem Produkt mit dem geheimen Schlüssel des Herstellers erzeugt wurde. Das Produkt ist somit echt.

Zur Entschlüsselung und Verifizierung wurde das in Beispiel 2 beschriebene Programm benutzt.

Beispiel 7 : Kennzeichnung eines Blisters enthaltend ein Medikament Zur besseren Handhabung und universelleren Kennzeichnung werden die unverschlüsselten Elemente der Nachricht und die verschlüsselte Nachricht in zwei getrennten Data Matrix Code-Symbolen dargestellt.

Das Beispiel wurde analog zu den Beispielen 1 bis 6 durchgeführt.

Der private und öffentliche Schlüssel wurden mit der Modulgröße von 1024 bit entsprechend Beispiel generiert.

Die zu verschlüsselnde Nachricht war eine individuelle Identifikationsnummer bestehend aus LOT-Nr. (40A020), EXP (10.2003), PZN (-0587985) und individueller Kennung (00000001).

Die individuele Identifikationsnummer wurde in der folgenden Schreibweise <LOT>40A020<EXP>10. 2003<PZN>-0587985<SN>00000001 mit dem privatem Schlüssel in Data Matrix Code ECC200 verschlüsselt, wobei die unverschlüsselte Nachricht in Data Matrix Code-Symbol 1 abgebildet wurde (entsprechend einer Symbolgröße von 24x24 Data Matrix-Module) und die verschlüsselte Nachricht in Data Matrix Code-Symbol 2 abgebildet wurde (entsprechend einer Symbolgröße von 52 x 52 Data Matrix-Module) Gekennzeichnet wurde ein Blister enthaltend ein Medikament.

Die Kennzeichnung des Medikamentes, das Lesen der im Data Matrix Code enthaltenen Informationen und das Entschlüsseln und Verifizieren der verschlüsselten Nachricht erfolgte gemäß Beispiel 4 bis 6.

Beispiel 8 : Kennzeichnung einer Verpackung eines Medikamentes In Analogie zu den Beispielen 1 bis 7 wurde eine Verpackung eines Medikamentes gekennzeichnet, wobei die Modulgröße 1024 Bit betrug, die individuelle Identifikationsnummer aus PZN, LOT (Chargennummer) und einer individuellen Seriennummer bestand.

Das Verfahren zur Verschlüsselung war das RSA-Verfahren.

Die Abbildungen 1 bis 3 zeigen das erfindungsgemäße Verfahren gemäß Beispiel 8.