Aplikace pro šifrování SMS

Jde o ukázkovou aplikaci v technologii J2ME (Java Micro Edition),tedy verzi Javy pro mobilní zařízení.

Aplikace šifruje velmi jednoduchou metodou SMS, obsahuje vlastní seznam telefonních čísel, seznam klíčů a seznam příchozích SMS. Šifrovací algoritmus je triviální a využívá náhodných klíčů, jejichž distribuce je zajišťována přenosem pomocí technologie Bluetooth.

Ačkoliv je algoritmus šifrování velmi triviální, pokud je dodržen jistý systém (1.klíč je náhodný - při opravdu "náhodném" zvolení klíče nebo při jeho generování "losováním" znaků v náhodných intervalech lze považovat klíč za náhodný,2. pokud není zpráva delší než klíč a 3. klíč je použit pouze jednou) ,pak se jedná o tzv. Vernamovu šifru. Předpokládané vlastnosti této šifry jsou celkem intuitivní a na tento algoritmus by asi přišel každý. Co je na této šifře velmi zajímavé je to, že ač je takto jednoduchá, je v principu neprolomitelná (za dodržení předchozích podmínek). Slabinou je distribuce klíčů, kterou lze v tomto případě při distribuci přes Bluetooth akceptovat.

Aplikace byla otestována na několika telefonech Nokia, pokud dochází k problémům, pak většinou s předáváním klíčů přes Bluetooth.

Zdrojové kódy jsou volně stažitelné (respektive velmi brzo budou).

Aplikace je velmi jednoduchá. Pro kompatibilitu mezi aplikacemi jsou důležitá čísla verzí a čísla verzí šifrovacích algoritmů (bude popsáno).

Aplikace nemá přístup do paměti telefonu (do kontaktů, SMS atd.) Výměna SMS probíhá tak, že SMS je zasílána zároveň s číslem portu (jedna z dalších vlastností při zasílání SMS) a zároveň při příchodu SMS s určením portu (pro tuto aplikaci byl zvolen port 51978) je uživatel dotázán, zda má být aplikace spuštěna (a má tak přijmout příchozí SMS).

Stávající verze je pouze testovací, nicméně funkční. Kód bude podroben dalšímu refaktoringu a pravděpodobně přibude další funkcionalita (mimo jiné bude nejspíše přidána autorizace přístupu k aplikaci, tj. bude možnost vyžadovat heslo).

Download (pro prime stazeni do mobilniho telefonu) J2MEnigma JAD

Download souboru JAR (pro instalaci pomoci PC) J2MEnigma JAR