Comment rendre les jetons ERC20 non transférables jusqu’à une certaine date?

John Murphy

Comment rendre les jetons ERC20 non transférables jusqu’à une certaine date?


Je veux créer un jeton qui n’est ni vendable ni transférable jusqu’à une date précise (afin que seuls les acheteurs initiaux puissent acheter des jetons, mais ils ne devraient pas vendre de jetons avant la fin de l’ICO), quelle serait la meilleure façon de procéder?

Par exemple, si je devais mettre en œuvre quelque chose comme

 if ( msg . sender !=  owner ){ 
    require ( now >=  endOfICO ); 
 } 

à l’intérieur de la fonction de transfert serait-ce acceptable, voire utilisable?

Merci beaucoup pour toute aide ou conseil, ou même des liens vers d’autres discussions car je ne trouve pas d’informations sur la façon d’intégrer des verrous temporels sur les transferts.

Réponses


 Jitendra Kumar. Balla

Oui tu peux le faire. Mais vous devez obtenir l’approbation de l’échange, si l’échange aime votre livre blanc / idée. Ensuite, exchange listera votre jeton. Avant de déployer sur le réseau principal. Mieux vaut consulter un échange et dire la même chose (peut acheter des jetons, mais ils devraient vendre des jetons jusqu’à la fin de l’ICO). Je suppose que la plupart des jetons font de même. Mais mieux vaut obtenir la confirmation de l’échange.

Mais je vous suggère d’utiliser un modificateur pour vérifier l’état. Parce que cela vous donnera plus de lisibilité et de réutilisabilité.

J’attache un exemple d’extrait de code pour le même:

 modifier isICOCompleted ()   { 
     require ( now >=  endOfICO ); _ ; 
 } modifier isContractOwner ()   { 
     require ( msg . sender ==  owner ); _ ; 
 } 

 function  transfer ( address _to ,   uint  _amount )  isICOCompleted public   { 
     //Implement your logic 
 } 

Lauri Peltonen

Il est très rare qu’un token soit coté sur un échange juste après son ICO. Généralement, cela va dans le sens inverse: un ICO symbolique est organisé, il réussit et après une longue période de croissance et d’attention, il peut être accepté dans un échange.


 Lauri Peltonen

1) Votre idée est correcte – il suffit que l’horodatage actuel soit après l’heure souhaitée

2) Créez un modificateur qui vérifie

3) Utilisez le modificateur dans les fonctions d’envoi / transfert pour restreindre leur utilisation

Pour autant que je sache, il n’y a rien de compliqué ni de secret à faire face aux contraintes de temps. Il a juste besoin d’être codé.

Peut-être voulez-vous même que l’heure souhaitée soit modifiable? Ajoutez une fonction pour le propriétaire qui modifie la variable.


 tjx

  1. existe-t-il un moyen pour le propriétaire du contrat de déplacer des jetons – les garder décongelés à tout moment pour les partager avec les membres de l’équipe, les parachutages, etc.

    une. avoir des jetons parachutés gelés jusqu’à la fin de l’ICO (disons le 30 mars 2018) … en attendant
    b. les membres de l’équipe sont gelés jusqu’à une certaine date, disons 730 jours après la fin de l’ICO
    c. faire congeler les conseillers pendant 180 jours après la fin de l’ICO

  2. faire congeler les jetons de vente publique jusqu’à la même date que les jetons parachutés …

  3. alors où dois-je ajouter l’horodatage? ai-je fait cela correctement?

Mon code:

 modifier isICOCompleted ()   { 
   require ( now >=   March   30 ,   2018 ); _ ; 
 } modifier isContractOwner ()   { 
   require ( msg . sender ==  owner ); _ ; 
 } 

 function  transfer ( address _to ,   uint  _amount )  isICOCompleted public   { 
   //Implement your logic 
 } 

 

#(une, certaine, comment, date, ERC20?, jetons, jusqu’à, Les, non, Rendre, transférables

 

yahoo

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *