SlideShare ist ein Scribd-Unternehmen logo
1 von 46
Downloaden Sie, um offline zu lesen
BMXUG大阪勉強会
ブロックチェーン体験
ブロックを作って、チェーンでつないで、理解しよう!
IBM クラウドガレージ 木村 桂
趣味: マンホール
マンホールマップ: http://manholemap.juge.me/
ブロックチェーンと IBM Cloud との関わり
オープンソースのブロックチェーンプラットフォーム製品を開発/提供オープンソースのブロックチェーンプラットフォーム製品を開発/提供オープンソースのブロックチェーンプラットフォーム製品を開発/提供オープンソースのブロックチェーンプラットフォーム製品を開発/提供
IBM Cloud からマネージドサービスを提供からマネージドサービスを提供からマネージドサービスを提供からマネージドサービスを提供
ブロックチェーンとは
¥500,000
¥1,000,000
+ 保証保証保証保証
+ 安心安心安心安心
+ 価格価格価格価格
- 保証保証保証保証
- 安心安心安心安心
- 価格価格価格価格
もしも絶対に本物だという保証があったら・・・もしも絶対に本物だという保証があったら・・・もしも絶対に本物だという保証があったら・・・もしも絶対に本物だという保証があったら・・・ ブロックチェーンブロックチェーンブロックチェーンブロックチェーン
今日お伝えしたいこと
• ブロックチェーンを使った上でただしく理解してほしい
• ブロックチェーンはどんな用途に向くのか/向かないのか、それは
何故か、を考えるために必要な知識を付けて欲しい
• (エンジニアとして)自分だったらブロックチェーンでどんなものを作っ
てみたいか、を考えるための基礎を身に付けてほしい
アジェンダ
• 「ブロックチェーン」とは?
• 「ブロック」と「チェーン」
• 改ざんが難しい理由
• ブロックチェーンを体験する
• ブロックが次々に繋がる様子を実際に体験する
• ブロックチェーン・ユースケース
• ????
• Hyperledger Composer Playground で開発体験
「ブロックチェーン」?
セキュリティ
分散台帳
非中央集権
コンセンサス・アルゴリズム
ビットコイン
改ざん困難
仮想通貨
ブロックチェーンネットワーク
台帳A
台帳B
台帳C
台帳D 台帳E
台帳F
台帳
台帳
台帳 台帳
台帳
台帳
管理台帳
YES
YES
YES
YES
YES
NO
(従来の台帳管理)
分散台帳ネットワーク分散台帳ネットワーク分散台帳ネットワーク分散台帳ネットワーク
コンセンサスコンセンサスコンセンサスコンセンサス
ブロックチェーンによる台帳管理ブロックチェーンによる台帳管理ブロックチェーンによる台帳管理ブロックチェーンによる台帳管理
YES
非中央集権非中央集権非中央集権非中央集権
ハッシュ関数/ハッシュ値
• 文字列や画像などのデータを「一定の法則で」短く作り直したもの
• 作り直す過程を処理する部分を「ハッシュ関数」と呼ぶ
• 作り直した結果の文字列を「ハッシュ値」と呼ぶ
• 入力情報が大きくても小さくても、同じ長さの文字列が実行結果として得られる
• 同じ入力情報に対しては、再度実行しても同じ結果になる(乱数ではない)
• 実行結果から入力情報を逆計算することは(ほぼ)不可能
あいうえお
かきくけこ
さしす・・
16A2BED0・・・・・・・EE5 (ハッシュ値)
22EA289C・・・・・・・CES (ハッシュ値)
3D3D0CC9・・・・・・・56C (ハッシュ値)
ハハハハ
ッッッッ
シシシシ
ュュュュ
関関関関
数数数数
(文字列)
(テキストファイル)
(画像ファイル)
ブロックチェーンにおける「ハッシュ値」
• ブロックチェーンに格納するデータのフォーマットを決めて、そのフォ
ーマットに対するハッシュ値を計算する
格納したいデータ格納したいデータ格納したいデータ格納したいデータ
整数整数整数整数
1つ前のブロックのハッシュ値
上記3データから生成したハッシュ値
ブロック内のデータは必ずこの形にする
必ず1つ前のブロックのハッシュ値を持つ
nonce と呼ばれる整数値
1つ前のブロックのハッシュ値と、格納デー
タと、nonce 値3つから生成したハッシュ値
「ブロック」と「チェーン」によるデータ格納
ブロック0ブロック0ブロック0ブロック0
0JEEICIS1…
ブロック1ブロック1ブロック1ブロック1
17YFFO327…
0JEEICIS1…
ブロック2ブロック2ブロック2ブロック2
2FJHN7WC8…
17YFFO327…
ブロック3ブロック3ブロック3ブロック3
3TVUNIERC…
2FJHN7WC8…
1つ前のブロックのハッシュ値
1つ前のブロックのハッシュ値と、
自分が持っている値と、
nonce から生成したハッシュ値
(ハッシュ値)
ブロックチェーンにおける「マイニング」
• ブロックチェーンに格納するデータのハッシュ値に条件を付与するここここ
とがあるとがあるとがあるとがある
格納したいデータ格納したいデータ格納したいデータ格納したいデータ
整数整数整数整数
1つ前のブロックのハッシュ値
上記3データから生成したハッシュ値
ハッシュ値は必ず "000" で始まる、という条件を付与する = この条件を求める nonce をしらみつぶしに調べる
nonce が 1 の場合のハッシュ値を計算する
計算結果のハッシュ値が(例えば) "000"
で始まっていれば採用する。
"000" 以外で始まっていたら nonce を1つ
増やして再びハッシュ値を求める。
これを繰り返す。
マイニング(発掘)マイニング(発掘)マイニング(発掘)マイニング(発掘)
ブロックチェーンを改ざん(不正に書き換え)するには
0JEEICIS1…
0JEEICIS1…
17YFFO327…
17YFFO327…
2FJHN7WC8…
2FJHN7WC8…
矛盾矛盾矛盾矛盾
18YFFO327…
矛盾矛盾矛盾矛盾
18YFFO327…
矛盾矛盾矛盾矛盾
20JHN7WC8…
矛盾矛盾矛盾矛盾
20JHN7WC8…
多数決で矛盾多数決で矛盾多数決で矛盾多数決で矛盾
過半数ノード内の各ブロックの値を同時に書き換える必要があり、
これは事実上不可能事実上不可能事実上不可能事実上不可能
ブロックチェーン内に格納されたデータはブロックチェーン内に格納されたデータはブロックチェーン内に格納されたデータはブロックチェーン内に格納されたデータは
第三者に改ざんされていない真実のデータである第三者に改ざんされていない真実のデータである第三者に改ざんされていない真実のデータである第三者に改ざんされていない真実のデータである
という保証があるという保証があるという保証があるという保証がある
ブロックチェーンの挙動デモ
https://blockchaindemo.io/
ブロックチェーンはデータベースの代わりになるか?
当面は無理当面は無理当面は無理当面は無理
ブロックチェーンだけではデータの検索が困難ブロックチェーンだけではデータの検索が困難ブロックチェーンだけではデータの検索が困難ブロックチェーンだけではデータの検索が困難
ユーザーAを追加
ユーザーBを追加
ユーザーBを更新
ユーザーCを追加
・ユーザーAの最新情報を取り出す
・ユーザーの一覧を取得する
・ ・・・
ユーザーCを削除
ブロックチェーンを最初からブロックチェーンを最初からブロックチェーンを最初からブロックチェーンを最初から
最最最最後後後後ままままででででたたたたどどどどららららなななないいいいととととわわわわかかかかららららなななないいいい
ステート DB の併用
• ブロックチェーンを格納するサーバーノード(ピア)とは別にデータ
ベースを併用する。
• このデータベースは既存のものを使ってもよいが、ステートDBと呼ば
れるデータベースを使うとセキュアにデータを格納できる。
ステート
DB
ステートDB自体は一般的なデータベースと同様に使える。
ステートDBにはブロックチェーンを経由しないとアクセスできない。
データ自体はステートDBで管理し、そのトランザクション記録を
ブロックチェーンに残すことで、ステートDBの改竄が困難になる。
ステートステートステートステートDB ブロックチェーンブロックチェーンブロックチェーンブロックチェーン
ユーザーAを追加する ユーザーAの情報を追加追加追加追加 「ユーザーAを追加した」という記録を追加追加追加追加
ユーザーAがログイン ユーザーAのログイン記録を更新更新更新更新 「ユーザーAがログインした」という記録を追加追加追加追加
ユーザーAを削除する ユーザーAの情報を削除削除削除削除 「ユーザーAを削除した」という記録を追加追加追加追加
ブロックチェーンプラットフォームの向き&不向き
• 一社独占による弊害脱却
• 共通の仕組みをコミュニティで運用
• 仲介者の省略
• 仲介手数料
• 孫請け、曾孫受け、・・
• 改ざんできないものが記録
• 寄付/贈与/持ち主変更
• 正しく相手に渡っているか?
• 転売防止
• 大量トランザクション
• コンセンサスによる書込みパフォーマンス
• ブロックは消えない(増え続ける、要ストレージ)
• 既存DBの代替
• 検索機能はまだ不充分/ロールバック不可
• 「データベースの代替」ではない
• 人手によるオペレーション
• その人は信用できるのか?
• 自動化できないか?
(ハンズオン準備)
Hyperledger Composer Playground
モデル ACLスクリプト メタデータクエリー
アプリケーション
Business Network Archive
(.bnaファイル)
デプロイ
アーカイブ作成
Hyperledger Composer Playground
ブロックチェーンネットワーク(Hyperledger Fabric)
どんなユーザーが
どんな商品を
どんなトランザクションを
どんな権限で
どういう条件で選択して
Hyperledger Composer Playground 体験(0)
献血献血献血献血
A
B
A
××××
以下の処理をブロックチェーンで管理以下の処理をブロックチェーンで管理以下の処理をブロックチェーンで管理以下の処理をブロックチェーンで管理
- 血液を登録し、持ち主を変更する
- 参加者: 人
- 取り扱う商品: 血液
- 同じ血液型のユーザー同士で交換可能
Hyperledger Composer Playground 体験(1)
https://composer-playground.mybluemix.net/
シークレットモード
Windows: Ctrl+Shift+N(Chrome)
Ctrl+Shift+P(FireFox)
MacOS: Command+Shift+N(Chrome)
Hyperledger Composer Playground 体験(2)
"empty-business-network" を選択
my-first-network
(説明)
admin@my-first-network
Hyperledger Composer Playground 体験(3)
Hyperledger Composer Playground 体験(4)
Hyperledger Composer Playground 体験(5)
# My First Network
はじめての Hyperledger Composer Playground
## Copyright
2018 K.Kimura @ IBM Japan all rights reserved.
コピペ用参照コピペ用参照コピペ用参照コピペ用参照 https://bit.ly/2Aj4pK0
Hyperledger Composer Playground 体験(6)
Hyperledger Composer Playground 体験(7)
Hyperledger Composer Playground 体験(8)
namespace org.bmxgg
// 人
participant User identified by id{
o String id
o String name
o String type
}
// モノ
asset Blood identified by id{
o String id
o String user_id
o String type
o Integer amount
}
// トランザクション
transaction ChangeOwner{
o String blood_id
o String user_id
}
コピペ用参照コピペ用参照コピペ用参照コピペ用参照 https://bit.ly/2M11XZZ
Hyperledger Composer Playground 体験(9)
Hyperledger Composer Playground 体験(10)
Hyperledger Composer Playground 体験(11)
Hyperledger Composer Playground 体験(12)
const NS = 'org.bmxgg';
/**
* Transfer Processer
* @param {org.bmxgg.ChangeOwner} tx- transaction parameters.
* @transaction
*/
async function transfer(tx){
const blood_id = tx.blood_id;
const user_id = tx.user_id;
try{
if( user_id != '' ){
const pr = await getParticipantRegistry( NS + '.User' );
const exists = await pr.exists( user_id );
if( !exists ){
throw new Error( 'User does NOT exist! ID: ' + user_id );
}
const user = await pr.get( user_id );
const ar = await getAssetRegistry( NS + '.Blood' );
const blood = await ar.get( blood_id );
if( blood.type != user.type ){
throw new Error( 'Blood types NOT matched.' );
}else{
blood.user_id = user_id;
await ar.update( blood );
}
}else{
throw new Error( 'user_id NOT specified.' );
}
}catch( err ){
throw new Error( err );
}
}
コピペ用参照コピペ用参照コピペ用参照コピペ用参照 https://bit.ly/2K7IhSj
Hyperledger Composer Playground 体験(13)
Hyperledger Composer Playground 体験(14)
Hyperledger Composer Playground 体験(15)
{
"$class": "org.bmxgg.User",
"id": "1001",
"name": "きむら",
"type": "A"
}
$class は既定値。
id と name と type を指定する。
Hyperledger Composer Playground 体験(16)
同じ作業を繰り返して、User を3名以上登録する。
ただし、うち2名は同じ Type 、1名は異なる Type で。
Hyperledger Composer Playground 体験(17)
ユーザー ID と Type をメモしておく
A型
きむら(1001)
すずき(1002)
B型
たなか(1003)
Hyperledger Composer Playground 体験(18)
Hyperledger Composer Playground 体験(19)
{
"$class": "org.bmxgg.Blood",
"id": "2001",
"user_id": "1001",
"type": "A",
"amount": 400
}
作成した user_id と、
そのユーザーの type を指定する。
amount は適当な数字
↓
きむら(1001)の血液 400 ml
Hyperledger Composer Playground 体験(20)
Type A の Blood が 400 登録された
Hyperledger Composer Playground 体験(21)
User と Blood が登録された内容がトランザクションとして
ブロックチェーンに登録されている
Hyperledger Composer Playground 体験(22)
作成した blood_id と、
新しいユーザーの user_id を指定する。
{
"$class": "org.bmxgg.ChangeOwner",
"blood_id": "2001",
"user_id": "1002"
}
↓
2001 の(ユーザー 1001の)
400 ml の血液を
ユーザー 1002 のものに変更する
Hyperledger Composer Playground 体験(23)
ChangeOwner が実行された記録がトランザクションとして
ブロックチェーンに登録されている
Hyperledger Composer Playground 体験(24)
既存 Blood の user_id が 1002 に書き換わった = 持ち主が変わった!
Hyperledger Composer Playground 体験(25)
試しに Type が異なるユーザーの
user_id を指定して実行してみる
{
"$class": "org.bmxgg.ChangeOwner",
"blood_id": "2001",
"user_id": "1003"
}
「血液型が不一致」エラー
↓
2001 の(ユーザー 1002の)
400 ml の血液を
ユーザー 1003 のもの変更できない
Hyperledger Composer Playground 体験(26)
ここまでに作成したビジネスネットワーク定義ファイルをダウンロードして保存
今日お伝えしたかったこと
ブロックチェーンを使った上でただしく理解してほしい
× セキュアなデータベース
○ 改ざんが困難なデータベース
ブロックチェーンはどんな用途に向くのか/向かないのか、それは
何故か、を考えるために必要な知識を付けて欲しい
「改ざんが困難」 → 管理者でも改ざんできないデータ → 本物の保証
(エンジニアとして)自分だったらブロックチェーンでどんなものを作っ
てみたいか、を考えるための基礎を身に付けてほしい
???

