ブロックチェーン技能検定試験のおすすめ参考書・テキスト(独学勉強法/対策)




ブロックチェーン技能検定試験の公式テキスト

公式テキストはAmazonより購入が可能です。
また公式ホームページでは試験範囲や難易度を確認することができます。
ブロックチェーン技能検定公式HP

目次 – ブロックチェーン技能検定公式テキスト&問題集

まえがき

2017年末に1ビットコインが200万円を超える価格で取引されて以来、ビットコイン・暗号通貨・ブロックチェーンと呼ばれる言葉が技術者や一部のアーリーアダプター以外の人々も認知するようになりました。2017年当時、実際にビットコインを取引したことがあってもピットコインやブロックチェーンがどのように動いているか、なぜ価値がついているのかを知らずに取引している方々も多かったと思います。

 

 

【最新 – ブロックチェーンを理解するためのおすすめ本 – 入門から活用事例まで】も確認する

ランキングも確認する
出典:出版社HP

 

 

 

一時のビットコインのバブル価格も落ち着いたことで、ブロックチェーンを「通貨用途以外でどう活用していくか」といった研究開発が活発に行われています。こうした研究開発に取り組むために、ブロックチェーンを正しく理解するエンジニアの育成が急務となっていると同時に、技術の理解度を測る指標が併せて必要です。本書はこうした背景から、ブロックチェーンに興味のあるエンジニアの皆さんに、まずブロックチェーンに触れてもらうための入門的内容として、ビットコインに関する基本的な技術要素を取り扱っています。

また本書の内容はブロックチェーン技能検定試験のブロンズコースに準拠しています。ブロンズコースは、ビットコインのブロックチェーンを活用した、システム開発に必要になる事前知識を問うレベルに設定されている試験です。本書の技術内容を理解することで、ブロックチェーン技術の入門を果たすとともに、理解度を測る指標であるブロックチェーン技能検定試験にも挑戦する知識水準に達することが可能となります。一人でも多くのエンジニアの皆さんにブロックチェーン技術を学んでいただき、活発化している次世代のブロックチェーン時代で活躍できるエンジニアを輩出することを目指しています。

一般財団法人ブロックチェーン技能認定協会

一般財団法人ブロックチェーン技能認定協会 (著), 一般社団法人ブロックチェーン推進協会 (監修)
出版社: 日本能率協会マネジメントセンター (2019/6/21)、出典:出版社HP

ブロックチェーン技能検定について

ブロックチェーン技能検定試験(本試験)は、一般財団法人ブロックチェーン技能認定協会が主催する、エンジニアを対象としたブロックチェーン技術を評価するための試験です。一般社団法人ブロックチェーン技能認定協会は、2016年4月にブロックチェーン技術の幅広い普及推進を目的として設立された一般社団法人ブロックチェーン推進協会(略称:BCCC)の技術部会からの発起で設立されました。

「ブロックチェーンおよび仮想通貨に関する正しい知識や利用方法の普及・安全で安心な情報流通を推進する」をミッションに活動しています。本試験は、ブロックチェーンエンジニアの育成およびその知識を評価し、ブロックチェーン技術の活用を見込む企業とエンジニアとの間における共通した評価基準となることを目的としています。

本試験はブロンズクラス、シルバークラス、ゴールドクラスの3つのレベルで構成されています。それぞれのクラスは以下の到達レベルで設定されています。

ブロンズクラス
●到達レベル
ビットコインのブロックチェーンを活用したシステム開発に必要な技術を理解していること。
●技術要素
・ブロックチェーンの基本構造
・暗号化、符号化技術
・ビットコインのブロックチェーンプロトコル

シルバークラス(準備中)
●到達レベル
ブロックチェーン2.0世代の通貨としてだけではない暗号資産としてのブロックチェーン活用に必要な技術を理解していること
●技術要素・スマートコントラクト
・オリジナルトークン
・サイドチェーン技術
・ペイメントチャネル

