[python] Sifrovani

Ivo Štolpa pussa na pussa.cz
Pátek Srpen 19 09:35:11 CEST 2005


Milan Zmatlo napsal(a):

> Zdravim,
>
> obracim se na zdejsi osazensvto s nasledujicim mirnym OT:
>
> Rad bych k zakaznikovi distribuoval obecne "prelozeny kus kodu", ktery 
> by obsahoval nejakym zpusobem zasifrovanou informaci o nastaveni teto 
> konkterni distribuce (poc. uzivatelu, casova platnost atp.) Tento kod 
> bych generoval pro kazdou instalaci unikatni.. to neni problem.
>
> Potrebuji poradit s pouzitim vhodneho algoritmu na zasifrovani / 
> rozsifrovani teto informace. Nerad bych ale do aplikace ukladal nejaky 
> klic pro sifrovani a desifrovani, to mi nepripada vhodne. Radsi bych 
> mel dva klice. Mam spis predstavu, nez znalosti..
>
> Natuknete me prosim, kudy se vydat....
>
Já to dělám trochu "naruby" pomocí md5, který je v Pythonu standardním 
modulem. Ty informace k uživateli dopravuji zcela veřejně v textovém 
souboru. Při prvním spuštění aplikace se zobrazí registrační formulář, 
do kterého načtu hodnoty z toho textového souboru (kdyby tam nebyl, tak 
by to holt uživatel musel všechno vypsat ručně). Jako poslední je místo 
pro zadání kódu md5, který musí uživatel vyplnit dle dodané registrační 
karty. Graficky to může být rozsekáno do několika částí, aby se to při 
zadávání lépe kontrolovalo. Program pak z vyplněných údajů vypočítá kód 
md5 a porovná ho se zadaným kódem. Pokud se rovná, je to OK vše se 
zapíše někam do hloubi programu. Nemusí se to nějak moc schovávat, 
protože při každém startu se z uložených hodnot vypočítá kód md5 a 
porovná s uloženým kódem, takže by poznal, že se s údaji manipulovalo a 
zobrazil by znovu registrační formulář.

Jak jsem říkal není to bůhvíco, ale šel jsem cestou nejmenšího odporu. 
Nelíbí se mi například, že při prodloužení musí uživatel zadat nové 
datum platnosti, nebo při rozšíření o další modul jej zafajfknout a poté 
zadat 32znakové hausnumero. Na druhou stranu je možné mít jeden instalák 
(třeba pro internet bez toho textového souboru). Uživatel pak sice musí 
vyplnit všechno, ale pro mne to znamená pouhé zaslání registrační údajů 
včetně kódu md5 e-mailem nebo poštou.

Pokud někdo zná lepší řešení, sem s ním.

Ivo

-- 
Ing. Ivo Štolpa

***********************************************
PUSSA software, Žižkova 13, 58601 Jihlava
e-mail: pussa na pussa.cz, ivo.stolpa na seznam.cz
stránky: http://www.pussa.cz
mobilní telefon: 602 735 124
pevná linka: 567 320 386
fax: 602 783 071
***********************************************





Další informace o konferenci Python