Z nieznanych przyczyn przyśniło mi się, iż napisałem rewolucyjny system kompresji plików (kliknij i skompresuj 10 GB danych do 2 MB - hasło reklamowe :-) ). O dziwo, zapamiętałem na czym on polegał.
Podczas kompresji program zapisywał strukturę plików - standard. Inaczej było w przypadku kompresji samych danych. Do każdego pliku aplikacja obliczała sumę kontrolną i badała, za którym razem plik wygenerowany (?) na podstawie tej sumy kontrolnej będzie identyczny z oryginalnym plikiem (jestem ciekaw, jak długo by taka kompresja trwała). Liczba ta była zapisywana w archiwum.
Co do dekompresji, wystarczy wygenerować plik z sumy kontrolnej na podstawie obliczonej liczby.
Zastanawiam się i... czy takie coś jest w praktyce w ogóle możliwe?