Pliki JPG - szyfrowanie???

0

Mam taki problem.

  1. Zmienić w pliku JPEG jeden bajt, tak by pod windowsem przeglądarki graficzne nie mogły odczytać poprawnie pliku JPG.
  2. W moim programie chciałbym przywrócić właściwy format pliku, wstawiając właściwy bajt na swoje miejsce.
  3. Przy zakończeniu pracy z programem, ponownie "zakodować" plik.

Czy jest to możliwe i czy ktoś wie gdzie można znaleźć informacje na ten temat, bądź podrzucić cenne uwagi.

Z góry dziękuję.

0

zmien naglowek - ale dobre programy typu irfan i tak odczytaja to.

0

Moja propozycja:
Blokowanie - odczytujesz pierwsze 255 bajtów z pliku i dopisujesz na końcu. A te 255 początkowych zapisujesz np. zerami.
Odblokowywanie - odczytujesz ostatnie 255 bajtów pliku, zapisujesz je na początku pliku. Kasujesz ostatnie 255 bajtów z plików.
A jak robić takie rzeczy możesz przecztać m.in. na tej stronie.

0

Jak myślicie ten kod się nada:

procedure TForm1.Button1Click(Sender: TObject);
var plik: file of byte;
tab: array of byte;
rozmiar, i: integer;
dane:byte;
begin
assignfile(plik, 'f:\temp\a.jpg');
reset(plik);
rozmiar := filesize(plik);
setlength(tab, rozmiar);
for i := 0 to pred(rozmiar) do
read(plik, tab[i]);
dane := tab[0];
tab[0] := tab[1];
tab[1] := dane;
rewrite(plik);
for i:=0 to pred(rozmiar) do
write(plik, tab[i]);
setlength(tab, 0);
closeFile(plik);
end;

Spełnia moje założenia, po zaszyfrowaniu - zamianie miejscami dwoch pierwszych bajtow, irfan wywala blad dekodowania i nie wyswietla obrazka. Odszyfrowanie wymaga wykonania ponownie tej samej procedury i obrazek jest wyswietlany bez problemu. Jesli cos pominąłem, nie wziąłem czegos pod uwage, to dajcie znac.

0

Jak myślicie ten kod się nada:

skoro dziala to sie nada.

0

tylko jak ktos uruchomi ten programik 2razy to masz normalny pliczek jpg :) hehe

1 użytkowników online, w tym zalogowanych: 0, gości: 1