Hashing vs Encrypting
Ang proseso ng pagbabago ng string ng character sa isang mas maikling value ng fixed length (tinatawag na hash value, hash code, hash sums o checksums) na kumakatawan sa orihinal na string ay tinatawag na hashing. Karaniwan, ginagamit ang isang function upang maisagawa ang pagbabagong ito at tinatawag itong hash function. Gagawin ng pag-hash ang pag-index at pagkuha ng data sa mga database nang mas mabilis, dahil ang paghahanap sa mas maikli, nakapirming haba na halaga ng hash ay magiging mas mabilis kaysa sa paghahanap sa orihinal na halaga. Ang pag-encrypt ay ang proseso ng pag-convert ng data sa isang format na hindi maintindihan ng mga partido na hindi awtorisadong makita ang data. Ang bagong format na ito ay tinatawag na cipher-text. Ang pag-convert ng cipher-text pabalik sa orihinal na format ay tinatawag na decryption.
Ano ang Hashing?
Ang pag-convert ng string ng character sa isang mas maikling value ng fixed length na kumakatawan sa orihinal na string ay tinatawag na hashing. Ang conversion na ito ay ginagawa ng isang hash function. Ang pag-hash ay nagbibigay-daan sa mas mabilis na pag-index at pagkuha ng data mula sa mga database dahil sa paggamit ng mas maikling hash na halaga kaysa sa orihinal na halaga. Ginagamit din ang pag-hash sa mga algorithm ng pag-encrypt para sa pag-encrypt at pag-decryption ng mga digital na lagda. Ang pag-hash ay isang one way na operasyon at ang orihinal na halaga ay hindi maaaring makuha ng hash value. Higit pa rito, ang pag-hash ay hindi dapat gumawa ng parehong halaga ng hash para sa dalawang magkaibang orihinal na halaga. Ilan sa mga simple at karaniwang ginagamit na paraan ng pag-hash ay ang Division-remainder na paraan, folding method at Radix transformation method.
Ano ang Pag-encrypt?
Ang pag-convert ng data sa isang format (tinatawag na cipher-text) na hindi maintindihan ng mga partidong hindi awtorisadong makita ang data ay tinatawag na pag-encrypt. Matagal nang ginagamit ang pag-encrypt. Ang mga pamamaraan ng pag-encrypt ay mula sa mga simpleng pamamaraan tulad ng pagpapalit ng mga titik para sa mga numero hanggang sa mas kumplikadong mga pamamaraan tulad ng muling pagsasaayos ng mga bit sa isang digital na signal gamit ang isang computer algorithm. Ang pagkuha ng orihinal na data mula sa cipher-text ay tinatawag na decryption at nangangailangan ito ng tamang decryption key. Ang susi na ito ay magagamit lamang sa mga partidong may pahintulot na makita ang data. Ang isang paraan ng pag-encrypt ay tinatawag na isang malakas na pag-encrypt kung hindi ito masira nang hindi nalalaman ang susi ng pag-decryption. Ang pag-encrypt ng pampublikong key ay isa sa mga paraan ng pag-encrypt kung saan naka-encrypt ang data gamit ang pampublikong susi ng tatanggap at hindi ito made-decrypt nang hindi gumagamit ng katugmang pribadong key.
Ano ang pagkakaiba ng Hashing at Pag-encrypt?
Ang pag-convert ng string ng character sa isang mas maikling value ng fixed length na kumakatawan sa orihinal na string ay tinatawag na hashing, samantalang ang pag-convert ng data sa isang format (tinatawag na cipher-text) na hindi maintindihan ng mga partidong hindi awtorisadong makita ang data, ay tinatawag na pag-encrypt. Dahil ang pag-hash ay isang paraan ng operasyon kung saan ang orihinal na halaga ay hindi maaaring makuha ng hash na halaga, ito ay ginagamit din para sa pag-encrypt. Ginagamit ang Message-digest hash function (MD2, MD4, at MD5) para i-encrypt ang mga digital na lagda. Ngunit ang paggamit ng hashing ay hindi limitado sa pag-encrypt. Ginagamit din ang pag-hash para sa mas mabilis na pagkuha ng data mula sa mga database. Ngunit ang mga hash function na ginagamit para sa mga gawaing ito ay magkaiba sa isa't isa at maaaring hindi gumana nang maayos kung ipagpapalit sa pagitan ng dalawang gawain.