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
Cryptography 101 for Understanding Nostr
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
jiftechnify
August 04, 2023
Technology
0
390
Cryptography 101 for Understanding Nostr
jiftechnify
August 04, 2023
Tweet
Share
More Decks by jiftechnify
See All by jiftechnify
Functional Programming in Scala 第2版 読書のすゝめ
jiftechnify
1
410
Start Nostr Indie Dev for Great Good
jiftechnify
0
210
Thinking about Feasibility of Scheduled Posts on Nostr
jiftechnify
0
290
Nostrのリレーから漏れなくすべてのイベントを取ってくる技術
jiftechnify
0
700
Other Decks in Technology
See All in Technology
データの整合性を保ちたいだけなんだ
shoheimitani
8
3.1k
OCI Database Management サービス詳細
oracle4engineer
PRO
1
7.4k
GitHub Issue Templates + Coding Agentで簡単みんなでIaC/Easy IaC for Everyone with GitHub Issue Templates + Coding Agent
aeonpeople
1
230
制約が導く迷わない設計 〜 信頼性と運用性を両立するマイナンバー管理システムの実践 〜
bwkw
3
940
AzureでのIaC - Bicep? Terraform? それ早く言ってよ会議
torumakabe
1
560
【Oracle Cloud ウェビナー】[Oracle AI Database + AWS] Oracle Database@AWSで広がるクラウドの新たな選択肢とAI時代のデータ戦略
oracle4engineer
PRO
2
150
OWASP Top 10:2025 リリースと 少しの日本語化にまつわる裏話
okdt
PRO
3
770
SREが向き合う大規模リアーキテクチャ 〜信頼性とアジリティの両立〜
zepprix
0
450
セキュリティについて学ぶ会 / 2026 01 25 Takamatsu WordPress Meetup
rocketmartue
1
300
コミュニティが変えるキャリアの地平線:コロナ禍新卒入社のエンジニアがAWSコミュニティで見つけた成長の羅針盤
kentosuzuki
0
110
CDK対応したAWS DevOps Agentを試そう_20260201
masakiokuda
1
290
Context Engineeringの取り組み
nutslove
0
350
Featured
See All Featured
Everyday Curiosity
cassininazir
0
130
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
110
We Are The Robots
honzajavorek
0
160
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
231
22k
Into the Great Unknown - MozCon
thekraken
40
2.3k
Jess Joyce - The Pitfalls of Following Frameworks
techseoconnect
PRO
1
66
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
76
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
0
140
Navigating Weather and Climate Data
rabernat
0
110
The Limits of Empathy - UXLibs8
cassininazir
1
210
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.1k
Future Trends and Review - Lecture 12 - Web Technologies (1019888BNR)
signer
PRO
0
3.2k
Transcript
None
自己紹介 NIP-05:
[email protected]
Nostr上での主な活動: 作ったもの Nosaray(のさらい): 過去のTLを見るツール nosdump: 複数リレーからイベントを一気に取得できるCLIツール nostr-fetch:
過去のイベント取得を楽にするライブラリ 詳しい話は勉強会#1をみてね リレー運営 wss://nrelay.c-stellar.net: フォロワーのみ書き込み可能 wss://nrelay-jp.c-stellar.net: 日本国内からのみアクセス可能 NIP日本語訳、たまにプルリク投げたり
おしながき Nostrの基礎となる暗号技術について解説します デジタル署名 共通鍵暗号 次のような疑問を解消します Nostrではどうやって投稿者の本人確認・投稿の改ざん防止を実現しているの? どうして秘密鍵を漏らしてはいけないの? 秘密鍵を漏らすと何が起こるの? NostrのDMはどんなしくみになっているの?
序. 通常のWebサービスとNostrの違い
いつもの図
本人確認
1. デジタル署名の話
アナログ世界の署名
デジタル署名 = デジタル世界で 署名と同じしくみを実現するもの
舞台設定
準備: 鍵生成
署名
検証鍵を公開しても大丈夫?
署名検証
署名が正しいと何が証明できる?
閑話休題: ハッシュのお話
2. Nostrにおけるデジタル署名の利用
Nostrのイベントの中身
解剖: Nostrイベント
イベントに署名する
イベントの署名を検証する
公開鍵 = アカウント (秘密鍵が漏れていない限り、) 特定の公開鍵のもとで正しい署名を持つイベントを作れるのは、1人だけのはず → 公開鍵を、その人の「アカウントID」とみなせる
秘密鍵を漏らすと…
本当に本人証明になってるの? 以下のことを証明する、究極的な方法はない! ある公開鍵が本当に「◦◦さん」のものなのか? ある公開鍵が信用に足る人間のものなのか? 部分的に解決するしくみはあるが… NIP-05: ドメイン(例: c-stellar.net)に公開鍵を紐付ける NIP-39: 他のSNSアカウントに公開鍵を紐付ける
結局、最後に信用を生むのは「日々の行動の積み重ね」
3. NostrのDMのしくみ
いかにして秘密の通信を成立させるか
秘密を漏らさず鍵を共有する、たった一つの冴えた方法
DMを送信する: 暗号化
受信したDMを解読する: 復号
現在のDMの仕様(NIP-04)の問題点 誰が誰にDMを送ったか・いつ送られたかなど、本文以外の情報が外部に筒抜け 暗号化方式が固定 暗号化方式が古くなるにつれ、攻撃者に解読される危険性は高まっていく 時代の変化に合わせ、新方式に乗り換えられるしくみにしておく必要があるが… 改善のため、さまざまな提案がなされている
参考文献 暗号技術のすべて / IPUSIRON 著 プログラミング・ビットコイン / Jimmy Song 著
None