Bitcoin Forum
May 13, 2024, 05:23:44 AM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Warning: One or more bitcointalk.org users have reported that they strongly believe that the creator of this topic is a scammer. (Login to see the detailed trust ratings.) While the bitcointalk.org administration does not verify such claims, you should proceed with extreme caution.
Pages: [1] 2 »  All
  Print  
Author Topic: J'ai créé des token ethereum mais je ne sais pas où ils sont...  (Read 380 times)
winspiral (OP)
Legendary
*
Offline Offline

Activity: 1778
Merit: 1026


Free WSPU2 Token or real dollars


View Profile WWW
January 02, 2018, 12:18:05 PM
 #1

Quelqu'un peut me guider un peu?

J'en suis là:

https://etherscan.io/tx/0x3ad49e949fa0b77405c745cf478d89f1958f0ce382e8186788e4b5020e9ce553

Je fais quoi maintenant...ils sont où mes tocken créés?

There are several different types of Bitcoin clients. The most secure are full nodes like Bitcoin Core, but full nodes are more resource-heavy, and they must do a lengthy initial syncing process. As a result, lightweight clients with somewhat less security are commonly used.
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction.
1715577824
Hero Member
*
Offline Offline

Posts: 1715577824

View Profile Personal Message (Offline)

Ignore
1715577824
Reply with quote  #2

1715577824
Report to moderator
1715577824
Hero Member
*
Offline Offline

Posts: 1715577824

View Profile Personal Message (Offline)

Ignore
1715577824
Reply with quote  #2

1715577824
Report to moderator
soy
Legendary
*
Offline Offline

Activity: 1428
Merit: 1013



View Profile
January 02, 2018, 09:49:55 PM
 #2

Créés à partir de metamask ?

N'oublie pas de vérifier et publier ton code de contract source Wink
goyard67
Full Member
***
Offline Offline

Activity: 176
Merit: 102



View Profile
January 03, 2018, 05:37:08 AM
 #3

Tu as beaucoup de trust  Shocked..
winspiral (OP)
Legendary
*
Offline Offline

Activity: 1778
Merit: 1026


Free WSPU2 Token or real dollars


View Profile WWW
January 03, 2018, 11:12:50 AM
Last edit: January 03, 2018, 05:52:50 PM by winspiral
 #4

Tu as beaucoup de trust  Shocked..

Tu en tiens compte?
Ou vérifies-tu avant de te faire ta propre opinion?

Quote
Créés à partir de metamask ?

N'oublie pas de vérifier et publier ton code de contract source Wink

J'ai pas encore vu ce que metamask est...

J'ai ethereum wallet et c'est galère car ça plante sans arrêt et j'arrive pas à synchroniser.
je ne comprends rien avec leur "--fast--cache 1024" qui devrait être la solution.

En fait je ne sais pas ce que j'ai créer mais j'ai créé quelque chose que je ne vois pas...et je ne sais même plus comment je l'ai créé et comment continuer.


EDITION:
J'abandonne pour le moment avec EthereumWallet...on verra plus tard.
J'ai donc avec l'aide de MyEthereum et MetaMask et tockenFactory réussi à créer des tokens et les envoyer...ça me suffit pour l'intant.
Je laisse donc pour le moment tomber Les token "WINSPIRAL(WSPR) pour m'occuper des "WINSPIRAL(WSPRL)"
Pour ce qui est du code source (comme tu dis) je crois que TokenFactory c'est occupé de tout.

Ma mission (lol) si je l'accepte (lol) est maintenant de les offrir par une espèce de faucet maison et autres sauces de ma préparation et de donner une valeur à ces token...car pour le moment les offrir me revient plus cher que la valeur du token puisque c'est "zéro" (lol)

Encore merci à soy qui m'a redonné l'envie de retourner sur MetaMask.








soy
Legendary
*
Offline Offline

Activity: 1428
Merit: 1013



View Profile
January 03, 2018, 07:17:00 PM
 #5

Tu as beaucoup de trust  Shocked..

Tu en tiens compte?
Ou vérifies-tu avant de te faire ta propre opinion?

Quote
Créés à partir de metamask ?

N'oublie pas de vérifier et publier ton code de contract source Wink

J'ai pas encore vu ce que metamask est...

J'ai ethereum wallet et c'est galère car ça plante sans arrêt et j'arrive pas à synchroniser.
je ne comprends rien avec leur "--fast--cache 1024" qui devrait être la solution.

En fait je ne sais pas ce que j'ai créer mais j'ai créé quelque chose que je ne vois pas...et je ne sais même plus comment je l'ai créé et comment continuer.


EDITION:
J'abandonne pour le moment avec EthereumWallet...on verra plus tard.
J'ai donc avec l'aide de MyEthereum et MetaMask et tockenFactory réussi à créer des tokens et les envoyer...ça me suffit pour l'intant.
Je laisse donc pour le moment tomber Les token "WINSPIRAL(WSPR) pour m'occuper des "WINSPIRAL(WSPRL)"
Pour ce qui est du code source (comme tu dis) je crois que TokenFactory c'est occupé de tout.

Ma mission (lol) si je l'accepte (lol) est maintenant de les offrir par une espèce de faucet maison et autres sauces de ma préparation et de donner une valeur à ces token...car pour le moment les offrir me revient plus cher que la valeur du token puisque c'est "zéro" (lol)

Encore merci à soy qui m'a redonné l'envie de retourner sur MetaMask.


Lol bah de rien. Je ne m'en sers pas beaucoup non plus... Uniquement pour etherdelta ou pour m'amuser à coder quand j'ai le temps.
Pour ce qui est de donner de la valeur à des tokens... C'est bien là tout le challenge de la crypto !
Mais les idées ne manquent pas... Bon courage à toi !
winspiral (OP)
Legendary
*
Offline Offline

Activity: 1778
Merit: 1026


Free WSPU2 Token or real dollars


View Profile WWW
January 03, 2018, 10:15:54 PM
 #6

Tu as beaucoup de trust  Shocked..

Tu en tiens compte?
Ou vérifies-tu avant de te faire ta propre opinion?

Quote
Créés à partir de metamask ?

N'oublie pas de vérifier et publier ton code de contract source Wink

J'ai pas encore vu ce que metamask est...

J'ai ethereum wallet et c'est galère car ça plante sans arrêt et j'arrive pas à synchroniser.
je ne comprends rien avec leur "--fast--cache 1024" qui devrait être la solution.

En fait je ne sais pas ce que j'ai créer mais j'ai créé quelque chose que je ne vois pas...et je ne sais même plus comment je l'ai créé et comment continuer.


EDITION:
J'abandonne pour le moment avec EthereumWallet...on verra plus tard.
J'ai donc avec l'aide de MyEthereum et MetaMask et tockenFactory réussi à créer des tokens et les envoyer...ça me suffit pour l'intant.
Je laisse donc pour le moment tomber Les token "WINSPIRAL(WSPR) pour m'occuper des "WINSPIRAL(WSPRL)"
Pour ce qui est du code source (comme tu dis) je crois que TokenFactory c'est occupé de tout.

Ma mission (lol) si je l'accepte (lol) est maintenant de les offrir par une espèce de faucet maison et autres sauces de ma préparation et de donner une valeur à ces token...car pour le moment les offrir me revient plus cher que la valeur du token puisque c'est "zéro" (lol)

Encore merci à soy qui m'a redonné l'envie de retourner sur MetaMask.


Lol bah de rien. Je ne m'en sers pas beaucoup non plus... Uniquement pour etherdelta ou pour m'amuser à coder quand j'ai le temps.
Pour ce qui est de donner de la valeur à des tokens... C'est bien là tout le challenge de la crypto !
Mais les idées ne manquent pas... Bon courage à toi !

Si tu veux envoie moi ton address ethereum je t'offrirai un WSPRL tu auras alors un souvenir et peut être tu seras riche un jour.(ça me fera un peu de pratique)

L'exploit sera de me débrouiller sans savoir coder les tokens...
Il y a encore des choses qui m'échappent...faut que j'aille "espionner" chez les autres "tokenistes"



soy
Legendary
*
Offline Offline

Activity: 1428
Merit: 1013



View Profile
January 03, 2018, 10:30:10 PM
 #7

Je veux d'abord voir à quoi ressemble la roadmap avant de te filer mon adresse  Cool

Plus sérieusement, si tu as des questions, n'hésite pas à mp !
winspiral (OP)
Legendary
*
Offline Offline

Activity: 1778
Merit: 1026


Free WSPU2 Token or real dollars


View Profile WWW
January 04, 2018, 08:26:35 AM
 #8

