SlideShare uma empresa Scribd logo
1 de 35
Baixar para ler offline
Quantum Computers &
Where to Hide from Them
量子コンピュータと
暗号
Nick Doiron |ニック・ドレン
こんにちは
@mapmeld Twitter & GitHub
フリーランサー
OLPC, Code for America, MoMA, OSM contrib
課題
なぜ量子が面白いか?
本当に量子コンピュータが
存在するか?
どうやって量子コンピュー
ターのプログラミング?
様々なセキュリティーと
プライバシーの問題
コンピュータの歴史
ムーアの
法則
Better
transistors,
better
computers!
ムーアの
法則の
終焉?
Labs at limits of
silicon (June 2017)
+ carbon
nanotubes
(October 2016)
量子ビット(キュービット)とは
何か?
ビット: 「0」か「1」
状態の重ね合わせ:
波動関数の崩壊まで、
「0」と「1」
量子もつれ: 2^n
量子ビットとは 何か?
ファインマン先生の ”名言”
“If you think you understand quantum
mechanics, you don’t understand quantum
mechanics”
「量子力学を理解していると思うなら
量子力学を理解していない」
量子ビットとは 何か?
論理回路: AND,OR,NAND,XOR,NOR
ゲート
量子ゲート
状態の重ね合わせながら、 会う・通過する
本当な量子コンピュータが存在する?
量子ビット
IRL
本当に量子コンピュータが存在する?
IBM
56 ビットをシミュレートする
Offers 5 (recently built 17 qubits) in cloud
Rigetti Computing
30 ビットをシミュレートする
Offers 8 qubit chips
IONQ
秘密保持契約
初めるの アプリケーション: 化学
“simulating molecules and reactions is the use case for early,
small quantum computers…
even the most powerful supercomputers cannot perfectly
re-create all the complex quantum behaviors of atoms and
electrons in even relatively small molecules”
MIT / Technology Review, Mar 2017
どうプログラムを書く?
1. 量子ビットが会って、ゲー
トを通過する
2. 量子ビットを
クラシールビットに
書く
3. n回 繰り返す
アセンブリ言語 ? Quil / pyQuil
H 1
MEASURE 1 [1]
JUMP-WHEN @THEN3 [1]
JUMP @END4
LABEL @THEN3
X 0
LABEL @END4
MEASURE 0 [0]
jsQuil のプログラムを書く
IBM - QISkit.org
Jupyter
notebooks
available
online
1994年: 量子と暗号
Shor’s Algorithm
量子の フーリエ変換
(not for NP-hard ?s)
NSAも?
2013
2016
新しい暗号を作る
量子の暗号
ポスト量子暗号
SSL/TLS: 新たなる希望
New experiment by Chrome team
BoringSSL (AES +
Ring-Learning-With-Errors)
ほかの ポスト量子暗号
- longer keys (1000-x longer RSA)
- Multivar quadratic equations
- Hashes
- McEliece / Goppa codes
GPG から  CodeCryptまで
by Mirek Kratochvil
McEliece Crypto System for Encryption, hash for Signing
As a result - needs two sets of public/private keys
Modeled after GPG commands, but has different output
Enigmail のチーム
Robert J. Hanson, Enigmail+gpg mod / support
日本の会社と大学
2016年十一月 - Shor Part 2
ありがとう!
- PQCrypto.org
- Post-Quantum Cryptography on Amazon
- Scott Aaronson’s blog and
Quantum Computing since Democritus
@mapmeld on Twitter & GitHub

Mais conteúdo relacionado

Mais de Nicholas Doiron

Arabic Unicode and Calligraphy
Arabic Unicode and CalligraphyArabic Unicode and Calligraphy
Arabic Unicode and CalligraphyNicholas Doiron
 
Building Encrypted APIs with HTTPS and Paillier
Building Encrypted APIs with HTTPS and PaillierBuilding Encrypted APIs with HTTPS and Paillier
Building Encrypted APIs with HTTPS and PaillierNicholas Doiron
 
Code for Japan: Civic Tech and Maps
Code for Japan: Civic Tech and MapsCode for Japan: Civic Tech and Maps
Code for Japan: Civic Tech and MapsNicholas Doiron
 
If OLPC started today... JSConf.is
If OLPC started today... JSConf.isIf OLPC started today... JSConf.is
If OLPC started today... JSConf.isNicholas Doiron
 
Demolitions and Dali : Web Dev and Data in a Graph Database
Demolitions and Dali : Web Dev and Data in a Graph DatabaseDemolitions and Dali : Web Dev and Data in a Graph Database
Demolitions and Dali : Web Dev and Data in a Graph DatabaseNicholas Doiron
 
Future of Home: Living on the Run with Airbnb
Future of Home: Living on the Run with AirbnbFuture of Home: Living on the Run with Airbnb
Future of Home: Living on the Run with AirbnbNicholas Doiron
 
iLoominate: Authoring eBooks in Multiple Languages
iLoominate: Authoring eBooks in Multiple LanguagesiLoominate: Authoring eBooks in Multiple Languages
iLoominate: Authoring eBooks in Multiple LanguagesNicholas Doiron
 
