ブロックチェーン入門 chapter 06

パブリックブロックチェーンを利用した開発モデル

前回の記事 (コラム05:web3関連ビジネスで注目される技術) でも触れたように、 中央集権のプラットフォーム型ではないユーザ主導の非中央集権管理型による分散ビジネスは さまざまなビジネスモデルを生み出します。 そして同時に、「NFTマーケットプレイス」、「DeFi (ディーファイ)」、「GameFi (ゲーミファイ)」など 一般ユーザにとって触れやすい投機需要を生み出しました。 ユーザ数が増えればそれを取り扱いたいユーザや組織が増えてくるのも世の常です。 そのような需要を受けて、サイト運営者やブロックチェーン開発者の負担を減らしてくれるサービスも さまざまなものが用意されています。

【目次】

ブロックチェーンの利用を支援する開発運用サービス

イーサリアム (Ethereum) で取り扱うスマートコントラクト言語Solidity (ソリディティ) は、 分散システム上で動かせるようにするために比較的独特なルールが多くあります。 また、通常の言語であれば標準的に備えているような機能や構文を備えていないケースがあるなど、 純粋なプログラミング言語としては比較的学習コストが高いものでした。
他にも、ローカル内で処理が完結せず、系に対してトランザクションを発行することで 台帳の更新をまかなうブロックチェーンは、 各種言語 (JavaScriptやPythonなど) から スマートコントラクトを呼び出す際にも非同期的処理やイベント処理の取り扱いを考慮する 必要があるなど、やや煩雑な処理を書いていく必要があります。
しかしながら、スマートコントラクトはコードを書いただけでは機能せず、 ブロックチェーンネットワークにデプロイして利用することで初めて「処理」を行うことが できます。したがって、デプロイする数が増えてくるとその管理も煩雑になります。

上記のような環境を踏まえ、コードの生成や運用管理機能により、ブロックチェーンを 利用しやすくするような開発運用サービスが誕生しました。 その代表的な2つのサービスについて例を簡単に紹介したいと思います。

OpenZeppelin Contract Wizard (https://wizard.openzeppelin.com/#erc721)

OpenZeppelin Contract Wizard操作画面
図1 OpenZeppelin Contract Wizard

OpenZeppelinは、コントラクトに必要な機能をチェックボックス形式で指定することで、標準的な規格 (ERC721やERC20、1155など) に沿ったSolidityのコードを生成してくれるコードテンプレート生成サイトです。
やや複雑なSolidity上の処理を、セキュリティ面を意識した実装で提供してくれるスマートコントラクトライブラリも 含めてOpenZeppelinからコードを取得(継承)してくれます。 このため、Solidityに関する深い知識がなくてもトークン処理に必要な機能を実装することができます。
また、生成したコードをWeb上の統合開発環境であるRemix (https://remix.ethereum.org/)に 転送してくれます。 他にも、ファイルとしてダウンロードする機能などが備わっており、 自身の管理するプライベートネットワークに デプロイしたり、利用しているブロックチェーンフレームワークなどのコントラクトデプロイ機能に渡したりすることも 簡単にできるようになっています。

thirdweb

thirdweb
図2 thirdweb

thirdwebは、コントラクトの作成、デプロイに加え、操作用のインターフェースやダッシュボード、Webアプリに 張り付けるためのコードテンプレートの生成を行ってくれるサイトです。
コントラクトデプロイの際はERC20、ERC721などの基本的なERC規格に加え、ERC4907 (レンタル可能NFT) や Staking (一定期間トークンを預ける事で利子を得る仕組み) に対応しております。 また、トランザクション手数料削減のためのERC4337 (Account Abstractrion) やOpenseaのような マーケットプレイスを作る仕組み (ERC2981 NFT Royalty Standard) などにも対応しており、 NFTマーケットプレイスなどを自身で構築する場合にも利用できるようなものがそろっています。

他にも、以下のようなブロックチェーン開発を行う上で必要になりそうな各種サービス、ソフトウェアを 総合的に用意しています。

  • トークン詳細情報をアップロードするための分散ファイルシステム (IPFS) の提供
  • ブロックチェーンネットワークに接続する際のBCノード API (RPC) の提供
  • ユーザにとってのトランザクション手数料を安くするためのコントラクトウォレットの機構や、各種ウォレットアプリへの接続用SDK

以前はプラットフォームで販売したトークンからロイヤリティが差し引かれる仕組みでしたが、 2022年のV2リリース (https://blog.thirdweb.com/thirdweb-v2/) に 伴い、プラットフォーム手数料は無償化されました。

まとめ

イーサリアム (Ethereum) で取り扱うスマートコントラクト言語であるSolidityは、 分散システム上で動作させるようにするために比較的独特なルールが多く存在します。 他にもさまざまな考慮が必要になります。これらを踏まえ、ブロックチェーンを利用しやすくするために 開発運用サービスが誕生しました。

  • OpenZeppelin Contract Wizard
    コントラクトに必要な機能をチェックボックス形式で指定することで、標準的な規格 (ERC721やERC20、1155など) に 沿ったSolidityのコードを生成してくれるコードテンプレート生成サイトです。
  • thirdweb
    コントラクトの作成、デプロイに加え、操作用のインターフェースやダッシュボード、Webアプリに 張り付けるためのコードテンプレートの生成を行ってくれるサイトです。
ビジネスを考えられる方々にとっては、ブロックチェーンはブラックボックスとして、 その特徴やメリット、デメリットを踏まえた上でうまく活用することに注力されるとよいかと存じます。
NTTテクノクロスでは、このようなブロックチェーンを活用したビジネスの検証サービスとして ContractGate PoC Serviceをご提供しております。

執筆者紹介

執筆者 兼松 和広 写真

兼松 和広(かねまつ かずひろ)

高度専門人材 / テックリード
2002年NTTテクノクロス(旧NTTソフトウェア)に入社。
さまざまなシステム開発や保守運用を担当しながら、データベースの専門家として 技術支援や研修講師を担い、数々の表彰を受賞。
2015年からブロックチェーンやweb3についての自らの知見や技術力を活用し、 多くのプロジェクトに参画。
2023年に高度専門人材として社内で任命される。
ブロックチェーンの団体であるEthereum Enterprise Alliance Japanのイーサリアム性能評価ワークショップに参加し、 ブロックチェーンのビジネス利用に必要な性能評価観点【ETHTerakoya × Blockchain EXE 】の発表等も実施。
日々、専門性を高めるべく自身を磨き続けている。

ContractGate製品についてのお問い合わせ、ブロックチェーン導入にあたってのご相談など
お気軽にお問い合わせください。

お問い合わせはこちらから

「5分でわかるシリーズ」
ホワイトペーパーのお申し込みはこちらです。

ホワイトペーパーはこちらから

トップへ