emLib è una libreria con funzionalità di base (crittografiche e codici di correzione degli errori) progettata per la portabilità su qualsiasi dispositivo. I moduli possono essere utilizzati in applicazioni PC e su dispositivi target embedded.
emLib è ottimizzato per le prestazioni di velocità e una ridotta impronta di memoria. Le sorgenti sono scritte completamente in ANSI-C. È incluso il codice di convalida per le API utilizzando modelli di test standard.
Caratteristiche principali
- emLib è scritta in ANSI-C e può essere utilizzata su praticamente qualsiasi CPU
- Facile da integrare utilizzando una semplice API
- Gli stessi moduli e la stessa API possono essere utilizzati nei programmi PC e sui target embedded
- Sono incluse applicazioni di esempio per i test e la convalida dei moduli
- Progettato per qualsiasi target e sistema
Contenuto della libreria
Modulo AES
Implementazione dell’algoritmo AES a 128 bit e 256 bit, incluso l’elaborazione a blocchi concatenati per la crittografia/decrittografia di più di 16 byte di dati.
Modulo DES
Implementazione dell’algoritmo DES (56 bit), incluso CBC per l’elaborazione di più di 8 byte di dati. Le funzioni DES possono essere chiamate più volte per ottenere una maggiore sicurezza (TDES, triple-DES).
Libreria CRC
Gestione di polinomi arbitrari fino a 32 bit di larghezza, in forma normale e invertita. Oltre alle funzioni CRC generiche, emLib CRC presenta implementazioni ottimizzate per i polinomi CRC più diffusi, tra cui CRC-CCITT, CRC-16 e CRC-32.
Libreria ECC
Fornisce routine per il rilevamento e la correzione di errori a più bit. Include implementazioni per la correzione di errori a 4, 8, 24 e 40 bit.