Forum: Mikrocontroller und Digitale Elektronik SSL mit AVR möglich?


von Tim (Gast)


Lesenswert?

Hallo,

mich würde mal interessieren ob es theoretisch möglich wäre SSL (für 
HTTP und eventuell SSH Verbindungen) in einem ATmega zu implementieren. 
Ich kenne mich leider kaum mit den technischen Details für SSL aus. Wie 
sieht das mit dem Rechenaufwand aus, kommt man da mit maximal 20Mhz 
hinterher? Und dann wäre da noch die Frage nach dem benötigtem Flash 
Speicher.

von bla (Gast)


Lesenswert?

Die Verbindungsaufnahme fuer SSL ist eine asymmetrische 
Verschluesselung, nachher fuer den Transfer eine symmetrische 
Verschluesselung. Das wird sehr viel und sehr rechenaufwendigen code 
benoetigen. Schau Dir mal die SSL sourcen fuer linux an, um einen Idee 
zu bekommen. Ich denke ein AVR ist die falsche Groesse.

von Tim (Gast)


Lesenswert?

hmm.

gibst eigentlich alternativen zu SSL bei HTTP?
Bzw. bei dem symmetrischen Teil, was für Verschlüsselugs Alogos stehen 
da zu Verfügung? Mir ist nur AES geläufig.

von Florian D. (code-wiz)


Lesenswert?

Die Frage ist, wie sicher Du es haben möchtest. Ein genügend langer Key 
kann auch mit XOR auf die Daten angewendet werden. Das geht schnell, ist 
aber anfällig für Plaintext-Angriffe.

von Tim (Gast)


Lesenswert?

Es geht nur um das Login (User und Passwort sollen verschlüsselt 
werden), die eigentlichen Daten müssen dann nicht mehr verschlüsselt 
werden.
Ein simples XOR würde zwar in frage kommen, aber ein etwas robusterer 
Algo wäre schon ganz schön.

Gibt es eigentlich noch andere Ansätze zum Schlüsselaustausch als 
Hellman?

von R. M. (rmax)


Lesenswert?

Schau Dir mal die "HTTP Digest access authentication" an:

http://en.wikipedia.org/wiki/Digest_access_authentication
http://www.ietf.org/rfc/rfc2617.txt

Dafür brauchst Du im ATmega "nur" den Protokoll-Code und MD5, was 
zusammen aber immer noch um einiges leichtgewichtiger sein dürfte als 
die schlankste SSL-Implementierung.

von Hans (Gast)


Lesenswert?

Die Mannen der SUN Research Lab haben auf einem AVR einen
SSL Webserver auf Basis von TLS1.2 implementiert. Den
asymetrischen RSA (laufzeit ~1Min) haben sie durch einen
asymetrischen ECC (elliptic curve cryptography) (Laufzeit ~1s)
(ECC im Standard von TLS1.2 "genormt") ersetzt.

Link: http://research.sun.com/spotlight/2004-12-20_vgupta.html

-Hans

von Tim (Gast)


Lesenswert?

Was das SUN Research Lab sieht sehr interessant aus, aber mir scheint es 
das es noch an Browser Unterstützung fehlt.

Aber "HTTP Digest access authentication" sieht sehr gut aus, ich kannte 
nur die "normale" "HTTP access authentication" bei der ja das Passwort 
mit überragen wird. Ich hoffe das es von allen modernen Browsern 
unterstützt wird, ich hatte schon vor etwas in die Richtung (Mit uniq 
IDs und hash Werten ) in JavaScript zu realisieren.

von Tim (Gast)


Lesenswert?

Hab mal ein wenig getestet.
IE 6, Firefox 2.0, Opera unterstüzen digest auth 100%
curl 7.13.2 nur eingeschrängt (ignoriert opt Parameter)
wget  1.9.1 versucht immer zuerst ein Basic auth (Password wird 
unverschlüsselt gesendet), wenn das nicht klappt soll wget ein digist 
auth versuchen, tut es bei mir aber nicht => wget funktioniert nicht

von R. M. (rmax)


Lesenswert?

Wie sieht es mit neueren Versionen von wget aus? 1.9.1 hat immerhin 
schon fast 4 Jahre auf dem Buckel, die aktuelle Version ist 1.10.2.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.