Je veux d'abord voir à quoi ressemble la roadmap avant de te filer mon adresse  Cool

Plus sérieusement, si tu as des questions, n'hésite pas à mp !

J'ai pas encore défini l'échelle de la roadmap,il faut que je m'intéresse d'abord à la topologie.

Oui attend encore un peu,mais tu peux créer une adresse et une fois les token dessus tu ne gardes que la clé privée que tu caches au fond d'un puits.

shikakams
Full Member
***
Offline Offline

Activity: 182
Merit: 100


View Profile
January 04, 2018, 09:19:33 AM
 #9

C'est quoi l'objectif de ton token à part se faire du fric ?
winspiral (OP)
Legendary
*
Offline Offline

Activity: 1778
Merit: 1026


Free WSPU2 Token or real dollars


View Profile WWW
January 04, 2018, 09:50:12 AM
 #10

C'est quoi l'objectif de ton token à part se faire du fric ?

Et voilà on en arrive toujours à la même conclusion...je veux m'engraisser,comme on le crois depuis ...1990 je crois.(je ne sais même plus depuis quand.

Quand je pars pour cueuillir des champignons est ce que c'est pour me faire du fric? Non.
Quand je passe des heures à  programmer et à gèrer mes sites pour générer du fric et le redistribuer,est ce pour m'engraisser?Non.

Objectif égoïste en premier:savoir créer un token et "essayer" de lui donner de la valeur.
Cette valeur peut être sonnante et trébuchante,mais peut aussi être "matérielle" (par exemple avoir le droit de...) évidemment si c'est "matériel" quelque part ça devient sonnant et trébuchant.

Ok...peut être de se faire du fric,mais mon objectif n'est pas de me faire du fric...j'envisage même d'y laisser des plumes...quand je vais à la pêche (lol) aux champignons,j'en laisse aussi(temps passé et essence) pour souvent que quelques champignons...tu me diras,avec une canne à pêche c'est pas gagné d'avance (lol)

Souvent avec les tokens on part disons de $2.00 et après ça fluctue en plus ou en moins.
Mon projet est de partir de $0.00

Le problème c'est les frais des transactions qui vont être relativement élevés au début puisque l'on va payer des frais pour quelque chose qui ne vaut encore rien ou pas grand chose.
Pour le moment le risque n'est que de mon côté,puisque ça me coûte en frais de créer les tokens et de les offrir.

J'ai plein d'idées,mais il faut que je teste si c'est applicable.C'est que en testant que je peux le voir.





shikakams
Full Member
***
Offline Offline

Activity: 182
Merit: 100


View Profile
January 04, 2018, 10:02:02 AM
 #11

C'est plus parce que j'ai vu ça sur ton profil :

Trust: -8: -3 / +0
Warning: Trade with extreme caution!

Mais après, oui c'est toujours intéressant de comprendre les cryptos et y a pas meilleur moyen que d'en créer une ! J'espère que tu pourras développeur tes idées !
winspiral (OP)
Legendary
*
Offline Offline

Activity: 1778
Merit: 1026


Free WSPU2 Token or real dollars


View Profile WWW
January 04, 2018, 01:23:26 PM
 #12

Tout est relatif:
Sur EMS j'ai -0 +9
Comme quoi on est pas prophète en son pays (lol)

je cherche un volontaire:
Quelqu'un qui m'envoie une address Ethereum spécialement crée pour du WINSPIRAL (WSPRL)
Je lui offrirai des token pour faire mes tests.

atchoum6760
Legendary
*
Offline Offline

Activity: 1904
Merit: 1063



View Profile
January 04, 2018, 04:37:04 PM
 #13

Tout est relatif:
Sur EMS j'ai -0 +9
Comme quoi on est pas prophète en son pays (lol)

je cherche un volontaire:
Quelqu'un qui m'envoie une address Ethereum spécialement crée pour du WINSPIRAL (WSPRL)
Je lui offrirai des token pour faire mes tests.


Je ne comprends pas pourquoi tu recherches un volontaire tu te crée un nouveau compte mew et tu fais tes tests.Sinon tu peut aussi te servir de Minereum pour créer des contrats sur la blockchain eth.Je ne connais plus le prix il n'y a pas longtemps c'était 50 mne.

soy
Legendary
*
Offline Offline

Activity: 1428
Merit: 1013



View Profile
January 04, 2018, 06:49:19 PM
 #14

