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
Implementing a Fast, Memory–safe Axolotl Ratche...
Search
Jihyeok Seo
December 05, 2015
Research
0
110
Implementing a Fast, Memory–safe Axolotl Ratchet Protocol
2015 한국정보보호학회 동계학술대회 (CISC-W'15)
Jihyeok Seo
December 05, 2015
Tweet
Share
More Decks by Jihyeok Seo
See All by Jihyeok Seo
네이버 블로그를 백업해주는 exitnaver와 그 이야기
limeburst
0
130
Other Decks in Research
See All in Research
電通総研の生成AI・エージェントの取り組みエンジニアリング業務向けAI活用事例紹介
isidaitc
1
1.1k
投資戦略202508
pw
0
570
20250605_新交通システム推進議連_熊本都市圏「車1割削減、渋滞半減、公共交通2倍」から考える地方都市交通政策
trafficbrain
0
940
若手研究者が国際会議(例えばIROS)でワークショップを企画するメリットと成功法!
tanichu
0
100
Combining Deep Learning and Street View Imagery to Map Smallholder Crop Types
satai
3
150
論文紹介:Not All Tokens Are What You Need for Pretraining
kosuken
0
200
問いを起点に、社会と共鳴する知を育む場へ
matsumoto_r
PRO
0
670
とあるSREの博士「過程」 / A Certain SRE’s Ph.D. Journey
yuukit
11
4.6k
Mamba-in-Mamba: Centralized Mamba-Cross-Scan in Tokenized Mamba Model for Hyperspectral Image Classification
satai
3
150
Integrating Static Optimization and Dynamic Nature in JavaScript (GPCE 2025)
tadd
0
110
Remote sensing × Multi-modal meta survey
satai
4
520
引力・斥力を制御可能なランダム部分集合の確率分布
wasyro
0
270
Featured
See All Featured
GitHub's CSS Performance
jonrohan
1032
470k
Docker and Python
trallard
46
3.6k
The Illustrated Children's Guide to Kubernetes
chrisshort
51
51k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.2k
Learning to Love Humans: Emotional Interface Design
aarron
274
41k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
230
22k
Raft: Consensus for Rubyists
vanstee
140
7.2k
Writing Fast Ruby
sferik
630
62k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.6k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
54k
jQuery: Nuts, Bolts and Bling
dougneiner
65
7.9k
Producing Creativity
orderedlist
PRO
348
40k
Transcript
ࡅܰҊ ݫݽܻ–উೠ ইഓ۽ౣ ېஞ ۽ష ҳഅ ࢲഄ*, ട࠼** ѤҴҮ ࢤݺҗҗ*,
ࢲৈҮ ࠁࠁഐҗ**
Implementing a Fast, Memory–safe Axolotl Ratchet Protocol Jihyeok Seo*, Dabin
Hwang** Konkuk University*, Seoul Women’s University**
Motivation • 20150730, Yonhap, “NIS, Requested ‘Hacking Team’ Provide KakaoTalk
Wiretapping” • 20151006, Yonhap, “Kakao, Starts Producing Data For Wiretapping Warrants” • We need secure, end–to–end encrypted mobile communication methods
How? • Suitable protocols for the mobile environment • Secure
cryptographic primitives • Safe implementations
Ratcheting Protocol
Ratcheting • Sharing a secret is trivial (Diffie–Hellman) • How
do we reduce risk of a compromised shared secret key? • Constantly change the shared secret • Ratcheting Protocols (OTR, SCIMP, Axolotl, etc.)
OTR • https://otr.cypherpunks.ca • Diffie–Hellman key exchange on every message
• Assumptions: communicating parties are always online • In mobile environments, not always so
SCIMP • https://silentcircle.com/products-and-solutions/ technology/scimp/ • Hash–based iteration ratchet • Can
ratchet even when offline • Past keys can be used to derive future keys
Axolotl • https://github.com/trevp/axolotl/wiki • Trevor Perrin • State-of-the-art key ratcheting
protocol • OTR (DH ratchet) + SCIMP (hash ratchet) • Opportunistic
Cryptographic Primitives
Message Encryption: ChaCha20 • D. J. Bernstein. 2008. • http://cr.yp.to/papers.html#chacha
• Faster, more energy-efficient in mobile devices • Immune to timing, padding oracle attacks
Message Authentication: Poly1305 • D. J. Bernstein. 2005. • http://cr.yp.to/papers.html#poly1305
• Faster, more energy-efficient in mobile devices • Smaller MAC size compared to HMAC–SHA256
ChaCha20–Poly1305 • Accepted TLS cipher suite • Used for communication
between Android devices and Google services • Used for Cloudflare CDN network • Industry tested cipher suite
Comparison Signal Lumi Key Derivation HKDF (HMAC–SHA256) Key Exchange X25519
(Curve25519) Encryption AES–256 (CTR) ChaCha20 MAC HMAC–SHA256 Poly1305–AES
Safe Implementation
Rust • https://www.rust-lang.org • Guaranteed memory safety • Prevents security
vulnerabilities • Buffer overflows, dangling pointers, data race…
None
None
None
Conclusion • Memory–safe implementation of the state–of–the– art ratcheting protocol
• Better, faster, more secure cryptographic primitives • Proof of concept of an end–to–end encrypted messaging application
Future Work • Adopt post-quantum cryptography (Ring-LWE, SPHINCS, etc.) •
Reduce metadata leak (I2P, Tor, Router Federation, etc.) • Formal verification of Rust code (Coq, Isabelle, etc.)
Acknowledgements • KITRI Best of the Best • NAVER, Sanghyun
Cho, Heo Gyu