🚫🚫 SPAM: COME FUNZIONA ⚙️⚙️

Il sistema SPAM ha due componenti:

🔗 Un meccanismo onchain per tracciare le transazioni degli utenti, calcolare i premi per utente e consentire agli utenti di coniare $SPAM in proporzione al numero di messaggi inviati.

🌐 Un web miner che consente agli utenti di inviare facilmente molte transazioni in modo automatico, nonché di coniare e rivendicare monete $SPAM.

Analizziamo diversi livelli di analisi:

👶ELI5👶

- Ogni giorno vengono coniate un miliardo di monete $SPAM.

- Gli utenti guadagnano $ SPAM inviando $SUI transazioni.

- Più messaggi invii, più $SPAM riceverai.

- Non esiste alcuna prova del lavoro, solo prova dello spam.

🕹️MECCANISMO🕹️

Un'"epoca" Sui equivale all'incirca a 1 giorno.

Gli utenti inviano tx per aumentare i loro contatori tx durante l'epoca N, registrano i loro contatori tx durante l'epoca N+1 e contano $SPAM in qualsiasi momento dall'epoca N+2 in base allo spamming effettuato nell'epoca N:

- Epoca 0: l'utente invia spam a UserCounter.0 (UC.0)

- Epoca 1: l'utente invia spam a UC.1, registra UC.0

- Epoca 2: l'utente invia spam a UC.2, registra UC.1, rivendica UC.0

- Epoca 3: l'utente invia spam a UC.3, registra UC.2, rivendica UC.1

- E così via

🛠️ IMPLEMENTAZIONE 🛠️

- Gli oggetti `UserCounter` a scrittore singolo vengono utilizzati per tenere traccia del numero di tx inviati da ciascun utente in un'epoca.

- Al termine dell'epoca, l'utente registra il proprio `UserCounter` in un oggetto condiviso, in modo che possa essere calcolato il numero totale di tx nell'epoca precedente.

- Al termine dell'epoca successiva (periodo di registrazione), gli utenti possono coniare monete $SPAM in proporzione al numero di tx inviati.