Exact, tu peux rester en circuit fermé et faire tes propres transactions sur tes propres adresses MEW. Tu peux même trade tes tokens en solo sur ED. Par contre si tu veux leur donner de la valeur en les distribuant (un airdrop donc), va falloir monter un "vrai" projet qui saura se démarquer de tout ce qu'on trouve. Le temps d'ebtc où les gens achetaient tout et n'importe quoi est bel et bien révolu. Ils commencent à se méfier après plusieurs centaines d'airdrops bidons   Roll Eyes
winspiral (OP)
Legendary
*
Offline Offline

Activity: 1778
Merit: 1026


Free WSPU2 Token or real dollars


View Profile WWW
January 04, 2018, 06:50:49 PM
Last edit: January 04, 2018, 09:31:41 PM by winspiral
 #15

Tout est relatif:
Sur EMS j'ai -0 +9
Comme quoi on est pas prophète en son pays (lol)

je cherche un volontaire:
Quelqu'un qui m'envoie une address Ethereum spécialement crée pour du WINSPIRAL (WSPRL)
Je lui offrirai des token pour faire mes tests.


Je ne comprends pas pourquoi tu recherches un volontaire tu te crée un nouveau compte mew et tu fais tes tests.Sinon tu peut aussi te servir de Minereum pour créer des contrats sur la blockchain eth.Je ne connais plus le prix il n'y a pas longtemps c'était 50 mne.


Je vais te dire pourquoi:
un test me coûte 1/2 dollar...en frais de transaction.Pas de prob si le test ne réussiti pas...mais si ça réussi,j'ai dépensé $0.50 et j'ai toujours mes token donc perdu $0.50 pour rien.
Mais bon...je vais donc le faire et les perdre...

... ... ...
je crois que je ne suis encore prêt pour cette aventure...

Autre problème:
les décimales de mes tokens.

C'est un fait:
Je n'arrive pas à envoyer des token.
https://etherscan.io/address/0x5D099901d5574a3cccE52da17Aad6b2d91a41502
et je ne sais pas pourquoi.

je vais faire un dernier essai...

... ... ...
Je ne sais plus quoi faire...

Quote
Contract 0x937a931b1291ea111fbadf5df172373843cd35dc 
  ERC-20 Token Transfer Failed to complete, check with sender for more information.

Le sender c'est moi...


winspiral (OP)
Legendary
*
Offline Offline

Activity: 1778
Merit: 1026


Free WSPU2 Token or real dollars


View Profile WWW
January 05, 2018, 09:40:33 AM
 #16

Je ne sais pas comment offrir mes token...
Quelqu'un pourrait m'aider à comprendre?

C'est la base de mon projet...si je bute sur la base,c'est foutu.

Asone
Member
**
Offline Offline

Activity: 109
Merit: 11


View Profile
January 05, 2018, 11:00:39 AM
 #17

Hello !

Alors, je vais reprendre quelques points :

- Tes tokens ils sont créés dans ton contrat normalement. Si tu regardes la structure d'un smart-contract de token ERC20, tu verras qu'il y a normalement une variable de mapping nommé balances qui sert à savoir qui dispose de quels montants de tokens :

Quote
contract TokenContractFragment {
 2  
 3     // Balances for each account
 4     mapping(address => uint256) balances;
 5  
 6     // Owner of account approves the transfer of an amount to another account
 7     mapping(address => mapping (address => uint256)) allowed;
 8  
 9     // Get the token balance for account `tokenOwner`
10     function balanceOf(address tokenOwner) public constant returns (uint balance) {
11         return balances[tokenOwner];
12     }
13  
14     // Transfer the balance from owner's account to another account
15     function transfer(address to, uint tokens) public returns (bool success) {
16         balances[msg.sender] = balances[msg.sender].sub(tokens);
17         balances[to] = balances[to].add(tokens);
18         Transfer(msg.sender, to, tokens);
19         return true;
20     }
21  
22     // Send `tokens` amount of tokens from address `from` to address `to`
23     // The transferFrom method is used for a withdraw workflow, allowing contracts to send
24     // tokens on your behalf, for example to "deposit" to a contract address and/or to charge
25     // fees in sub-currencies; the command should fail unless the _from account has
26     // deliberately authorized the sender of the message via some mechanism; we propose
27     // these standardized APIs for approval:
28     function transferFrom(address from, address to, uint tokens) public returns (bool success) {
29         balances[from] = balances[from].sub(tokens);
30         allowed[from][msg.sender] = allowed[from][msg.sender].sub(tokens);
31         balances[to] = balances[to].add(tokens);
32         Transfer(from, to, tokens);
33         return true;
34     }
35  
36     // Allow `spender` to withdraw from your account, multiple times, up to the `tokens` amount.
37     // If this function is called again it overwrites the current allowance with _value.
38     function approve(address spender, uint tokens) public returns (bool success) {
39         allowed[msg.sender][spender] = tokens;
40         Approval(msg.sender, spender, tokens);
41         return true;
42     }
43 }


