
Ti è mai capitato di voler scaricare una mod per Wesnoth e trovarti di fronte a un muro di codice JavaScript che ti chiede di dimostrare che non sei un bot? Bene, ora è ufficiale: anche i giochi open-source si devono difendere dagli scraper famelici.
Il team di Wesnoth ha implementato Anubis, un sistema Proof-of-Work ispirato a Hashcash, per rallentare i bot che cercano di succhiare dati dal loro server. In pratica, se arrivi con un headless browser o un crawler aggressivo, ti tocca risolvere un problema di calcolo prima di poter accedere al sito. Per gli umani, dovrebbe essere trasparente (a meno che non usi estensioni come JShelter, in quel caso sei fritto).
Per noi che amiamo smanettare con il codice, questa è una notizia interessante. Anubis è un esempio pratico di come il Proof-of-Work possa essere usato per altri scopi oltre al mining di criptovalute. Certo, non è perfetto: qualche utente legittimo potrebbe avere problemi, e se sei un maker che usa browser modificati, preparati a qualche grattacapo.
Ma la domanda vera è: quanto è efficace? Gli scraper troveranno un modo per aggirarlo (come sempre), ma nel frattempo Wesnoth guadagna tempo per lavorare su soluzioni più sofisticate, come il fingerprinting dei browser. Insomma, è una soluzione temporanea, ma meglio di niente.
Se sei un appassionato di Wesnoth, probabilmente avrai già notato il cambiamento. Se invece sei uno sviluppatore, potrebbe valere la pena dare un’occhiata al codice di Anubis per vedere come funziona sotto il cofano. E se sei un bot? Beh, speriamo che ti tocchi un bel po’ di lavoro inutile prima di poter rubare i dati.
In conclusione, è una mossa che dimostra quanto sia importante proteggere i progetti open-source dagli abusi. E se anche tu hai un sito che soffre di scraper, forse vale la pena dare un’occhiata ad Anubis. Intanto, buon divertimento con le tue campagne su Wesnoth, e ricordati di disabilitare JShelter se vuoi giocare senza problemi!
Source: Battle for Wesnoth: open-source, turn-based strategy game
