SlideShare ist ein Scribd-Unternehmen logo
1 von 193
Downloaden Sie, um offline zu lesen
THE SORRY STATE OF
ССЛ
Hynek Schlawack
@hynek
https://hynek.me
https://github.com/hynek
Привет!
https://www.variomedia.de
"The Sorry State of SSL" Hynek Schlawack, PyConRu 2014
"The Sorry State of SSL" Hynek Schlawack, PyConRu 2014
"The Sorry State of SSL" Hynek Schlawack, PyConRu 2014
ONLY LINK
ox.cx/t
WTF
WTF
SSL
WTF
SSL
& TLS
TIMELINE
TIMELINE
1995: Secure Sockets Layer 2.0, Netscape
TIMELINE
1995: Secure Sockets Layer 2.0, Netscape
1996: SSL 3.0, still Netscape
TIMELINE
1995: Secure Sockets Layer 2.0, Netscape
1996: SSL 3.0, still Netscape
1999: Transport Layer Security 1.0, IETF
TIMELINE
1995: Secure Sockets Layer 2.0, Netscape
1996: SSL 3.0, still Netscape
1999: Transport Layer Security 1.0, IETF
2006: TLS 1.1
TIMELINE
1995: Secure Sockets Layer 2.0, Netscape
1996: SSL 3.0, still Netscape
1999: Transport Layer Security 1.0, IETF
2006: TLS 1.1
2008: TLS 1.2
2013
2013
• newfound scrutiny
2013
• newfound scrutiny
• browsers add TLS 1.2
2013
• newfound scrutiny
• browsers add TLS 1.2
• just using TLS not enough
TLS
TLS
• identity
TLS
• identity
• confidentiality
TLS
• identity
• confidentiality
• integrity
TLS HYGIENE
SERVERS
BE UP-TO-DATE
• OpenSSL >= 1.0.1c
• Apache >= 2.4.0
• nginx >= 1.0.6 or 1.1.0
BE UP-TO-DATE
• OpenSSL >= 1.0.1c
• Apache >= 2.4.0
• nginx >= 1.0.6 or 1.1.0
g
CERTIFICATES
• identity
• validity
CERTIFICATES
• identity
• validity
• CA sig
CERTIFICATES
• identity
• validity
• CA sig
CERTIFICATES
• identity
• validity
• CA sig
CERTIFICATES
• identity
• validity
• CA sig
CERTIFICATES
• identity
• validity
• CA sig
EXTENDED VALIDATION
CERTIFICATES
EXTENDED VALIDATION
CERTIFICATES
TRUST CHAIN
TRUST CHAIN
TRUST CHAIN
CERTIFICATES
• trust chain
CERTIFICATES
• trust chain
• host name/service
CERTIFICATES
• trust chain
• host name/service
• already/still valid?
DISABLE
• SSL 2.0
DISABLE
• SSL 2.0
• SSL 3.0 (if you can)
DISABLE
• SSL 2.0
• SSL 3.0 (if you can)
• TLS compression
CIPHER SUITES
CIPHER
CIPHER
Cipher
CIPHER
CipherPlaintext
CIPHER
CipherPlaintext
CIPHER
Cipher CiphertextPlaintext
Ciphertext
CIPHER
Cipher Plaintext
CIPHER: MODE
CIPHER: MODE
• CBC
CIPHER: MODE
• CBC
• stream ciphers
CIPHER: MODE
• CBC
• stream ciphers
• GCM
ENCRYPTION: PREFER THIS
ENCRYPTION: PREFER THIS
AES128-GCM
&
ENCRYPTION: PREFER THIS
AES128-GCM
&
ChaCha20
ENCRYPTION: FALL BACK TO
AES128-CBC
ENCRYPTION:
IF LIFE IS CRUEL TO YOU
3DES-CBC
ENCRYPTION:
EOL
ENCRYPTION: DANGEROUS
• EXP-*
ENCRYPTION: DANGEROUS
• EXP-*
• DES
ENCRYPTION: DANGEROUS
• EXP-*
• DES
• RC4
ENCRYPTION: DANGEROUS
• EXP-*
• DES
• RC4
KEY EXCHANGE
KEY EXCHANGE
fast PFS
RSA ✔️ ❌
KEY EXCHANGE
fast PFS
RSA ✔️ ❌
DHE ❌ ✔️
KEY EXCHANGE
fast PFS
RSA ✔️ ❌
DHE ❌ ✔️
ECDHE ✔️ ✔️
KEY EXCHANGE
fast PFS
RSA ✔️ ❌
DHE ❌ ✔️
ECDHE ✔️ ✔️
INTEGRITY: MACS
• Message Authentication Code
INTEGRITY: MACS
• Message Authentication Code
• HMAC
INTEGRITY: MACS
• Message Authentication Code
• HMAC
• GCM
HAVE THE LAST WORD
YOU’RE DONE!
YOU’RE DONE!
(but test your results!)
CERTIFICATE
CERTIFICATE
CERTIFICATE
CERTIFICATE
CERTIFICATE
CERTIFICATE
CERTIFICATE
PROTOCOLS
PROTOCOLS
PROTOCOLS
PROTOCOLS
CIPHER SUITES
CIPHER SUITES
CIPHER SUITES
CIPHER SUITES
CIPHER SUITES
CIPHER SUITES
CIPHER SUITES
CIPHER SUITES
CLIENTS
YOU HAD ONE JOB!
YOU HAD ONE JOB!
VERIFY!
VERIFY THE CERTIFICATE!
• valid?
VERIFY THE CERTIFICATE!
• valid?
• trustworthy chain?
VERIFY THE CERTIFICATE!
• valid?
• trustworthy chain?
• correct hostname/service?
TRUST CHAIN
TRUST CHAIN
• VERIFY_PEER
TRUST CHAIN
• VERIFY_PEER
• trust stores OS dependent
TRUST CHAIN
• VERIFY_PEER
• trust stores OS dependent
• SSL_CTX_set_default_
verify_paths
SYSTEM CA
• FreeBSD: ca_root_nss
SYSTEM CA
• FreeBSD: ca_root_nss
• debian/Red Hat: ca-certificates
SYSTEM CA
• FreeBSD: ca_root_nss
• debian/Red Hat: ca-certificates
• OS X: TEA or homebrew
SYSTEM CA
• FreeBSD: ca_root_nss
• debian/Red Hat: ca-certificates
• OS X: TEA or homebrew
• Windows: wincertstore
SYSTEM CA
• FreeBSD: ca_root_nss
• debian/Red Hat: ca-certificates
• OS X: TEA or homebrew
• Windows: wincertstore
• or: Mozilla/certifi
HOSTNAME VERIFICATION
OpenSSL to developers:
HOSTNAME VERIFICATION
OpenSSL to developers:
LOL
DON’T VERIFY TRUST CHAIN
I can pretend to be Google
with any self-signed
certificate.
DON’T VERIFY HOSTNAME
I can pretend to be Google
with any valid certificate.
"The Sorry State of SSL" Hynek Schlawack, PyConRu 2014
SET SOME OPTIONS
• acceptable ciphers
• disable SSL 2.0
THAT’S ALL!
USERS
FUNDAMENTAL
MISCONCEPTIONS
FUNDAMENTAL
MISCONCEPTIONS
• no end-to-end security
FUNDAMENTAL
MISCONCEPTIONS
• no end-to-end security
• metadata
VPN?
VPN?
• sees all your traffic
VPN?
• sees all your traffic
• same for CDN
CERTIFICATE WARNINIGS
CERTIFICATE WARNINIGS
ROOT CERTIFICATE
POISONING
TRUST ISSUES
TRUST ISSUES
TRUST ISSUES
TRUST ISSUES
TRUST ISSUES
• hacked
TRUST ISSUES
• hacked
• screw up
TRUST ISSUES
• hacked
• screw up
• court orders
TRUST ISSUES
• hacked
• screw up
• court orders
• big corp
"The Sorry State of SSL" Hynek Schlawack, PyConRu 2014
DON’T DO IT YOURSELF
IF YOU CAN HELP IT.
Rule of Thumb
STANDARD LIBRARY
VS.
PYOPENSSL
STANDARD LIBRARY
STANDARD LIBRARY
• terrible pre-3.3
STANDARD LIBRARY
• terrible pre-3.3
• very incomplete in 2.7
STANDARD LIBRARY
• terrible pre-3.3
• very incomplete in 2.7
• PFS impossible
STANDARD LIBRARY
• terrible pre-3.3
• very incomplete in 2.7
• PFS impossible
• missing options
STANDARD LIBRARY
• terrible pre-3.3
• very incomplete in 2.7
• PFS impossible
• missing options
• bound to Python’s OpenSSL
HOSTNAME VERIFICATION
3.2–
from ssl import match_hostname
2.4–2.7
pip install backports.ssl_match_hostname
PYOPENSSL
PYOPENSSL
• Python 2.6+, 3.2+, and PyPy
PYOPENSSL
• Python 2.6+, 3.2+, and PyPy
• more complete API coverage
PYOPENSSL
• Python 2.6+, 3.2+, and PyPy
• more complete API coverage
• PyCA cryptography!
CRYPTOGRAPHY.IO
CRYPTOGRAPHY.IO
• Python crypto w/o footguns
CRYPTOGRAPHY.IO
• Python crypto w/o footguns
• PyCA
CRYPTOGRAPHY.IO
• Python crypto w/o footguns
• PyCA
• PyPy ♥ CFFI
CRYPTOGRAPHY.IO
• Python crypto w/o footguns
• PyCA
• PyPy ♥ CFFI
• gives pyOpenSSL momentum
HOSTNAME VERIFICATION
service_identity
LIBRARIES
&
FRAMEWORKS
SERVERS
lib PFS good defaults configurable
eventlet hybrid ❌ ❌ ❌
gevent stdlib ❌ ❌ ❌
gunicorn depends ❌ ❌ ❌
Tornado stdlib ❌ ❌ ❌
SERVERS
lib PFS good defaults configurable
eventlet hybrid ❌ ❌ ❌
gevent stdlib ❌ ❌ ❌
gunicorn depends ❌ ❌ ❌
Tornado stdlib ❌ ❌ ❌
Twisted 14.0 pyOpenSSL ✔️ ✔️ ✔️
SERVERS
lib PFS good defaults configurable
eventlet hybrid ❌ ❌ ❌
gevent stdlib ❌ ❌ ❌
gunicorn depends ❌ ❌ ❌
Tornado stdlib ❌ ❌ ❌
Twisted 14.0 pyOpenSSL ✔️ ✔️ ✔️
uWSGI own C code ✔️ ❌ ✔️
SERVERS
lib PFS good defaults configurable
eventlet hybrid ❌ ❌ ❌
gevent stdlib ❌ ❌ ❌
gunicorn depends ❌ ❌ ❌
Tornado stdlib ❌ ❌ ❌
Twisted 14.0 pyOpenSSL ✔️ ✔️ ✔️
uWSGI own C code ✔️ ❌ ✔️
CLIENTS
lib
verifies
certificates
verifies
hostnames
good defaults
eventlet hybrid ❌ ❌ ❌
gevent stdlib ❌ ❌ ❌
CLIENTS
lib
verifies
certificates
verifies
hostnames
good defaults
eventlet hybrid ❌ ❌ ❌
gevent stdlib ❌ ❌ ❌
Tornado stdlib ✔️ ✔️ ❌
CLIENTS
lib
verifies
certificates
verifies
hostnames
good defaults
eventlet hybrid ❌ ❌ ❌
gevent stdlib ❌ ❌ ❌
Tornado stdlib ✔️ ✔️ ❌
Twisted 14.0 pyOpenSSL depends depends ✔️
CLIENTS
lib
verifies
certificates
verifies
hostnames
good defaults
eventlet hybrid ❌ ❌ ❌
gevent stdlib ❌ ❌ ❌
Tornado stdlib ✔️ ✔️ ❌
Twisted 14.0 pyOpenSSL depends depends ✔️
urllib2 stdlib ❌ ❌ ❌
CLIENTS
lib
verifies
certificates
verifies
hostnames
good defaults
eventlet hybrid ❌ ❌ ❌
gevent stdlib ❌ ❌ ❌
Tornado stdlib ✔️ ✔️ ❌
Twisted 14.0 pyOpenSSL depends depends ✔️
urllib2 stdlib ❌ ❌ ❌
urllib3/requests hybrid ✔️ ✔️ ✔️
SUMMARY
SUMMARY
• keep TLS out of Python if you can
SUMMARY
• keep TLS out of Python if you can
• use pyOpenSSL-powered requests for HTTPS
SUMMARY
• keep TLS out of Python if you can
• use pyOpenSSL-powered requests for HTTPS
• write servers in Twisted
SUMMARY
• keep TLS out of Python if you can
• use pyOpenSSL-powered requests for HTTPS
• write servers in Twisted
• use pyOpenSSL
SUMMARY
• keep TLS out of Python if you can
• use pyOpenSSL-powered requests for HTTPS
• write servers in Twisted
• use pyOpenSSL
• use Python 2 stdlib only for clients
WHY SORRY?
IMPLEMENTATIONS
IMPLEMENTATIONS
USERS
USERS
• run outdated software
USERS
• run outdated software
• click certificate warnings away
USERS
• run outdated software
• click certificate warnings away
• are at the mercy of 3rd parties
SERVERS
SERVERS
CLIENTS
PYTHON
Is at the forefront of terrible.
HOPE
HOPE
• people care again
HOPE
• people care again
• stdlib
HOPE
• people care again
• stdlib
• PyCA
CALLS TO ACTION
CALLS TO ACTION
CALLS TO ACTION
CALLS TO ACTION
CALLS TO ACTION
ox.cx/t
@hynek
vrmd.de

