Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
iOSアプリからBlockchainを触るには
Search
satoshi0212
November 22, 2016
Programming
0
2.4k
iOSアプリからBlockchainを触るには
satoshi0212
November 22, 2016
Tweet
Share
More Decks by satoshi0212
See All by satoshi0212
macOSで自分のカメラを作ってみよう - Core Media IO Extensions
satoshi0212
3
1.4k
NDIとARKitを連動させた新しい映像表現
satoshi0212
3
1.2k
100日間AR表現を実装して見つけた面白い実装を全力解説
satoshi0212
5
2.1k
Working on mobile AR implementation, what I've implemented and beyond
satoshi0212
0
500
仮想カメラで切り開く拡張現実の世界
satoshi0212
0
610
macOS仮想カメラ「テロップカム」 実装方法とその先
satoshi0212
5
3.8k
ARで悪の組織の会議を実現する
satoshi0212
0
550
クロマキー合成を使い透過動画をAR空間に表示する
satoshi0212
3
9.7k
ARKit Maniacs
satoshi0212
1
3.6k
Other Decks in Programming
See All in Programming
Go言語の特性を活かした公式MCP SDKの設計
hond0413
1
180
私はどうやって技術力を上げたのか
yusukebe
43
17k
Back to the Future: Let me tell you about the ACP protocol
terhechte
0
130
Introducing ReActionView: A new ActionView-Compatible ERB Engine @ Kaigi on Rails 2025, Tokyo, Japan
marcoroth
3
920
なぜあの開発者はDevRelに伴走し続けるのか / Why Does That Developer Keep Running Alongside DevRel?
nrslib
3
370
いま中途半端なSwift 6対応をするより、Default ActorやApproachable Concurrencyを有効にしてからでいいんじゃない?
yimajo
2
340
CSC509 Lecture 01
javiergs
PRO
1
430
なぜGoのジェネリクスはこの形なのか? Featherweight Goが明かす設計の核心
ryotaros
7
1k
CSC509 Lecture 02
javiergs
PRO
0
410
Goで実践するドメイン駆動開発 AIと歩み始めた新規プロダクト開発の現在地
imkaoru
4
650
CSC305 Lecture 04
javiergs
PRO
0
250
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
140
Featured
See All Featured
Unsuck your backbone
ammeep
671
58k
What's in a price? How to price your products and services
michaelherold
246
12k
Large-scale JavaScript Application Architecture
addyosmani
514
110k
It's Worth the Effort
3n
187
28k
The Pragmatic Product Professional
lauravandoore
36
6.9k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.6k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
23
1.5k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.6k
Visualization
eitanlees
148
16k
Done Done
chrislema
185
16k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3.1k
Transcript
iOSΞϓϦ͔Β BlockchainΛ৮Δʹ ෦ ஐ SHMDevelopment ࠷ۙɺԾ௨՟ཧiOSΞϓϦΛ SwiftͰॻ͍ͨͷͰͦͷମݧΛڞ༗͠·͢
αʔϏε͔Β BlockchainΛ৮Δʹ ෦ ஐ SHMDevelopment ࠷ۙɺԾ௨՟ཧiOSΞϓϦΛ SwiftͰॻ͍ͨͷͰͦͷମݧΛڞ༗͠·͢
ࣗݾհ iOSΞϓϦΤϯδχΞ ΧϦϑΥϧχΞभཱେֶίϯϐϡʔλαΠΤϯεֶ෦ଔ
ࣗݾհ ϋοΧιϯडొஃ: ɹiOSDC ొஃ ɹTechCrunch Tokyo 2015 Hackathon ༏ल ɹMizuho.Hack
༏ल ɹMicrosoft MPC Hackathon TMCN ɹHack Cars Days 2015 χϑςΟ ɹMUSICIANS HACKATHON 2015 ༏ल ɹɹͳͲ
ࣗݾհ னձࣾһͱͯ͠ҩྍܥαʔϏεͷiPadΞϓϦΛॻ͖ ͱिFintechܥελʔτΞοϓʹٕज़ڠྗ 365ϓϩάϥϛϯά͍ͯ͠·͢
ࠓ͢༰ ͡Ίʹ ɹ1. ج൫ٕज़ͷબ ɹ2. EthereumػೳΛAPIԽ ɹ3. SwiftͰΞϓϦ࣮ ࠷ޙʹ
ࠓ͢༰ ͡Ίʹ ɹ1. ج൫ٕज़ͷબ ɹ2. EthereumػೳΛAPIԽ ɹ3. SwiftͰΞϓϦ࣮ ࠷ޙʹ
͡Ίʹ BlockchainΛͳʹΒ͢ΔiOSΞϓϦΛ࡞Γ͍ͨ
͡Ίʹ BlockchainΛͳʹΒ͢ΔiOSΞϓϦΛ࡞Γ͍ͨ ͚ΕͲ Ͳ͏͢Δͷʁ
͡Ίʹ BlockchainΛͳʹΒ͢ΔiOSΞϓϦΛ࡞Γ͍ͨ ͚ΕͲ Ͳ͏͢Δͷʁ → ͬ͘͟ΓɺྲྀΕΛઆ໌͠·͢ʂ
ࠓ͢༰ ͡Ίʹ ɹ1. ج൫ٕज़ͷબ ɹ2. Ethereum ΛAPIԽ ɹ3. SwiftͰΞϓϦ࣮ ࠷ޙʹ
ج൫ٕज़ͷબ
1 Bitcoin Core 2 Ethereum 3 Hyperledger Fabric 4 Corda
5 Chain Open Standard 1 6 mijin 7 Orb 1 8 Eris ج൫ٕज़ͷબ
1 Bitcoin Core 2 Ethereum SmartContractɺใ๛ 3 Hyperledger Fabric 4
Corda 5 Chain Open Standard 1 6 mijin 7 Orb 1 8 Eris ج൫ٕज़ͷબ
ࠓ͢༰ ͡Ίʹ ɹ1. ج൫ٕज़ͷબ ɹ2. EthereumػೳΛAPIԽ ɹ3. SwiftͰΞϓϦ࣮ ࠷ޙʹ
EthereumͰͷ࣮બࢶ
1 (OSS)ϥΠϒϥϦ༻ 2 ݺͼग़͠ (JSON RPC) 3 APIԽ EthereumͰͷ࣮બࢶ
1 (OSS)ϥΠϒϥϦ༻ 2 ݺͼग़͠ (JSON RPC) 3 APIԽ ɾαʔϏε༻DBͱͷ࿈ܞ͕Մೳ ɾ୯ൃͰୟ͍ͯ֬ೝͰ͖Δ
ɾΞϓϦ͔Βͷݟ͑ํ͕໌֬ EthereumͰͷ࣮બࢶ
EthereumػೳΛAPIԽ UbuntuͰEthereumΫϥΠΞϯτΛಈ࡞ JSON-RPCͰݺͼग़ͤΔͷͰ Node.jsͰϥοϓ͠·ͨ͠ → ࠓճྲྀΕͷղઆͳͷͰৄࡉผͷػձʹɻ
ࠓ͢༰ ͡Ίʹ ɹ1. ج൫ٕज़ͷબ ɹ2. EthereumػೳΛAPIԽ ɹ3. SwiftͰΞϓϦ࣮ ࠷ޙʹ
SwiftͰΞϓϦ࣮
SwiftͰΞϓϦ࣮ APIԽͨ͠Βɺ͋ͱී௨ʹݺͼग़͢ʂ ɹɾSwift 2.2 ɹɾAFNetworking(← Alamofireਪ) ɹɾαʔϏε༻σʔλετΞ: ParseDB
SwiftͰΞϓϦ࣮ APIԽͨ͠Βɺ͋ͱී௨ʹݺͼग़͢ʂ͚͕ͩͩ… ɹɾSwift 2.2 ɹɾAFNetworking(← Alamofireਪ) ɹɾαʔϏε༻σʔλετΞ: ParseDB
࣮͢ΔࡍʹؾΛ͚͍ͨ͜ͱ
࣮͢ΔࡍʹؾΛ͚͍ͨ͜ͱ 1. αʔϏε༻DBΛઃ͚Δ͔൱͔
࣮͢ΔࡍʹؾΛ͚͍ͨ͜ͱ 1. αʔϏε༻DBΛઃ͚Δ͔൱͔: ͖࣋ͭ
࣮͢ΔࡍʹؾΛ͚͍ͨ͜ͱ 1. αʔϏε༻DBΛઃ͚Δ͔൱͔: ͖࣋ͭ 2. Blockchain্ͷ༰͕֬ఆ͢Δ·Ͱ1ʙ30ඵ
࣮͢ΔࡍʹؾΛ͚͍ͨ͜ͱ 1. αʔϏε༻DBΛઃ͚Δ͔൱͔: ͖࣋ͭ 2. Blockchain্ͷ༰͕֬ఆ͢Δ·Ͱ1ʙ30ඵ: Ծૹۚ
࣮͢ΔࡍʹؾΛ͚͍ͨ͜ͱ 1. αʔϏε༻DBΛઃ͚Δ͔൱͔: ͖࣋ͭ 2. Blockchain্ͷ༰͕֬ఆ͢Δ·Ͱ1ʙ30ඵ: Ծૹۚ 3. τϥϯβΫγϣϯ͍͠:
࣮͢ΔࡍʹؾΛ͚͍ͨ͜ͱ 1. αʔϏε༻DBΛઃ͚Δ͔൱͔: ͖࣋ͭ 2. Blockchain্ͷ༰͕֬ఆ͢Δ·Ͱ1ʙ30ඵ: Ծૹۚ 3. τϥϯβΫγϣϯ͍͠: 2૬ίϛοτ
࣮͢ΔࡍʹؾΛ͚͍ͨ͜ͱ 1. αʔϏε༻DBΛઃ͚Δ͔൱͔: ͖࣋ͭ 2. Blockchain্ͷ༰͕֬ఆ͢Δ·Ͱ1ʙ30ඵ: Ծૹۚ 3. τϥϯβΫγϣϯ͍͠: 2૬ίϛοτ
4. Blockchainݻ༗ͷใͷѻ͍Ͳ͏͠Α͏:
࣮͢ΔࡍʹؾΛ͚͍ͨ͜ͱ 1. αʔϏε༻DBΛઃ͚Δ͔൱͔: ͖࣋ͭ 2. Blockchain্ͷ༰͕֬ఆ͢Δ·Ͱ1ʙ30ඵ: Ծૹۚ 3. τϥϯβΫγϣϯ͍͠: 2૬ίϛοτ
4. Blockchainݻ༗ͷใͷѻ͍Ͳ͏͠Α͏: ɹɹABIɺEthereum Addressɺύεϫʔυͷอଘํ๏
ࠓ͢༰ ͡Ίʹ ɹ1. ج൫ٕज़ͷબ ɹ2. EthereumػೳΛAPIԽ ɹ3. SwiftͰΞϓϦ࣮ ࠷ޙʹ
࠷ޙʹ ɾ·ͩ·ͩBlockchainΛͬͯಈ͘ΞϓϦগͳ͍ ɾ2017BlockchainΛར༻࣮ͨ͠Ϗδωε͕ ɹଟग़ͯ͘Δͣʂ ɾΩϨοΩϨͷαʔϏε&ϏδωεΛ ɹ࡞͍͖ͬͯ·͠ΐ͏ʂ