Skirtumas tarp kodavimo ir dekodavimo

Moteris klausosi muzikos mobiliuoju telefonu

Muzikos failai dažniausiai užkoduojami naudojant MP3 kodeką.

Vaizdo kreditas: Purestock/Purestock/Getty Images

Kodavimas yra duomenų vertimas tarp dviejų formatų pagal taisyklių rinkinį arba formulę. Pavyzdžiui, galite užkoduoti „abc“ į „ABC“ naudodami mažųjų ir didžiųjų raidžių taisykles. Dekodavimas yra atvirkštinis procesas. Galite iššifruoti „ABC“ į „abc“ naudodami tą patį taisyklių rinkinį. Duomenų kodavimui ir dekodavimui yra daug įvairių programų. Pavyzdžiui, šifravimas yra kodavimo forma, naudojanti raktą. Be rakto užkoduotų duomenų negalima iššifruoti. Vaizdo įrašo duomenys yra užkoduoti, kad būtų mažesni, kad būtų galima žiūrėti didelės raiškos vaizdo įrašų srautus internetu.

Kodavimas dažniausiai naudojamas garso ir vaizdo duomenų dydžiui sumažinti. Kodavimo ir dekodavimo programa, vadinama kodeku, taiko daugybę matematinių algoritmų, kurie pašalina perteklinius duomenis. Pavyzdžiui, tarkime, kad faile yra duomenys „ABCDQABC“. Kodeko Nr. 1 algoritmas gali būti pakeistas „ABC“ su „Z“. Gautas failas būtų „ZDQZ“, kuris yra 50 procentų mažesnis nei originalas failą. Kodeko Nr. 2 algoritmas gali pakeisti "ABC?" su "Y" ir "? ABC" su "X", kur "?" nurodo bet kurį simbolį. Gautas failas būtų „YX“, kuris yra 75 procentais mažesnis nei pradinis failas.

Dienos vaizdo įrašas

Dekoduojant naudojamas tas pats kodekas, kad būtų atkurtas pradinis failas iš užkoduoto failo. Pavyzdžiui, naudojant kodeką Nr. 1 į "ZDQZ" atvirkščiai, "Z" pakeičiama "ABC", kad būtų sukurtas originalus failas "ABCDQABC". 1 kodekas, kuris buvo 50 procentų mažesnis, vadinamas be nuostolių kodeku, nes dekoduojant visada atkuriamas originalas failą. 2 kodekas iššifruoja "YX" su "ABC?? ABC“, o tada bando atspėti, kokių simbolių trūksta. Kodekas gali atspėti „DE“, o tai reiškia „ABCDEABC“. 2 kodekas, kuris buvo 75 procentais mažesnis, yra a nuostolingas kodekas, nes dekodavimo procesas gali sukurti failą, kuris yra artimas originalui, bet ne identiški.

URL ir simbolių rinkiniai

Ne visos koduotės duoda rezultatą, kuris yra mažesnis už nekoduotus duomenis. Pavyzdžiui, URL „example.com/Secret of Life.html“ yra netinkamas, nes jame yra tarpų. Žiniatinklio programuotojas užkoduoja URL, kuris visus tarpus pakeičia „%20“, kad sukurtų "example.com/Secret%20of%20Life.html." Dekodavimo procesas atlieka atvirkštinę operaciją ir pakeičia „%20“ tarpu. Panašiai duomenų bazės programa gali užkoduoti visus duomenis Unikodu, pagrindiniu simbolių rinkiniu daugelyje kalbų. Kai vartotojas nuskaito duomenis, programa iššifruoja unikodą, kad atitiktų vartotojo kalbos ir klaviatūros nustatymus.

Kodavimas, kurio negalima iššifruoti

Kai kurios koduotės nėra skirtos iškoduoti. Maiša yra ilga atsitiktinių simbolių eilutė, naudojama su kodavimo algoritmu, kad būtų gautas užšifruotas rezultatas, kurio negalima iššifruoti, net jei žinote maišą. Pavyzdžiui, vartotojo slaptažodis gali būti užšifruotas naudojant maišą ir saugomas duomenų bazėje. Jei įsilaužėlis randa duomenų bazę, jis negali iššifruoti jokių slaptažodžių. Kai vartotojas prisijungia, sistema užkoduoja vartotojo įvestą slaptažodį su maiša ir palygina rezultatą su saugomu duomenų bazėje. Jei vartotojas pamiršta slaptažodį, jis privalo jį pakeisti, nes sistema nežino jo pirminio slaptažodžio, tik jo užšifruotą reikšmę.