Ero koodauksen ja dekoodauksen välillä

Nainen kuuntelee musiikkia matkapuhelimella

Musiikkitiedostot koodataan yleensä MP3-koodekilla.

Kuvan luotto: Purestock/Purestock/Getty Images

Koodaus on prosessi, jossa tietoja muunnetaan kahden muodon välillä sääntöjen tai kaavan mukaan. Voit esimerkiksi koodata "abc":n muotoon "ABC" käyttämällä pieniä kirjaimia isoihin kirjaimiin. Dekoodaus on käänteinen prosessi. Voit dekoodata "ABC":ksi "abc" käyttämällä samoja sääntöjä. Tietojen koodaukseen ja dekoodaukseen on monia erilaisia ​​sovelluksia. Esimerkiksi salaus on avainta käyttävä koodauksen muoto. Ilman avainta koodattua dataa ei voida purkaa. Videotiedot on koodattu pienemmiksi, jotta teräväpiirtovideovirtoja voidaan katsella Internetin kautta.

Koodausta käytetään yleisesti pienentämään ääni- ja videodatan kokoa. Kooder-dekooderi-ohjelma, jota kutsutaan koodekkiksi, käyttää useita matemaattisia algoritmeja, jotka poistavat ylimääräisen tiedon. Oletetaan esimerkiksi, että tiedosto sisältää tiedot "ABCDQABC". Codec #1:n algoritmi saattaa olla korvattava "ABC" ja "Z." Tuloksena oleva tiedosto olisi "ZDQZ", joka on 50 prosenttia pienempi kuin alkuperäinen tiedosto. Codec #2:n algoritmi saattaa korvata "ABC?" "Y" ja "?ABC" ja "X", missä "?" tarkoittaa mitä tahansa merkkiä. Tuloksena oleva tiedosto olisi "YX", joka on 75 prosenttia pienempi kuin alkuperäinen tiedosto.

Päivän video

Dekoodaus käyttää samaa koodekkia alkuperäisen tiedoston rekonstruoimiseen koodatusta tiedostosta. Esimerkiksi koodekin #1 käyttäminen "ZDQZ":lle käänteisesti korvaa "Z":n "ABC: llä" alkuperäisen tiedoston "ABCDQABC" luomiseksi. Codec #1, joka oli 50 prosenttia pienempi, kutsutaan häviöttömäksi koodekkiksi, koska dekoodaus luo aina alkuperäisen uudelleen tiedosto. Codec #2 purkaa "YX":n "ABC?? ABC" ja yrittää sitten arvata, mitä puuttuvat hahmot ovat. Pakkauksenhallinta saattaa arvata "DE", mikä johtaa "ABCDEABC". Codec #2, joka oli 75 prosenttia pienempi, on a häviöllinen koodekki, koska dekoodaus saattaa luoda tiedoston, joka on lähellä alkuperäistä, mutta ei identtinen.

URL-osoitteet ja merkistöt

Kaikki koodaus ei tuota tulosta, joka on pienempi kuin koodaamaton data. Esimerkiksi URL-osoite "example.com/Secret of Life.html" on virheellinen, koska se sisältää välilyöntejä. Web-ohjelmoija koodaa URL-osoitteen, joka korvaa kaikki välilyönnit "%20" luotavaa varten "example.com/Secret%20of%20Life.html." Dekoodausprosessi suorittaa käänteisen operaation ja korvaa "%20" välilyönnillä. Vastaavasti tietokantaohjelma saattaa koodata kaikki tiedot Unicode-muotoon, joka on useimpien kielten päämerkkisarja. Kun käyttäjä hakee tietoja, ohjelma purkaa Unicoden vastaamaan käyttäjän kieli- ja näppäimistöasetuksia.

Koodaus, jota ei voi purkaa

Joitakin koodauksia ei ole tarkoitettu dekoodattavaksi. Hajautus on pitkä satunnaisten merkkijono, jota käytetään koodausalgoritmin kanssa salatun tuloksen tuottamiseksi, jota ei voida purkaa, vaikka tuntisitkin tiivisteen. Esimerkiksi käyttäjän salasana voidaan salata tiivisteellä ja tallentaa tietokantaan. Jos hakkeri löytää tietokannan, hän ei voi purkaa salasanoja. Kun käyttäjä kirjautuu sisään, järjestelmä koodaa käyttäjän syöttämän salasanan hashilla ja vertaa tulosta tietokantaan tallennettuun. Jos käyttäjä unohtaa salasanansa, hänen on vaihdettava se, koska järjestelmä ei tiedä hänen alkuperäistä salasanaansa, vain sen salatun arvon.