ゴールドクラス(準備中)
●到達レベル
オリジナルのブロックチェーンを設計・開発できる技術を保有しているエンジニアであること
●技術範囲(小論文形式)
・問題のある特定のブロックチェーン技術が例示され、それを解決する方法の提案を行うことができるか。
ビットコインのブロックチェーン技術からすべてのブロックチェーンは始まっていますので、どういったブロックチェーンを使っていくにしても、必ずビットコインのブロックチェーンを理解している必要があります。
ブロックチェーンエンジニアを目指される方々は、まずブロンズクラスから受験を始めることが好ましいです。

試験実施機関
一般財団法人ブロックチェーン技能認定協会
URL https://www.bctc.global/

試験概要
申し込み方法 一般財団法人ブロックチェーン技能認定協会
URL https://www.bctc.global/
上記サイトの検定申し込みより受験手続きを行ってください。
受験資格 受験資格は設けておりません。本書の内容を学習することで 格水準を満たします。本書はIT業界で活動されているプログ ラマやエンジニア向けの内容になっています。
受験料 BCCC会員受験か一般受験によって異なります。
試験日程 オンライン受験のため随時受験可能
試験時間 試験時間:60分
試験方法 オンライン受験
出題形式 選択式
合格基準 60%以上の正答で合格
出題範囲 本試験のブロンズコースの出題範囲はブロックチェーン技術の 以下カテゴリーから出題されます。
●カテゴリーⅠ ECDSA
ビットコインの暗号要素であるECDSAを中心にブロック チェーンの理解に必要な数学的知識について問う問題が出題さ れます
●カテゴリーII データ書式
ビットコイン取引の実態であるトランザクションのデータ構 造を正しく理解しているかを問う問題が出題されます
●カテゴリーIII Script
ビットコインの取引を行う際に使用される Script と呼ばれる 「概念を正しく理解しているかを問う問題が出題されます
●カテゴリーIV BIPS
ビットコインの仕様を取り決めているBIP (Bitcoin Improvement Proposal) のうち特に重要な仕様を正しく理解しているかを問 う問題が出題されます
●カテゴリーV P2P
ビットコインのブロックチェーンネットワークで利用されて いるP2P通信プロトコルから出題されます。通信の手順や通 信する際のコマンドなどを正しく理解しているかを問う問題が 出題されます

 

一般財団法人ブロックチェーン技能認定協会 (著), 一般社団法人ブロックチェーン推進協会 (監修)
出版社: 日本能率協会マネジメントセンター (2019/6/21)、出典:出版社HP

CONTENTS

まえがき
ブロックチェーン技能検定について
試験概要
ブロックチェーンに関する仕様および用語定義について
本書での用語定義

CHAPTER1 ブロックチェーンの基本
01ブロックチェーン
02ブロックチェーンの成り立ち
Column01

CHAPTER2 暗号技術と電子署名
01ブロックチェーンに必要な技術要素
02ハッシュ関数
03電子署名
04エンコード関数

CHAPTER3 トランザクション
01トランザクション
02マイニング

CHAPTER4 Script言語
01Scriptの意味と処理方法
02トランザクションとScriptの種類
Column02

CHAPTER5 ビットコインのブロックチェーン仕様
01BIP
02重要なBIPS
Column03

CHAPTER6 P2P通信技術
01P2P通信技術
02メッセージ
03主要メッセージ
Column04

CHAPTER7 過去問題
過去問題
解答解説

ブロックチェーンに関する仕様および用語定義について

ブロックチェーンに関係する仕様は現在ISO/TC307の作業部会で議論されており、2020年を目処に定義化が予定されています。そのため、定義が完了するまでは、さまざまな団体や企業がそれぞれ独自の意味合いで用語が使われている形になります。ISO作業部会の検討情報は下記URLから確認できます。

https://www.iso.org/committee/6266604.html

特にマウントゴックス事件、コインチェック事件と2つの大きなビットコインに関する事件が発生した日本は、セキュリティに関しての議論が行われるISO/TC307/JWG4のBlockchainanddistributedledgertechnologiesandITSecuritytechniquesを担当しています。さらに2018年9月には金融庁の仮想通貨交換業者に登録済みである、テックビューロ社の暗号通貨取引サービスZaifでも、新たな暗号通貨流出事件が発生しており、ますますセキュリティへの取り組みが重要視されています。特に暗号通貨に関するセキュリティについては、Webサービスの防衛観点のみでは不十分であり、ITシステムでの対策だけではなく従事する従業員のセキュリティ意識啓蒙などを含めて、暗号通貨に対する適切な認識を持って、サービス開発や運営に努めることも求められます。ISOのワーキンググループでは暗号通貨のセキュリティ項目以外にも、さまざまな観点から仕様が検討されていますので、それらの動向を追うことで最新の正式な仕様をいち早く知ることができます。

一般財団法人ブロックチェーン技能認定協会 (著), 一般社団法人ブロックチェーン推進協会 (監修)
出版社: 日本能率協会マネジメントセンター (2019/6/21)、出典:出版社HP

本書での用語定義

◎ブロックチェーン
本書で単純に「ブロックチェーン」と表記した場合は、ビットコインの技術基盤として使われているビットコインブロックチェーンを指します。その他の暗号通貨で使われているブロックチェーンの場合は、「Ethereumのブロックチェーン」のように明示して表記します。

◎暗号通貨
一般的にビットコインやイーサリアムなどは、「暗号通貨」「仮想通貨」「トークン」などさまざまな呼び名で呼ばれています。特に日本では、仮想通貨と呼ばれる場合が多いです。海外では初期のビットコインをCryptocurrencyBitcoinと呼称していたこともあり、ビットコインを含めた総称をCryptocurrencyと表記する場合が多いです。本書では、ビットコインのブロックチェーン技術を中心に試験の出題範囲としている観点から、Cryptocurrencyにそろえて暗号通貨という呼び名で統一します。

◎トランザクション、データベース技術でもトランザクションという単語を使用しますが、一連の取引を処理単位ごとにとりまとめると意味合いではブロックチェーンで使用されるトランザクションと同義です。ブロックチェーンにおけるトランザクションは、ビットコインが誰から誰にどのくらいの量が送られたのかといった取引に関する情報を中心に取引を成立させるために必要なシステム情報、取引の正当性を検証するための情報が処理単位ごとにまとめて格納されています。トランザクションはビットコインの取引において最も重要な情報であり、トランザクションの内容に基づいてビットコインが実際に流通し、取引の内容を完全に矛盾無く実行・検証可能である点がブロックチェーンの価値とも言えます。

◎ノード
ブロックチェーン上でのノードはブロックチェーンネットワークに接続しているそれぞれのコンピューターを指します。現在のブロックチェーンネットワークにノードとして参加しているコンピューターはデータセンターに設置されているラックマウントサーバだけではなく、家庭用のデスクトップパソコンやノートパソコン、スマートフォンやIoT向けの小型省電力機器など、さまざまな機器がブロックチェーンのアプリケーションを搭載することで、一つ一つのノードとして機能しています。ノードにはさまざまな種類があり、担っている処理の内容によって役割が変わります。ノードが行っている処理は大別すると下の4種類です。

ノード処理の種類

ネットワーク(ルーティング)制御機能
ブロックチェーンはオンラインの分散システムです。そのためノード間でデータを転送するためには、ネットワーク全体から目的のノードまでの通信経路を見つける必要があります。役割が限定されている場合や、オフラインで動く特別なノードで無い限りは、ほぼ全てのノードがネットワークアクセスの機能や、ルーティングの機能を持っています。

