Pulsar - wyjątkowy portal naukowy. Pulsar - wyjątkowy portal naukowy. Shutterstock
Opinie

Debaty przedwyborcze: ufaj, ale haszuj

Dzięki (stosunkowo) prostemu narzędziu uczestnicy debat przedwyborczych zyskaliby pewność, że organizator nie manipuluje treścią albo kolejnością pytań w zależności od biegu wydarzeń.

Parę dni temu mieliśmy okazję oglądać debatę przedwyborczą. Jak wskazują liczne komentarze w mediach, cechowała się ona ogromnym poziomem nieufności części uczestników w stosunku do organizatora, którego podejrzewano o chęć sprzyjania stronie rządowej.

Nie mnie oceniać, czy te podejrzenia były uzasadnione i czy się sprawdziły.

Nie od rzeczy jest jednak wskazać, że niezbyt skomplikowane zastosowanie pewnego narzędzia współczesnej informatyki pozwoliłoby co najmniej trochę poziom nieufności zredukować. Tym narzędziem jest haszowanie, a dzięki niemu wszyscy uczestnicy mogliby sprawdzać, że zadawane są im po kolei pytania ustalone przed rozpoczęciem debaty. Oznaczałoby to, że organizator przynajmniej nie manipuluje doborem ich treści albo kolejności w zależności od biegu wydarzeń. Oczywiście pozostawia to wiele innych powodów do obaw, ale lepsze trochę niż nic.

Jak to się robi? Potrzebna jest do tego kryptograficzna funkcja haszująca h (stosuje się także nazwy funkcja mieszająca albo funkcja skrótu). Przetwarza ona dane tekstowe na ciągi zer i jedynek o z góry ustalonej długości d.

Generalnie, powinna ona gwarantować, że dla każdej konkretnej wartości s rozwiązanie równania h(x)=s powinno być niezmiernie trudne, mimo że rozwiązujący zna sposób obliczania h. Nie chodzi tutaj tylko o brak wzorów na rozwiązanie, ale także o wykluczenie wszelkich innych metod, w tym wypróbowywania po kolei wielu w nadziei natrafienia na taki, który jest rozwiązaniem, wnioskowania o cechach s na podstawie s, żeby potem łatwiej go znaleźć poprzednią metodą, itp. W zasadzie wymaga się nawet mocniejszego warunku, że bardzo trudno jest znaleźć jakąkolwiek parę różnych argumentów r i r' takich, że h(x)=h(x').

Trzeba jasno powiedzieć, że istnienia kryptograficznych funkcji haszujących dotąd nie wykazano matematycznie. Stosuje się zatem w ich roli różne heurystycznie skonstruowane algorytmy, każdy z nich do czasu, gdy ktoś wymyśli sposób jego „złamania”. Taki los spotkał już kilka, ale zawsze, zanim problem stał się poważny, istniała już kolejna funkcja, trudniejsza do złamania od poprzedniej. Wszystkie one są publicznie znane i łatwo dostępne są programy je obliczające.

Jak takiej funkcji można było użyć w czasie debaty przedwyborczej? Pytania wymyślone przez organizatorów, w zaplanowanej kolejności, powinny zostać po kolei poddane działaniu funkcji haszującej h, po czym wyniki rozesłane do sztabów wyborczych. W ten sposób każdy sztab, nawet nieznający oryginalnych pytań, w momencie ich zadania mógłby sprawdzić, że nikt nie manipulował przy nich od momentu wysłania wartości haszy. Wystarczyłoby, żeby organizator debaty wysyłał treść każdego pytania – w momencie jego zadania – do sztabów, który mogłyby obliczyć jego hasz i sprawdzić, że jest taki sam, jak ten rozesłany wcześniej. Wysyłka treści przez organizatora jest ważna, bo nawet najdrobniejsza różnica w sposobie zapisania pytania zmienia wartość haszu.

Oczywiście ta metoda nie daje gwarancji, że treść pytań nie wyciekła do niektórych uczestników ani że nie były nie one układane z intencją wsparcia którejś strony. Ale co poradzić?

Ta strona do poprawnego działania wymaga włączenia mechanizmu "ciasteczek" w przeglądarce.

Powrót na stronę główną