Nezve nzira inoshamisa yekuchengetedza hard disk nzvimbo

Mumwe mushandisi anoda kunyora chidimbu chitsva che data kune hard drive, asi haana yakakwana yemahara nzvimbo yekuita izvi. Ini zvakare handidi kudzima chero chinhu, nekuti "zvese zvakakosha uye zvakakosha." Uye chii chatinofanira kuita nazvo?

Hapana ane dambudziko iri. Kune ma terabytes eruzivo pamadhiraivha edu, uye huwandu uhu hahuite kudzikira. Asi rakasiyana sei? Pakupedzisira, mafaira ose anongova seti yezvimedu zvehurefu hwakati uye, zvichida, iyo itsva haina kunyanya kusiyana kubva kune yakatochengetwa.

Zviri pachena kuti kutsvaga zvidimbu zvemashoko zvakatochengetwa pane dhirairi rakaoma, kana kusiri kukundikana, saka kwete basa rinoshanda. Kune rumwe rutivi, kana mutsauko uri mudiki, saka unogona kuigadzirisa zvishoma ...

Nezve nzira inoshamisa yekuchengetedza hard disk nzvimbo

TL; DR - kuyedza kwechipiri kutaura nezve nzira isinganzwisisike yekukwenenzvera data uchishandisa JPEG mafaera, ikozvino mune inonzwisisika fomu.

Nezve mabhiti uye musiyano

