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
SwiftでBitcoinのscriptを書いてみよう
Search
Shun Usami
September 18, 2018
Programming
360
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
SwiftでBitcoinのscriptを書いてみよう
Swiftで書かれたBitcoinKitを使用して、10行以内でBitcoinの受け取りから送金まで、そしてScriptを書いていく方法を説明しています。
Shun Usami
September 18, 2018
More Decks by Shun Usami
See All by Shun Usami
Let's Write Bitcoin Script #TokyoBitcoinHackathon
usatie
7
8.3k
Bitcoin Basic OP_CODEs
usatie
1
300
CustomCellのためのProtocol
usatie
0
490
Other Decks in Programming
See All in Programming
the container ship “Apple Silicon”@WWDC26 Recap -Japan-\(region).swift
shingangan
0
110
<title><a id="</title>君はこのHTMLをパースできるか"></a></title> #雑LT_study
pizzacat83
0
140
JAWS-UG横浜 #102 AWSサ終供養LT会 成仏できない AWS サービスたち 〜本日、三体供養します〜
maroon1st
0
340
What's New in Android 2026
veronikapj
0
250
Cloudflare is Agents
chimame
0
150
jsmini JavaScript Engine を作ってみた話
yosuke_furukawa
PRO
0
300
作るコストが小さくなった時代 幸せに働くために改めて考えたいこと 〜エンジニアとして価値を出し続けるために注視している二分野〜
yuppeeng
0
190
関東Kaggler会_NVIDIA_Nemotron_コンペ_振り返り
rick_ds
0
490
GDG Korea Android: 2026 I/O Extended ~ What's new in Android development tools
pluu
0
220
Apache Hive: Toward a Cloud Native Lakehouse
okumin
0
180
改善しないと、タスクが回らない。 “てんこ盛りポジション” を引き継いだ情シスの、入社3ヶ月の業務改善録
krm963
0
260
ルールを書いて終わらせないハーネスエンジニアリング
yug1224
4
1.9k
Featured
See All Featured
Darren the Foodie - Storyboard
khoart
PRO
3
3.6k
Building the Perfect Custom Keyboard
takai
2
830
Product Roadmaps are Hard
iamctodd
55
12k
Mind Mapping
helmedeiros
PRO
1
300
Code Review Best Practice
trishagee
74
20k
HTML-Aware ERB: The Path to Reactive Rendering @ RubyCon 2026, Rimini, Italy
marcoroth
3
420
The Language of Interfaces
destraynor
162
27k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
2.9k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
201
75k
How Software Deployment tools have changed in the past 20 years
geshan
1
34k
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
1
2.8k
Transcript
BitcoinͷscriptΛ ॻ͍ͯΈΑ͏ @usatie Yenom, Inc.
None
とびきりやさしいビットコイン・ウォレットアプリ
はじめてビットコインを使う 友達や家族にオススメなのが Yenomです!
なぜ初⼼者向き? ・セットアップなし ・秘密鍵を意識せずに使える ☺ ・専⾨⽤語なし #
どれくらいカンタンなの? DL後のフローを説明します。
1. 「同意して続ける」をタップ
✅ 完了
\ 最近リリースしました /
BitcoinKitのインストール FDIPHJUIVCZFOPN#JUDPJO,JU$BSUpMF DBSUIBHFVQEBUFQMBUGPSNJ04
今⽇はなすこと 3. ビットコインを送⾦する 1. ビットコインの鍵を⽣成する 2. ビットコインを受けとる 4. ビットコインスクリプトを書いてみる
今⽇はなすこと 3. ビットコインを送⾦する 1. ビットコインの鍵を⽣成する 2. ビットコインを受けとる 4. ビットコインスクリプトを書いてみる
そもそもビットコインとは? 2 ビットコインとは? P2Pタイムスタンプサーバー =改ざんできないDB 何を保存してる? 錠がかかったコイン 2 " "
+
ビットコインの鍵とアドレスの関係 秘密鍵 公開鍵 アドレス ‑ ‑ ੜͰ͖Δ ੜͰ͖Δ
ビットコインの鍵とアドレスの関係 秘密鍵 公開鍵 アドレス ‑ ‑ ٯແཧ ٯແཧ
秘密鍵、公開鍵、アドレスの⽣成
今⽇はなすこと 3. ビットコインを送⾦する 1. ビットコインの鍵を⽣成する 2. ビットコインを受けとる 4. ビットコインスクリプトを書いてみる
Walletの設定、残⾼の更新/確認
今⽇はなすこと 3. ビットコインを送⾦する 1. ビットコインの鍵を⽣成する 2. ビットコインを受けとる 4. ビットコインスクリプトを書いてみる
Bitcoinの送⾦
今⽇はなすこと 3. ビットコインを送⾦する 1. ビットコインの鍵を⽣成する 2. ビットコインを受けとる 4. ビットコインスクリプトを書いてみる
Bitcoin Script
BitcoinのScript Lock Script この2つだけ!✌ Unlock Script :コインに錠をかけるための スクリプト :コインの錠を外すための スクリプト
Bitcoinのアンロック 1. Unlock Script を実⾏ 結果、TRUE が返ってくれば そのコインはアンロック成功 ! 2.
Lock Script を実⾏
Bitcoinの所有権 ・所有権は存在しない ・あるのは 鍵 のみ(公開されている) ・もし@usatieにしかアンロックできない錠が あれば、 実質 @usatieが所有していると⾔える
Bitcoinの所有権 ・所有権は存在しない ・あるのは 鍵 のみ(公開されている) ・もし@usatieにしかアンロックできない錠が あれば、 実質 @usatieが所有していると⾔える @usatieにしかアンロックできない錠
Bitcoinの所有権 ・所有権は存在しない ・あるのは 鍵 のみ(公開されている) ・もし@usatieにしかアンロックできない錠が あれば、 実質 @usatieが所有していると⾔える @usatieにしかアンロックできない錠
= 秘密鍵と公開鍵で実現できる !!
コインの送⾦ @Yenomに送⾦する場合 あるコインに 「@Yenom にしか開けられない錠 」 をセット
Bitcoinはスタックマシン (Ethereumもそうです)
スタックマシンとは 1. 左から順番にコードを実⾏する 2 3 5 add
スタックマシンとは 2. スタックに値を⼊れたり出したりする 2 3 2 3 2
Ex. 2 3 5 Add 2 3 2 5 Add
Ex. 2 3 5 Add 2 3 2 3 2
5 Add
Ex. 2 3 5 Add 2 3 2 3 2
5 5 3 2 Add
Ex. 2 3 5 Add 2 3 2 3 2
5 5 3 2 Add 8 2
Ex. 3 20 8 Add 3 8 20 3 28
3 Mul 84 Mul 20 8 Add
Bitcoinのアンロック 1. Unlock Script を実⾏ 結果、TRUE が返ってくれば そのコインはアンロック成功 ! 2.
Lock Script を実⾏
Bitcoinのアンロック 1. Unlock Script を実⾏ 結果、TRUE が返ってくれば そのコインはアンロック成功 ! 2.
Lock Script を実⾏ TRUE が返ってくれば
Bitcoinのアンロック 1. Unlock Script を実⾏ 結果、TRUE が返ってくれば そのコインはアンロック成功 ! 2.
Lock Script を実⾏ TRUE が返ってくれば スタックの最後に 残っている値が TRUE であれば =
おさらい Unlock Script Lock Script スタックに TRUE が残ればコインの解錠成功! 次は具体例へ! ①
② の順に実⾏し、
5 Unlock Script 2 Lock Script 3 Add Equal 5
3 5 3 2 5 5 5 TRUE 2 Add Equal ① ②
5 Unlock Script 2 Lock Script 3 Add Equal ①
②
Scriptの実⾏
None
# ビットコインしろ
9/22 - 9/23 @渋⾕
# Congrats! " :yusho:
ありがとうございました。 ハッカソンの申し込みはこちらから!