В чем разница между обфускацией, хэшированием и шифрованием?

Это объяснение высокого уровня. Я hashing постараюсь их доработать:

Хеширование encrypted - в идеальном мире это случайный decryption оракул. Для одного и того cipher же входа X вы всегда получаете decrypt один и тот же результат Y, который string-hashing НИКАК не связан с X. Это encrypted математически невозможно decrypt (или, по крайней мере, не hashing доказано, что это возможно). Самое hashalgorithm близкое, что мы получаем, это data-encryption функции лазейки. H(X) = Y, поскольку cipher с H-1(Y) = X это настолько decrypt сложно сделать, что вам лучше encryption попытаться грубо заставить hashing Z так, чтобы H(Z) = Y

Обфускация encrypt (мое мнение) — любая функция cipher f, такая что f(a) = b, где data-encryption вы полагаетесь на секретность encrypted f. F может быть хеш-функцией, но hashalgorithm часть «обфускации» подразумевает data-encryption безопасность через неясность. Если hash вы никогда раньше не видели digest ROT13, это будет обфускация

Шифрование decryption - Ek(X) = Y, Dl(Y) = X, где hash E всем известно. k и l — ключи, они encrypt могут быть одинаковыми (в deciphering симметричном они одинаковые). Y deciphering — зашифрованный текст, X cipher — открытый текст.

encryption

hash

obfuscation

2022-10-01T12:49:58+00:00