It’s now or never

IT系の技術ブログです。気になったこと、勉強したことを備忘録的にまとめて行きます。

Ethereum

【Ethereum】【Solidity】low-level callを使ってコントラクトの関数を実行する

Solidityには、アカウント(アドレス)に対して直接バイトコードを実行する為に、address型の変数に対してcallという関数が用意されています。(low-level callと呼ばれるようです。) http://solidity.readthedocs.io/en/develop/types.html#members-of-address…

【Ethereum】【Solidity0.4.16】viewとpure修飾子

Solidity 0.4.16からviewとpureという関数の修飾子が新たに追加されました。 view 修飾子 pragma solidity ^0.4.16; contract C { function f(uint a, uint b) view returns (uint) { return a * (b + 42) + now; } } 内部で状態を変更しないことを宣言しま…

【Ethereum】コンストラクタから外部のコンストラクタの関数を実行する

EthereumのContractにおいて、 Contract内部から他のContractの関数を呼び出したいケースがあります。 その時に考えられる方法としては主に以下の2つかと思います。 ①Contract内で別のContractをnewする ②既にデプロイされている外部のContractを使う 今回は…

【Ethereum】【Solidity】OpenZeppelinのDayLimitのソースを読んでみる

OpenZeppelinというフレームワークのソースコードを引き続き読んでいます。 過去はこちら inon29.hateblo.jp 今回は、DayLimitというContractのソースを読んでみました。 DayLimitコントラクトは、関数に日付の実行制限を付与するためのコントラクトです。 …

【Ethereum】【Solidity】OpenZeppelinのShareableのソースを読んでみる

Solidity言語を使って実装された、 基本的なContractをフォーマット化したOpenZeppelinというフレームワークが開発されています。 このフレームワークに含まれるShareableというContractのソースを読んでみたので、メモを記載します。 Shareableコントラクト…

【Ethereum】Contractをネットワークにデプロイする

Ethereumの勉強を引き続きしています。 Contractをネットワークへデプロイする場合、 今までは、Ethereum WalletやRemix経由で行っていたのですが、ソースをコンパイルしていデプロイする方法がよくわからなかったので調べてまとめてみました。 古いバージョ…

【Ethereum】Ethereumで独自のトークンの作成してみる

Ethereumのトークンとは Ethereum上でトークンとよばれるコントラクトを作成することで独自の暗号通貨を作成することが可能です。 トークンを使うことで、コイン、ポイントなど様々な仮想的な価値をEthereumの仕組みの上で利用することができます。 トークン…

【Ethereum】Solidityを使ってSmartContractの作成してみる

引き続き、Ethereumを勉強中です。 前回はEthereumのプライベートネットワークを構築する方法について調べました。 inon29.hateblo.jp 今回は、Ethereumのコアな機能であるSmartContractについて実際に動かしてみたいと思います。 実行環境 Ubuntu14.04 on d…

【Ethereum】EthereumでPrivateNetworkを作ってみる

仕事の関係でブロックチェーンのプラットフォームであるEthereumを調べることになり、 簡単な動作確認を行うためにプライベートのEthereumのネットワークを作成してみました。 ※ 調べながらのものなのでところどころ間違っているかもしれません。 ※ ブロック…