Weitere ähnliche Inhalte

Ähnlich wie BMXUG 大阪 ブロックチェーン

AWS Black Belt Online Seminar 2016 Amazon Kinesis
AWS Black Belt Online Seminar 2016 Amazon KinesisAWS Black Belt Online Seminar 2016 Amazon Kinesis
AWS Black Belt Online Seminar 2016 Amazon KinesisAmazon Web Services Japan
 
IAM & Consolidated Billing -ほぼ週刊AWSマイスターシリーズ第4回
IAM & Consolidated Billing -ほぼ週刊AWSマイスターシリーズ第4回IAM & Consolidated Billing -ほぼ週刊AWSマイスターシリーズ第4回
IAM & Consolidated Billing -ほぼ週刊AWSマイスターシリーズ第4回SORACOM, INC
 
文字コードの脆弱性はこの3年間でどの程度対策されたか?
文字コードの脆弱性はこの3年間でどの程度対策されたか?文字コードの脆弱性はこの3年間でどの程度対策されたか?
文字コードの脆弱性はこの3年間でどの程度対策されたか?Hiroshi Tokumaru
 
Node.jsとAWS入門(Elastic Beanstalk & AWS SDK for Node.js)
Node.jsとAWS入門(Elastic Beanstalk & AWS SDK for Node.js)Node.jsとAWS入門(Elastic Beanstalk & AWS SDK for Node.js)
Node.jsとAWS入門(Elastic Beanstalk & AWS SDK for Node.js)崇之 清水
 
SAML / OpenID Connect / OAuth / SCIM 技術解説 - ID&IT 2014 #idit2014
SAML / OpenID Connect / OAuth / SCIM 技術解説  - ID&IT 2014 #idit2014SAML / OpenID Connect / OAuth / SCIM 技術解説  - ID&IT 2014 #idit2014
SAML / OpenID Connect / OAuth / SCIM 技術解説 - ID&IT 2014 #idit2014Nov Matake
 
TypeScript ファーストステップ ~ Any browser. Any host. Any OS. Open Source. ~
TypeScript ファーストステップ ~ Any browser. Any host. Any OS. Open Source. ~TypeScript ファーストステップ ~ Any browser. Any host. Any OS. Open Source. ~
TypeScript ファーストステップ ~ Any browser. Any host. Any OS. Open Source. ~Akira Inoue
 
OpenCVを用いた画像処理入門
OpenCVを用いた画像処理入門OpenCVを用いた画像処理入門
OpenCVを用いた画像処理入門uranishi
 
サイバーセキュリティ錬金術 - ノイズから価値あるデータを生成する技術 -
サイバーセキュリティ錬金術 - ノイズから価値あるデータを生成する技術 -サイバーセキュリティ錬金術 - ノイズから価値あるデータを生成する技術 -
サイバーセキュリティ錬金術 - ノイズから価値あるデータを生成する技術 -Isao Takaesu
 
20120201 aws meister-reloaded-iam-and-billing-public
20120201 aws meister-reloaded-iam-and-billing-public20120201 aws meister-reloaded-iam-and-billing-public
20120201 aws meister-reloaded-iam-and-billing-publicAmazon Web Services Japan
 
Hybrid serverless architecture using open whisk ibm cloud functions and istio...
Hybrid serverless architecture using open whisk ibm cloud functions and istio...Hybrid serverless architecture using open whisk ibm cloud functions and istio...
Hybrid serverless architecture using open whisk ibm cloud functions and istio...Tsuyoshi Hirayama
 
AWS Black Belt Techシリーズ AWS CloudTrail & CloudWatch Logs
AWS Black Belt Techシリーズ AWS CloudTrail & CloudWatch LogsAWS Black Belt Techシリーズ AWS CloudTrail & CloudWatch Logs
AWS Black Belt Techシリーズ AWS CloudTrail & CloudWatch LogsAmazon Web Services Japan
 
【C++BUILDER STARTER チュートリアルシリーズ】シーズン2 C++Builderの部 第5回 ‟配列と構造体„
【C++BUILDER STARTER チュートリアルシリーズ】シーズン2 C++Builderの部 第5回 ‟配列と構造体„【C++BUILDER STARTER チュートリアルシリーズ】シーズン2 C++Builderの部 第5回 ‟配列と構造体„
【C++BUILDER STARTER チュートリアルシリーズ】シーズン2 C++Builderの部 第5回 ‟配列と構造体„和弘 井之上
 
BCPに活かせ!一撃 CloudFormation
BCPに活かせ!一撃 CloudFormationBCPに活かせ!一撃 CloudFormation
BCPに活かせ!一撃 CloudFormation真吾 吉田
 
AWS Expert Online appsyncを使ったServerlessアーキテクチャ
AWS Expert Online appsyncを使ったServerlessアーキテクチャAWS Expert Online appsyncを使ったServerlessアーキテクチャ
AWS Expert Online appsyncを使ったServerlessアーキテクチャAmazon Web Services Japan
 
AWS Black Belt Online Seminar 2017 AWSにおけるアプリ認証パターンのご紹介
AWS Black Belt Online Seminar 2017 AWSにおけるアプリ認証パターンのご紹介AWS Black Belt Online Seminar 2017 AWSにおけるアプリ認証パターンのご紹介
AWS Black Belt Online Seminar 2017 AWSにおけるアプリ認証パターンのご紹介Amazon Web Services Japan
 
Data processing at spotify using scio
Data processing at spotify using scioData processing at spotify using scio
Data processing at spotify using scioJulien Tournay
 
リソーステンプレート入門
リソーステンプレート入門リソーステンプレート入門
リソーステンプレート入門junichi anno
 
Data apiで実現 進化するwebの世界
Data apiで実現 進化するwebの世界Data apiで実現 進化するwebの世界
Data apiで実現 進化するwebの世界Yuji Takayama
 

Ähnlich wie BMXUG 大阪 ブロックチェーン (20)

AWS Black Belt Online Seminar 2016 Amazon Kinesis
AWS Black Belt Online Seminar 2016 Amazon KinesisAWS Black Belt Online Seminar 2016 Amazon Kinesis
AWS Black Belt Online Seminar 2016 Amazon Kinesis
 
IAM & Consolidated Billing -ほぼ週刊AWSマイスターシリーズ第4回
IAM & Consolidated Billing -ほぼ週刊AWSマイスターシリーズ第4回IAM & Consolidated Billing -ほぼ週刊AWSマイスターシリーズ第4回
IAM & Consolidated Billing -ほぼ週刊AWSマイスターシリーズ第4回
 
文字コードの脆弱性はこの3年間でどの程度対策されたか?
文字コードの脆弱性はこの3年間でどの程度対策されたか?文字コードの脆弱性はこの3年間でどの程度対策されたか?
文字コードの脆弱性はこの3年間でどの程度対策されたか?
 
Node.jsとAWS入門(Elastic Beanstalk & AWS SDK for Node.js)
Node.jsとAWS入門(Elastic Beanstalk & AWS SDK for Node.js)Node.jsとAWS入門(Elastic Beanstalk & AWS SDK for Node.js)
Node.jsとAWS入門(Elastic Beanstalk & AWS SDK for Node.js)
 
SAML / OpenID Connect / OAuth / SCIM 技術解説 - ID&IT 2014 #idit2014
SAML / OpenID Connect / OAuth / SCIM 技術解説  - ID&IT 2014 #idit2014SAML / OpenID Connect / OAuth / SCIM 技術解説  - ID&IT 2014 #idit2014
SAML / OpenID Connect / OAuth / SCIM 技術解説 - ID&IT 2014 #idit2014
 
TypeScript ファーストステップ ~ Any browser. Any host. Any OS. Open Source. ~
TypeScript ファーストステップ ~ Any browser. Any host. Any OS. Open Source. ~TypeScript ファーストステップ ~ Any browser. Any host. Any OS. Open Source. ~
TypeScript ファーストステップ ~ Any browser. Any host. Any OS. Open Source. ~
 
Aaなゲームをjsで
AaなゲームをjsでAaなゲームをjsで
Aaなゲームをjsで
 
Aaなゲームをjsで
AaなゲームをjsでAaなゲームをjsで
Aaなゲームをjsで
 
OpenCVを用いた画像処理入門
OpenCVを用いた画像処理入門OpenCVを用いた画像処理入門
OpenCVを用いた画像処理入門
 
サイバーセキュリティ錬金術 - ノイズから価値あるデータを生成する技術 -
サイバーセキュリティ錬金術 - ノイズから価値あるデータを生成する技術 -サイバーセキュリティ錬金術 - ノイズから価値あるデータを生成する技術 -
サイバーセキュリティ錬金術 - ノイズから価値あるデータを生成する技術 -
 
20120201 aws meister-reloaded-iam-and-billing-public
20120201 aws meister-reloaded-iam-and-billing-public20120201 aws meister-reloaded-iam-and-billing-public
20120201 aws meister-reloaded-iam-and-billing-public
 
Hybrid serverless architecture using open whisk ibm cloud functions and istio...
Hybrid serverless architecture using open whisk ibm cloud functions and istio...Hybrid serverless architecture using open whisk ibm cloud functions and istio...
Hybrid serverless architecture using open whisk ibm cloud functions and istio...
 
AWS Black Belt Techシリーズ AWS CloudTrail & CloudWatch Logs
AWS Black Belt Techシリーズ AWS CloudTrail & CloudWatch LogsAWS Black Belt Techシリーズ AWS CloudTrail & CloudWatch Logs
AWS Black Belt Techシリーズ AWS CloudTrail & CloudWatch Logs
 
【C++BUILDER STARTER チュートリアルシリーズ】シーズン2 C++Builderの部 第5回 ‟配列と構造体„
【C++BUILDER STARTER チュートリアルシリーズ】シーズン2 C++Builderの部 第5回 ‟配列と構造体„【C++BUILDER STARTER チュートリアルシリーズ】シーズン2 C++Builderの部 第5回 ‟配列と構造体„
【C++BUILDER STARTER チュートリアルシリーズ】シーズン2 C++Builderの部 第5回 ‟配列と構造体„
 
BCPに活かせ!一撃 CloudFormation
BCPに活かせ!一撃 CloudFormationBCPに活かせ!一撃 CloudFormation
BCPに活かせ!一撃 CloudFormation
 
AWS Expert Online appsyncを使ったServerlessアーキテクチャ
AWS Expert Online appsyncを使ったServerlessアーキテクチャAWS Expert Online appsyncを使ったServerlessアーキテクチャ
AWS Expert Online appsyncを使ったServerlessアーキテクチャ
 
AWS Black Belt Online Seminar 2017 AWSにおけるアプリ認証パターンのご紹介
AWS Black Belt Online Seminar 2017 AWSにおけるアプリ認証パターンのご紹介AWS Black Belt Online Seminar 2017 AWSにおけるアプリ認証パターンのご紹介
AWS Black Belt Online Seminar 2017 AWSにおけるアプリ認証パターンのご紹介
 
Data processing at spotify using scio
Data processing at spotify using scioData processing at spotify using scio
Data processing at spotify using scio
 
リソーステンプレート入門
リソーステンプレート入門リソーステンプレート入門
リソーステンプレート入門
 
Data apiで実現 進化するwebの世界
Data apiで実現 進化するwebの世界Data apiで実現 進化するwebの世界
Data apiで実現 進化するwebの世界
 

Mehr von K Kimura

ThinkPad を自慢できると聞いてやってきました
ThinkPad を自慢できると聞いてやってきましたThinkPad を自慢できると聞いてやってきました
ThinkPad を自慢できると聞いてやってきましたK Kimura
 
IBM FamilyDay 2022 - 帰ってきた LINE 手描きスタンプ
IBM FamilyDay 2022 - 帰ってきた LINE 手描きスタンプIBM FamilyDay 2022 - 帰ってきた LINE 手描きスタンプ
IBM FamilyDay 2022 - 帰ってきた LINE 手描きスタンプK Kimura
 
「プライベート版 Heroku」の "dokku" は Cloud Foundry 代替としてどこまで使えるか?
「プライベート版 Heroku」の "dokku" は Cloud Foundry 代替としてどこまで使えるか?「プライベート版 Heroku」の "dokku" は Cloud Foundry 代替としてどこまで使えるか?
「プライベート版 Heroku」の "dokku" は Cloud Foundry 代替としてどこまで使えるか?K Kimura
 
LINE お絵描きスタンプが NFT 対応するかも
LINE お絵描きスタンプが NFT 対応するかもLINE お絵描きスタンプが NFT 対応するかも
LINE お絵描きスタンプが NFT 対応するかもK Kimura
 
ICFO2021 コロナ時代のオンラインハンズオン体験
ICFO2021   コロナ時代のオンラインハンズオン体験ICFO2021   コロナ時代のオンラインハンズオン体験
ICFO2021 コロナ時代のオンラインハンズオン体験K Kimura
 
IBM Family Day 2020 - LINE で手描きスタンプに挑戦!
IBM Family Day 2020 - LINE で手描きスタンプに挑戦!IBM Family Day 2020 - LINE で手描きスタンプに挑戦!
IBM Family Day 2020 - LINE で手描きスタンプに挑戦!K Kimura
 
マンホールマップ10周年 20200725
マンホールマップ10周年 20200725マンホールマップ10周年 20200725
マンホールマップ10周年 20200725K Kimura
 
MashupAward6 Manholemap(2010)
MashupAward6 Manholemap(2010)MashupAward6 Manholemap(2010)
MashupAward6 Manholemap(2010)K Kimura
 
スライドパズルハンズオン資料
スライドパズルハンズオン資料スライドパズルハンズオン資料
スライドパズルハンズオン資料K Kimura
 
ユーザー投稿型位置情報プロットシステム - マンホールマップ
ユーザー投稿型位置情報プロットシステム - マンホールマップユーザー投稿型位置情報プロットシステム - マンホールマップ
ユーザー投稿型位置情報プロットシステム - マンホールマップK Kimura
 
Scratch でゲームプログラミング
Scratch でゲームプログラミングScratch でゲームプログラミング
Scratch でゲームプログラミングK Kimura
 
空耳アワーマシーンを作ってみた
空耳アワーマシーンを作ってみた空耳アワーマシーンを作ってみた
空耳アワーマシーンを作ってみたK Kimura
 
生まれ変わるマンホールマップ
生まれ変わるマンホールマップ生まれ変わるマンホールマップ
生まれ変わるマンホールマップK Kimura
 
地図データでレースゲームを作って遊ぼう!
地図データでレースゲームを作って遊ぼう!地図データでレースゲームを作って遊ぼう!
地図データでレースゲームを作って遊ぼう!K Kimura
 
AI先生と外国語会話を練習しよう!
AI先生と外国語会話を練習しよう!AI先生と外国語会話を練習しよう!
AI先生と外国語会話を練習しよう!K Kimura
 
IBM Watson IoT を用いた遠隔ゲームコントローラーと Node-RED による簡易カスタマイズによる実現
IBM Watson IoT を用いた遠隔ゲームコントローラーと Node-RED による簡易カスタマイズによる実現IBM Watson IoT を用いた遠隔ゲームコントローラーと Node-RED による簡易カスタマイズによる実現
IBM Watson IoT を用いた遠隔ゲームコントローラーと Node-RED による簡易カスタマイズによる実現K Kimura
 
「テトリスを作ってスマホで振って遊ぼう!」ハンズオン資料
「テトリスを作ってスマホで振って遊ぼう!」ハンズオン資料「テトリスを作ってスマホで振って遊ぼう!」ハンズオン資料
「テトリスを作ってスマホで振って遊ぼう!」ハンズオン資料K Kimura
 
LINE お絵描きアプリハンズオン 20190519
LINE お絵描きアプリハンズオン 20190519LINE お絵描きアプリハンズオン 20190519
LINE お絵描きアプリハンズオン 20190519K Kimura
 
LINE お絵描きハンズオン 2019.04.26
LINE お絵描きハンズオン 2019.04.26LINE お絵描きハンズオン 2019.04.26
LINE お絵描きハンズオン 2019.04.26K Kimura
 
LINE お絵描きアプリハンズオン
LINE お絵描きアプリハンズオンLINE お絵描きアプリハンズオン
LINE お絵描きアプリハンズオンK Kimura
 

Mehr von K Kimura (20)

ThinkPad を自慢できると聞いてやってきました
ThinkPad を自慢できると聞いてやってきましたThinkPad を自慢できると聞いてやってきました
ThinkPad を自慢できると聞いてやってきました
 
IBM FamilyDay 2022 - 帰ってきた LINE 手描きスタンプ
IBM FamilyDay 2022 - 帰ってきた LINE 手描きスタンプIBM FamilyDay 2022 - 帰ってきた LINE 手描きスタンプ
IBM FamilyDay 2022 - 帰ってきた LINE 手描きスタンプ
 
「プライベート版 Heroku」の "dokku" は Cloud Foundry 代替としてどこまで使えるか?
「プライベート版 Heroku」の "dokku" は Cloud Foundry 代替としてどこまで使えるか?「プライベート版 Heroku」の "dokku" は Cloud Foundry 代替としてどこまで使えるか?
「プライベート版 Heroku」の "dokku" は Cloud Foundry 代替としてどこまで使えるか?
 
LINE お絵描きスタンプが NFT 対応するかも
LINE お絵描きスタンプが NFT 対応するかもLINE お絵描きスタンプが NFT 対応するかも
LINE お絵描きスタンプが NFT 対応するかも
 
ICFO2021 コロナ時代のオンラインハンズオン体験
ICFO2021   コロナ時代のオンラインハンズオン体験ICFO2021   コロナ時代のオンラインハンズオン体験
ICFO2021 コロナ時代のオンラインハンズオン体験
 
IBM Family Day 2020 - LINE で手描きスタンプに挑戦!
IBM Family Day 2020 - LINE で手描きスタンプに挑戦!IBM Family Day 2020 - LINE で手描きスタンプに挑戦!
IBM Family Day 2020 - LINE で手描きスタンプに挑戦!
 
マンホールマップ10周年 20200725
マンホールマップ10周年 20200725マンホールマップ10周年 20200725
マンホールマップ10周年 20200725
 
MashupAward6 Manholemap(2010)
MashupAward6 Manholemap(2010)MashupAward6 Manholemap(2010)
MashupAward6 Manholemap(2010)
 
スライドパズルハンズオン資料
スライドパズルハンズオン資料スライドパズルハンズオン資料
スライドパズルハンズオン資料
 
ユーザー投稿型位置情報プロットシステム - マンホールマップ
ユーザー投稿型位置情報プロットシステム - マンホールマップユーザー投稿型位置情報プロットシステム - マンホールマップ
ユーザー投稿型位置情報プロットシステム - マンホールマップ
 
Scratch でゲームプログラミング
Scratch でゲームプログラミングScratch でゲームプログラミング
Scratch でゲームプログラミング
 
空耳アワーマシーンを作ってみた
空耳アワーマシーンを作ってみた空耳アワーマシーンを作ってみた
空耳アワーマシーンを作ってみた
 
生まれ変わるマンホールマップ
生まれ変わるマンホールマップ生まれ変わるマンホールマップ
生まれ変わるマンホールマップ
 
地図データでレースゲームを作って遊ぼう!
地図データでレースゲームを作って遊ぼう!地図データでレースゲームを作って遊ぼう!
地図データでレースゲームを作って遊ぼう!
 
AI先生と外国語会話を練習しよう!
AI先生と外国語会話を練習しよう!AI先生と外国語会話を練習しよう!
AI先生と外国語会話を練習しよう!
 
IBM Watson IoT を用いた遠隔ゲームコントローラーと Node-RED による簡易カスタマイズによる実現
IBM Watson IoT を用いた遠隔ゲームコントローラーと Node-RED による簡易カスタマイズによる実現IBM Watson IoT を用いた遠隔ゲームコントローラーと Node-RED による簡易カスタマイズによる実現
IBM Watson IoT を用いた遠隔ゲームコントローラーと Node-RED による簡易カスタマイズによる実現
 
「テトリスを作ってスマホで振って遊ぼう!」ハンズオン資料
「テトリスを作ってスマホで振って遊ぼう!」ハンズオン資料「テトリスを作ってスマホで振って遊ぼう!」ハンズオン資料
「テトリスを作ってスマホで振って遊ぼう!」ハンズオン資料
 
LINE お絵描きアプリハンズオン 20190519
LINE お絵描きアプリハンズオン 20190519LINE お絵描きアプリハンズオン 20190519
LINE お絵描きアプリハンズオン 20190519
 
LINE お絵描きハンズオン 2019.04.26
LINE お絵描きハンズオン 2019.04.26LINE お絵描きハンズオン 2019.04.26
LINE お絵描きハンズオン 2019.04.26
 
LINE お絵描きアプリハンズオン
LINE お絵描きアプリハンズオンLINE お絵描きアプリハンズオン
LINE お絵描きアプリハンズオン
 

Kürzlich hochgeladen

20240427 zaim academy counseling lesson .pdf
20240427 zaim academy counseling lesson .pdf20240427 zaim academy counseling lesson .pdf
20240427 zaim academy counseling lesson .pdfssuser80a51f
 
Service-introduction-materials-misorae-leadership
Service-introduction-materials-misorae-leadershipService-introduction-materials-misorae-leadership
Service-introduction-materials-misorae-leadershipYasuyoshi Minehisa
 
UP103シリーズ パワーコメット ユニパー スライドレールタイプ 瓦揚げ機 ウインチ
UP103シリーズ パワーコメット ユニパー スライドレールタイプ 瓦揚げ機 ウインチUP103シリーズ パワーコメット ユニパー スライドレールタイプ 瓦揚げ機 ウインチ
UP103シリーズ パワーコメット ユニパー スライドレールタイプ 瓦揚げ機 ウインチユニパー株式会社
 
202405_VISIONARYJAPAN_engineerteam_entrancebook(ver2.1)
202405_VISIONARYJAPAN_engineerteam_entrancebook(ver2.1)202405_VISIONARYJAPAN_engineerteam_entrancebook(ver2.1)
202405_VISIONARYJAPAN_engineerteam_entrancebook(ver2.1)KayaSuetake1
 
ストックマーク株式会社がご提供しているAnews(エーニュース)概要紹介.pdf
ストックマーク株式会社がご提供しているAnews(エーニュース)概要紹介.pdfストックマーク株式会社がご提供しているAnews(エーニュース)概要紹介.pdf
ストックマーク株式会社がご提供しているAnews(エーニュース)概要紹介.pdfmasakisaito12
 
シンフォニティ株式会社(SYMPHONITY , Inc.) 会社説明・人材採用資料
シンフォニティ株式会社(SYMPHONITY , Inc.) 会社説明・人材採用資料シンフォニティ株式会社(SYMPHONITY , Inc.) 会社説明・人材採用資料
シンフォニティ株式会社(SYMPHONITY , Inc.) 会社説明・人材採用資料シンフォニティ 株式会社
 

Kürzlich hochgeladen (6)

20240427 zaim academy counseling lesson .pdf
20240427 zaim academy counseling lesson .pdf20240427 zaim academy counseling lesson .pdf
20240427 zaim academy counseling lesson .pdf
 
Service-introduction-materials-misorae-leadership
Service-introduction-materials-misorae-leadershipService-introduction-materials-misorae-leadership
Service-introduction-materials-misorae-leadership
 
UP103シリーズ パワーコメット ユニパー スライドレールタイプ 瓦揚げ機 ウインチ
UP103シリーズ パワーコメット ユニパー スライドレールタイプ 瓦揚げ機 ウインチUP103シリーズ パワーコメット ユニパー スライドレールタイプ 瓦揚げ機 ウインチ
UP103シリーズ パワーコメット ユニパー スライドレールタイプ 瓦揚げ機 ウインチ
 
202405_VISIONARYJAPAN_engineerteam_entrancebook(ver2.1)
202405_VISIONARYJAPAN_engineerteam_entrancebook(ver2.1)202405_VISIONARYJAPAN_engineerteam_entrancebook(ver2.1)
202405_VISIONARYJAPAN_engineerteam_entrancebook(ver2.1)
 
ストックマーク株式会社がご提供しているAnews(エーニュース)概要紹介.pdf
ストックマーク株式会社がご提供しているAnews(エーニュース)概要紹介.pdfストックマーク株式会社がご提供しているAnews(エーニュース)概要紹介.pdf
ストックマーク株式会社がご提供しているAnews(エーニュース)概要紹介.pdf
 
シンフォニティ株式会社(SYMPHONITY , Inc.) 会社説明・人材採用資料
シンフォニティ株式会社(SYMPHONITY , Inc.) 会社説明・人材採用資料シンフォニティ株式会社(SYMPHONITY , Inc.) 会社説明・人材採用資料
シンフォニティ株式会社(SYMPHONITY , Inc.) 会社説明・人材採用資料
 

BMXUG 大阪 ブロックチェーン