データベース機能
ブロックチェーンのアルゴリズムに基づいて構築されている、分散台帳データベースです。データベースを持っているノードそれぞれに、データのクローンがある状態で分散されています。仮に一つのノードが保有しているデータベースが破損しても、他のノードからデータを受信します。データを保有する内容や量によって、フルノードとSPV(軽量)ノードといった種類に役割が分かれます。

マイニング機能
取引の検証とブロックと呼ばれるデータ群の生成を行う処理です。ブロックの生成には非常に多くのコンピュータリソース(計算能力や稼働電力)を必要とします。ブロック生成の報酬として発行されるビットコインを目的に数多くのノードがマイニングに参加しています。

ウォレット機能
ウォレット機能の主な処理は、保有しているビットコインの管理とビットコイン取引のためのトランザクション発行です。

上記機能の中でいずれの機能を持っているかによってノードの種類が区別されます。

ノードの種類 行っている処理 役割
フルノード データベース ビットコイン取引のトランザクション情 報を全て保有しているノードです。
SPV (SimplifiedPayment Verification)ノード データベース ビットコインの取引情報の全てでは無 く、一部のみを保有している軽量ノード です。フルノードと比較してデータ量は 1000分の1程度で済むため、スマート フォンアプリなどでよく使用されます。
マイニング ノード マイニング ビットコインのトランザクション検証を 行いブロックの発行計算(マイニング) を行うノードです。
ウォレット (ノード) ウォレット ビットコインのトランザクションを発行 するノードです。ウォレットの秘密鍵を 内部的に持っているタイプや、スマート フォンアプリなどでさまざまな機能を 持ったウォレットがあります。また、ソフトウェアでの実装だけでは無く、ハードウェアで実装されたハードウェアウォレットも存在します。秘密鍵をハッキン グされるリスクのあるパソコン内に保存 するのでは無く、専用のハードウェア ウォレットの物理デバイス内に保存する ことでセキュリティを高めてビットコイ ンを保護しています。

 

フルノードには過去のビットコイン取引の全情報が記録されています。フルノードを動作させるための最低動作要件はbitcoincoreのwebサイト(https://bitcoin.org/en/full-node)内で解説されています。ストレージは最低でも200GBの空き容量が必要であり、毎分100MB/秒の書き込み性能が必要です。大容量のストレージは比較的安価に導入できるため必要ストレージ容量は問題になりにくいですが、常時この読み書き性能を保障するためには、相応のハードウェア性能とネットワーク性能を持つコンピューター上で、フルノードを動作させる必要があります。

過去のすべての取引を保有しているフルノードに対して、SPVノードでは取引の情報を限定的に一部情報しか保有していないノードです。SPVノードでは簡易的な取引の検証を行い、ビットコイン取引の一部処理を実行できます。SPVノードだけでは取引の安全性を担保できない場合には過去全ての取引を確認する必要が出てきます。この際にSPVノードとフルノード間で通信を行い確認処理が行われます。この点だけを見ると、全てのノードがフルノードであればこのような取引時の場合には過去全ての取引を確認する必要が出てきます。

この際にSPVノードとフルノード間で通信を行い確認処理が行われます。この点だけを見ると、全てのノードがフルノードであればこのような取の確認処理も減り効率的にも見えます。しかしフルノードはSPVノードの1000倍のデータ容量が必要です。

スマートフォンアプリなどではフルノードを実行する、200GB超のストレージを用意することは容易ではなく、SPVノードで完結できる処理をスマートフォン上で行い、必要に応じてネットワーク上のフルノードに確認処理を行うフローで、さまざまな環境からブロックチェーンネットワークに参加出来る環境が、構築されています。ブロックチェーンのネットワークに接続した場合は、接続したノードがどのような環境・種類で、どのような処理が可能なのかをきちんと把握する必要があります。

一般財団法人ブロックチェーン技能認定協会 (著), 一般社団法人ブロックチェーン推進協会 (監修)
出版社: 日本能率協会マネジメントセンター (2019/6/21)、出典:出版社HP