Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

  • 1 odgovor
  • 2.614 pregleda

Najnovija ↓

ASCII problem - pocetnicki python problem 04.09.2004. u 14:19 · pre 269 meseci #1
Vec dvije godine radim na jednom programu za enkripciju, princip rada je one-time pad, nije sad bitno da ulazim u sustinu programa, no postoji jedan problem.

Naime napravio sam da se tekst koji korisnik unese prebacuje u odgovarajuce ASCII vrijednosti i da se te vrijednosti smjestaju u listu kvarteta. Kod koji to obavlja izgleda ovako:

Code:

      kvartet = 4                                        
      P = select.poll()
      grupe = []
      fajl = raw_input("Unesite ime datoteke koju zelite enkriptirati: ")  
      f1 = open(fajl, "r")
      P.register(f1.fileno(),select.POLLIN)              

      duljina = os.stat(fajl)[ST_SIZE]                    
      while len(grupe) < duljina/2:
        grupa = ""
    while len(grupa) < kvartet:                      
      datum = ord(f1.read(1))
      if datum < 200:
        grupa+="%2.2d"%(datum%100)
    grupe.append(int(grupa))
      print grupe


Nakon sto se to obavi, tekst se XOR operacijom preklapa sa listom kvarteta izvucenih iz /dev/random-a. Takav se enkriptirani tekst prebacuje mailom. Korisnik zatim skida enkriptirani tekst direktno sa POP3 servera i dekriptira ga preklapajuci ga sa istom (tajnom) listom kvarteta cime se dobiva onaj pocetni tekst, odnosno lista kvarteta sa pocetka.

Problem je sto ne znam KAKO vratiti tu listu kvarteta s ASCII vrijednostima u pravi (razumljivi) tekst, a problem proizlazi iz toga sto se tekst onim prvim kodom ne prebacuje u "prave" ASCII vrijednosti...

Vjerojatno nista niste shvatili:)

Ali evo pokusat cu biti razumljiviji, kao primjer cu uzeti ovaj tekst (bez navodnika): "Elitesecurity tekst za enkripciju"

Taj tekst nakon prebacivanja u ASCII vrijednosti mojim kodom izgleda ovako:

[6908, 516, 115, 199, 1714, 516, 2132, 1601, 715, 1632, 2297, 3201, 1007, 1405, 1299, 506, 1710]

Dok bi u stvarnosti trebao izgledati otprilike ovako (bez kvarteta):

69 108 105 116 101...

Dakle moj kod brise neke jedinice i pocetne nule i neke druge znakove. Upravo zbog toga ne mogu dobiti pravi pocetni tekst.

Ima li pomoci za mene, molim vas pomozite, bio bi jako zahvalan:)))

Ako nesto nije jasno (makar sam se zbilja potrudio sve objasniti koliko god mogu), samo pitajte.

Hvala puno:)

Potpis
Ja sam fabrička greška generacije...
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme