Session CLD022
本情報の内容(添付文書、リンク先などを含む)は、Microsoft Tech Summit 開催日(2016年11月1-2日)時点のものであり、予告なく変更される場合があります。
廣瀬 一海(デプロイ王子)
日本マイクロソフト株式会社
クラウドプラットフォーム技術部
テクノロジースペシャリスト
愛称「デプロイ王子」/ 元 Microsoft Azure MVP
現在はお客様に、Azureに関する技術支援を行う。
日々の活動の傍ら、登壇、執筆活動も行っています。
日本マイクロソフト社において、ブロックチェーン4社協働
のプロジェクトの技術対応を行う
Microsoft Tech Summit
経済産業省 商務情報政策局 情報経済課
出典:経済産業省 商務情報政策
局 情報経済課 平成28年4月28日
発行
平成27年度我が国経済社会の情
報化・サービス化に係る基盤整備
(ブロックチェーン技術を利⽤し
たサービスに関する国内外動向調
査)
Press Release
Microsoft and R3 Partnership to Accelerate Adoption of Distributed
Ledger Technology by Global Banks
Emily Rutland· April 4, 2016
Deal will modernize technology and processes for the financial ecosystem,
reducing costs and fraud; Microsoft Azure named preferred cloud platform for
R3 Consortium.
April 4th, 2016 (New York/Redmond, Wash.) – Microsoft Corp. and the R3
Consortium today announced a strategic partnership that will accelerate the
use of distributed ledger technologies, also known as blockchain, among R3
member banks and global financial markets. Distributed ledger technologies
enable enterprises and business network participants to complete financial
transactions with greater speed, security, cost-efficiency and transparency relative
to solutions currently used. In addition, R3 named Microsoft Azure the preferred
cloud services provider for its R3 Lab and Research Center serving more than
40 member banks.
R3は、世界の大手金融機関40以上が参加するワーキンググループ
Microsoft Azureが推奨クラウドサービスに指定された
ブロックチェーン技術の金融機関利⽤における標準化を推進
日本マイクロソフト株式会社
電子署名
公開鍵と秘密鍵技術を⽤いています。
ブロックチェーンはこの技術を使っ
て、データを作成する事で不正を防
止し信頼あるデータを確立します。
データの共有
ブロックチェーンの値は、参加する
組織や企業の間で直接共有すること
ができます。競合他社の枠も超えて
相互に共有する事で、莫大な価値を
生み出すでしょう。
分散
ブロックチェーンは、データ
ベースの複製をネットワークの
他のシステムへ作成し、データ
の喪失から保護します。
台帳
ブロックチェーンに書き込まれ
たデータはその後に更新、改変
できず読み取りのみができます。
すべてのデータが不変に記録さ
れます。
Blockchain1.0
Blockchain2.0
Microsoft Tech Summit
Azure | BaaS Tech Partners
Microsoft BaaS は、業界40以上のパートナーとブロックチェーンエコシステムを進めています
Azure BaaS | Select
Tech Partners
米国中部
Iowa
米国西部
California
北ヨーロッパ
Ireland
米国東部
Virginia
米国東部2
Virginia米国政府
Virginia
米国中北部
Illinois
米国政府
Iowa
米国中南部
Texas
南ブラジル
Sao Paulo
西ヨーロッパ
Netherlands
北中国 *
Beijing
南中国 *
Shanghai
東日本
Tokyo,Saitama
西日本
Osaka
南インド
Chennai
東アジア
Hong Kong
東南アジア
Singapore
東南オーストラリア
Victoria
東オーストラリア
New South Wales
中央インド
Pune
西インド
Mumbai
(2016年10月現在)稼働中 * Operated by 21Vianet
100カ所以上のデータセンター
ネットワーク網が全世界でトップスリーの一つ
AWS の2倍、Google 6倍の地域サポート
33 リージョンを発表、24リージョンが稼働中
構築中
カナダ東部
Quebec City
カナダ中部
Toronto
ドイツ中部
Frankfurt
UK x 2
South & West
米国防総省 x 2
East & West
韓国 x 2
Seoul & East
ドイツ北東
Magdeburg
New
New
New
New
New
New
フランス
New
Microsoft Tech Summit
オープンソースプロジェクト ( on GitHub 2013~) by Ethereum Foundation
仮想マシン( EVM )によるチューリング完全なプログラミングが可能
スマートコントラクト言語が実行可能なブロックチェーン応用技術の一つ
任意のデータ、及び処理がブロックチェーン上に表現可能である為、電子記録可能なあらゆる
“資産”を扱えるだけでなく、資産に対する“契約”(コントラクト)の作成、および “履行“ までサ
ポートする。
BlockChain 1.0
Simple State
Machine
Blockchain 2.0
State Machine +
Code
0x1117292138928
edc23dc21323c
Property
Value
0x893423022ef8s92d
1223412dds321ac
0x1117292138928
edc23dc21323c
Property
Value
0x893423022ef8s92d1
223412dds321ac
Code
contract accountRegistry{mapping
(string => address) accountMap;
function accountRegistry(){….
EVM
Ethereum VM
• 利⽤者が必要な金額を投入する
• 特定のドリンクのボタンを押す
2つの契約条件が満たされた場合
ドリンクを手に入れることができる
契約書の送付
Blockchain
Ledger
契約書にサイン
本人確認やID
通貨、ポイント、クーポン、バウチャー、オークション、購入の履歴の表現
登記、遺言、出生、婚姻、転居、コンテンツ権利、賃貸借、投票権利、医療記録、
診療録、処方箋、鉄道の遅延証明書など
製造記録、流通過程、真正性認証、貴金属の証明
Microsoft Tech Summit
プライベート
ブロックチェーン
コンソーシアム
ブロックチェーン
Azure データセンタ
トランザクション専用
マイニング1
マイニング3
Azure仮想ネットワーク
トランザクション
ノード
負荷分散
マイニング2
マイニング1 マイニング2 マイニング3
Microsoft Tech Summit
Microsoft Tech Summit
Microsoft Tech Summit
スマートコントラクト
トランザクション
ノード
プライベートブロックチェーン
負荷分散
マイニング1
D-App (分散アプリケーション)
Solidity によるコントラクト記述の例
pragma solidity ^0.4.0;
contract StateHolder {
address public owner;
uint public openNumber;
string public openString;
string public myString;
modifier onlyOwner {
if (msg.sender != owner)
throw;
_;
}
function StateHolder() {
owner = msg.sender;
}
function changeOpenNumber(uint _newNumber) {
openNumber = _newNumber;
}
function changeOpenString(string _newString) {
openString = _newString;
}
function changeMyString(string _newString) onlyOwner {
myString = _newString;
}
}
Solidity によるコントラクト記述の例
pragma solidity ^0.4.0;
contract Token {
mapping (address => uint) public balances;
function Token() {
balances[msg.sender] = 1000000;
}
function transfer(address _to, uint _amount) {
if (balances[msg.sender] < _amount) {
throw;
}
balances[msg.sender] -= _amount;
balances[_to] += _amount;
}
}
Microsoft Tech Summit
Microsoft Tech Summit
我が国の最大の力は、この現場にある!
エンジニアの力で世界を変えよう
Cld022 『シン・ブロック

Cld022 『シン・ブロック