Weitere ähnliche Inhalte

Was ist angesagt?

Http3 fullstackfest-2019
Http3 fullstackfest-2019Http3 fullstackfest-2019
Http3 fullstackfest-2019Daniel Stenberg
 
Heartache and Heartbleed - 31c3
Heartache and Heartbleed - 31c3Heartache and Heartbleed - 31c3
Heartache and Heartbleed - 31c3Nick Sullivan
 
Testing curl for security
Testing curl for securityTesting curl for security
Testing curl for securityDaniel Stenberg
 
XFLTReat: a new dimension in tunnelling
XFLTReat:  a new dimension in tunnellingXFLTReat:  a new dimension in tunnelling
XFLTReat: a new dimension in tunnellingShakacon
 
Introducing Project Longhorn - April 2016 Rancher Online Meetup
Introducing Project Longhorn - April 2016 Rancher Online MeetupIntroducing Project Longhorn - April 2016 Rancher Online Meetup
Introducing Project Longhorn - April 2016 Rancher Online MeetupShannon Williams
 
HTTP/3 is next generation HTTP
HTTP/3 is next generation HTTPHTTP/3 is next generation HTTP
HTTP/3 is next generation HTTPDaniel Stenberg
 
Getting started with libcurl
Getting started with libcurlGetting started with libcurl
Getting started with libcurlDaniel Stenberg
 
