SQL CHECKSUM() i MD5 to funkcje skrótu . Haszowanie to jednokierunkowy algorytm, który może pobierać dowolną liczbę znaków/bajtów i zwracać ustaloną liczbę znaków/bajtów.
Oznacza to, że bez względu na to, czy wprowadzisz 1 znak, czy całą książkę (Wojna i pokój), otrzymasz taką samą odpowiedź. Tak więc wejście jest nieskończoną liczbą kombinacji, podczas gdy wyjście jest skończone. Na tej podstawie nieuniknione jest uzyskanie tego samego skrótu dla różnych wartości. Nazywa się to Kolizja skrótu . Dobre algorytmy haszujące starają się to złagodzić, aby utrudnić znalezienie tych kolidujących wartości.
Ale dość teorii o haszowaniu. Oto dokładnie odpowiedź na twoje pytanie. Co to jest problem z CHECKSUM() ?