Si tu ne connais pas les mappings, je te conseille d'aller voir par là bas : http://solidity.readthedocs.io/en/develop/types.html#mappings

Pour expliquer un peu, imaginons que mon addresse de wallet soit 0x123456789, mon solde de ton token sera stocké dans balances[0x123456789]. Pour connaitre mon solde, il y a une fonction dans le smart-contract ERC20 :

Quote
10     function balanceOf(address tokenOwner) public constant returns (uint balance) {
11         return balances[tokenOwner];
12     }

Cette fonction, vu qu'elle renvoie une constante, et donc n'altère pas l'état du smart-contract ( pas de calcul et pas d'écriture, juste de la lecture dans l'EVM ), ne coûte rien. Il faut donc appeler la fonction balanceOf avec mon addresse pour récuperer mon solde de token :


Je te conseille de lire un peu de doc sur le fonctionnement et le principe des tokens ERC20 avant d'approfondir et de te lancer dans la distribution de tokens, ca te permettra de savoir ce que tu fais et être sur de pas semer chaos, désordre et malaria.

Voir ici : https://theethereum.wiki/w/index.php/ERC20_Token_Standard


Ensuite, en ce qui concerne la distribution, si tu as lu un peu les docs que je t'ai fourni ainsi que le code, tu verras qu'il y a des fonctions qui servent à gérer les aspects transactionnels du mapping de variables des balances. Du coup c'est simple, pour faire une distribution il suffit d'appeler ces fonctions.

Exemple, je créer un token avec 10000. Comme je suis un beau gosse je vais t'en filer 2000, toi  dont ton adresse est 0x987654321. Je vais donc appeler la méthode

Quote
transfer(0x987654321,2000)

du smart-contract.

L'EVM traitera la transaction, et mettra à jour la variable mappée : balances[0x987654321] . Vu qu'elle etait à 0 elle passera à 2000. Bim ! Je t'ai distribué des tokens de mon cru ! Smiley


Après, tu peux automatiser en créant un smart-contract qui appelera le smart-contract ERC20 selon des règles que tu aura codé toi afin de distribuer régulièrement/équitablement/nimportecomment les tokens du contrat.


Enfin quelques pistes pour le développement :

- Pour ce qui est déploiement, compilation et création d'ABI pour tes smart-contracts tu peux regarder du côté de Truffle qui est très bien même si le compilateur est assez cryptique en ce qui concerne les bugs de compilation.  https://github.com/trufflesuite/truffle
- Une alternative est Embark, mais je n'en suis pas très fan personnellement, en dépit d'une console de suivi pas trop mal foutue. https://embark.readthedocs.io/en/2.5.2/

- Pour ce qui est du développement de smart-contracts je te conseille remix IDE qui te permettra de suivre toutes les recommandations, avoir les warnings et de bonnes indications sur les bugs de tes contracts.

Tu peux utiliser l'outil directement en ligne :  https://remix.ethereum.org
ou en installer une instance directement chez toi ou sur un serveur : https://github.com/ethereum/remix


Voilà de quoi démarrer. Courage et hésite pas à me solliciter ou à poser des questions sur http://ethereum.stackexchange.com si tu bloques sur certains points techniques. Dernière petite chose : patience ! L'apprentissage est long, demande pas mal de lecture, mais est clairement passionnant !

EDIT :

quelques outils complémentaires/nécéssaires :

TestRPC/Ganache-CLI pour simuler un réseau ethereum, très utile quand on développe et avant de déployer sur un testnet ou sur main net: https://github.com/trufflesuite/ganache-cli. Si tu veux tester tes smart-contracts sans que ca te coute un rond, à faire tourner absolument ! Les déploiements de contrats sur testnets et main net se font après que tes contrats soient bien développés et testés sur ce simulateur !

