Home
Explore
Submit Search
Upload
Login
Signup
Advertisement
Check these out next
HTTPプロクシライブラリproxy2の設計と実装
inaz2
Anton Cherednikov "Modules and Artifacts in NPM"
LogeekNightUkraine
NeXTBSD aka FreeBSD X
iXsystems
My talk at Linux Piter 2015
Alex Chistyakov
How to Make Your Code OSGi Friendly Without Depending on OSGi - Neil Bartlett
mfrancis
Using Nagios to monitor your WO systems
WO Community
Network Test Automation - Net Ops Coding 2015
Hiroshi Ota
Linux firmware for iRMC controller on Fujitsu Primergy servers
Vladimir Shakhov
1
of
24
Top clipped slide
libcurl, seven SSL libraries and one SSH library
Feb. 5, 2011
•
0 likes
4 likes
×
Be the first to like this
Show More
•
3,795 views
views
×
Total views
0
On Slideshare
0
From embeds
0
Number of embeds
0
Download Now
Download to read offline
Report
Technology
libcurl, seven SSL libraries and one SSH library. From my 30 minute talk at Fosdem 2011
Daniel Stenberg
Follow
Segfault manufacturer at wolfSSL
Advertisement
Advertisement
Advertisement
Recommended
about Debian "squeeze" @201002 OSC Tokyospring
Hideki Yamane
835 views
•
46 slides
Does Cowgirl Dream of Red Swirl?
Hideki Yamane
2.5K views
•
43 slides
ITB2016 - ForgeBox 2 Package Management
Ortus Solutions, Corp
476 views
•
24 slides
find & improve some bottleneck in Debian project (DebConf14 LT)
Hideki Yamane
854 views
•
16 slides
Rsyslog version naming (v8.6.0+)
Rainer Gerhards
13.4K views
•
9 slides
LXC, Docker, and the future of software delivery | LinuxCon 2013
dotCloud
12.8K views
•
45 slides
More Related Content
Slideshows for you
(20)
HTTPプロクシライブラリproxy2の設計と実装
inaz2
•
4.3K views
Anton Cherednikov "Modules and Artifacts in NPM"
LogeekNightUkraine
•
81 views
NeXTBSD aka FreeBSD X
iXsystems
•
36.1K views
My talk at Linux Piter 2015
Alex Chistyakov
•
5.9K views
How to Make Your Code OSGi Friendly Without Depending on OSGi - Neil Bartlett
mfrancis
•
779 views
Using Nagios to monitor your WO systems
WO Community
•
1.3K views
Network Test Automation - Net Ops Coding 2015
Hiroshi Ota
•
2K views
Linux firmware for iRMC controller on Fujitsu Primergy servers
Vladimir Shakhov
•
3.1K views
tDiary開発環境!VMWarePlayer編
freedomcat
•
656 views
Test::Kantan - Perl and Testing
Tokuhiro Matsuno
•
5.1K views
Self Introduction & The Story that I Tried to Make Sayonara ROP Chain in Linux
inaz2
•
3.1K views
Return on Ignite 2019: Azure, .NET, A.I. & Data
MSDEVMTL
•
188 views
Getting Started with PureScript
John De Goes
•
2.3K views
Python on FreeBSD
pycontw
•
15.7K views
Webdevcon Keynote hh-2012-09-18
Pierre Joye
•
1.4K views
Perl6 meets JVM
Tokuhiro Matsuno
•
5.1K views
OpenWRT and Perl
Dean Hamstead
•
9.9K views
JerryScript on RIOT
Samsung Open Source Group
•
19.8K views
OpenZFS Developer Summit Introduction
Matthew Ahrens
•
1.6K views
What's New in ASP.NET Core 2.0
Jon Galloway
•
1.1K views
Similar to libcurl, seven SSL libraries and one SSH library
(20)
OpenStack Cinder Best Practices - Meet Up
Aaron Delp
•
2.1K views
Hadoop Meetup Jan 2019 - Overview of Ozone
Erik Krogen
•
1.9K views
curl and new technologies
Daniel Stenberg
•
7K views
ORTC Library - Introduction
Erik Lagerway
•
24.9K views
XFLTReat: a new dimension in tunnelling
Shakacon
•
869 views
Restinio (actual aug 2018)
Nicolai Grodzitski
•
101 views
XFLTReaT: A New Dimension in Tunneling (Shakacon 2017)
Balazs Bucsay
•
109 views
LibreSSL, one year later
Giovanni Bechis
•
1.1K views
Learn PHP Lacture1
ADARSH BHATT
•
1.1K views
Varnish SSL / TLS
Varnish Software
•
1.1K views
Kubernetes
Dharmit Shah
•
321 views
XFLTReaT: A New Dimension in Tunnelling (HITB GSEC 2017)
Balazs Bucsay
•
133 views
Building a Messaging Solutions for OVHcloud with Apache Pulsar_Pierre Zemb
StreamNative
•
646 views
Fluentd meetup
Sadayuki Furuhashi
•
2.4K views
stackconf 2022: It’s Time to Debloat the Cloud with Unikraft
NETWAYS
•
10 views
The Source Control Landscape
Lorna Mitchell
•
699 views
Varnish TLS
Varnish Software
•
249 views
Trick or XFLTReaT a.k.a. Tunnel All The Things
Balazs Bucsay
•
26 views
State of Crypto in Python (OSCON)
jarito030506
•
534 views
XFLTReaT: a new dimension in tunnelling (BruCON 0x09 2017)
Balazs Bucsay
•
195 views
Advertisement
More from Daniel Stenberg
(20)
curl - openfourm europe.pdf
Daniel Stenberg
•
37 views
curl experiments - curl up 2022
Daniel Stenberg
•
19 views
curl security - curl up 2022
Daniel Stenberg
•
21 views
HTTP/3 in curl - curl up 2022
Daniel Stenberg
•
71 views
The state of curl 2022
Daniel Stenberg
•
31 views
Let me tell you about curl
Daniel Stenberg
•
209 views
Curl with rust
Daniel Stenberg
•
431 views
Getting started with libcurl
Daniel Stenberg
•
324 views
HTTP/3 is next generation HTTP
Daniel Stenberg
•
479 views
Landing code in curl
Daniel Stenberg
•
1.3K views
Testing curl for security
Daniel Stenberg
•
1.2K views
common mistakes when using libcurl
Daniel Stenberg
•
1.1K views
HTTP/3 in curl 2020
Daniel Stenberg
•
944 views
The state of curl 2020
Daniel Stenberg
•
674 views
curl roadmap 2020
Daniel Stenberg
•
1K views
curl better
Daniel Stenberg
•
392 views
HTTP/3 for everyone
Daniel Stenberg
•
1.1K views
HTTP/3, QUIC and streaming
Daniel Stenberg
•
1.8K views
HTTP/3 in curl
Daniel Stenberg
•
1.9K views
HTTP/3 over QUIC. All is new but still the same!
Daniel Stenberg
•
948 views
Recently uploaded
(20)
Integration architectures based on Microservices, APIs and events
Sven Bernhardt
•
0 views
How to Build Real-Time Analytics Applications like Netflix, Confluent, and Re...
confluent
•
0 views
Interactive and collaborative AI for biodiversity monitoring and beyond - JWK...
SURFevents
•
0 views
Magento development company in Birmingham.pdf
IosAndWeb Technologies
•
0 views
Business_Process_Outsourcing_and_Shared_Service_Centers_in_Georgia - Excellen...
NRKMurthy1
•
0 views
Lesson Plan.docx
ThokalaNandiniReddy
•
0 views
The CAFE community: a local, inclusive programming community for researchers ...
SURFevents
•
0 views
Computational steering Interactive Design-through-Analysis for Simulation Sci...
SURFevents
•
0 views
DS Fusion CE - External Transactions.pptx
VatsalaC1
•
0 views
What is the Structure and Working Principle of WDM Devices.pdf
HYC Co., Ltd
•
0 views
Lecture-7-Binary-Trees-and-Algorithms-11052023-054009pm.pptx
HamzaUsman48
•
0 views
6a.Agile Software Development.ppt
HamzaUsman48
•
0 views
normal vs. cute.pptx
ShaliniSreedharan1
•
0 views
MIE20232.pptx
Institute of Information Systems (HES-SO)
•
0 views
Leveraging streaming data in real-time to build a Single View of Customer (SVOC)
confluent
•
0 views
Sharing personal data and the GDPR - how can it be done - Francisco Romero Pa...
SURFevents
•
0 views
finalppt-150606051347-lva1-app6892.pptx
AJAYVISHALRP
•
0 views
QAM Microsoft PowerPoint جديد.pptx
ssuserd6ee01
•
0 views
Les09.ppt
AlhassanFederated
•
0 views
IS INDEXED JOURNAL -SUBMIT YOUR RESEARCH PAPERS...!
dannyijwest
•
0 views
Advertisement
libcurl, seven SSL libraries and one SSH library
libcurl, seven SSL libraries and one
SSH library February 5th 2011
Daniel Stenberg ●
Free Software ● Network hacker ● Embedded developer ● Consultant Email: daniel@haxx.se Twitter: @bagder Web: daniel.haxx.se Blog: daniel.haxx.se/blog
Agenda ●
libcurl ● SSL/TLS libraries ● Why so many? ● Differences ● How? ● SSH libraries ● Why so few?
Questions? ●
questions? ● remarks? ● interrupt!
general libcurl ●
cURL since 1998 ● libcurl since 2000 ● today: DICT, FILE, FTP, FTPS, GOPHER, HTTP, HTTPS, IMAP, IMAPS, LDAP, LDAPS, POP3, POP3S, RTMP, RTSP, SCP, SFTP, SMTP, SMTPS, TELNET and TFTP ● almost 40 bindings ● widely used ● MIT licensed
libcurl and SSL ●
HTTPS support added 1998 (later ftpssl, smtps, imaps, pop3s) ● SSLeay …turned into OpenSSL ● GnuTLS added in 2005 ● YaSSL “support” 2006 ● NSS 2007 ● qssl 2007 ● PolarSSL 2010 ● axTLS 2010
Why so many? ●
Software wants to use SSL ● Different set of requirements and demands ● Licensing ● What users/devs implement support for!
Let's compare ●
7 libraries ● what makes people select or reject each one? ● Caveats: I'm focused on client side, I'm but a user of them
OpenSSL Pro
Con Established and License proven Documentation Many features Quirky API leaves CN and SAN verification to apps Big
GnuTLS Pro
Con License License Documentation Less used Many features Big (TLS1.2, SRP, etc) Easy API
NSS Pro
Con FIPS140 licensed DB vs file approach Many features too Firefoxfocused Documentation Big
qSSL Pro
Con Runs on OS/400 Runs only on OS/400
yaSSL Pro
Con License Not fully emulating OpenSSL Has an OpenSSL API Documentation Size? Less support and community
PolarSSL Pro
Con License Documentation Size? Not widely tested Less support and community
axTLS Pro
Con Very small TLS only License Not widely tested Less support and community
Or by feature ●
GPL ● SRP ● TLS 1.2 ● SSLv2 ● FIPS140 ● Embedded focus ● Runs on Windows
How support them? ●
started out as #ifdef maze ● turned into an internal API each lib needs to provide
an internal API curlssl_init() curlssl_cleanup()
curlssl_connect() curlssl_connect_nonblocking() curlssl_session_free() curlssl_close_all() curlssl_close() curlssl_shutdown() curlssl_set_engine() curlssl_set_engine_default() curlssl_engines_list() curlssl_version(x,y) curlssl_data_pending(x,y)
curlssl curlssl_init() curlssl_cleanup() curlssl_connect() curlssl_connect_nonblocking()
sets the recv() and send() curlssl_session_free() functions after successful curlssl_close_all() handshake curlssl_close() curlssl_shutdown() curlssl_set_engine() curlssl_set_engine_default() curlssl_engines_list() curlssl_version(x,y) curlssl_data_pending(x,y)
Maintain functionality ●
hard ● test cases ● volunteerbased, nonstop distributed testing
SSH libraries ●
only 2 (libssh and libssh2) ● SSH is a much less popular commodity protocol
picked libssh2 ●
hand over socket to library ● nonblocking operations ● license
Summary ●
Lots of SSL libs ● Very few SSH libs ● Support them all is lots of work
SSL comparison online A start: http://curl.haxx.se/docs/ssl-compared.html
Advertisement