Witam,
Oto iście nietuzinkowe zadanie z pogranicza reverse engineering.
Tymbark oferuje na Android'a i iOS'a aplikacje Kapsel, czyli znane wszystkim kapsle z wróżbą w wersji elektronicznej. Jak mi się wydaje, aplikacje działają w ten sposób, że codziennie generują losowy kod, na jego podstawie podłączają się przez www i pobierają hasło na dany dzień i prezentują użytkownikowi.
Interesuje mnie aspekt generowania owego kodu. Czy ktoś ma pomysły? Aplikacje generują url-e (na potrzeby dzielenia się z innymi przez e-mail itp.) typu:
- http://kapsel.tymbark.com/4254054ee
- http://kapsel.tymbark.com/942399b9d
- http://kapsel.tymbark.com/f3240341f
Moja hipoteza jest taka, że liczba w url-lu jest haszowana na konkretny wpis w bazie (których na pewno jest mniej niż 16^9). Jak się jednak można łatwo przekonać, nie każda 9-cyfrowa liczba szesnastkowa prowadzi do faktycznego kapsla. Oznacza to że istnieje jakaś suma kontrolna?
Po co mi to? Otóż chcę napisać aplikację na smartwatch'a Pebble, która będzie robić coś podobnego i potrzebuję poznać metodę generowania owych kodów.