Groovy there's a docker in my application pipeline
Groovy there's a docker in my application pipelineGroovy there's a docker in my application pipeline
Groovy there's a docker in my application pipelineKris Buytaert
 
Master-Master Replication and Scaling of an Application Between Each of the I...
Master-Master Replication and Scaling of an Application Between Each of the I...Master-Master Replication and Scaling of an Application Between Each of the I...
Master-Master Replication and Scaling of an Application Between Each of the I...vsoshnikov
 
Oded Coster - Stack Overflow behind the scenes - how it's made - Codemotion M...
Oded Coster - Stack Overflow behind the scenes - how it's made - Codemotion M...Oded Coster - Stack Overflow behind the scenes - how it's made - Codemotion M...
Oded Coster - Stack Overflow behind the scenes - how it's made - Codemotion M...Codemotion
 
Security Asterisk or FreePBX with APIBAN
Security Asterisk or FreePBX with APIBANSecurity Asterisk or FreePBX with APIBAN
Security Asterisk or FreePBX with APIBANFred Posner
 
Vagrant for developer setup
Vagrant for developer setupVagrant for developer setup
Vagrant for developer setupakqaanoraks
 
How to Shrink from 5 Tiers to 2 in a Multitier Microservices Architecture
 How to Shrink from 5 Tiers to 2 in a Multitier Microservices Architecture How to Shrink from 5 Tiers to 2 in a Multitier Microservices Architecture
How to Shrink from 5 Tiers to 2 in a Multitier Microservices Architecturevsoshnikov
 
Jean-Baptiste Favre - How to Monitor Bilions of Miles Shared by 20 Million Us...
Jean-Baptiste Favre - How to Monitor Bilions of Miles Shared by 20 Million Us...Jean-Baptiste Favre - How to Monitor Bilions of Miles Shared by 20 Million Us...
Jean-Baptiste Favre - How to Monitor Bilions of Miles Shared by 20 Million Us...Zabbix
 
Four years of breaking HTTPS with BGP hijacking
Four years of breaking HTTPS with BGP hijackingFour years of breaking HTTPS with BGP hijacking
Four years of breaking HTTPS with BGP hijackingAPNIC
 

Was ist angesagt? (20)

Http3 fullstackfest-2019
Http3 fullstackfest-2019Http3 fullstackfest-2019
Http3 fullstackfest-2019
 
HTTP/3 in curl 2020
HTTP/3 in curl 2020HTTP/3 in curl 2020
HTTP/3 in curl 2020
 
Heartache and Heartbleed - 31c3
Heartache and Heartbleed - 31c3Heartache and Heartbleed - 31c3
Heartache and Heartbleed - 31c3
 
HTTP/3 for everyone
HTTP/3 for everyoneHTTP/3 for everyone
HTTP/3 for everyone
 
Testing curl for security
Testing curl for securityTesting curl for security
Testing curl for security
 
HTTP/3 in curl
HTTP/3 in curlHTTP/3 in curl
HTTP/3 in curl
 
XFLTReat: a new dimension in tunnelling
XFLTReat:  a new dimension in tunnellingXFLTReat:  a new dimension in tunnelling
XFLTReat: a new dimension in tunnelling
 
Introducing Project Longhorn - April 2016 Rancher Online Meetup
Introducing Project Longhorn - April 2016 Rancher Online MeetupIntroducing Project Longhorn - April 2016 Rancher Online Meetup
Introducing Project Longhorn - April 2016 Rancher Online Meetup
 
HTTP/3 is next generation HTTP
HTTP/3 is next generation HTTPHTTP/3 is next generation HTTP
HTTP/3 is next generation HTTP
 
Getting started with libcurl
Getting started with libcurlGetting started with libcurl
Getting started with libcurl
 
Groovy there's a docker in my application pipeline
Groovy there's a docker in my application pipelineGroovy there's a docker in my application pipeline
Groovy there's a docker in my application pipeline
 
Master-Master Replication and Scaling of an Application Between Each of the I...
Master-Master Replication and Scaling of an Application Between Each of the I...Master-Master Replication and Scaling of an Application Between Each of the I...
Master-Master Replication and Scaling of an Application Between Each of the I...
 
Oded Coster - Stack Overflow behind the scenes - how it's made - Codemotion M...
Oded Coster - Stack Overflow behind the scenes - how it's made - Codemotion M...Oded Coster - Stack Overflow behind the scenes - how it's made - Codemotion M...
Oded Coster - Stack Overflow behind the scenes - how it's made - Codemotion M...
 
Security Asterisk or FreePBX with APIBAN
Security Asterisk or FreePBX with APIBANSecurity Asterisk or FreePBX with APIBAN
Security Asterisk or FreePBX with APIBAN
 
Vagrant for developer setup
Vagrant for developer setupVagrant for developer setup
Vagrant for developer setup
 
How to Shrink from 5 Tiers to 2 in a Multitier Microservices Architecture
 How to Shrink from 5 Tiers to 2 in a Multitier Microservices Architecture How to Shrink from 5 Tiers to 2 in a Multitier Microservices Architecture
How to Shrink from 5 Tiers to 2 in a Multitier Microservices Architecture
 
Jean-Baptiste Favre - How to Monitor Bilions of Miles Shared by 20 Million Us...
Jean-Baptiste Favre - How to Monitor Bilions of Miles Shared by 20 Million Us...Jean-Baptiste Favre - How to Monitor Bilions of Miles Shared by 20 Million Us...
Jean-Baptiste Favre - How to Monitor Bilions of Miles Shared by 20 Million Us...
 
curl better
curl bettercurl better
curl better
 
Four years of breaking HTTPS with BGP hijacking
Four years of breaking HTTPS with BGP hijackingFour years of breaking HTTPS with BGP hijacking
Four years of breaking HTTPS with BGP hijacking
 
Dokku - your own heroku
Dokku  - your own herokuDokku  - your own heroku
Dokku - your own heroku
 

Andere mochten auch

"Writing Secure APIs" Armin Ronacher, PyCon Ru 2014
"Writing Secure APIs" Armin Ronacher, PyCon Ru 2014"Writing Secure APIs" Armin Ronacher, PyCon Ru 2014
"Writing Secure APIs" Armin Ronacher, PyCon Ru 2014it-people
 