Community Planning: Less Maps, More Design
Community Planning: Less Maps, More DesignCommunity Planning: Less Maps, More Design
Community Planning: Less Maps, More DesignNicholas Doiron
 
RobotsConf - Wiring, Soldering, Prototyping
RobotsConf - Wiring, Soldering, PrototypingRobotsConf - Wiring, Soldering, Prototyping
RobotsConf - Wiring, Soldering, PrototypingNicholas Doiron
 
CartoDrop: secure mapping and reporting over Tor
CartoDrop: secure mapping and reporting over TorCartoDrop: secure mapping and reporting over Tor
CartoDrop: secure mapping and reporting over TorNicholas Doiron
 
CfA Ignite 2013: Uploading an Island, the Ultimate Backup Plan
CfA Ignite 2013: Uploading an Island, the Ultimate Backup PlanCfA Ignite 2013: Uploading an Island, the Ultimate Backup Plan
CfA Ignite 2013: Uploading an Island, the Ultimate Backup PlanNicholas Doiron
 
Code for America & the War on Git
Code for America & the War on GitCode for America & the War on Git
Code for America & the War on GitNicholas Doiron
 
MajuroJS.org (Chicago presentation)
MajuroJS.org (Chicago presentation)MajuroJS.org (Chicago presentation)
MajuroJS.org (Chicago presentation)Nicholas Doiron
 

Mais de Nicholas Doiron (20)

Arabic Unicode and Calligraphy
Arabic Unicode and CalligraphyArabic Unicode and Calligraphy
Arabic Unicode and Calligraphy
 
Building Encrypted APIs with HTTPS and Paillier
Building Encrypted APIs with HTTPS and PaillierBuilding Encrypted APIs with HTTPS and Paillier
Building Encrypted APIs with HTTPS and Paillier
 
Code for Japan: Civic Tech and Maps
Code for Japan: Civic Tech and MapsCode for Japan: Civic Tech and Maps
Code for Japan: Civic Tech and Maps
 
Post-Quantum Dev Ops
Post-Quantum Dev OpsPost-Quantum Dev Ops
Post-Quantum Dev Ops
 
If OLPC started today... JSConf.is
If OLPC started today... JSConf.isIf OLPC started today... JSConf.is
If OLPC started today... JSConf.is
 
Demolitions and Dali : Web Dev and Data in a Graph Database
Demolitions and Dali : Web Dev and Data in a Graph DatabaseDemolitions and Dali : Web Dev and Data in a Graph Database
Demolitions and Dali : Web Dev and Data in a Graph Database
 
NodeJS in Naypyitaw
NodeJS in NaypyitawNodeJS in Naypyitaw
NodeJS in Naypyitaw
 
Burmese Crosswords
Burmese CrosswordsBurmese Crosswords
Burmese Crosswords
 
Future of Home: Living on the Run with Airbnb
Future of Home: Living on the Run with AirbnbFuture of Home: Living on the Run with Airbnb
Future of Home: Living on the Run with Airbnb
 
iLoominate: Authoring eBooks in Multiple Languages
iLoominate: Authoring eBooks in Multiple LanguagesiLoominate: Authoring eBooks in Multiple Languages
iLoominate: Authoring eBooks in Multiple Languages
 
The Civic Deep Web
The Civic Deep WebThe Civic Deep Web
The Civic Deep Web
 
Community Planning: Less Maps, More Design
Community Planning: Less Maps, More DesignCommunity Planning: Less Maps, More Design
Community Planning: Less Maps, More Design
 
RobotsConf - Wiring, Soldering, Prototyping
RobotsConf - Wiring, Soldering, PrototypingRobotsConf - Wiring, Soldering, Prototyping
RobotsConf - Wiring, Soldering, Prototyping
 
CartoDrop: secure mapping and reporting over Tor
CartoDrop: secure mapping and reporting over TorCartoDrop: secure mapping and reporting over Tor
CartoDrop: secure mapping and reporting over Tor
 
CfA Ignite 2013: Uploading an Island, the Ultimate Backup Plan
CfA Ignite 2013: Uploading an Island, the Ultimate Backup PlanCfA Ignite 2013: Uploading an Island, the Ultimate Backup Plan
CfA Ignite 2013: Uploading an Island, the Ultimate Backup Plan
 
Code for America & the War on Git
Code for America & the War on GitCode for America & the War on Git
Code for America & the War on Git
 
GeoGit for Open Data
GeoGit for Open DataGeoGit for Open Data
GeoGit for Open Data
 
MajuroJS.org (Chicago presentation)
MajuroJS.org (Chicago presentation)MajuroJS.org (Chicago presentation)
MajuroJS.org (Chicago presentation)
 
Maps No One Wants
Maps No One WantsMaps No One Wants
Maps No One Wants
 
Unicode vs The World
Unicode vs The WorldUnicode vs The World
Unicode vs The World
 

Quantum Computers and Where to Hide from Them (Japanese)