la doc Web3, qui sert à l'intéraction offchain-onchain : https://web3js.readthedocs.io/en/latest/

Attention, ces outils sont encore en développement pour la plupart, il faut donc régulièrement regarder les docs, fouiller les repos github. Avoir des connaissances solides en développement et notamment en P.O.O est loin d'être optionnel.
winspiral (OP)
Legendary
*
Offline Offline

Activity: 1778
Merit: 1026


Free WSPU2 Token or real dollars


View Profile WWW
January 05, 2018, 11:18:58 AM
Last edit: January 05, 2018, 12:22:17 PM by winspiral
 #18

Je vais commencer par dire merci en espérant que ton effort d'écrire m'aidera.
Dans 1 mois à peu près je vais avoir 66 ans...ça ne rentre plus comme il y a 50 ans...
Je vais donc bien lire tout ce que tu as écris et essayer de comprendre.

...un peu après...
je crois bien que tu m'as achevé là...
N'est il pas possible de tout faire avec cette page:

https://tokenfactory.surge.sh/#/token/0x937A931b1291eA111FBaDF5Df172373843CD35Dc



baba0000000000
Sr. Member
****
Offline Offline

Activity: 812
Merit: 388


View Profile
January 06, 2018, 12:50:54 PM
 #19

Bravo Wispiral pour ton initiative et je te souhaite de réussir a tenir ta roadmap.
J'ai pas 66 ans à peine plus de la moitié mais j'aurai déjà pété un câble avant et vu le pavetar de Asone.
Que je remercie aussi pour son explication qui est très clair. Mais je suis quand même largué  Grin
nier00
Full Member
***
Offline Offline

Activity: 176
Merit: 100


View Profile
January 06, 2018, 01:08:05 PM
 #20

Hello !

Alors, je vais reprendre quelques points :

- Tes tokens ils sont créés dans ton contrat normalement. Si tu regardes la structure d'un smart-contract de token ERC20, tu verras qu'il y a normalement une variable de mapping nommé balances qui sert à savoir qui dispose de quels montants de tokens :

Quote
contract TokenContractFragment {
 2  
 3     // Balances for each account
 4     mapping(address => uint256) balances;
 5  
 6     // Owner of account approves the transfer of an amount to another account
 7     mapping(address => mapping (address => uint256)) allowed;
 8  
 9     // Get the token balance for account `tokenOwner`
10     function balanceOf(address tokenOwner) public constant returns (uint balance) {
11         return balances[tokenOwner];
12     }
13  
14     // Transfer the balance from owner's account to another account
15     function transfer(address to, uint tokens) public returns (bool success) {
16         balances[msg.sender] = balances[msg.sender].sub(tokens);
17         balances[to] = balances[to].add(tokens);
18         Transfer(msg.sender, to, tokens);
19         return true;
20     }
21  
22     // Send `tokens` amount of tokens from address `from` to address `to`
23     // The transferFrom method is used for a withdraw workflow, allowing contracts to send
24     // tokens on your behalf, for example to "deposit" to a contract address and/or to charge
25     // fees in sub-currencies; the command should fail unless the _from account has
26     // deliberately authorized the sender of the message via some mechanism; we propose
27     // these standardized APIs for approval:
28     function transferFrom(address from, address to, uint tokens) public returns (bool success) {
29         balances[from] = balances[from].sub(tokens);
30         allowed[from][msg.sender] = allowed[from][msg.sender].sub(tokens);
31         balances[to] = balances[to].add(tokens);
32         Transfer(from, to, tokens);
33         return true;
34     }
35  
36     // Allow `spender` to withdraw from your account, multiple times, up to the `tokens` amount.
37     // If this function is called again it overwrites the current allowance with _value.
38     function approve(address spender, uint tokens) public returns (bool success) {
39         allowed[msg.sender][spender] = tokens;
40         Approval(msg.sender, spender, tokens);
41         return true;
42     }
43 }


Si tu ne connais pas les mappings, je te conseille d'aller voir par là bas : http://solidity.readthedocs.io/en/develop/types.html#mappings

Pour expliquer un peu, imaginons que mon addresse de wallet soit 0x123456789, mon solde de ton token sera stocké dans balances[0x123456789]. Pour connaitre mon solde, il y a une fonction dans le smart-contract ERC20 :

