Salta ai contenuti

Lista di autorizzazione

Le piccole aziende spesso hanno restrizioni di trasferimento previste dalla legge. Con la crescita, tendono tipicamente a rimuovere queste restrizioni e ad abbandonarle completamente una volta quotate in borsa.

Questa implementazione della lista di autorizzazione è progettata per accompagnare in modo flessibile ed efficiente un’azienda in questo percorso. Supporta la presenza contemporanea di token liberamente trasferibili e token con trasferimento limitato, consentendo un percorso incrementale da uno stato completamente controllato a token liberamente trasferibili con un flottante libero gradualmente crescente. Se necessario, il processo può anche essere invertito.

Ci sono quattro tipi di indirizzi:

  • Free — Può inviare a indirizzi Free, Allowed e Admin, ma può ricevere solo da altri indirizzi Free. Questo è il valore predefinito per i nuovi indirizzi.
  • Allowed — Può ricevere token da chiunque, ma può inviare solo a indirizzi Allowed o Admin.
  • Admin — Come Allowed, ma converte implicitamente gli indirizzi target in indirizzi Allowed, quindi possono effettivamente trasferire a chiunque. Se i token appena coniati dovrebbero essere limitati nel trasferimento per impostazione predefinita, l’indirizzo null può essere impostato come Admin, convertendo automaticamente tutti i nuovi destinatari allo stato Allowed durante il conio.
  • Restricted — Non può inviare o ricevere token da nessuno, tranne che può trasferire token a indirizzi Admin.

La tabella seguente riassume il set di regole implementato. Le righe rappresentano il mittente (“from”), le colonne rappresentano il destinatario (“to”).

FreeAllowedRestrictedAdmin
FreeYNNY
AllowedYYNY
RestrictedNNNN
AdminYYYY

Il tipo di token non è archiviato in modo esplicito ma implicito dall’indirizzo su cui risiede. Un token a flottante libero diventa un token limitato se inviato a un indirizzo Allowed.

Partendo da tutte le azioni limitate, un’azienda può impostare determinati indirizzi al tipo Free, rendendo i token su quegli indirizzi liberamente trasferibili — almeno fino a quando non vengono trasferiti di nuovo a un indirizzo Allowed.

Ad esempio, un’azienda potrebbe dichiarare tutte le sue azioni di tesoreria come flottante libero e quindi iniziare a venderle, mantenendo le restrizioni di trasferimento per gli azionisti esistenti.

  • Il contratto non ha un costruttore predefinito. Pertanto, l’indirizzo 0x0 è Free per impostazione predefinita e tutti i coni sono liberamente trasferibili.
  • Per rendere i token limitati per impostazione predefinita, impostare l’indirizzo 0x0 su Admin. Questo converte automaticamente i destinatari allo stato Allowed.
  • Se l’indirizzo 0x0 viene assegnato lo stato Admin mentre i token a flottante libero sono già in circolazione, questi token non diventeranno automaticamente limitati nel trasferimento. L’emittente deve convertire esplicitamente i detentori esistenti ad Allowed.
  • Per rendere i token di nuovo liberamente trasferibili, basta rimuovere lo stato Admin dall’indirizzo 0x0.
  • È possibile rendere Admin indirizzi aggiuntivi (ad es. il multisig dell’emittente) per distribuire azioni con restrizioni di trasferimento.
  • Utilizzare Restricted per token completamente bloccati, come nei casi di furto o perdita.