SlideShare a Scribd company logo
Submit Search
Upload
EnigmaPi
Report
Share
S
seigo2016
Follow
•
0 likes
•
203 views
1
of
19
EnigmaPi
•
0 likes
•
203 views
Report
Share
Download Now
Download to read offline
Engineering
エニグマのようなものをRaspberry Piで再現したもの デモ動画: https://youtu.be/QfIU4Iw-8Hs
Read more
S
seigo2016
Follow
Recommended
ChatGPT and the Future of Work - Clark Boyd by
ChatGPT and the Future of Work - Clark Boyd
Clark Boyd
28K views
•
69 slides
Getting into the tech field. what next by
Getting into the tech field. what next
Tessa Mero
6.6K views
•
22 slides
Google's Just Not That Into You: Understanding Core Updates & Search Intent by
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Lily Ray
6.9K views
•
99 slides
How to have difficult conversations by
How to have difficult conversations
Rajiv Jayarajah, MAppComm, ACC
5.6K views
•
19 slides
Introduction to Data Science by
Introduction to Data Science
Christy Abraham Joy
82.6K views
•
51 slides
Time Management & Productivity - Best Practices by
Time Management & Productivity - Best Practices
Vit Horky
169.8K views
•
42 slides
More Related Content
Recently uploaded
onewedge_companyguide1 by
onewedge_companyguide1
ONEWEDGE1
89 views
•
22 slides
JISTA月例会2023年12月 書籍『3カ月で改善!システム障害対応実践ガイド』ご紹介+失敗学と障害対応と私 by
JISTA月例会2023年12月 書籍『3カ月で改善!システム障害対応実践ガイド』ご紹介+失敗学と障害対応と私
修治 松浦
213 views
•
36 slides
ウォーターフォール開発で生 産性を測る指標 by
ウォーターフォール開発で生 産性を測る指標
Kouhei Aoyagi
62 views
•
13 slides
システム概要.pdf by
システム概要.pdf
Taira Shimizu
44 views
•
1 slide
こんな私がアクセシビリティ? 〜入り口に立ってモノの見方が広がった話〜.pdf by
こんな私がアクセシビリティ? 〜入り口に立ってモノの見方が広がった話〜.pdf
kenshirofujita
10 views
•
12 slides
概要.pdf by
概要.pdf
Taira Shimizu
6 views
•
1 slide
Recently uploaded
(6)
onewedge_companyguide1 by ONEWEDGE1
onewedge_companyguide1
ONEWEDGE1
•
89 views
JISTA月例会2023年12月 書籍『3カ月で改善!システム障害対応実践ガイド』ご紹介+失敗学と障害対応と私 by 修治 松浦
JISTA月例会2023年12月 書籍『3カ月で改善!システム障害対応実践ガイド』ご紹介+失敗学と障害対応と私
修治 松浦
•
213 views
ウォーターフォール開発で生 産性を測る指標 by Kouhei Aoyagi
ウォーターフォール開発で生 産性を測る指標
Kouhei Aoyagi
•
62 views
システム概要.pdf by Taira Shimizu
システム概要.pdf
Taira Shimizu
•
44 views
こんな私がアクセシビリティ? 〜入り口に立ってモノの見方が広がった話〜.pdf by kenshirofujita
こんな私がアクセシビリティ? 〜入り口に立ってモノの見方が広がった話〜.pdf
kenshirofujita
•
10 views
概要.pdf by Taira Shimizu
概要.pdf
Taira Shimizu
•
6 views
Featured
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present... by
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Applitools
55.5K views
•
138 slides
12 Ways to Increase Your Influence at Work by
12 Ways to Increase Your Influence at Work
GetSmarter
401.7K views
•
64 slides
ChatGPT webinar slides by
ChatGPT webinar slides
Alireza Esmikhani
30.5K views
•
36 slides
More than Just Lines on a Map: Best Practices for U.S Bike Routes by
More than Just Lines on a Map: Best Practices for U.S Bike Routes
Project for Public Spaces & National Center for Biking and Walking
6.9K views
•
51 slides
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G... by
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
DevGAMM Conference
3.6K views
•
12 slides
Barbie - Brand Strategy Presentation by
Barbie - Brand Strategy Presentation
Erica Santiago
25.1K views
•
46 slides
Featured
(20)
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present... by Applitools
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Applitools
•
55.5K views
12 Ways to Increase Your Influence at Work by GetSmarter
12 Ways to Increase Your Influence at Work
GetSmarter
•
401.7K views
ChatGPT webinar slides by Alireza Esmikhani
ChatGPT webinar slides
Alireza Esmikhani
•
30.5K views
More than Just Lines on a Map: Best Practices for U.S Bike Routes by Project for Public Spaces & National Center for Biking and Walking
More than Just Lines on a Map: Best Practices for U.S Bike Routes
Project for Public Spaces & National Center for Biking and Walking
•
6.9K views
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G... by DevGAMM Conference
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
DevGAMM Conference
•
3.6K views
Barbie - Brand Strategy Presentation by Erica Santiago
Barbie - Brand Strategy Presentation
Erica Santiago
•
25.1K views
Good Stuff Happens in 1:1 Meetings: Why you need them and how to do them well by Saba Software
Good Stuff Happens in 1:1 Meetings: Why you need them and how to do them well
Saba Software
•
25.3K views
Introduction to C Programming Language by Simplilearn
Introduction to C Programming Language
Simplilearn
•
8.5K views
The Pixar Way: 37 Quotes on Developing and Maintaining a Creative Company (fr... by Palo Alto Software
The Pixar Way: 37 Quotes on Developing and Maintaining a Creative Company (fr...
Palo Alto Software
•
88.4K views
9 Tips for a Work-free Vacation by Weekdone.com
9 Tips for a Work-free Vacation
Weekdone.com
•
7.2K views
I Rock Therefore I Am. 20 Legendary Quotes from Prince by Empowered Presentations
I Rock Therefore I Am. 20 Legendary Quotes from Prince
Empowered Presentations
•
142.9K views
How to Map Your Future by SlideShop.com
How to Map Your Future
SlideShop.com
•
275.1K views
Beyond Pride: Making Digital Marketing & SEO Authentically LGBTQ+ Inclusive -... by AccuraCast
Beyond Pride: Making Digital Marketing & SEO Authentically LGBTQ+ Inclusive -...
AccuraCast
•
3.4K views
Read with Pride | LGBTQ+ Reads by Kayla Martin-Gant
Read with Pride | LGBTQ+ Reads
Kayla Martin-Gant
•
1.1K views
Exploring ChatGPT for Effective Teaching and Learning.pptx by Stan Skrabut, Ed.D.
Exploring ChatGPT for Effective Teaching and Learning.pptx
Stan Skrabut, Ed.D.
•
57.7K views
How to train your robot (with Deep Reinforcement Learning) by Lucas García, PhD
How to train your robot (with Deep Reinforcement Learning)
Lucas García, PhD
•
42.5K views
4 Strategies to Renew Your Career Passion by Daniel Goleman
4 Strategies to Renew Your Career Passion
Daniel Goleman
•
122K views
The Student's Guide to LinkedIn by LinkedIn
The Student's Guide to LinkedIn
LinkedIn
•
88.1K views
Different Roles in Machine Learning Career by Intellipaat
Different Roles in Machine Learning Career
Intellipaat
•
12.4K views
Defining a Tech Project Vision in Eight Quick Steps pdf by TechSoup
Defining a Tech Project Vision in Eight Quick Steps pdf
TechSoup
•
9.7K views
EnigmaPi
1.
エニグマとは -歴史- • 第2次世界大戦時にナチスドイツが使用した暗号機 •
当時世界最先端の装置 (後に大戦中に連合軍によって解読された) 余談 • エニグマで暗号化して無線通信をすることで, Uボートは効果的に作戦を行うことができた • 「計算機科学の父」Alan Turingも解読に携わった
2.
前提: 換字式暗号について 単一換字式暗号 • 平文の文字に対して,必ず同じ暗号文の文字に変換される •
アルファベット1文字に対して暗号文字は1つ → 頻度分析によって解読 A B C D E ・・・ V W X Y Z ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ E D S A V C L M H U
3.
エニグマの各部パーツ • ローター • キー・ランプ(入出力) •
プラグボード 画像出典: Bob Lord - German Enigma Machine by en:User:Matt Crypto https://commons.wikimedia.org/w/index.php?curid=258976
4.
エニグマ -特徴 プラグボード- 使い方 3-10個の文字のペアを作ってケーブルで繋ぐ 目的 プラグの両端に対応する文字を入れ替える →3.5×106以上の鍵規約数を実現 画像出典:
Bob Lord - German Enigma Machine by en:User:Matt Crypto https://commons.wikimedia.org/w/index.php?curid=258976
5.
エニグマ -特徴 ローター- 役割 •
単文字換字表として動作する ローター3枚で105,456通り 動作 • ①のローターは1文字入力されるごとに1文字分ずれる • ②のローターは①のローターが1回転すると1文字分ずれる • ③のローターは②のローターが1回転すると1文字分ずれる →Aを入力し続けても,17576回入力しないと 同一文字にならない = 頻度分析対策 画像出典: Enigma_rotor_set by Wapcaplet https://commons.wikimedia.org/w/index.php?curid=23793 ① ② ③
6.
エニグマ -特徴 リフレクター- 役割 •
反転ローターとも呼ばれるが,回転しない • ローターを通った信号を再びローターに返す • 暗号化と復号が同じ手順で可能
7.
エニグマとは –機構- A B C E D キー/ライト プラグボード
ローター x3 リフレクター
8.
エニグマ -設定- • ローター配列
(どのローターをどの順で使用するか) • ローター位置 (1文字目をローターのどこで始めるか) • プラグボードの組み合わせ • (日鍵 / 通信鍵) これらの主に3つの要素の設定で暗号・復号を行う →本体が盗まれても設定がわからなければ解読が難しい
9.
エニグマの再現 電気機械としてすべてを再現するのはハードルが高い (技術,コスト) エニグマをモダンに再実装する →暗号化の処理はソフトウェアで実装 →入出力は実際に物理ボタンや液晶等で実装 その他の動機 • ソフトウェアの実装だけでは面白くない • 見た目も凝りたい!(電子工作に挑戦)
10.
対比 ランプ(出力) ローター キー プラグボード 画像出典: Bob Lord
- German Enigma Machine by en:User:Matt Crypto https://commons.wikimedia.org/w/index.php?curid=258976 エニグマ エニグマ
11.
エニグマの再現 -プラグボード- 実装 • 処理途中で変化しないことから, 最初に状態を読み取り記憶しておく 処理順序 •
1つのピンに信号を送信 • 他のすべてのピンの入力を確認 • 入力がある場合接続されているとみなす (これをA-Zの分だけ繰り返す) A B C D E 出力 入力を確認 AとEをつないだ場合
12.
エニグマの再現 -ローター- パーツ • ロータリースイッチで指定 •
3つのスイッチはそれぞれ5通り選択可能 (5枚のローターから3枚選んで並べる動作を簡略化)
13.
エニグマの再現 -入力- パーツ タクトスイッチ +
キーキャップ(3Dプリンターで作成) 特徴 • キー配列はオリジナル準拠(QWERTZ配列)+Enterキー
14.
エニグマの再現 -出力- • LCDキャラクタディスプレイモジュール
(SC1602) • エラー・ステータス・処理結果を表示
15.
エニグマの再現 -外見- • 3Dプリンターで作成したパーツと木材を使用
16.
エニグマの再現 -処理- 環境 • Raspberry
Pi Zero WH • Raspberry Pi OS Lite • Python 3.8
17.
エニグマの再現 -処理- 暗号技術入門(結城 浩
著)等を読みつつ設計 換字表 • ローターごとにシードを固定してランダム生成 設定 • プラグボードやローターは状態を記憶→処理
18.
エニグマの再現 -デモ-
19.
リンク集 Twitter: @seigo2018 GitHub :
seigo2016 Portfolio: https://seigo2016.com