LSB steganography

I se tasi taimi na ou tusia ai laʻu pou muamua ile hub. Ma o lena pou na tuʻuina atu i se faʻafitauli sili ona manaia, o le steganography. O le mea moni, o le fofo o loʻo tuʻuina atu i lena autu tuai e le mafai ona taʻua steganography i le uiga moni o le upu. Ua na'o se ta'aloga ma faila faila, ae ose ta'aloga manaia lava.

O le asō o le a tatou taumafai e eli loloto teisi ma vaʻai i le LSB algorithm. Afai e te fiafia, e talia oe i lalo o pusi. (I lalo o le tipi o le taʻavale: tusa ma le megabyte.)

Muamua lava, e tatau ona faia se folasaga puupuu. E iloa e tagata uma o le faʻamoemoega o le cryptography o le le mafai lea ona faitau faʻamatalaga faalilolilo. Ioe, o le cryptography e iai ona faʻaoga, ae o loʻo i ai se isi auala i le puipuiga o faʻamatalaga. Matou te le tau fa'ailogaina le fa'amatalaga, ae fa'afoliga matou te le o maua. O le mea tonu lea na faia ai le steganography. Ua faamautinoa mai e Wikipedia ia i tatou o le "steganography (mai le Eleni στεγανοσ - natia ma le Eleni γραφω - Ou te tusia, o le mea moni "tusitusi faalilolilo") o le saienisi o le faʻasalalau natia o faʻamatalaga e ala i le tausia o le mea moni o le faʻasalalauga faalilolilo.

Ioe, e leai se tasi e faʻasaina le tuʻufaʻatasia o metotia faʻataʻitaʻi ma steganographic. E le gata i lea, i le faʻataʻitaʻiga latou te faia lenei mea, ae o la matou galuega o le malamalama i mea faʻavae. Afai e te suʻesuʻeina ma le faʻaeteete le Wikipedia tusiga, o le ae iloa o steganography algorithms e aofia ai le mea e taʻua. pusa ma fe'au. O se atigipusa o soʻo se faʻamatalaga e fesoasoani e nana ai la matou feʻau lilo.

I la matou tulaga, o le atigipusa o le a avea ma ata ile BMP format. Muamua, seʻi o tatou vaʻai i le fausaga o lenei faila. E mafai ona vaevaeina le faila i vaega e 4: ulutala faila, ulutala ata, paleti ma le ata lava ia. Mo o tatou faamoemoega, e tatau ona tatou iloa mea o loʻo tusia i le ulutala.

O paita muamua e lua o le ulutala o le saini BM, ona tusia lea o le faila i bytes i se upu faalua, o le isi 4 bytes e faʻaagaga ma e tatau ona i ai ni zeros, ma mulimuli ane, o le isi upu faʻalua o loʻo i ai le offset mai le amataga o le faila i le paita moni o le ata. I se faila 24-bit bmp, o pika taitasi e faʻailogaina i le tolu BGR bytes.

O lenei ua matou iloa le auala e oʻo atu ai i le ata, pau lava le mea o loʻo totoe o le malamalama pe faʻapefea ona matou tusia faʻamatalaga matou te manaʻomia iina. Mo lenei mea matou te manaʻomia le LSB metotia. O le ute o le metotia e faʻapea: matou te suia mea e sili ona taua i bytes e nafa ma le faʻailoga lanu. Fa'apea pe afai o le isi byte o la tatou fe'au faalilolilo o le 11001011, ma o le paita o lo'o i le ata o...11101100 01001110 01111100 0101100111..., ona fa'apea lea o le encoding. O le a matou vaevaeina le savali faalilolilo i le 4 vaega lua-bit: 11, 00, 10, 11, ma sui ai vaega maualalo o le ata ma mea e maua mai ai: ...11101111 01001100 01111110 0101100111…. O sea suitulaga e masani lava ona le iloa e mata o le tagata. E le gata i lea, o le tele o masini gaosiga tuai o le a le mafai ona faʻaalia na suiga laiti.