Kana iwe ukatora zvidimbu zviviri zvisina kurongeka zve data, saka paavhareji hafu yemabhiti aainawo anopindirana. Chokwadi, pakati pezvimiro zvinogoneka zvepairi yega yega ('00, 01, 10, 11β€²), hafu chaiyo ine maitiro akafanana, zvese zviri nyore pano.

Asi chokwadi, kana tikangotora mafaira maviri uye tichikodzera imwe kune yechipiri, ipapo ticharasikirwa nerimwe rawo. Kana isu tikachengeta shanduko, isu tinongo tangazve delta encoding, iyo iripo zvakakwana pasina isu, kunyange isingawanzo shandiswa kune zvimwe chete zvinangwa. Tinogona kuedza kupinza diki kutevedzana mune yakakura, asi kunyangwe zvakadaro isu tinotadza kurasikirwa nezvikamu zvakakosha zve data kana tikaishandisa zvisina hanya nezvose.

Pakati pei uye chii zvino musiyano unogona kubviswa? Zvakanaka, ndiko kuti, faira idzva rakanyorwa nemushandisi ingori nhevedzano yezvimedu, izvo zvatisingakwanise kuita chero chinhu pachayo. Ipapo iwe unongoda kuwana mabheti akadaro pane hard drive kuti anogona kuchinjwa pasina kuchengetedza mutsauko, kuitira kuti iwe ugone kupona kurasikirwa kwavo pasina mhedzisiro yakakomba. Uye zvine musoro kusandura kwete faira paFS pachayo, asi mamwe mashoko asina kusimba mukati mayo. Asi ndeipi uye sei?

Kukodzera nzira

Mafaira akaomeswa akarasika anouya kuzonunura. Ese aya majpegs, mp3s uye mamwe, kunyangwe akarasika compression, ane boka remabheti anogona kushandurwa zvakachengeteka. Zvinogoneka kushandisa matekiniki epamusoro anoshandura zvisingaonekwe zvikamu zvawo pamatanho akasiyana eencoding. Mira. Advanced mano ... imperceptible kugadziridzwa ... imwe zvishoma mune imwe ... zvinenge zvakafanana steganography!

Chokwadi, kuisa rumwe ruzivo mune imwe kunoyeuchidza nzira dzake senge hapana chimwe chinhu. Ndinoororwawo nekusaonekwa kwechinjo dzinoitwa kupfungwa dzevanhu. Iko nzira dzinosiyana pachivande: basa redu rinodzika kune mushandisi kuisa rumwe ruzivo pane yake hard drive; zvinongomukuvadza. Achakanganwa zvakare.

Nokudaro, kunyange zvazvo tichigona kuzvishandisa, tinofanira kuita zvimwe gadziridzo. Uye ipapo ini ndichavaudza nekuvaratidza ndichishandisa muenzaniso weimwe yenzira dziripo uye yakajairika faira fomati.

Pamusoro pemakava

Kana iwe uchinyatso svina, ndicho chinhu chinodzvinyirira zvakanyanya munyika. Isu tiri, chokwadi, kutaura nezve JPEG mafaera. Kwete chete kune matani ezvishandiso uye nzira dziripo dzekuisa data mairi, asi ndiyo inonyanya kufarirwa magiraidhi fomati papasi rino.

Nezve nzira inoshamisa yekuchengetedza hard disk nzvimbo

Nekudaro, kuti usaite kubereka imbwa, unofanirwa kudzikamisa munda wako wekuita mumafaira eiyo fomati. Hapana anofarira monochrome masikweya anoonekwa nekuda kwekudzvanyirira kwakanyanya, saka iwe unofanirwa kuzviganhurira pakushanda nefaira rakatodzvanywa, kudzivisa recoding. Kunyanya, neinteger coefficients, inosara mushure mekuita basa rekurasikirwa nedata - DCT uye quantization, iyo inonyatso kuratidzwa muiyo encoding scheme (nekuda kwewiki yeBauman National Library):
Nezve nzira inoshamisa yekuchengetedza hard disk nzvimbo

Pane nzira dzakawanda dzinogoneka dzekugadzirisa mafaera ejpeg. Pane kusarasikirwa optimization (jpegtran), pane optimization "hapana kurasikirwa", izvo zvinopa chimwe chinhu, asi isu hatina basa nazvo. Mushure mezvose, kana mushandisi akagadzirira kupinza rumwe ruzivo mune imwe kuti awedzere yemahara dhisiki nzvimbo, ipapo iye angave akagadzirisa mifananidzo yake kare kare, kana kuti haadi kuita izvi zvachose nekutya kurasikirwa kwemhando.

F5

Mhuri yese yealgorithms inokodzera aya mamiriro, ayo iwe aunogona kujairana nawo mune iyi mharidzo yakanaka. Iyo yakanyanya kukwirisa pakati pavo ndeye algorithm F5 naAndreas Westfeld, ichishanda pamwe neiyo coefficients yechikamu chekupenya, sezvo ziso remunhu ndiro rinenge risinganzwisisike shanduko dzaro. Uyezve, inoshandisa nzira yekumisikidza yakavakirwa pamatrix encoding, izvo zvinoita kuti zvikwanise kuita shanduko shoma kana uchimisikidza huwandu hwakafanana hweruzivo, iyo yakakura saizi yemudziyo unoshandiswa.

Shanduko pachadzo dzinodzika kudzikisira kukosha kweiyo coefficients neimwe pasi pemamwe mamiriro (kureva, kwete nguva dzose), izvo zvinokutendera kuti ushandise F5 kukwenenzvera kuchengetedza data pane yako hard drive. Icho chiripo ndechekuti coefficient mushure mekuchinja kwakadaro ingangove inotora mashoma mabits mushure meHuffman encoding nekuda kwekugoverwa kwehuwandu hwehukoshi muJPEG, uye mazero matsva achapa mhindu paunoakodha uchishandisa RLE.

Izvo zvinodikanwa zvigadziriso zvinowira pasi pakubvisa chikamu chine chekuita nekuvanzika (password rearrangement), iyo inochengetedza zviwanikwa uye nguva yekuuraya, uye nekuwedzera nzira yekushanda nemafaira akawanda pane imwe panguva. Muverengi haakwanisi kufarira shanduko yekuchinja mune zvakadzama, saka ngatienderere mberi kune tsananguro yekushandiswa.

High tech

Kuratidza kuti nzira iyi inoshanda sei, ndakashandisa nzira yacho mune yakachena C uye ndikaita akati wandei magadzirirwo maererano nekumhanya kwekuuraya uye ndangariro (haugone kufungidzira kuti mapikicha aya anorema zvakadii pasina kudzvanywa, kunyangwe pamberi peDCT). Muchinjikwa-chikuva chakawanikwa uchishandisa musanganiswa wemaraibhurari libjpeg, pcre ΠΈ tinydir, zvatinovatenda nazvo. Zvese izvi zvinosanganiswa ne 'kugadzira', saka vashandisi veWindows vanoda kuisa imwe Cygwin yavo kuti iongororwe, kana kubata neVisual Studio nemaraibhurari ega.

Iko kusevenzesa kunowanikwa muchimiro chekoni utility uye raibhurari. Avo vanofarira vanogona kuziva zvakawanda nezve kushandisa iyo yekupedzisira mune yekuverenga mune repository paGithub, chinongedzo chandichabatanidza pakupera kweposvo.

Nzira yekushandisa sei?

Kungwarira. Iyo mifananidzo inoshandiswa pakurongedza inosarudzwa nekutsvaga uchishandisa yakajairika kutaura mune yakapihwa midzi dhairekitori. Pakupedzwa, mafaira anogona kutamiswa, kutumidzwa zita uye kukopa pakuda mukati memiganhu yayo, shandura faira uye masisitimu anoshanda, etc. Zvisinei, iwe unofanirwa kuchenjerera zvakanyanya uye usachinje izvo zvinongoitika chero nzira. Kurasikirwa nekukosha kwechinhu chimwe chete kunogona kuita kuti zvisakwanise kudzoreredza ruzivo.

Kana yapedza, iyo yekushandisa inosiya yakakosha faira faira ine ruzivo rwese rwunodiwa pakuburitsa, kusanganisira data nezvemifananidzo yakashandiswa. Iyo pachayo, inorema anenge akati wandei kilobytes uye haina chero yakakosha kukanganisa pane yakagarwa dhisiki nzvimbo.

Unogona kuongorora huwandu hunobvira uchishandisa iyo '-a' mureza: './f5ar -a [tsvaga folda] [Perl-inoenderana yenguva dzose kutaura]'. Kurongedza kunoitwa nemurairo './f5ar -p [tsvaga folda] [Perl-inoenderana nguva dzose kutaura] [yakazara faira] [zita rekuchengetedza]', uye kuburitsa ne'./f5ar -u [archive file] [yakawanazve faira zita ]' .

Kuratidzira basa

Kuratidza kushanda kweiyo nzira, ndakaisa muunganidzwa we225 yemahara mapikicha embwa kubva kubasa. Unsplash uye yakawanikwa mune zvinyorwa pdf hombe ye45 metres yevhoriyamu yechipiri Art of Programming Knuta.

Kutevedzana kuri nyore:

$ du -sh knuth.pdf dogs/
44M knuth.pdf
633M dogs/

$ ./f5ar -p dogs/ .*jpg knuth.pdf dogs.f5ar
Reading compressing file... ok
Initializing the archive... ok
Analysing library capacity... done in 17.0s
Detected somewhat guaranteed capacity of 48439359 bytes
Detected possible capacity of upto 102618787 bytes
Compressing... done in 39.4s
Saving the archive... ok

$ ./f5ar -u dogs/dogs.f5ar knuth_unpacked.pdf
Initializing the archive... ok
Reading the archive file... ok
Filling the archive with files... done in 1.4s
Decompressing... done in 21.0s
Writing extracted data... ok

$ sha1sum knuth.pdf knuth_unpacked.pdf
5bd1f496d2e45e382f33959eae5ab15da12cd666 knuth.pdf
5bd1f496d2e45e382f33959eae5ab15da12cd666 knuth_unpacked.pdf

$ du -sh dogs/
551M dogs/

Screenshots kune vateveri

Nezve nzira inoshamisa yekuchengetedza hard disk nzvimbo

Iyo faira isina kuvharwa inogona uye inofanira kuramba ichiverengwa:

Nezve nzira inoshamisa yekuchengetedza hard disk nzvimbo

Sezvauri kuona, kubva kune yepakutanga 633 + 36 == 669 megabytes yedata pane hard drive, takasvika kune yakanakisa 551. Musiyano wakakura wakadaro unotsanangurwa nekuderera kwehunhu hweiyo coefficients, iyo inokanganisa yavo. kunotevera kusarasikirwa kwekumanikidza: kudzikisa imwe neimwe kunogona nyore " kucheka akati wandei mabhaiti kubva pafaira rekupedzisira. Nekudaro, uku kuchiri kurasikirwa nedata, kunyangwe iri diki zvakanyanya, rauchazofanira kutsungirira.

Sezvineiwo, havanyatsooneki neziso. Pasi pemuparadzi (sezvo habrastorage isingakwanise kubata mafaira akakura), muverengi anogona kuongorora mutsauko neziso uye kusimba kwavo, inowanikwa nekubvisa kukosha kwechikamu chakashandurwa kubva kune chepakutanga: chepakutanga, neruzivo mukati, mutsauko (iyo yakasviba ruvara, idiki mutsauko mubhuroko).

Pane mhedziso

Tichifunga nezvematambudziko ese aya, kutenga hard drive kana kurodha zvese kune gore zvingaite senge mhinduro iri nyore kudambudziko. Asi kunyangwe isu tichirarama munguva yakanaka kudaro ikozvino, hapana vimbiso yekuti mangwana zvicharamba zvichigoneka kuenda online uye kurodha yako yese yekuwedzera data kumwe kunhu. Kana kuti enda kuchitoro uzvitengere chimwe chiuru cheterabyte hard drive. Asi unogona kushandisa nguva dzose dzimba dziripo.

-> GitHub

Source: www.habr.com

Voeg