"Ошибки венчурного инвестора" Леонид Волков, Бизнес-ангел
"Ошибки венчурного инвестора" Леонид Волков, Бизнес-ангел"Ошибки венчурного инвестора" Леонид Волков, Бизнес-ангел
"Ошибки венчурного инвестора" Леонид Волков, Бизнес-ангелit-people
 
"Как я чуть не стал бизнес-тренером" Иван Шкиря, Callibri
"Как я чуть не стал бизнес-тренером" Иван Шкиря, Callibri"Как я чуть не стал бизнес-тренером" Иван Шкиря, Callibri
"Как я чуть не стал бизнес-тренером" Иван Шкиря, Callibriit-people
 
"3,5 попытки выстроить партнерство в консалтинге" Роман Фадеев, Legal Jazz
"3,5 попытки выстроить партнерство в консалтинге" Роман Фадеев, Legal Jazz"3,5 попытки выстроить партнерство в консалтинге" Роман Фадеев, Legal Jazz
"3,5 попытки выстроить партнерство в консалтинге" Роман Фадеев, Legal Jazzit-people
 
"Как мы занимались разработкой сайтов, а хотели влиять на продажи клиента" Ми...
"Как мы занимались разработкой сайтов, а хотели влиять на продажи клиента" Ми..."Как мы занимались разработкой сайтов, а хотели влиять на продажи клиента" Ми...
"Как мы занимались разработкой сайтов, а хотели влиять на продажи клиента" Ми...it-people
 
"Мой поучительный опыт партнерства" Николай Ясинский
"Мой поучительный опыт партнерства" Николай Ясинский"Мой поучительный опыт партнерства" Николай Ясинский
"Мой поучительный опыт партнерства" Николай Ясинскийit-people
 
"Как настроить работу удалённой команды, и почему у нас это не получилось" Ал...
"Как настроить работу удалённой команды, и почему у нас это не получилось" Ал..."Как настроить работу удалённой команды, и почему у нас это не получилось" Ал...
"Как настроить работу удалённой команды, и почему у нас это не получилось" Ал...it-people
 

Andere mochten auch (7)

"Writing Secure APIs" Armin Ronacher, PyCon Ru 2014
"Writing Secure APIs" Armin Ronacher, PyCon Ru 2014"Writing Secure APIs" Armin Ronacher, PyCon Ru 2014
"Writing Secure APIs" Armin Ronacher, PyCon Ru 2014
 
"Ошибки венчурного инвестора" Леонид Волков, Бизнес-ангел
"Ошибки венчурного инвестора" Леонид Волков, Бизнес-ангел"Ошибки венчурного инвестора" Леонид Волков, Бизнес-ангел
"Ошибки венчурного инвестора" Леонид Волков, Бизнес-ангел
 
"Как я чуть не стал бизнес-тренером" Иван Шкиря, Callibri
"Как я чуть не стал бизнес-тренером" Иван Шкиря, Callibri"Как я чуть не стал бизнес-тренером" Иван Шкиря, Callibri
"Как я чуть не стал бизнес-тренером" Иван Шкиря, Callibri
 
"3,5 попытки выстроить партнерство в консалтинге" Роман Фадеев, Legal Jazz
"3,5 попытки выстроить партнерство в консалтинге" Роман Фадеев, Legal Jazz"3,5 попытки выстроить партнерство в консалтинге" Роман Фадеев, Legal Jazz
"3,5 попытки выстроить партнерство в консалтинге" Роман Фадеев, Legal Jazz
 
"Как мы занимались разработкой сайтов, а хотели влиять на продажи клиента" Ми...
"Как мы занимались разработкой сайтов, а хотели влиять на продажи клиента" Ми..."Как мы занимались разработкой сайтов, а хотели влиять на продажи клиента" Ми...
"Как мы занимались разработкой сайтов, а хотели влиять на продажи клиента" Ми...
 
"Мой поучительный опыт партнерства" Николай Ясинский
"Мой поучительный опыт партнерства" Николай Ясинский"Мой поучительный опыт партнерства" Николай Ясинский
"Мой поучительный опыт партнерства" Николай Ясинский
 
"Как настроить работу удалённой команды, и почему у нас это не получилось" Ал...
"Как настроить работу удалённой команды, и почему у нас это не получилось" Ал..."Как настроить работу удалённой команды, и почему у нас это не получилось" Ал...
"Как настроить работу удалённой команды, и почему у нас это не получилось" Ал...
 

Ähnlich wie "The Sorry State of SSL" Hynek Schlawack, PyConRu 2014

How to Backdoor Diffie-Hellman
How to Backdoor Diffie-HellmanHow to Backdoor Diffie-Hellman
How to Backdoor Diffie-HellmanDavid Wong
 
Масштабируя TLS
Масштабируя TLSМасштабируя TLS
Масштабируя TLSQrator Labs
 
Масштабируя TLS / Артём Гавриченков (Qrator Labs)
Масштабируя TLS / Артём Гавриченков (Qrator Labs)Масштабируя TLS / Артём Гавриченков (Qrator Labs)
Масштабируя TLS / Артём Гавриченков (Qrator Labs)Ontico
 
Alvaro Videla, Building a Distributed Data Ingestion System with RabbitMQ
Alvaro Videla, Building a Distributed Data Ingestion System with RabbitMQAlvaro Videla, Building a Distributed Data Ingestion System with RabbitMQ
Alvaro Videla, Building a Distributed Data Ingestion System with RabbitMQTanya Denisyuk
 
Jwt == insecurity?
Jwt == insecurity?Jwt == insecurity?
Jwt == insecurity?snyff
 
London devops logging
London devops loggingLondon devops logging
London devops loggingTomas Doran
 
DockerCon Live 2020 - Securing Your Containerized Application with NGINX
DockerCon Live 2020 - Securing Your Containerized Application with NGINXDockerCon Live 2020 - Securing Your Containerized Application with NGINX
DockerCon Live 2020 - Securing Your Containerized Application with NGINXKevin Jones
 
HTTPS: All you need to know
HTTPS: All you need to knowHTTPS: All you need to know
HTTPS: All you need to knowOVHcloud
 
Trick or XFLTReaT a.k.a. Tunnel All The Things
Trick or XFLTReaT a.k.a. Tunnel All The ThingsTrick or XFLTReaT a.k.a. Tunnel All The Things
Trick or XFLTReaT a.k.a. Tunnel All The ThingsBalazs Bucsay
 
Securing the Web without site-specific passwords
Securing the Web without site-specific passwordsSecuring the Web without site-specific passwords
Securing the Web without site-specific passwordsFrancois Marier
 
Random musings on SSL/TLS configuration
Random musings on SSL/TLS configurationRandom musings on SSL/TLS configuration
Random musings on SSL/TLS configurationextremeunix
 
Compliance Automation with InSpec - Chef NYC Meetup - April 2017
Compliance Automation with InSpec - Chef NYC Meetup - April 2017Compliance Automation with InSpec - Chef NYC Meetup - April 2017
Compliance Automation with InSpec - Chef NYC Meetup - April 2017adamleff
 