E manino lava e mafai ona e suia e le gata i le 2 pito sili ona taua, ae o soʻo se numera o latou. O loʻo i ai le faʻataʻitaʻiga o loʻo i lalo: o le tele o mea tatou te suia, o le tele o faʻamatalaga e mafai ona tatou natia, ma o le tele o le faʻalavelave o le a mafua ai i le ata muamua. Mo se faʻataʻitaʻiga, o ata nei e lua:

LSB steganography
LSB steganography

E ui lava i aʻu taumafaiga sili, sa le mafai ona ou iloa le eseesega i le va oi latou, ae ui i lea, i le ata lona lua, i le faʻaaogaina o le auala faʻamatalaina, o loʻo natia le solo a Lewis Carroll "The Hunting of the Snark". Afai na e faitau i lenei mamao, atonu e te fiafia e aʻoaʻo e uiga i le faʻatinoga. E fai si faigofie, ae o le a ou lapataia oe i le taimi lava lena o mea uma e faia i Delphi. E lua mafuaaga mo lenei mea: 1. Ou te manatu o Delphi o se gagana lelei; 2. O lenei polokalame na fanau mai i le faagasologa o le sauniaina o se kosi i luga o faavae o le vaai komepiuta, ma o tama o loo ou aoaoina i ai lenei vasega e le o iloa se mea e ese mai Delphi. Mo i latou e le masani i le syntax, e tasi le mea e manaʻomia ona faʻamatalaina: shl x o se suiga faʻasolosolo i le agavale e le x, shr x o se suiga faʻasolosolo i le taumatau e le x.

Matou te manatu o loʻo matou tusia ni tusitusiga o loʻo teuina i totonu o se manoa i totonu o le atigipusa ma sui ai le lua paita pito i lalo:
Fa'ailoga tusi:

mo i:=1 i le umi(str) fai
    amata
      l1: = byte(str[i]) shr 6;
      l2:=byte(str[i]) shl 2; l2:=l2 shr 6;
      l3:=byte(str[i]) shl 4; l3:=l3 shr 6;
      l4:=byte(str[i]) shl 6; l4:=l4 shr 6;
 
      f.ReadBuffer(tmp,1);
      f.Tulaga:=f.Tulaga-1;
      tmp:=((tmp shr 2) shl 2)+l1;
      f.WriteBuffer(tmp,1);
 
      f.ReadBuffer(tmp,1);
      f.Tulaga:=f.Tulaga-1;
      tmp:=((tmp shr 2) shl 2)+l2;
      f.WriteBuffer(tmp,1);
 
      f.ReadBuffer(tmp,1);
      f.Tulaga:=f.Tulaga-1;
      tmp:=((tmp shr 2) shl 2)+l3;
      f.WriteBuffer(tmp,1);
 
      f.ReadBuffer(tmp,1);
      f.Tulaga:=f.Tulaga-1;
      tmp:=((tmp shr 2) shl 2)+l4;
      f.WriteBuffer(tmp,1);
 
    gataaga;

code e faitau ai:

mo i:=1 i MsgSize fai
    amata
      f.ReadBuffer(tmp,1);
      l1:=tmp shl 6;
      f.ReadBuffer(tmp,1);
      l2:=tmp shl 6; l2:=l2 shr 2;
      f.ReadBuffer(tmp,1);
      l3:=tmp shl 6; l3:=l3 shr 4;
      f.ReadBuffer(tmp,1);
      l4:=tmp shl 6; l4:=l4 shr 6;
      str: =str+char(l1+l2+l3+l4);
    gataaga;

Ia, mo i latou e paie - feso'ota'iga i le polokalame ma lona fa'ailoga puna.

Спасибо.

puna: www.habr.com

Faaopoopo i ai se faamatalaga