Quote
10     function balanceOf(address tokenOwner) public constant returns (uint balance) {
11         return balances[tokenOwner];
12     }

Cette fonction, vu qu'elle renvoie une constante, et donc n'altère pas l'état du smart-contract ( pas de calcul et pas d'écriture, juste de la lecture dans l'EVM ), ne coûte rien. Il faut donc appeler la fonction balanceOf avec mon addresse pour récuperer mon solde de token :


Je te conseille de lire un peu de doc sur le fonctionnement et le principe des tokens ERC20 avant d'approfondir et de te lancer dans la distribution de tokens, ca te permettra de savoir ce que tu fais et être sur de pas semer chaos, désordre et malaria.

Voir ici : https://theethereum.wiki/w/index.php/ERC20_Token_Standard


Ensuite, en ce qui concerne la distribution, si tu as lu un peu les docs que je t'ai fourni ainsi que le code, tu verras qu'il y a des fonctions qui servent à gérer les aspects transactionnels du mapping de variables des balances. Du coup c'est simple, pour faire une distribution il suffit d'appeler ces fonctions.

Exemple, je créer un token avec 10000. Comme je suis un beau gosse je vais t'en filer 2000, toi  dont ton adresse est 0x987654321. Je vais donc appeler la méthode

Quote
transfer(0x987654321,2000)

du smart-contract.

L'EVM traitera la transaction, et mettra à jour la variable mappée : balances[0x987654321] . Vu qu'elle etait à 0 elle passera à 2000. Bim ! Je t'ai distribué des tokens de mon cru ! Smiley


Après, tu peux automatiser en créant un smart-contract qui appelera le smart-contract ERC20 selon des règles que tu aura codé toi afin de distribuer régulièrement/équitablement/nimportecomment les tokens du contrat.


Enfin quelques pistes pour le développement :

- Pour ce qui est déploiement, compilation et création d'ABI pour tes smart-contracts tu peux regarder du côté de Truffle qui est très bien même si le compilateur est assez cryptique en ce qui concerne les bugs de compilation.  https://github.com/trufflesuite/truffle
- Une alternative est Embark, mais je n'en suis pas très fan personnellement, en dépit d'une console de suivi pas trop mal foutue. https://embark.readthedocs.io/en/2.5.2/

- Pour ce qui est du développement de smart-contracts je te conseille remix IDE qui te permettra de suivre toutes les recommandations, avoir les warnings et de bonnes indications sur les bugs de tes contracts.

Tu peux utiliser l'outil directement en ligne :  https://remix.ethereum.org
ou en installer une instance directement chez toi ou sur un serveur : https://github.com/ethereum/remix


Voilà de quoi démarrer. Courage et hésite pas à me solliciter ou à poser des questions sur http://ethereum.stackexchange.com si tu bloques sur certains points techniques. Dernière petite chose : patience ! L'apprentissage est long, demande pas mal de lecture, mais est clairement passionnant !

EDIT :

quelques outils complémentaires/nécéssaires :

TestRPC/Ganache-CLI pour simuler un réseau ethereum, très utile quand on développe et avant de déployer sur un testnet ou sur main net: https://github.com/trufflesuite/ganache-cli. Si tu veux tester tes smart-contracts sans que ca te coute un rond, à faire tourner absolument ! Les déploiements de contrats sur testnets et main net se font après que tes contrats soient bien développés et testés sur ce simulateur !

la doc Web3, qui sert à l'intéraction offchain-onchain : https://web3js.readthedocs.io/en/latest/

Attention, ces outils sont encore en développement pour la plupart, il faut donc régulièrement regarder les docs, fouiller les repos github. Avoir des connaissances solides en développement et notamment en P.O.O est loin d'être optionnel.

Très bien expliqué, il est clair qu'il doit avoir une bonne base de programmation sinon il pourra coder un contrat vulnérable.

★ ★ ★ ★ ★   DeepOnion    Anonymous and Untraceable Cryptocurrency    TOR INTEGRATED & SECURED   ★ ★ ★ ★ ★
› › › › ›  JOIN THE NEW AIRDROP ✈️        VERIFIED WITH DEEPVAULT  ‹ ‹ ‹ ‹ ‹
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬   ANN  WHITEPAPER  FACEBOOK  TWITTER  YOUTUBE  FORUM   ▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
Pages: [1] 2 »  All
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!