XFLTReaT: a new dimension in tunnelling (BruCON 0x09 2017)
XFLTReaT: a new dimension in tunnelling (BruCON 0x09 2017)XFLTReaT: a new dimension in tunnelling (BruCON 0x09 2017)
XFLTReaT: a new dimension in tunnelling (BruCON 0x09 2017)Balazs Bucsay
 
Deploying the 'League of Legends' Data Pipeline with Chef (ARC205) | AWS re:I...
Deploying the 'League of Legends' Data Pipeline with Chef (ARC205) | AWS re:I...Deploying the 'League of Legends' Data Pipeline with Chef (ARC205) | AWS re:I...
Deploying the 'League of Legends' Data Pipeline with Chef (ARC205) | AWS re:I...Amazon Web Services
 
curl and TLS #MeraKrypto
curl and TLS #MeraKryptocurl and TLS #MeraKrypto
curl and TLS #MeraKryptoDaniel Stenberg
 
Puppet101
Puppet101Puppet101
Puppet101Puppet
 
Inside Of Mbga Open Platform
Inside Of Mbga Open PlatformInside Of Mbga Open Platform
Inside Of Mbga Open PlatformHideo Kimura
 

Ähnlich wie "The Sorry State of SSL" Hynek Schlawack, PyConRu 2014 (20)

NullMQ @ PDX
NullMQ @ PDXNullMQ @ PDX
NullMQ @ PDX
 
How to Backdoor Diffie-Hellman
How to Backdoor Diffie-HellmanHow to Backdoor Diffie-Hellman
How to Backdoor Diffie-Hellman
 
Масштабируя TLS
Масштабируя TLSМасштабируя TLS
Масштабируя TLS
 
Масштабируя TLS / Артём Гавриченков (Qrator Labs)
Масштабируя TLS / Артём Гавриченков (Qrator Labs)Масштабируя TLS / Артём Гавриченков (Qrator Labs)
Масштабируя TLS / Артём Гавриченков (Qrator Labs)
 
Alvaro Videla, Building a Distributed Data Ingestion System with RabbitMQ
Alvaro Videla, Building a Distributed Data Ingestion System with RabbitMQAlvaro Videla, Building a Distributed Data Ingestion System with RabbitMQ
Alvaro Videla, Building a Distributed Data Ingestion System with RabbitMQ
 
Jwt == insecurity?
Jwt == insecurity?Jwt == insecurity?
Jwt == insecurity?
 
London devops logging
London devops loggingLondon devops logging
London devops logging
 
DockerCon Live 2020 - Securing Your Containerized Application with NGINX
DockerCon Live 2020 - Securing Your Containerized Application with NGINXDockerCon Live 2020 - Securing Your Containerized Application with NGINX
DockerCon Live 2020 - Securing Your Containerized Application with NGINX
 
SSL overview
SSL overviewSSL overview
SSL overview
 
HTTPS: All you need to know
HTTPS: All you need to knowHTTPS: All you need to know
HTTPS: All you need to know
 
Trick or XFLTReaT a.k.a. Tunnel All The Things
Trick or XFLTReaT a.k.a. Tunnel All The ThingsTrick or XFLTReaT a.k.a. Tunnel All The Things
Trick or XFLTReaT a.k.a. Tunnel All The Things
 
Securing the Web without site-specific passwords
Securing the Web without site-specific passwordsSecuring the Web without site-specific passwords
Securing the Web without site-specific passwords
 
Random musings on SSL/TLS configuration
Random musings on SSL/TLS configurationRandom musings on SSL/TLS configuration
Random musings on SSL/TLS configuration
 
Compliance Automation with InSpec - Chef NYC Meetup - April 2017
Compliance Automation with InSpec - Chef NYC Meetup - April 2017Compliance Automation with InSpec - Chef NYC Meetup - April 2017
Compliance Automation with InSpec - Chef NYC Meetup - April 2017
 
XFLTReaT: a new dimension in tunnelling (BruCON 0x09 2017)
XFLTReaT: a new dimension in tunnelling (BruCON 0x09 2017)XFLTReaT: a new dimension in tunnelling (BruCON 0x09 2017)
XFLTReaT: a new dimension in tunnelling (BruCON 0x09 2017)
 
Deploying the 'League of Legends' Data Pipeline with Chef (ARC205) | AWS re:I...
Deploying the 'League of Legends' Data Pipeline with Chef (ARC205) | AWS re:I...Deploying the 'League of Legends' Data Pipeline with Chef (ARC205) | AWS re:I...
Deploying the 'League of Legends' Data Pipeline with Chef (ARC205) | AWS re:I...
 
curl and TLS #MeraKrypto
curl and TLS #MeraKryptocurl and TLS #MeraKrypto
curl and TLS #MeraKrypto
 
Unsafe SSL webinar
Unsafe SSL webinarUnsafe SSL webinar
Unsafe SSL webinar
 
Puppet101
Puppet101Puppet101
Puppet101
 
Inside Of Mbga Open Platform
Inside Of Mbga Open PlatformInside Of Mbga Open Platform
Inside Of Mbga Open Platform
 

Mehr von it-people

«Про аналитику и серебряные пули» Александр Подсобляев, Rambler&Co
«Про аналитику и серебряные пули» Александр Подсобляев, Rambler&Co«Про аналитику и серебряные пули» Александр Подсобляев, Rambler&Co
«Про аналитику и серебряные пули» Александр Подсобляев, Rambler&Coit-people
 
«Scrapy internals» Александр Сибиряков, Scrapinghub
«Scrapy internals» Александр Сибиряков, Scrapinghub«Scrapy internals» Александр Сибиряков, Scrapinghub
«Scrapy internals» Александр Сибиряков, Scrapinghubit-people
 
«Отладка в Python 3.6: Быстрее, Выше, Сильнее» Елизавета Шашкова, JetBrains
«Отладка в Python 3.6: Быстрее, Выше, Сильнее» Елизавета Шашкова, JetBrains«Отладка в Python 3.6: Быстрее, Выше, Сильнее» Елизавета Шашкова, JetBrains
«Отладка в Python 3.6: Быстрее, Выше, Сильнее» Елизавета Шашкова, JetBrainsit-people
 
«Gevent — быть или не быть?» Александр Мокров, Positive Technologies
«Gevent — быть или не быть?» Александр Мокров, Positive Technologies«Gevent — быть или не быть?» Александр Мокров, Positive Technologies
«Gevent — быть или не быть?» Александр Мокров, Positive Technologiesit-people
 
«Ещё один Поиск Яндекса» Александр Кошелев, Яндекс
«Ещё один Поиск Яндекса» Александр Кошелев, Яндекс«Ещё один Поиск Яндекса» Александр Кошелев, Яндекс
«Ещё один Поиск Яндекса» Александр Кошелев, Яндексit-people
 
«How I Learned to Stop Worrying and Love the BFG: нагрузочное тестирование со...
«How I Learned to Stop Worrying and Love the BFG: нагрузочное тестирование со...«How I Learned to Stop Worrying and Love the BFG: нагрузочное тестирование со...
«How I Learned to Stop Worrying and Love the BFG: нагрузочное тестирование со...it-people
 
