AVR-Crypto-Lib

Aus LaborWiki
Wechseln zu: Navigation, Suche


Wo finde ich das

SVN: [1]

via Track (auch svn, aber geeignet zum direkten Browsen):[2]

Short Facts

  • kleine Implementierungen von Kryptofunktionen in C (fast alle Mikrocontroller)
  • noch kleinere Implementierungen von Kryptofunktionen in Assembler (ATmega, gnu-avr-as)
  • Lizenz: GPLv2 (nahezu alles)


About

Die crypto-avr-lib stellt ein reihe kryptographischer Funktionen für Atmels AVR Mikrocontroller zur Verfügung. Aufgrund der besonderen Begrenzungen in Mikrocontrollern (sehr wenig Speicher, sowohl RAM als auch Flash bewegen sich je nach Controller im Byte oder im unteren KiB Bereich), kann in der Regel nicht eine Standard oder Referenzimplementierung (in C) für den Mikrocontroller genutzt werden. Daher werden hier zum einen an die Anforderungen angepasste C Implementierungen zur Verfügung gestellt (die sich auch leicht auf andere Systeme portieren lassen) wie auch optimierte Assembler Implementierungen.


Was soll rein

Symmetrisch

Block

  • aes (davon gibt es eigentlich schon eine Menge)
  • cast6
  • twofish
  • idea
  • kasumi

Stream

  • seal
  • A5/1
  • Turing
  • Rabbit

Hashes

  • ripemd

Asymmetrisch

  • DH
  • RSA
  • ElGamal
  • EC
  • DSA

Was ist da

Symmetrisch

Block

  • XTEA
  • CAST5
  • Camellia
  • Skipjack
  • RC6
  • SEED
  • DES
  • SHABEA
  • Serpent

Stream

  • ARCFOUR (RC4 kompatibel)

Asymmetrisch

Hashes

  • SHA-256
  • SHA-1
  • MD5

Sonstiges

  • HMAC-SHA256 (nach RFC 2104)
  • PRNG

Facts

Name Kategorie C ASM Blockgröße Ausgabegröße/Keylänge Größe im Flash Größe des States Bemerkungen
SHA-256 Hashfunktion x x 512 Bit 256 Bit 1600 Byte (ASM) 40 Byte gilt als relativ sicher
MD5 Hashfunktion x - 512 Bit 128 Bit 20 Byte gilt als wenig sicher (Kollisionen gefunden)
XTEA Blockcipher x x 64 Bit 128 Bit 504 Byte (ASM) - Wikipedia: As of 2004, the best attack reported on XTEA is a related-key differential attack on 26 out of 64 rounds of XTEA, requiring 220.5 chosen plaintexts and a time complexity of 2^115.15 (Ko et al, 2004).
CAST5 Blockcipher x - 128 Bit 0-128 Bit 75 Byte gilt als ziemlich sicher (Standard in GPG), aber fett (8k S-Boxen!)
ARCFOUR Streamcipher x x 8 Bit (Ausgabe) 8 - 2048 Bit 122 Byte (ASM) 258 Byte ist kompatibel mit RC4(TM)