Programoje pateikiami šie šifravimo ir iššifravimo metodai: afininė kriptosistema lotyniškam tekstui (26 raidės), afininė kriptosistema kirilicos tekstui (30 raidžių), RSA kriptosistema ir АSЕ kriptosistema.
Afininė kriptosistema yra privataus rakto kriptosistemų pavyzdžiai. Privataus rakto kriptosistemoje, kai žinote šifravimo raktą, galite greitai rasti iššifravimo raktą. Taigi, žinant, kaip užšifruoti pranešimus naudojant tam tikrą raktą, galite iššifruoti pranešimus, kurie buvo užšifruoti naudojant šį raktą.
RSA kriptosistema yra viešojo rakto kriptosistema, viena iš seniausių plačiai naudojamų saugiam duomenų perdavimui. Viešojo rakto kriptosistemoje šifravimo raktas yra viešas ir skiriasi nuo iššifravimo rakto, kuris laikomas paslaptyje (privatus). RSA naudotojas sukuria ir paskelbia viešąjį raktą, pagrįstą dviem dideliais pirminiais skaičiais ir pagalbine verte. Pirminiai skaičiai laikomi paslaptyje. Pranešimus gali užšifruoti bet kas, naudodamas viešąjį raktą, bet iššifruoti gali tik tas, kuris žino privatų raktą.
Išplėstinis šifravimo standartas (AES), taip pat žinomas pirminiu pavadinimu Rijndael, yra elektroninių duomenų šifravimo specifikacija, kurią 2001 m. nustatė JAV Nacionalinis standartų ir technologijų institutas (NIST). AES yra Rijndael blokinio šifro variantas. Rijndael yra skirtingų raktų ir blokų dydžių šifrų šeima.
Programoje naudojami AES/CBC/PKCS5Padding, kuris yra kriptografinis veikimo režimas, naudojamas saugiam duomenų šifravimui ir iššifravimui. CBC (Cipher Block Chaining): tai yra darbo režimas, kai kiekvienas duomenų blokas sujungiamas su ankstesniu bloku, naudojant XOR operaciją, prieš jį užšifruojant. Pirmasis blokas yra sujungtas su iniciacijos vektoriumi (IV), kuris turi būti unikalus kiekvienam užšifruotam pranešimui. CBC režimas suteikia geresnę apsaugą nuo atakų, kurios bando pakeisti pranešimų turinį. PKCS5Padding: tai duomenų užpildymo schema, užtikrinanti, kad įvesties duomenų ilgis yra bloko dydžio kartotinis (šiuo atveju 128 bitai). PKCS5Padding prideda baitus prie paskutinio bloko pabaigos, kad jis būtų pilnas. Šiuose papildomuose baituose yra informacija apie pridėtų baitų skaičių.
Naudodami visus programėlėje esančius šifravimo būdus, šifruotus failus galima saugoti pasirinktame įrenginio kataloge, kuriame yra šifruojamas failas, kurio pavadinimuose yra tekstas „Šifruota...“ plius pavadinimas šifruojantis failas, skliausteliuose jos plėtinys ir šifravimo būdas kaip AES.
Šifruotas tekstas gali būti išsaugotas kaip failai atsisiuntimo įrenginio aplanke.
Programoje privatus AES raktas, skirtas išsaugoti, yra užšifruotas RSA metodu ir išsaugomas kaip atskiras failas. Taigi naudojant AES šifravimą išsaugomi pirmieji failai su pavadinimais:
EncryptedAes_xxx(.txt).bin – užšifruotas failas xxx.txt;
EncryptedAesRSAPrivateKey_xxx.bin – privatus RSA raktas, skirtas šifruoti privatų AES raktą tam pačiam failui xxx.txt;
EncryptedAesKey_xxx.bin – privatus AES raktas, užšifruotas RSAPrivate Key, skirtas tam pačiam failui xxx.txt;
ivBin_xxx.bin – to paties failo xxx.txt inicijavimo vektorius;
Taigi naudojant RSA šifravimą išsaugomi trys failai su pavadinimais:
EncryptedRSA_xxx(.txt).bin – užšifruotas failas xxx.txt;
EncryptedRSAPrivateKey_xxx.bin – privatus RSA raktas;
EncryptedRSAPublicKey_xxx.bin – viešasis RSA raktas;
Naudojant Affine Latin šifravimą, išsaugomi du failai su pavadinimais:
EncryptedAffineLatin_xxx(.txt).bin – užšifruotas failas xxx.txt;
EncryptedAffineLatinKeyB_xxx.bin – perkeliamas b param;
Lotynų kalba keičiasi iš kirilicos ir afininės kirilicos užšifruoti failai.
Iššifruojant visi atitinkamo šifravimo metodo failai ir atitinkamas šifruotas failas (failas su užšifruotais duomenimis ir atitinkamais raktais) turi būti tame pačiame aplanke.
Iššifruojant pirmiausia pasirenkamas failo šifravimo būdas, pasirenkamas ir failas su užšifruotais duomenimis.
Programoje yra reklaminių antraščių, kurios gali įjungti arba išjungti skelbimų rodymą.
Programoje yra pagalba ir nuorodos į kitas autoriaus programas.