«Write once run anywhere — почём опиум для народа?» Игорь Новиков, Scalr
«Write once run anywhere — почём опиум для народа?» Игорь Новиков, Scalr«Write once run anywhere — почём опиум для народа?» Игорь Новиков, Scalr
«Write once run anywhere — почём опиум для народа?» Игорь Новиков, Scalrit-people
 
«Gensim — тематическое моделирование для людей» Иван Меньших, Лев Константино...
«Gensim — тематическое моделирование для людей» Иван Меньших, Лев Константино...«Gensim — тематическое моделирование для людей» Иван Меньших, Лев Константино...
«Gensim — тематическое моделирование для людей» Иван Меньших, Лев Константино...it-people
 
«Тотальный контроль производительности» Михаил Юматов, ЦИАН
«Тотальный контроль производительности» Михаил Юматов, ЦИАН«Тотальный контроль производительности» Михаил Юматов, ЦИАН
«Тотальный контроль производительности» Михаил Юматов, ЦИАНit-people
 
«Детские болезни live-чата» Ольга Сентемова, Тинькофф Банк
«Детские болезни live-чата» Ольга Сентемова, Тинькофф Банк«Детские болезни live-чата» Ольга Сентемова, Тинькофф Банк
«Детские болезни live-чата» Ольга Сентемова, Тинькофф Банкit-people
 
«Микросервисы наносят ответный удар!» Олег Чуркин, Rambler&Co
«Микросервисы наносят ответный удар!» Олег Чуркин, Rambler&Co«Микросервисы наносят ответный удар!» Олег Чуркин, Rambler&Co
«Микросервисы наносят ответный удар!» Олег Чуркин, Rambler&Coit-people
 
«Память и Python. Что надо знать для счастья?» Алексей Кузьмин, ЦНС
«Память и Python. Что надо знать для счастья?» Алексей Кузьмин, ЦНС«Память и Python. Что надо знать для счастья?» Алексей Кузьмин, ЦНС
«Память и Python. Что надо знать для счастья?» Алексей Кузьмин, ЦНСit-people
 
«Что такое serverless-архитектура и как с ней жить?» Николай Марков, Aligned ...
«Что такое serverless-архитектура и как с ней жить?» Николай Марков, Aligned ...«Что такое serverless-архитектура и как с ней жить?» Николай Марков, Aligned ...
«Что такое serverless-архитектура и как с ней жить?» Николай Марков, Aligned ...it-people
 
«Python на острие бритвы: PyPy project» Александр Кошкин, Positive Technologies
«Python на острие бритвы: PyPy project» Александр Кошкин, Positive Technologies«Python на острие бритвы: PyPy project» Александр Кошкин, Positive Technologies
«Python на острие бритвы: PyPy project» Александр Кошкин, Positive Technologiesit-people
 
«PyWat. А хорошо ли вы знаете Python?» Александр Швец, Marilyn System
«PyWat. А хорошо ли вы знаете Python?» Александр Швец, Marilyn System«PyWat. А хорошо ли вы знаете Python?» Александр Швец, Marilyn System
«PyWat. А хорошо ли вы знаете Python?» Александр Швец, Marilyn Systemit-people
 
«(Без)опасный Python», Иван Цыганов, Positive Technologies
«(Без)опасный Python», Иван Цыганов, Positive Technologies«(Без)опасный Python», Иван Цыганов, Positive Technologies
«(Без)опасный Python», Иван Цыганов, Positive Technologiesit-people
 
«Python of Things», Кирилл Борисов, Яндекс
«Python of Things», Кирилл Борисов, Яндекс«Python of Things», Кирилл Борисов, Яндекс
«Python of Things», Кирилл Борисов, Яндексit-people
 
«Как сделать так, чтобы тесты на Swift не причиняли боль» Сычев Александр, Ra...
«Как сделать так, чтобы тесты на Swift не причиняли боль» Сычев Александр, Ra...«Как сделать так, чтобы тесты на Swift не причиняли боль» Сычев Александр, Ra...
«Как сделать так, чтобы тесты на Swift не причиняли боль» Сычев Александр, Ra...it-people
 
«Клиенту и серверу нужно поговорить» Прокопов Никита, Cognician
«Клиенту и серверу нужно поговорить» Прокопов Никита, Cognician«Клиенту и серверу нужно поговорить» Прокопов Никита, Cognician
«Клиенту и серверу нужно поговорить» Прокопов Никита, Cognicianit-people
 
«Кошелек или деньги: сложный выбор между памятью и процессором» Алексеенко Иг...
«Кошелек или деньги: сложный выбор между памятью и процессором» Алексеенко Иг...«Кошелек или деньги: сложный выбор между памятью и процессором» Алексеенко Иг...
«Кошелек или деньги: сложный выбор между памятью и процессором» Алексеенко Иг...it-people
 

Mehr von it-people (20)

«Про аналитику и серебряные пули» Александр Подсобляев, Rambler&Co
«Про аналитику и серебряные пули» Александр Подсобляев, Rambler&Co«Про аналитику и серебряные пули» Александр Подсобляев, Rambler&Co
«Про аналитику и серебряные пули» Александр Подсобляев, Rambler&Co
 
«Scrapy internals» Александр Сибиряков, Scrapinghub
«Scrapy internals» Александр Сибиряков, Scrapinghub«Scrapy internals» Александр Сибиряков, Scrapinghub
«Scrapy internals» Александр Сибиряков, Scrapinghub
 
«Отладка в Python 3.6: Быстрее, Выше, Сильнее» Елизавета Шашкова, JetBrains
«Отладка в Python 3.6: Быстрее, Выше, Сильнее» Елизавета Шашкова, JetBrains«Отладка в Python 3.6: Быстрее, Выше, Сильнее» Елизавета Шашкова, JetBrains
«Отладка в Python 3.6: Быстрее, Выше, Сильнее» Елизавета Шашкова, JetBrains
 
«Gevent — быть или не быть?» Александр Мокров, Positive Technologies
«Gevent — быть или не быть?» Александр Мокров, Positive Technologies«Gevent — быть или не быть?» Александр Мокров, Positive Technologies
«Gevent — быть или не быть?» Александр Мокров, Positive Technologies
 
«Ещё один Поиск Яндекса» Александр Кошелев, Яндекс
«Ещё один Поиск Яндекса» Александр Кошелев, Яндекс«Ещё один Поиск Яндекса» Александр Кошелев, Яндекс
«Ещё один Поиск Яндекса» Александр Кошелев, Яндекс
 
«How I Learned to Stop Worrying and Love the BFG: нагрузочное тестирование со...
«How I Learned to Stop Worrying and Love the BFG: нагрузочное тестирование со...«How I Learned to Stop Worrying and Love the BFG: нагрузочное тестирование со...
«How I Learned to Stop Worrying and Love the BFG: нагрузочное тестирование со...
 
«Write once run anywhere — почём опиум для народа?» Игорь Новиков, Scalr
«Write once run anywhere — почём опиум для народа?» Игорь Новиков, Scalr«Write once run anywhere — почём опиум для народа?» Игорь Новиков, Scalr
«Write once run anywhere — почём опиум для народа?» Игорь Новиков, Scalr
 
