mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik SSP Smiley® Secure Protocol


Autor: Manfred Brunni (fredl0511)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Forumgemeinde,

ich möchte gerne ein Interface für einen Hopper (Münzausgabegerät) 
programmieren welcher mittels SSP Protokoll mit der Host Maschine 
kommuniziert.

Meine Frage: Hat jedmand schon mal so ein SSP Protokoll ausprogrammiert?

Die Daten sollen auch noch mit einem 64Bit (teilweise auch 
128Bit)Schlüssel chiffriert werden(AES). Der Schlüsselaustauch soll dann 
mittels Diffie-Hellman Prinzip ausgetauscht werden.

Daten zum SSP Protokoll:http://www.vending-systems.com.ua/doc/ssp.pdf 
und des Hoppers: 
http://www.automated-transactions.de/documents/ga401.pdf

Check die Schlüsselgenerier bzw. Austauschprozedur nicht ganz.

Bin für jede Hilfe dankbar.

lg Manfred

Autor: Hans Hein (hanshein)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ein DH generiert ein shared secret, wobei eine MITM Attacke
moeglich ist. Normalerweise (wie bei SSL, ssh) wird
eine Authentisierung vorgenommen (z.B. RSA) um eine MITM
auszuschliessen, oft zweiseitig (Client Zertifikate bei SSL,
Public Key Auth bei ssh client).

Ich habe mir die Referenzen nicht im Detail angesehen, aber
nach dem ersten Durchskimmen habe ich keine Authentisierung
gefunden, will heissen (sofern die Authentiserung fehlt):
komplett unsicher, da koennte man auch Klartext uebertragen!

Der DH ist uebrigens mit 10.Klasse Mathematik zu verstehen,
sofern man akzeptiert, dass man (mittels dem primen Generator g)
in einem Restklassenkoerper arbeitet und das "(mod g)"
beim Lesen/Verstehen einfach weglaesst.

Einfach die Exponentialgesetze mal nachsehen und dann den DH ;-)

Viele Gruesse,
Hans

Autor: Manfred (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hallo hans,

ob das ganze jetzt 99.99%ig sicher ist, ist mir eigentlich jetzt egal, 
wie gesagt, das ganze ist ja schon erfunden worden.

Hilfreich wäre irgendein Code Schnipsel, hoff doch noch, dass wer mal 
was mit dem SSP zu tun gehabt hat und ein wenig "ausplaudert"...

Gruß Manfred

Autor: M.B. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Manfred,

bist du schon einen schritt weitergekommen?

Autor: Manfred Brunni (fredl0511)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

leider nicht sehr weit. Ich hatte einen Smart Hopper als Leihgerät bei 
mir, musste diesen aber wieder retour schicken. Ich hab gerade noch die 
AES Kodierung zusammenstricken können. Es handelt sich dabei um das eSSP 
Protokoll also 128 Bit AES + Diffie Hellman Schlüsselaustausch. AES wie 
gesat ok, da gibs was fast vorgekautes im netz, Diffie Hellman konnte 
ich nicht mehr machen, die 128 Bit Primzahlgenerieren (zufallszahl) hab 
ich noch nicht ganz durchblickt und obs mit nem 8-Bit µC überhaupt in 
annehmbarer Zeit funzt....

Wie weit bist du???

Gruß, manfred

Autor: M.Gast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich fange gerade quasi erst an, habe mir heute mal das ssp durchgelesen, 
bilde mir ein den deffie hellmann verstanden zu haben, zumndest die 
vorgehensweise.
Aber wie ich primzahlen erzeugen kann, habe ich bis jetzt noch nicht 
herausgefunden

Autor: M.Gast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ach noch was,

schau dir mal die xmegas von atmel an, die haben die aes schon an board! 
da brauchst du nur schlüssel und daten reinschreiben sowie die 
encryption oder decryption richtung und das ergebnis kannst du auslesen!

Autor: Manfred Brunni (fredl0511)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

Die Atmegas mit AES Chiffriereinheit kenne ich, wollte aber nicht wieder 
ein neues "Protoboard" basteln deswegen wollte ich mein ATMEGA2560 Board 
verwenden. Die AES Geschichte habe ich von: 
http://www.literatecode.com/2007/11/11/aes256/comm...

Wennst die Geschichte mit dem Diffie-Hellman durch hast, wäre ich dir 
dankbar wenn du wieder kurz nen Statusreport lieferst, möchte das (e)SSP 
Protokoll bei Gelegenheit doch irgendwann mal wieder in Angriff nehmen.

Viel Glück und gutes Gelingen!

Manfred

Autor: M.Gast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert

Autor: Manfred Brunni (fredl0511)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Morgen,

nen diffie hellman code schnipsel habe ich bereits, konnte es aber 
leider nicht mehr erfolgreich austesten. Den Code hab ich irgendwo im 
Netz gefunden, vl. eh hier im forum, k.a. muss halt vl. noch ein wenig 
angepasst werden. der Code verwendet glaub ich eine vordefinierte 1536 
Bit Primzahl laut irgendeiner Spezifikation oder so..

Vielleicht hilfts dir ja. Auf welchen µC programmierst du die Software 
eigentlich und welche Peripherie willst du ansprechen?

Wennst eine erfolgreiche Kommunikation mit der Peripherie geglückt ist, 
gib mir unbedingt bescheid, dann werd ich mir das leihgerät nochmals 
holen und genauer unter die lupe nehmen.

Gruß, Manfred

Autor: M.Gast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Manfred,

Bis jetzt haben ich nur eine Anfrage bekommen und es ist nicht sicher ob 
ich das machen muss / werde. Ich habe mich nur im Vorfeld mal 
informiert, um schneller reagieren zu können.

Falls es kommt, möchte ich gerne den Xmega256A3 benutzen und mit dem 
SMART Hopper und SMART Payout kommunizieren.

Und dann bekomme ich hoffentlich zeitnah auch die Peripherie zur Seite 
gestellt.

Melde mich dann wieder...

Autor: David (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

liest hier noch jemand mit? Ich benötige für ein Kassensystem Geräte zur 
Münz- und Scheinannahme bzw. -ausgabe und finde die SMART-Geräte 
(Hopper, Payout) sehr interessant. Ist hier schon jemand mit der 
Ansteuerung weitergekommen? Ich habe einige Erfahrung mit 
AVR-Controllern, auch ATXmega-Controllern, daher könnte ich deren 
AES-Einheit ganz gut einsetzen, denke ich. Ich wäre jedenfalls an einem 
Erfahrungsaustausch interessiert.

Grüße

David

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.