Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Enkripcija u C++

[es] :: C/C++ programiranje :: Enkripcija u C++

[ Pregleda: 3465 | Odgovora: 14 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

don_mathew

Član broj: 27904
Poruke: 74
*.tel.net.ba.



Profil

icon Enkripcija u C++22.11.2005. u 13:28 - pre 224 meseci
Nema glupih pitanja samo odgovora kazu, pa cu da postavim jedno pitanje :)


Da li je moguce da neki file recimo extenzije *.exe otvorim u c++ njegov binarni zapis na disku i onda se malo poigram s mojim algoritmom da to sve ispremjestam da se na kraju ne zna koji je to fajl bio i da ga sacuvam u nekoj mojoj extenziji...

mislim da je to nesto kao rad sa kompresiom podataka...na nacin da se moze kompresirati svaki file i zapisati npr u extenziji *.zip e meni ne treba kompresija nego da kriptiram file-ove...
 
Odgovor na temu

itf
Zagreb

Član broj: 59794
Poruke: 993
*.fsb.hr.



+9 Profil

icon Re: Enkripcija u C++22.11.2005. u 13:32 - pre 224 meseci
Naravno da moze. To sto ti zelis se zove kriptiranje metodom premjestanja. Imas i metodu supstitucije. Za metodu premjestanja imas npr. Vermanovu sifru (ako su ti radio telekomunikacije blizi pojam :))
 
Odgovor na temu

Ramirez

Član broj: 13160
Poruke: 318
*.ptt.yu.



Profil

icon Re: Enkripcija u C++22.11.2005. u 13:34 - pre 224 meseci
Programi za to vec postoje... ali idu malo dalje tako da samo "zakljucavaju" fajl i traze password ako zelis da ih "pokrenes"... ako pogodis on otpakuje fajl i pokrene ga. Nesto kao kada bi napravio selfextracting rar i stavio password na njega.
 
Odgovor na temu

don_mathew

Član broj: 27904
Poruke: 74
*.tel.net.ba.



Profil

icon Re: Enkripcija u C++22.11.2005. u 13:52 - pre 224 meseci
Code:

#include <iostream>
#include <fstream>
using namespace std;
int main()
{
    ifstream in("sample.jpg", ios::binary);
    unsigned char bajt;
    while(!in.eof())
    {
        in >> bajt;
        unsigned char bit = 1;
        for (int i = 7 ; i >= 0 ;i--)
        {            
            (bajt & (bit << i)) ? cout << "1" : cout << "0";
        }
    }
    return 0;
}


e ovo je kod za ucitavanje fajla u binarnom modu samo me interesuje da li se na ovaj nacin ucita doslovno citav fajl sa headerom tj doslovno citav file kako je on zapisan na disku???

samo da navedem nije upitan algoritam za kriptiranje nego kako cu ja to otvarati i spremati...

e sad ako se poigram s ovim fajlom tj ispremjestam njegove bitove e onda cu mu sve shebati kad ga dekriptiram i imam ga tako dekriptiranog u memoriji npr kako ga sacuvati u extenziju u kojoj je bio...da li je u headeru filea zapisana extenzija kako izracunati koliki je header itd te stvarcice...pustite algoritme :) hvala...
 
Odgovor na temu

Burgos
Nemanja Borić
Amazon Web Services
Berlin

Član broj: 12484
Poruke: 1947
*.smin.sezampro.yu.

Sajt: stackoverflow.com/users/1..


+480 Profil

icon Re: Enkripcija u C++22.11.2005. u 15:39 - pre 224 meseci
Problem je sto se u fajlovima javlja vise EOFa (ne u tekstualnim).

[Ovu poruku je menjao Burgos dana 22.11.2005. u 16:39 GMT+1]
 
Odgovor na temu

NrmMyth
Ivan Maček
Split

Član broj: 63456
Poruke: 849
*.cmu.carnet.hr.

Sajt: www.dump.hr


Profil

