Verschlüsselung VBA Entschlüsselung SPS

Gast #3182459
Lesenswert?

Hallo Zusammen,
ich habe leider keinerlei Erfahrung was Kryptographie betrifft und stehe 
nun vor folgender Situation und erhoffe mir Hilfe und Tipps.

Situation bisher:
Aus Access heraus wird mittels VBA ein Barcode erzeugt.
Barcode wird auf Produkt gedruckt.
Automation liest Barcode ein und erkennt Produkt.

Um Produktpiraten das Leben schwerer zumachen soll es nun wie folgt 
ablaufen:
Access verschlüsselt mittels kundenspezifischen Passwort Informationen 
und
erstellt Barcode.
Barcode wird auf Produkt gedruckt.
Automation (SPS bisher in AWL programmiert) entschlüsselt Barcode und 
erkennt Produkt.


Den String mittels VBA zu verschlüsseln ist nicht das Größte Problem 
dort stehen Libaries und Online-Tutorials zur Verfügung. Das 
Entschlüsseln auf der SPS scheint mir der Knackpunkt zu sein.

Bisher hätte ich eine XOR-Verschlüsselung für am einfachsten gehalten, 
jedoch sehe ich auch dort die Schwachpunkte durch den sich nicht 
Ändernen Key.
Gibt es einfache Alternative Verfahren oder könnte man die 
XOR-Geschichte sicher machen indem man den Quellcode auf der SPS 
schützt?
Gast #3182477
Lesenswert?

Die Produktzusammensetzung ändert sich täglich, so das die Informationen 
im Barcode sich auch ändern.  Wir haben nur die Befürchtung, dass andere 
Firmen Produkte für die Automation erstellen und somit nur noch unsere 
Automation benötigen nicht das Zubehör.
Gast #3182490
Lesenswert?

ich versteht das Problem noch immer nicht.

Warum erzeugt du denn nicht eine Zufälligen Barcode. Dieser wird aber 
gespeichert und die SPS gleicht mit der Liste ab ob diese barcode gültig 
ist.

Verschlüssung ist glaube ich nicht die Lösung diese Problems. Wenn 
überhaupt geht es um "echtheit" und dafür gibt es Signaturen. Man 
brechnet also über den Barcode eine prüfsumme mit einem geheimen 
schlüssel. Beim Prüfen vom Barcode prüft man dann mit dem öffentlichen 
schlüsseln ob die Barcode "echt" ist.

Dann ist aber immer noch das Problem, das man einen vorhanden barcode 
kopieren kann.

Die Frage ist, wiviel zeichen man in dem Barcode speichern kann.
Gast #3182575
Lesenswert?

Könntest du "(...)Man
brechnet also über den Barcode eine prüfsumme mit einem geheimen
schlüssel. Beim Prüfen vom Barcode prüft man dann mit dem öffentlichen
schlüsseln ob die Barcode "echt" ist."
eventuell an einem Beipiel etwas verdeutlichen?
Gast #3182710
Lesenswert?

Hey,
ich hab mich etwas eingelesen und scheinbar ist 
Public-Key-Verschlüsselung/Digitale Signatur genau das was ich bräuchte 
und wollte.

Der Barcode ist kann max 40 Zeichen enthalten.

Bei der Umsetzung sehe ich nur größere Probleme gerade was die SPS 
angeht.
Gast #3182736
Lesenswert?

Gibt es denn kein einfacheres/unsicheres Verfahren mit dem man eine 
Digitale Signatur erzeugen kann?
In erster Linie soll es ja nur die Nach-Produktion erschweren und 
natürlich auch schnell Umsetzbar sein für uns.
Gast #3182759
Lesenswert?

J. Baldauf schrieb:
> Der Barcode enthält bisher natürlich auch Informationen die nicht
> wegfallen dürfen und die SPS ist leicht auslesbar und hat auch keine
> Verbindung zu einer Datenbank.

dann musst du halt die "unsichere" Variante wählen und dir selber eine 
art Prüfzumme über die Felder ausdenken und diese dann Prüfen.

wenn du z.b. 4byte frei hast, dann kannst du eine CRC32 über die Daten + 
einen Key berechnen, diesen speicherst du dann ein den Barcode mit ab.

Ob dir das sicher genug ist kann ich nicht beurteilen, für einen 
ersthaften angriff recht es zumindest nicht.

Schaffst eine CRC32 in der SPS zu brechnen?
Gast #3182793
Lesenswert?

Und dann könnte ich auch die noch einfachere Variante mit XOR nehmen. 
Das wären auf der SPS nur ein paar Zeilen.
Schade, jetzt wüsste man ne Ideale Methode (Digitale Signatur) und 
scheiterst an der Hardware und meinem Können :)
Gast #3182795
Lesenswert?

J. Baldauf schrieb:
> Und dann könnte ich auch die noch einfachere Variante mit XOR nehmen.
> Das wären auf der SPS nur ein paar Zeilen.

xor ist nun wirklich exterm einfach zu knacken. Dann wenigsten ein 
CRC32.

> Schade, jetzt wüsste man ne Ideale Methode (Digitale Signatur) und
> scheiterst an der Hardware und meinem Können :)
gibt ja auch 3d Barcodes - dort passt das rein. Und das Können kann man 
durch lernen erweitern.
#3182801
Lesenswert?

Die Ver und Endschlüsselung könnte man ja auch auslagern. Z.B. an einem 
Comport der SPS (über Erweiterungsmodul) einen eigenen Microkontroller 
hängen der den Barcodeinhalt von der SPS bekommt und dan einfach ein OK 
oder nicht OK zurücksendet.
Das Hauptbroblem sehe ich aber immer noch im einfachen Kopieren des 
Codes.
Jeder Code darf ja nur einmal vorkommen, wie soll ein Oflinesystem sowas 
sicherstellen?
Der externe Kriptoprozzesor könnte da ja eine Tabelle verwalten, nur die 
muß dann wohl auch irgendwan mal wieder aufgefüllt werden.
Macht ihr die Wartung der Kundenanlagen?

Eigendlich habt ihr ja das gleiche Problem wie die Hersteller von 
Druckern die möglichts Fremdtinte verhindern wollen.
Persönliche Seite #3182854
Lesenswert?

Eine weitere Möglichkeit wäre es, die Seriennummer der SPS (oder etwas 
anderes, diese eineindeutig kennzeichnendes) zum Entschlüsseln zu 
verwenden.

Dann muss das mit dem Barcode gekennzeichnete Ding gezielt für die 
jeweilige SPS-Installation codiert sein, und damit ist eine Kopie des 
Barcodes an jeder anderen SPS-Installation nutzlos.

Eine Mehrfachverwendung gleicher Barcodes an ein und der selben SPS 
sollte auch leicht verhinderbar sein, die kann sich ja merken, welche 
Seriennummern der anzuschließenden Geräte sie schon kennt.


Andererseits sollte man sich auch mal zurücklehnen und überlegen, ob all 
der Aufriss wirklich nötig ist -- ist denn der Kundenkreis mit so 
deutlicher "krimineller Energie" ausgestattet, daß so ein 
Sicherungsverfahren benötigt wird?
#3182876
Lesenswert?

Das mit der laufenden nummer muß nicht unbedingt klappen, wenn ich das 
richtig verstanden habe geht es um Verbrauchmaterial das der Maschiene 
zugeführt wird und wo überwacht werden soll das es orginal ist. Wie bei 
meinem Beispiel die Druckerpatronen. Durch eine Lagerhaltung können da 
durchaus die Reihenfolge geändert werden.
Da ihr ja die Wartung macht währe ja vieleicht ein Verfahren ähnich der 
TAN Listen bei Onlieüberweisungen denkbar.
Jede Prüfnummer ist nur einmal gültig. Eine neue Liste lädt ihr dann bei 
der nächsten Wartung hoch.
Gast #3182881
Lesenswert?

Allzu lange Romane lassen sich sowieso nicht in einem Barcode 
verstecken. Es sei denn du benutzt den neuen Quadratischen.
Sperrst Du das Auslesemodul in der SPS gegen das Auslesen, so bleibt für 
den Unkundigen nur eine Zahlenkolonne, deren Interpretation von außen 
nicht möglich ist. Willst Du auf Nummer sicher gehen, verodere das Ganze 
noch mit deiner Lieblingsprimzahl und, was ganz wichtig bei solchen 
Kapriolen ist, sperre das Ganze nach jedem Durchlauf für einige Zeit. 
Eine Produktion wird nicht im Sekundentakt umgestellt. Ein erneuter 
Versuch nach 0,5 Sekunden ist also als versuchter Einbruch zu werten und 
kann also in jedem Falle als Fehler gewertet werden. Solange Du Deinen 
Schlüssel nicht außen draufpappst, sollte ein solches System, mit 
normalen Mitteln, nicht zu knacken sein.
Gast #3182912
Lesenswert?

J. Baldauf schrieb:
> Wie schon angesprochen ist das Auslesen der SPS eine große Schwäche.

ich fand die Idee von Jürgen D. gut, die Entschlüsselung extern zu 
machen. Wie ist denn der Barcodescanner an die SPS angebunden? Wenn er 
per RS232 angebunden ist, dann könnte man ja auch eine "black box" 
zuwischen schalten die den barcode entschlüsselt und ihn dann einfach 
weiterreicht.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren