Aller au contenu

Liste blanche

Les petites entreprises ont souvent des restrictions statutaires de transfert en place. À mesure qu’elles se développent, elles ont généralement tendance à supprimer ces restrictions et à les abandonner complètement une fois qu’elles sont cotées en bourse.

Cette implémentation de liste blanche est conçue pour accompagner flexiblement et efficacement une entreprise dans ce parcours. Elle supporte le fait d’avoir des jetons librement transférables et des jetons avec transfert restreint en parallèle, permettant un chemin progressif d’un état complètement contrôlé à des jetons librement transférables avec un flottant libre progressivement croissant. Si nécessaire, le processus peut également être annulé.

Il existe quatre types d’adresses :

  • Libre — Peut envoyer aux adresses Libre, Autorisée et Admin, mais ne peut recevoir que d’autres adresses Libre. C’est la valeur par défaut pour les nouvelles adresses.
  • Autorisée — Peut recevoir des jetons de n’importe qui, mais ne peut envoyer qu’aux adresses Autorisée ou Admin.
  • Admin — Comme Autorisée, mais convertit implicitement les adresses cibles en adresses Autorisées, de sorte qu’elles peuvent de facto transférer à n’importe qui. Si les jetons nouvellement frappés doivent être restreints en transfert par défaut, l’adresse nulle peut être définie comme Admin, convertissant automatiquement tous les nouveaux destinataires au statut Autorisé lors de la frappe.
  • Restreinte — Ne peut pas envoyer ou recevoir des jetons de n’importe qui, sauf qu’elle peut transférer des jetons aux adresses Admin.

Le tableau ci-dessous résume l’ensemble de règles implémenté. Les lignes représentent l’expéditeur (« de »), les colonnes représentent le destinataire (« à »).

LibreAutoriséeRestreinteAdmin
LibreYNNY
AutoriséeYYNY
RestreinteNNNN
AdminYYYY

Le type de jeton n’est pas stocké explicitement mais déduit de l’adresse sur laquelle il réside. Un jeton de flottant libre devient un jeton restreint s’il est envoyé à une adresse Autorisée.

En commençant par toutes les actions étant restreintes, une entreprise peut définir des adresses sélectionnées comme type Libre, rendant les jetons sur ces adresses librement transférables — du moins jusqu’à ce qu’ils soient transférés à une adresse Autorisée à nouveau.

Par exemple, une entreprise pourrait déclarer toutes ses actions de trésorerie comme flottant libre et ensuite commencer à les vendre, tout en maintenant les restrictions de transfert pour les actionnaires existants en place.

  • Le contrat n’a pas de constructeur par défaut. Par conséquent, l’adresse 0x0 est Libre par défaut et toutes les frappes sont librement transférables.
  • Pour rendre les jetons restreints par défaut, définissez l’adresse 0x0 en Admin. Ceci convertit automatiquement les destinataires au statut Autorisé.
  • Si l’adresse 0x0 reçoit le statut Admin alors que des jetons de flottant libre sont déjà en circulation, ces jetons ne deviendront pas automatiquement restreints en transfert. L’émetteur doit convertir explicitement les détenteurs existants en Autorisés.
  • Pour rendre les jetons à nouveau librement transférables, supprimez simplement le statut Admin de l’adresse 0x0.
  • Des adresses supplémentaires (par exemple, le multisig de l’émetteur) peuvent être définies en Admin pour distribuer des actions avec restrictions de transfert.
  • Utilisez Restreinte pour les jetons entièrement bloqués, comme dans les cas de vol ou de perte.