icon Re: Enkripcija u C++22.11.2005. u 21:28 - pre 224 meseci
Citat:
Burgos: Problem je sto se u fajlovima javlja vise EOFa (ne u tekstualnim).

[Ovu poruku je menjao Burgos dana 22.11.2005. u 16:39 GMT+1]

Navedi primjer! ...

@don_mathew
Tako nesto sam i ja radio nedavno u C++, radio sam jednostavni chiper.
Sa citanjem do .eof() je uredu i ucitati ces cijeli fajl, ali ces i ucitati char EOF pa kad budes snimao na neki novi fajl snimaj do "velicina" - 1 byte.
Na ovo oko headera ja se nisam puno zajebavao, nego sam napravio u strukturi enkriptiranog fajl (medju ostalim);
[broj sljedecih bajtova koji predstavljaju ime][ime sljedeceg fajla][broj bajtovafajla][enkriptirani fajl]
I tako sam napravio bazu nesto kao .rar u koji mozes strpati vise fajlova od jednom.
Ako te zanima program pogledaj ovdje: F4T3
A ako te zanima kod javi mi na email.
 
Odgovor na temu

don_mathew

Član broj: 27904
Poruke: 74
*.tel.net.ba.



Profil

icon Re: Enkripcija u C++23.11.2005. u 20:27 - pre 224 meseci
Code:
#include <iostream.h>
#include <fstream.h>

int main()
{
    ifstream in("1.txt", ios::binary);
    ofstream out( "2.txt", ios::out|ios::binary );
    unsigned char bajt;
 
    while(!in.eof())
    {
       
        
        in >> bajt;
        out << bajt;

            
    }



    return 0;
  
}


e ovo je osnova koda koji mi treba al je fora u tome sto mi npr u txt fajlovima konkretno kad izvrsim kodo napravi fajl 2.txt ali zadnji karakter ispise 2 puta...

a kad radim npr sa jpg fajlovima uopce ne ispadne dobro...

jednostavno pitanje kako da kopiram bilo koji file byte by byte ? :) i da li je moguce to uraditi preko fstrem-a ?

[Ovu poruku je menjao don_mathew dana 23.11.2005. u 21:28 GMT+1]
 
Odgovor na temu

don_mathew

Član broj: 27904
Poruke: 74
*.tel.net.ba.



Profil

icon Re: Enkripcija u C++23.11.2005. u 21:05 - pre 224 meseci
Nova saznanja :D ovako ovim kodom sam uspio sa txt fajlovima ali sa jpg nema teorije jel mi moze tko objasniti foru ??? kad usporedim dva fajla orginalni i kopiju koju pokusavam napraviti ovim algoritmom dobijem razliku odmah na pocetku...usporedjujem ih u hexworksshop-u... jel moze mala pomoc konacno pa ima ovdje sigurno ljudi da to znaju...


Code:
#include <iostream>
#include <fstream>
using namespace std;

int main () {
  
    
    long begin,end;
  
    ifstream myfile ("1.txt", ios::binary);
    ofstream out( "2.txt", ios::out|ios::binary );
  
  begin = myfile.tellg();
  myfile.seekg (0, ios::end);
  end = myfile.tellg();
  myfile.seekg (0, ios::beg);
  
  int a = (end-begin);
     unsigned char bajt;

     
     
     
     
    for (int i = 0 ; i <= (a-1) ; i++ ) {





myfile >> bajt;
   out << bajt;
  }







  return 0;
}


dakle pitanje je zasto mi na ovu foru ne radi kopiranje jpg fajlova... ???vjerovatno nece ni exe ali jos nisam probao...
 
Odgovor na temu

NrmMyth
Ivan Maček
Split

Član broj: 63456
Poruke: 849
*.cmu.carnet.hr.

Sajt: www.dump.hr


Profil

icon Re: Enkripcija u C++23.11.2005. u 22:20 - pre 224 meseci
Code:
#include <iostream>
#include <fstream>
using namespace std;

