LoginSignup
1
1

More than 5 years have passed since last update.

自分用のコイン(トークン)にブラックリストを追加する(ethereum9)

Last updated at Posted at 2018-01-12

前回はこちら。自分用のコイン(トークン)を作成して、別のユーザーに渡す

• ブラックリストに記載されたアドレスは入出金不可とする
• オーナーのみブラックリストへの追加・削除を可能とする
• オーナーはアドレスで識別することとし、コントラクトの作成時のアドレスを設定する

今回使うアドレスは以下の2つです。

ユーザーA;gethを起動時に指定したユーザー

"0x127a0614d4f606460f3cb7e05f1b9f79fdf9191b"

ユーザーB

"0x32a39ca8fd074a9c1e49b77b6613ca5287592305"

コンストラクタにこの値を入れて、「create」を押下する

10000, "OreOreCoin", "oc", 0

ユーザーAのbalanceOfを見て、10,000円あることを確認する

スクリーンショット 2018-01-12 17.10.18.png

ユーザーBに2000を送金する

スクリーンショット 2018-01-12![スクリーンショット 2018-01-12 17.18.37.png](https://qiita-image-store.s3.amazonaws.com/0/39073/d9ef8199-a7d1-5755-f74a-b8434c2a8bec.png "スクリーンショット 2018-01-12 17.18.37.png")<br>
 17.17.43.png

ユーザーBのbalanceOfを確認する

スクリーンショット 2018-01-12 17.18.37.png

blacklistingメソットを使って、ユーザーBをブラックリストに追加します。
スクリーンショット 2018-01-12 19.43.19.png

blacklistプロパティにユーザーBのアドレスを入力して1という値が入ってることを確認します。

スクリーンショット 2018-01-12 19.41.41.png

その後、再度、transferを実行してもユーザーBのお金は増えません。

次に、ユーザーBからAに送金をします。
AccountをユーザーBに変更します。
スクリーンショット 2018-01-12 19.57.51.png

transferにユーザーAのアドレスを入力して送金しても、balanceが変わらないことを確認します。

次に、AccountをユーザーAに戻します。

スクリーンショット 2018-01-12 20.23.30.png

次にユーザーBをブラックリストの対象から外します。-1が返ってきています。

スクリーンショット 2018-01-12 20.25.52.png

次にAccountのユーザーをBに戻して、ユーザーAに送金します。
balanceOfで無事に資金を送金できたことを確認して下さい

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1