«Gensim — тематическое моделирование для людей» Иван Меньших, Лев Константино...
«Gensim — тематическое моделирование для людей» Иван Меньших, Лев Константино...«Gensim — тематическое моделирование для людей» Иван Меньших, Лев Константино...
«Gensim — тематическое моделирование для людей» Иван Меньших, Лев Константино...
 
«Тотальный контроль производительности» Михаил Юматов, ЦИАН
«Тотальный контроль производительности» Михаил Юматов, ЦИАН«Тотальный контроль производительности» Михаил Юматов, ЦИАН
«Тотальный контроль производительности» Михаил Юматов, ЦИАН
 
«Детские болезни live-чата» Ольга Сентемова, Тинькофф Банк
«Детские болезни live-чата» Ольга Сентемова, Тинькофф Банк«Детские болезни live-чата» Ольга Сентемова, Тинькофф Банк
«Детские болезни live-чата» Ольга Сентемова, Тинькофф Банк
 
«Микросервисы наносят ответный удар!» Олег Чуркин, Rambler&Co
«Микросервисы наносят ответный удар!» Олег Чуркин, Rambler&Co«Микросервисы наносят ответный удар!» Олег Чуркин, Rambler&Co
«Микросервисы наносят ответный удар!» Олег Чуркин, Rambler&Co
 
«Память и Python. Что надо знать для счастья?» Алексей Кузьмин, ЦНС
«Память и Python. Что надо знать для счастья?» Алексей Кузьмин, ЦНС«Память и Python. Что надо знать для счастья?» Алексей Кузьмин, ЦНС
«Память и Python. Что надо знать для счастья?» Алексей Кузьмин, ЦНС
 
«Что такое serverless-архитектура и как с ней жить?» Николай Марков, Aligned ...
«Что такое serverless-архитектура и как с ней жить?» Николай Марков, Aligned ...«Что такое serverless-архитектура и как с ней жить?» Николай Марков, Aligned ...
«Что такое serverless-архитектура и как с ней жить?» Николай Марков, Aligned ...
 
«Python на острие бритвы: PyPy project» Александр Кошкин, Positive Technologies
«Python на острие бритвы: PyPy project» Александр Кошкин, Positive Technologies«Python на острие бритвы: PyPy project» Александр Кошкин, Positive Technologies
«Python на острие бритвы: PyPy project» Александр Кошкин, Positive Technologies
 
«PyWat. А хорошо ли вы знаете Python?» Александр Швец, Marilyn System
«PyWat. А хорошо ли вы знаете Python?» Александр Швец, Marilyn System«PyWat. А хорошо ли вы знаете Python?» Александр Швец, Marilyn System
«PyWat. А хорошо ли вы знаете Python?» Александр Швец, Marilyn System
 
«(Без)опасный Python», Иван Цыганов, Positive Technologies
«(Без)опасный Python», Иван Цыганов, Positive Technologies«(Без)опасный Python», Иван Цыганов, Positive Technologies
«(Без)опасный Python», Иван Цыганов, Positive Technologies
 
«Python of Things», Кирилл Борисов, Яндекс
«Python of Things», Кирилл Борисов, Яндекс«Python of Things», Кирилл Борисов, Яндекс
«Python of Things», Кирилл Борисов, Яндекс
 
«Как сделать так, чтобы тесты на Swift не причиняли боль» Сычев Александр, Ra...
«Как сделать так, чтобы тесты на Swift не причиняли боль» Сычев Александр, Ra...«Как сделать так, чтобы тесты на Swift не причиняли боль» Сычев Александр, Ra...
«Как сделать так, чтобы тесты на Swift не причиняли боль» Сычев Александр, Ra...
 
«Клиенту и серверу нужно поговорить» Прокопов Никита, Cognician
«Клиенту и серверу нужно поговорить» Прокопов Никита, Cognician«Клиенту и серверу нужно поговорить» Прокопов Никита, Cognician
«Клиенту и серверу нужно поговорить» Прокопов Никита, Cognician
 
«Кошелек или деньги: сложный выбор между памятью и процессором» Алексеенко Иг...
«Кошелек или деньги: сложный выбор между памятью и процессором» Алексеенко Иг...«Кошелек или деньги: сложный выбор между памятью и процессором» Алексеенко Иг...
«Кошелек или деньги: сложный выбор между памятью и процессором» Алексеенко Иг...
 

Kürzlich hochgeladen

Easter in the USA presentation by Chloe.
Easter in the USA presentation by Chloe.Easter in the USA presentation by Chloe.
Easter in the USA presentation by Chloe.EnglishCEIPdeSigeiro
 
Presentation on the Basics of Writing. Writing a Paragraph
Presentation on the Basics of Writing. Writing a ParagraphPresentation on the Basics of Writing. Writing a Paragraph
Presentation on the Basics of Writing. Writing a ParagraphNetziValdelomar1
 
CAULIFLOWER BREEDING 1 Parmar pptx
CAULIFLOWER BREEDING 1 Parmar pptxCAULIFLOWER BREEDING 1 Parmar pptx
CAULIFLOWER BREEDING 1 Parmar pptxSaurabhParmar42
 
Philosophy of Education and Educational Philosophy
Philosophy of Education  and Educational PhilosophyPhilosophy of Education  and Educational Philosophy
Philosophy of Education and Educational PhilosophyShuvankar Madhu
 
3.21.24 The Origins of Black Power.pptx
3.21.24  The Origins of Black Power.pptx3.21.24  The Origins of Black Power.pptx
3.21.24 The Origins of Black Power.pptxmary850239
 
HED Office Sohayok Exam Question Solution 2023.pdf
HED Office Sohayok Exam Question Solution 2023.pdfHED Office Sohayok Exam Question Solution 2023.pdf
HED Office Sohayok Exam Question Solution 2023.pdfMohonDas
 
Diploma in Nursing Admission Test Question Solution 2023.pdf
Diploma in Nursing Admission Test Question Solution 2023.pdfDiploma in Nursing Admission Test Question Solution 2023.pdf
Diploma in Nursing Admission Test Question Solution 2023.pdfMohonDas
 
Practical Research 1 Lesson 9 Scope and delimitation.pptx
Practical Research 1 Lesson 9 Scope and delimitation.pptxPractical Research 1 Lesson 9 Scope and delimitation.pptx
Practical Research 1 Lesson 9 Scope and delimitation.pptxKatherine Villaluna
 
The basics of sentences session 10pptx.pptx
The basics of sentences session 10pptx.pptxThe basics of sentences session 10pptx.pptx
The basics of sentences session 10pptx.pptxheathfieldcps1
 
P4C x ELT = P4ELT: Its Theoretical Background (Kanazawa, 2024 March).pdf
P4C x ELT = P4ELT: Its Theoretical Background (Kanazawa, 2024 March).pdfP4C x ELT = P4ELT: Its Theoretical Background (Kanazawa, 2024 March).pdf
P4C x ELT = P4ELT: Its Theoretical Background (Kanazawa, 2024 March).pdfYu Kanazawa / Osaka University
 
What is the Future of QuickBooks DeskTop?
What is the Future of QuickBooks DeskTop?What is the Future of QuickBooks DeskTop?
What is the Future of QuickBooks DeskTop?TechSoup
 
M-2- General Reactions of amino acids.pptx
M-2- General Reactions of amino acids.pptxM-2- General Reactions of amino acids.pptx
M-2- General Reactions of amino acids.pptxDr. Santhosh Kumar. N
 
Maximizing Impact_ Nonprofit Website Planning, Budgeting, and Design.pdf
Maximizing Impact_ Nonprofit Website Planning, Budgeting, and Design.pdfMaximizing Impact_ Nonprofit Website Planning, Budgeting, and Design.pdf
Maximizing Impact_ Nonprofit Website Planning, Budgeting, and Design.pdfTechSoup
 
How to Make a Field read-only in Odoo 17
How to Make a Field read-only in Odoo 17How to Make a Field read-only in Odoo 17
How to Make a Field read-only in Odoo 17Celine George
 
Human-AI Co-Creation of Worked Examples for Programming Classes
Human-AI Co-Creation of Worked Examples for Programming ClassesHuman-AI Co-Creation of Worked Examples for Programming Classes
Human-AI Co-Creation of Worked Examples for Programming ClassesMohammad Hassany
 
Benefits & Challenges of Inclusive Education
Benefits & Challenges of Inclusive EducationBenefits & Challenges of Inclusive Education
Benefits & Challenges of Inclusive EducationMJDuyan
 
PISA-VET launch_El Iza Mohamedou_19 March 2024.pptx
PISA-VET launch_El Iza Mohamedou_19 March 2024.pptxPISA-VET launch_El Iza Mohamedou_19 March 2024.pptx
PISA-VET launch_El Iza Mohamedou_19 March 2024.pptxEduSkills OECD
 
The Singapore Teaching Practice document
The Singapore Teaching Practice documentThe Singapore Teaching Practice document
The Singapore Teaching Practice documentXsasf Sfdfasd
 
The Stolen Bacillus by Herbert George Wells
The Stolen Bacillus by Herbert George WellsThe Stolen Bacillus by Herbert George Wells
The Stolen Bacillus by Herbert George WellsEugene Lysak
 

Kürzlich hochgeladen (20)

Easter in the USA presentation by Chloe.
Easter in the USA presentation by Chloe.Easter in the USA presentation by Chloe.
Easter in the USA presentation by Chloe.
 
Presentation on the Basics of Writing. Writing a Paragraph
Presentation on the Basics of Writing. Writing a ParagraphPresentation on the Basics of Writing. Writing a Paragraph
Presentation on the Basics of Writing. Writing a Paragraph
 
CAULIFLOWER BREEDING 1 Parmar pptx
CAULIFLOWER BREEDING 1 Parmar pptxCAULIFLOWER BREEDING 1 Parmar pptx
CAULIFLOWER BREEDING 1 Parmar pptx
 
Philosophy of Education and Educational Philosophy
Philosophy of Education  and Educational PhilosophyPhilosophy of Education  and Educational Philosophy
Philosophy of Education and Educational Philosophy
 
3.21.24 The Origins of Black Power.pptx
3.21.24  The Origins of Black Power.pptx3.21.24  The Origins of Black Power.pptx
3.21.24 The Origins of Black Power.pptx
 
HED Office Sohayok Exam Question Solution 2023.pdf
HED Office Sohayok Exam Question Solution 2023.pdfHED Office Sohayok Exam Question Solution 2023.pdf
HED Office Sohayok Exam Question Solution 2023.pdf
 
Diploma in Nursing Admission Test Question Solution 2023.pdf
Diploma in Nursing Admission Test Question Solution 2023.pdfDiploma in Nursing Admission Test Question Solution 2023.pdf
Diploma in Nursing Admission Test Question Solution 2023.pdf
 
Practical Research 1 Lesson 9 Scope and delimitation.pptx
Practical Research 1 Lesson 9 Scope and delimitation.pptxPractical Research 1 Lesson 9 Scope and delimitation.pptx
Practical Research 1 Lesson 9 Scope and delimitation.pptx
 
The basics of sentences session 10pptx.pptx
The basics of sentences session 10pptx.pptxThe basics of sentences session 10pptx.pptx
The basics of sentences session 10pptx.pptx
 
P4C x ELT = P4ELT: Its Theoretical Background (Kanazawa, 2024 March).pdf
P4C x ELT = P4ELT: Its Theoretical Background (Kanazawa, 2024 March).pdfP4C x ELT = P4ELT: Its Theoretical Background (Kanazawa, 2024 March).pdf
P4C x ELT = P4ELT: Its Theoretical Background (Kanazawa, 2024 March).pdf
 
Personal Resilience in Project Management 2 - TV Edit 1a.pdf
Personal Resilience in Project Management 2 - TV Edit 1a.pdfPersonal Resilience in Project Management 2 - TV Edit 1a.pdf
Personal Resilience in Project Management 2 - TV Edit 1a.pdf
 
What is the Future of QuickBooks DeskTop?
What is the Future of QuickBooks DeskTop?What is the Future of QuickBooks DeskTop?
What is the Future of QuickBooks DeskTop?
 
M-2- General Reactions of amino acids.pptx
M-2- General Reactions of amino acids.pptxM-2- General Reactions of amino acids.pptx
M-2- General Reactions of amino acids.pptx
 
Maximizing Impact_ Nonprofit Website Planning, Budgeting, and Design.pdf
Maximizing Impact_ Nonprofit Website Planning, Budgeting, and Design.pdfMaximizing Impact_ Nonprofit Website Planning, Budgeting, and Design.pdf
Maximizing Impact_ Nonprofit Website Planning, Budgeting, and Design.pdf
 
How to Make a Field read-only in Odoo 17
How to Make a Field read-only in Odoo 17How to Make a Field read-only in Odoo 17
How to Make a Field read-only in Odoo 17
 
Human-AI Co-Creation of Worked Examples for Programming Classes
Human-AI Co-Creation of Worked Examples for Programming ClassesHuman-AI Co-Creation of Worked Examples for Programming Classes
Human-AI Co-Creation of Worked Examples for Programming Classes
 
Benefits & Challenges of Inclusive Education
Benefits & Challenges of Inclusive EducationBenefits & Challenges of Inclusive Education
Benefits & Challenges of Inclusive Education
 
PISA-VET launch_El Iza Mohamedou_19 March 2024.pptx
PISA-VET launch_El Iza Mohamedou_19 March 2024.pptxPISA-VET launch_El Iza Mohamedou_19 March 2024.pptx
PISA-VET launch_El Iza Mohamedou_19 March 2024.pptx
 
The Singapore Teaching Practice document
The Singapore Teaching Practice documentThe Singapore Teaching Practice document
The Singapore Teaching Practice document
 
The Stolen Bacillus by Herbert George Wells
The Stolen Bacillus by Herbert George WellsThe Stolen Bacillus by Herbert George Wells
The Stolen Bacillus by Herbert George Wells
 

"The Sorry State of SSL" Hynek Schlawack, PyConRu 2014