int main () {
  

long begin,end;
  
ifstream myfile ("1.txt", ios::in|ios::binary);
    ofstream out( "2.txt", ios::out|ios::binary );
  
  //begin = myfile.tellg();
  myfile.seekg (0, ios::end);
  end = myfile.tellg();
  myfile.seekg (0, ios::beg);
  
  //int a = (end-begin);
 unsigned char bajt;

 
for (int i = 0 ; i < end ; i++ ) {
myfile.read( &bajt, 1 );
   out.write( &bajt, 1 );
  }

  return 0;
}

Probaj sad. Ako ne radi definiraj malo bolje problem.
 
Odgovor na temu

don_mathew

Član broj: 27904
Poruke: 74
*.tel.net.ba.



Profil

icon Re: Enkripcija u C++24.11.2005. u 11:20 - pre 224 meseci
hvala velika...sve radi naravno uz veliku pomoc NrmMyth-a
kljucni dio je:

myfile.read( &bajt, 1 );
out.write( &bajt, 1 );

vjerovatno mi zato nije radilo ispravno...hvala...e sad se mogu posvetiti algoritmu...
 
Odgovor na temu

NrmMyth
Ivan Maček
Split

Član broj: 63456
Poruke: 849
*.cmu.carnet.hr.

Sajt: www.dump.hr


Profil

icon Re: Enkripcija u C++24.11.2005. u 18:43 - pre 224 meseci
Nista. :)
 
Odgovor na temu

Burgos
Nemanja Borić
Amazon Web Services
Berlin

Član broj: 12484
Poruke: 1947
*.smin.sezampro.yu.

Sajt: stackoverflow.com/users/1..


+480 Profil

icon Re: Enkripcija u C++24.11.2005. u 21:27 - pre 224 meseci
@NrmMyth:

Citat:
EOF marker

The end of file (EOF) file stream marker is a good indicator. Often, graphics files are truncated through errors in transmission or by a failed write operation to a disk. In such cases, when the file is read, the EOF will occur much sooner than a file format reader would have expected, and corruption of the file may be assumed.



http://www.fileformat.info

[Ovu poruku je menjao Burgos dana 24.11.2005. u 22:27 GMT+1]
 
Odgovor na temu

NrmMyth
Ivan Maček
Split

Član broj: 63456
Poruke: 849
*.cmu.carnet.hr.

Sajt: www.dump.hr


Profil

icon Re: Enkripcija u C++25.11.2005. u 09:17 - pre 224 meseci
Citat:
Burgos: @NrmMyth:

http://www.fileformat.info

[Ovu poruku je menjao Burgos dana 24.11.2005. u 22:27 GMT+1]

Ali opet ti ovdje imas jedan EOF, koji je dosao nesto ranije nego ocekivano i zato nemas u potpunosti sliku.
 
Odgovor na temu

Burgos
Nemanja Borić
Amazon Web Services
Berlin

Član broj: 12484
Poruke: 1947
*.ppp-bg.sezampro.yu.

Sajt: stackoverflow.com/users/1..


+480 Profil

icon Re: Enkripcija u C++25.11.2005. u 13:32 - pre 224 meseci
Da, ali onda se ne kriptuje fajl u potpunosti, zar ne?

[Ovu poruku je menjao Burgos dana 25.11.2005. u 14:33 GMT+1]
 
Odgovor na temu

NrmMyth
Ivan Maček
Split

Član broj: 63456
Poruke: 849
*.cmu.carnet.hr.

Sajt: www.dump.hr


Profil

icon Re: Enkripcija u C++25.11.2005. u 21:00 - pre 224 meseci
Koliko sam ja razumio iza tog EOF-a nemas nista, jer je prijenos stao, a najavljeno je da ce se prenjeti vise od toga bajtov. Ispravi me ako sam u krivu.
 
Odgovor na temu

[es] :: C/C++ programiranje :: Enkripcija u C++

[ Pregleda: 3465 | Odgovora: 14 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.