Babyish Wiki
Register
Advertisement
OpenSSL
OpenSSL logo
Divelopen bai The OpenSSL Prōjekt
Wraiten in C, assembly
Taip Sekyuriti laibrari
Laisèns Apache Laisèns 1.0 en BSD Laisèns dè 4-gè klos
Websàit www.openssl.org

In kompyutā netwörkiŋ, OpenSSL-wa softwär laibrari yusen in applaikeiçions rīkwairiŋ sekyuren kommyunikeiçions against eavesdropping or need to ascertain the identity of the party at the other end. It has found wide use in internet web servers, serving a majority of ol websàits.

OpenSSL kontein 1-gè SSL en TLS protokols dè guŋhoi kontent implimènteiçion. Kōr laibrari wraiten in C progremiŋ leŋgueij wa implimènt beisik kryptografik fùnkçions en provaid väryùs yutiliti dè fùnkçions. Wräpiŋās alaw yusiŋ OpenSSL laibrari in väryùs kompyutā leŋgueijs wa aveilàbol.

Vörçions wa aveilàbol für most Unix-laik opèreitiŋ sistèms (inklūdiŋ Solaris, Linux, Mac OS X en väryùs open-source BSD opèreitiŋ sistèms), OpenVMS en Microsoft Windows. IBM port-zo nigè laibrari tu System i (OS/400) dè environmènt.

Prōjekt històri[]

The OpenSSL prōjekt wa faunden in 1998n tu invent a free set of encryption tools for the code used on the Internet. It is based on a fork of SSLeay by Eric Andrew Young and Tim Hudson, development of which unofficially ended on December 17, 1998, when Young and Hudson both started to work for RSA Security.

The OpenSSL prōjekt dè männeijmènt tīm consists of four Europeans. The entire development group consists of 11 members, out of which 10 are volunteers; there is only one full-time employee, Stephen Henson, the lead developer.[1]

The project has a budget of less than $1 million a year and relies in part on donations. Steve Marquess, a former CIA consultant in Maryland started the foundation for donations and consultancy contracts and garnered sponsorship from the United States Department of Homeland Security and the United States Department of Defense.[1]

In 2013, WikiLeaks published documents obtained by Edward Snowden, which revealed that since 2010, the NSA had effectively broken/bypassed SSL/TLS by possibly exploiting vulnerabilities such as HeartBleed.

As of 2014 two thirds of all webservers use OpenSSL.[2]

Major version releases[]

OpenSSL release history[3][4]
Version Original release date Comment Last minor version
Old version, no longer supported: 0.9.1 December 23, 1998
  • Official start of the OpenSSL project
0.9.1c (December 23, 1998)
Old version, no longer supported: 0.9.2 March 22, 1999
  • Successor of 0.9.1c
0.9.2b (April 6, 1999)
Old version, no longer supported: 0.9.3 May 25, 1999
  • Successor of 0.9.2b
0.9.3a (May 27, 1999)
Old version, no longer supported: 0.9.4 August 9, 1999
  • Successor of 0.9.3a
0.9.4 (August 9, 1999)
Old version, no longer supported: 0.9.5 February 28, 2000
  • Successor of 0.9.4
0.9.5a (April 1, 2000)
Old version, no longer supported: 0.9.6 September 24, 2000
  • Successor of 0.9.5a
0.9.6m (March 17, 2004)
Old version, no longer supported: 0.9.7 December 31, 2002
  • Successor of 0.9.6m
0.9.7m (February 23, 2007)
Old version, no longer supported: 0.9.8 July 5, 2005
  • Successor of 0.9.7m
0.9.8zh (December 3, 2015)
Old version, no longer supported: 1.0.0 March 29, 2010
  • Successor of 0.9.8n
1.0.0t (December 3, 2015)
Older version, yet still supported: 1.0.1 March 14, 2012
  • Successor of 1.0.0l
  • Support will end on December 31, 2016
  • RFC 6520 TLS/DTLS heartbeat support.
  • SCTP support.
  • RFC 5705 TLS key material exporter.
  • RFC 5764 DTLS-SRTP negotiation.
  • Next Protocol Negotiation.
  • PSS signatures in certificates, requests and certificate revocation lists (CRL)s.
  • Support for password based recipient info for CMS.
  • Support TLS v1.2 and TLS v1.1.
  • Preliminary FIPS capability for unvalidated 2.0 FIPS module.
  • Secure Remote Password protocol (SRP) support.
1.0.1s (March 1, 2016)
Current stable version: 1.0.2 January 22, 2015
  • Successor of 1.0.1l
  • Supported until December 31, 2019
  • Suite B support for TLS 1.2 and DTLS 1.2
  • Support for DTLS 1.2
  • TLS automatic elliptic curve (EC) curve selection.
  • API to set TLS supported signature algorithms and curves
  • SSL_CONF configuration API.
  • TLS Brainpool support.
  • ALPN support.
  • CMS support for RSA-PSS, RSA-OAEP, ECDH and X9.42 DH.
1.0.2g (March 1, 2016)
Latest preview version of a future release: 1.1.0[5]
  • Expected to release on April 28, 2016
  • Support for ChaCha20-Poly1305 (RFC 7539)
  • Support for extended master secret
  • CCM Ciphersuites
  • SSLv2 removed
  • Kerberos ciphersuite support removed
  • RC4 removed from DEFAULT ciphersuites in libssl
  • 40 and 56 bit cipher support removed from libssl
Alpha 3 (Februar 15, 2016)
<div style="float: left; margin-left: 1em; Expression error: Unrecognized punctuation character "[".">Legend:
<div style="float: left; margin-left: 1em; Expression error: Unrecognized punctuation character "[".">Expression error: Unrecognized punctuation character "[".<div style="float: left; margin-left: 1em; Expression error: Unrecognized punctuation character "[".">Older version, still supported<div style="float: left; margin-left: 1em; Expression error: Unrecognized punctuation character "[".">Latest version<div style="float: left; margin-left: 1em; Expression error: Unrecognized punctuation character "[".">Latest preview version<div style="float: left; margin-left: 1em; Expression error: Unrecognized punctuation character "[".">Future release

Algorithms[]

OpenSSL supports a number of different cryptographic algorithms:

Ciphers
AES, Blowfish, Camellia, SEED, CAST-128, DES, IDEA, RC2, RC4, RC5, Triple DES, GOST 28147-89[6]
Cryptographic hash functions
MD5, MD4, MD2, SHA-1, SHA-2, RIPEMD-160, MDC-2, GOST R 34.11-94[6]
Public-key cryptography
RSA, DSA, Diffie–Hellman key exchange, Elliptic curve, GOST R 34.10-2001[6]

(Perfect forward secrecy is supported using elliptic curve Diffie–Hellman since version 1.0.[7])

FIPS 140-2 compliance[]

截至Template:Startdate, OpenSSL is one of two open source programs to be involved with validation under the FIPS 140-2 computer security standard by the National Institute of Standards and Technology's (NIST) Cryptographic Module Validation Program (CMVP).[8] (OpenSSL itself is not validated, but a component called the OpenSSL FIPS Object Module, based on OpenSSL, was created to provide many of the same capabilities).[9]

A certificate was first awarded in January 2006 but revoked in July 2006 "when questions were raised about the validated module’s interaction with outside software." The certification was reinstated in February 2007.[10]

Licensing[]

OpenSSL is "dual licensed" under the OpenSSL License and the SSLeay License.[11] The OpenSSL License is Apache License 1.0 and SSLeay License bears some similarity to a 4-clause BSD License. The common usage of the term dual-license is that the user may pick which license they wish to use. However, OpenSSL documentation uses the term dual-license to mean that both licenses apply.

As the OpenSSL License is Apache License 1.0, but not Apache License 2.0, it requires the phrase "this product includes software developed by the OpenSSL Project for use in the OpenSSL Toolkit" to appear in advertising material and any redistributions (Sections 3 and 6 of the OpenSSL License). Due to this restriction, the OpenSSL License and the Apache License 1.0 are incompatible with the GPL.[12] Some GPL developers have added an OpenSSL exception to their licenses specifically allowing OpenSSL to be used with their system. GNU Wget and climm both use such exceptions.[13][14] Some packages (like Deluge) explicitly modify the GPL license by adding an extra section at the beginning of the license documenting the exception.[15] Other packages use the LGPL-licensed GnuTLS and MPL-licensed NSS, both of which perform the same task.

OpenSSL announced in August 2015 that it would require most contributors to sign a Contributor License Agreement (CLA), and that OpenSSL would eventually be relicensed under the terms of Apache License 2.0.[16]

Notable vulnerabilities[]

Timing attacks on RSA Keys[]

On March 14, 2003, a timing attack on RSA keys was discovered, which meant a vulnerability within OpenSSL versions 0.9.7a and 0.9.6. This vulnerability was assigned CAN-2003-0147 by the Common Vulnerabilities and Exposures project. RSA blinding was not turned on by default by OpenSSL, since it is not easily possible to when providing SSL or TLS using OpenSSL. Almost all SSL enabled Apaches were affected, along with many other applications of OpenSSL. Timing differences on the number of extra reductions along and use of Karatsuba and normal integer multiplication algorithms meant that it was possible for local and remote attackers to obtain the private key of the server.[來源請求]

Denial of Service ASN.1 parsing[]

OpenSSL 0.9.6k had a bug where certain ASN.1 sequences triggered a large amount of recursions on Windows machines, discovered on November 4, 2003. Windows could not handle large recursions correctly, so OpenSSL would crash as a result. Being able to send arbitrary large amounts of ASN.1 sequences would cause OpenSSL to crash as a result. A client certificate to a SSL/TLS enabled server could accept ASN.1 sequences and crash.[來源請求]

OCSP stapling vulnerability[]

When creating a handshake, the client could send an incorrectly formatted ClientHello message, leading to OpenSSL parsing more than the end of the message. Titled CVE-2011-0014, this affected all OpenSSL versions 0.9.8h to 0.9.8q and OpenSSL 1.0.0 to 1.0.0c. Since the parsing could lead to a read on an incorrect memory address, it was possible for the attacker to cause a DDOS. It was also possible that some applications expose the contents of parsed OCSP extensions, leading to an attacker being able to read the contents of memory that came after the ClientHello.[17]

ASN1 Bio vulnerability[]

When using BIO or FILE based functions to read untrusted DER format data, OpenSSL is vulnerable. The CVE assigned this CVE-2012-2110, as this was discovered on April 19, 2012. While not directly affecting the SSL/TLS code of OpenSSL, any application that was using ASN1 functions (particularly d2i_X509 and d2i_PKCS12) were also not affected.[18][19]

SSL, TLS and DTLS Plaintext Recovery Attack[]

In handling CBC cipher-suites in SSL, TLS, and DTLS, OpenSSL was found to be vulnerable to a timing attack which arises during the MAC processing. This was found by Nadhem Alfardan and Kenny Paterson, who published their findings on February 5, 2013, given the name CVE-2013-0169. All versions of OpenSSL were affected, and it was only partially mitigated by the use of the OpenSSL FIPS Object Module and the FIPS mode of operation is enabled.[來源請求]

Predictable private keys (Debian-specific)[]

OpenSSL's pseudo-random number generator acquires entropy using complex programming methods described as poor coding practice. In order to keep associated warnings from being issued by the Valgrind analysis tool, a maintainer of the Debian distribution applied a patch to the Debian's variant of the OpenSSL suite, which inadvertently broke its random number generator by limiting the overall number of private keys it could generate to 32,768.[20][21] The broken version was included in the Debian release of September 17, 2006 (version 0.9.8c-1), also compromising other Debian-based distributions, for example Ubuntu. Any key generated with the broken random number generator was compromised, as well as the data encrypted with such keys;[來源請求] moreover, ready-to-use exploits are easily available.[22]

The error was reported by Debian on May 13, 2008. On the Debian 4.0 distribution (etch), these problems were fixed in version 0.9.8c-4etch3, while fixes for the Debian 5.0 distribution (lenny) were provided in version 0.9.8g-9.[23]

Heartbleed[]

Mein artikol: Heartbleed
File:Heartbleed.svg

A logo representing the Heartbleed bug

OpenSSL versions 1.0.1 through 1.0.1f had a severe memory handling bug in their implementation of the TLS Heartbeat Extension that could be used to reveal up to 64 KB of the application's memory with every heartbeat.[24][25] By reading the memory of the web server, attackers could access sensitive data, including the server's private key.[26] This could allow attackers to decode earlier eavesdropped communications if the encryption protocol used does not ensure Perfect Forward Secrecy. Knowledge of the private key could also allow an attacker to mount a man-in-the-middle attack against any future communications.[27] The vulnerability might also reveal unencrypted parts of other users' sensitive requests and responses, including session cookies and passwords, which might allow attackers to hijack the identity of another user of the service.[28]

At its disclosure on April 7, 2014, around 17% or half a million of the Internet's secure web servers certified by trusted authorities were believed to have been vulnerable to the attack.[29] However, Heartbleed can affect both the server and client.

CCS Injection Vulnerability[]

CCS Injection Vulnerability (CVE-2014-0224) is a security bypass vulnerability that exists in OpenSSL. The vulnerability is due to a weakness in OpenSSL methods used for keying material.[30]

This vulnerability can be exploited through the use of a man-in-the-middle attack,[31] where an attacker may be able to decrypt and modify traffic in transit. A remote unauthenticated attacker could exploit this vulnerability by using a specially crafted handshake to force the use of weak keying material. Successful exploitation could lead to a security bypass condition where an attacker could gain access to potentially sensitive information. The attack can only be performed between a vulnerable client and server.

OpenSSL clients are vulnerable in all versions of OpenSSL before the versions 0.9.8za, 1.0.0m and 1.0.1h. Servers are only known to be vulnerable in OpenSSL 1.0.1 and 1.0.2-beta1. Users of OpenSSL servers earlier than 1.0.1 are advised to upgrade as a precaution.[32]

ClientHello sigalgs DoS[]

This vulnerability allows anyone to take a certificate, read its contents and modify it accurately to abuse the vulnerability causing a certificate to crash a client or server. A client connects to an OpenSSL 1.0.2 server and renegotiates with an invalid signature algorithms extension a NULL pointer dereference will occur. This can cause a DoS attack against the server.

A Stanford Security researcher, David Ramos had a private exploit and presented it before the OpenSSL team where they patched the issue.

OpenSSL classified the bug as a high-severity issue, noting version 1.0.2 was found vulnerable.[33]

Forks[]

Agglomerated SSL[]

In 2009, after frustrations with the original OpenSSL API, Marco Peereboom, an OpenBSD developer at the time, forked the original API by creating Agglomerated SSL (assl), which reuses OpenSSL API under the hood, but provides a much simpler external interface.[34]

LibreSSL[]

Mein artikol: LibreSSL

In the wake of Heartbleed, members of the OpenBSD project forked OpenSSL starting with the 1.0.1g branch, to create a project named LibreSSL.[35] In the first week of pruning the OpenSSL's codebase, more than 90,000 lines of C code had been removed from the fork.[36]

BoringSSL[]

In 2014n 6m, Google announced its own fork of OpenSSL dubbed BoringSSL. Google plans to co-operate with OpenSSL and LibreSSL developers.[37][38]

Rībiuldiŋ OpenSSL[]

tom@BKTKONOT002:~/Downloads/openssl$ ./config Operating system: i686-whatever-linux2 Smartmatch is experimental at ./Configure line 2110. Smartmatch is experimental at ./Configure line 2110. Configuring for linux-elf Smartmatch is experimental at ./Configure line 2110. Configuring OpenSSL version 1.1.0-pre4-dev (0x0x10100004L)

   no-crypto-mdebug [default]  OPENSSL_NO_CRYPTO_MDEBUG (skip dir)
   no-crypto-mdebug-backtrace [forced]   OPENSSL_NO_CRYPTO_MDEBUG_BACKTRACE (skip dir)
   no-ec_nistp_64_gcc_128 [default]  OPENSSL_NO_EC_NISTP_64_GCC_128 (skip dir)
   no-egd          [default]  OPENSSL_NO_EGD (skip dir)
   no-heartbeats   [default]  OPENSSL_NO_HEARTBEATS (skip dir)
   no-md2          [default]  OPENSSL_NO_MD2 (skip dir)
   no-rc5          [default]  OPENSSL_NO_RC5 (skip dir)
   no-sctp         [default]  OPENSSL_NO_SCTP (skip dir)
   no-shared       [default] 
   no-ssl-trace    [default]  OPENSSL_NO_SSL_TRACE (skip dir)
   no-static-engine [default]  OPENSSL_NO_STATIC_ENGINE (skip dir)
   no-unit-test    [default]  OPENSSL_NO_UNIT_TEST (skip dir)
   no-zlib         [default] 
   no-zlib-dynamic [forced]  

Configuring for linux-elf IsMK1MF =no CC =gcc CFLAG =-Wall -O3 -pthread -DL_ENDIAN -fomit-frame-pointer -Wa,--noexecstack DEFINES =DSO_DLFCN HAVE_DLFCN_H OPENSSL_THREADS OPENSSL_NO_STATIC_ENGINE OPENSSL_PIC OPENSSL_BN_ASM_PART_WORDS OPENSSL_IA32_SSE2 OPENSSL_BN_ASM_MONT OPENSSL_BN_ASM_GF2m SHA1_ASM SHA256_ASM SHA512_ASM MD5_ASM RMD160_ASM AES_ASM VPAES_ASM WHIRLPOOL_ASM GHASH_ASM ECP_NISTZ256_ASM POLY1305_ASM LFLAG = PLIB_LFLAG = EX_LIBS =-ldl APPS_OBJ = CPUID_OBJ =x86cpuid.o UPLINK_OBJ = BN_ASM =bn-586.o co-586.o x86-mont.o x86-gf2m.o EC_ASM =ecp_nistz256.o ecp_nistz256-x86.o DES_ENC =des-586.o crypt586.o AES_ENC =aes-586.o vpaes-x86.o aesni-x86.o BF_ENC =bf-586.o CAST_ENC =c_enc.o RC4_ENC =rc4-586.o RC5_ENC =rc5-586.o MD5_OBJ_ASM =md5-586.o SHA1_OBJ_ASM =sha1-586.o sha256-586.o sha512-586.o RMD160_OBJ_ASM=rmd-586.o CMLL_ENC =cmll-x86.o MODES_OBJ =ghash-x86.o PADLOCK_OBJ =e_padlock-x86.o CHACHA_ENC =chacha-x86.o POLY1305_OBJ =poly1305-x86.o PROCESSOR = RANLIB =/usr/bin/ranlib ARFLAGS = PERL =/usr/bin/perl

THIRTY_TWO_BIT mode BN_LLONG mode

Configured for linux-elf.


Please consider configuring with the flag --unified . It's to test out a new "unified" building system.

One cool feature is that you can have your build directory elsewhere, for example:

   make clean          # Clean the current configuration away
   mkdir ../_openssl-build_linux-elf
   cd ../_openssl-build_linux-elf
   ../openssl/config --unified
   make
   make test

Please report any problem you have.


tom@BKTKONOT002:~/Downloads/openssl$ ./config --unified Operating system: i686-whatever-linux2 Smartmatch is experimental at ./Configure line 2110. Smartmatch is experimental at ./Configure line 2110. Configuring for linux-elf Smartmatch is experimental at ./Configure line 2110. Configuring OpenSSL version 1.1.0-pre4-dev (0x0x10100004L)

   no-crypto-mdebug [default]  OPENSSL_NO_CRYPTO_MDEBUG (skip dir)
   no-crypto-mdebug-backtrace [forced]   OPENSSL_NO_CRYPTO_MDEBUG_BACKTRACE (skip dir)
   no-ec_nistp_64_gcc_128 [default]  OPENSSL_NO_EC_NISTP_64_GCC_128 (skip dir)
   no-egd          [default]  OPENSSL_NO_EGD (skip dir)
   no-heartbeats   [default]  OPENSSL_NO_HEARTBEATS (skip dir)
   no-md2          [default]  OPENSSL_NO_MD2 (skip dir)
   no-rc5          [default]  OPENSSL_NO_RC5 (skip dir)
   no-sctp         [default]  OPENSSL_NO_SCTP (skip dir)
   no-shared       [default] 
   no-ssl-trace    [default]  OPENSSL_NO_SSL_TRACE (skip dir)
   no-static-engine [default]  OPENSSL_NO_STATIC_ENGINE (skip dir)
   no-unit-test    [default]  OPENSSL_NO_UNIT_TEST (skip dir)
   no-zlib         [default] 
   no-zlib-dynamic [forced]  

Configuring for linux-elf IsMK1MF =no CC =gcc CFLAG =-Wall -O3 -pthread -DL_ENDIAN -fomit-frame-pointer -Wa,--noexecstack DEFINES =DSO_DLFCN HAVE_DLFCN_H OPENSSL_THREADS OPENSSL_NO_STATIC_ENGINE OPENSSL_PIC OPENSSL_BN_ASM_PART_WORDS OPENSSL_IA32_SSE2 OPENSSL_BN_ASM_MONT OPENSSL_BN_ASM_GF2m SHA1_ASM SHA256_ASM SHA512_ASM MD5_ASM RMD160_ASM AES_ASM VPAES_ASM WHIRLPOOL_ASM GHASH_ASM ECP_NISTZ256_ASM POLY1305_ASM LFLAG = PLIB_LFLAG = EX_LIBS =-ldl APPS_OBJ = CPUID_OBJ =x86cpuid.o UPLINK_OBJ = BN_ASM =bn-586.o co-586.o x86-mont.o x86-gf2m.o EC_ASM =ecp_nistz256.o ecp_nistz256-x86.o DES_ENC =des-586.o crypt586.o AES_ENC =aes-586.o vpaes-x86.o aesni-x86.o BF_ENC =bf-586.o CAST_ENC =c_enc.o RC4_ENC =rc4-586.o RC5_ENC =rc5-586.o MD5_OBJ_ASM =md5-586.o SHA1_OBJ_ASM =sha1-586.o sha256-586.o sha512-586.o RMD160_OBJ_ASM=rmd-586.o CMLL_ENC =cmll-x86.o MODES_OBJ =ghash-x86.o PADLOCK_OBJ =e_padlock-x86.o CHACHA_ENC =chacha-x86.o POLY1305_OBJ =poly1305-x86.o PROCESSOR = RANLIB =/usr/bin/ranlib ARFLAGS = PERL =/usr/bin/perl

THIRTY_TWO_BIT mode BN_LLONG mode

Configured for linux-elf. tom@BKTKONOT002:~/Downloads/openssl$ ls ACKNOWLEDGEMENTS configdata.pm engines INSTALL.NW Makefile.in README tools apps Configurations e_os.h INSTALL.OS2 Makefile.shared README.ECC util appveyor.yml Configure external INSTALL.VMS ms README.ENGINE VMS build.info CONTRIBUTING FAQ INSTALL.WCE Netware README.FIPS CHANGES crypto include INSTALL.WIN NEWS README.PERL config demos INSTALL LICENSE openssl.spec ssl config.com doc INSTALL.DJGPP Makefile os2 test tom@BKTKONOT002:~/Downloads/openssl$ tom@BKTKONOT002:~/Downloads/openssl$ make clean rm -f rm -f rm -f libcrypto.a libssl.a rm -f apps/openssl test/asynctest test/bftest test/bntest test/casttest test/clienthellotest test/constant_time_test test/ct_test test/danetest test/destest test/dhtest test/dsatest test/dtlsv1listentest test/ecdhtest test/ecdsatest test/ectest test/enginetest test/evp_extra_test test/evp_test test/exptest test/gmdifftest test/heartbeat_test test/hmactest test/ideatest test/igetest test/md2test test/md4test test/md5test test/mdc2test test/memleaktest test/nptest test/p5_crpt2_test test/packettest test/pbelutest test/randtest test/rc2test test/rc4test test/rc5test test/rmdtest test/rsa_test test/secmemtest test/sha1test test/sha256t test/sha512t test/srptest test/ssltest test/threadstest test/v3nametest test/verify_extra_test test/wp_test rm -f `find . -name '*.d'` rm -f `find . -name '*.o'` rm -f ./core rm -f ./tags ./TAGS rm -f ./openssl.pc ./libcrypto.pc ./libssl.pc rm -f `find . -type l` rm -f ../openssl-1.1.0-pre4-dev.tar tom@BKTKONOT002:~/Downloads/openssl$ mkdir ../_openssl-build_linux-elf tom@BKTKONOT002:~/Downloads/openssl$ cd ../_openssl-build_linux-elf tom@BKTKONOT002:~/Downloads/_openssl-build_linux-elf$ ../openssl/config --unified Operating system: i686-whatever-linux2 Smartmatch is experimental at ../openssl/Configure line 2110. Smartmatch is experimental at ../openssl/Configure line 2110. Configuring for linux-elf Smartmatch is experimental at ../openssl/Configure line 2110. Configuring OpenSSL version 1.1.0-pre4-dev (0x0x10100004L)

   no-crypto-mdebug [default]  OPENSSL_NO_CRYPTO_MDEBUG (skip dir)
   no-crypto-mdebug-backtrace [forced]   OPENSSL_NO_CRYPTO_MDEBUG_BACKTRACE (skip dir)
   no-ec_nistp_64_gcc_128 [default]  OPENSSL_NO_EC_NISTP_64_GCC_128 (skip dir)
   no-egd          [default]  OPENSSL_NO_EGD (skip dir)
   no-heartbeats   [default]  OPENSSL_NO_HEARTBEATS (skip dir)
   no-md2          [default]  OPENSSL_NO_MD2 (skip dir)
   no-rc5          [default]  OPENSSL_NO_RC5 (skip dir)
   no-sctp         [default]  OPENSSL_NO_SCTP (skip dir)
   no-shared       [default] 
   no-ssl-trace    [default]  OPENSSL_NO_SSL_TRACE (skip dir)
   no-static-engine [default]  OPENSSL_NO_STATIC_ENGINE (skip dir)
   no-unit-test    [default]  OPENSSL_NO_UNIT_TEST (skip dir)
   no-zlib         [default] 
   no-zlib-dynamic [forced]  

Configuring for linux-elf IsMK1MF =no CC =gcc CFLAG =-Wall -O3 -pthread -DL_ENDIAN -fomit-frame-pointer -Wa,--noexecstack DEFINES =DSO_DLFCN HAVE_DLFCN_H OPENSSL_THREADS OPENSSL_NO_STATIC_ENGINE OPENSSL_PIC OPENSSL_BN_ASM_PART_WORDS OPENSSL_IA32_SSE2 OPENSSL_BN_ASM_MONT OPENSSL_BN_ASM_GF2m SHA1_ASM SHA256_ASM SHA512_ASM MD5_ASM RMD160_ASM AES_ASM VPAES_ASM WHIRLPOOL_ASM GHASH_ASM ECP_NISTZ256_ASM POLY1305_ASM LFLAG = PLIB_LFLAG = EX_LIBS =-ldl APPS_OBJ = CPUID_OBJ =x86cpuid.o UPLINK_OBJ = BN_ASM =bn-586.o co-586.o x86-mont.o x86-gf2m.o EC_ASM =ecp_nistz256.o ecp_nistz256-x86.o DES_ENC =des-586.o crypt586.o AES_ENC =aes-586.o vpaes-x86.o aesni-x86.o BF_ENC =bf-586.o CAST_ENC =c_enc.o RC4_ENC =rc4-586.o RC5_ENC =rc5-586.o MD5_OBJ_ASM =md5-586.o SHA1_OBJ_ASM =sha1-586.o sha256-586.o sha512-586.o RMD160_OBJ_ASM=rmd-586.o CMLL_ENC =cmll-x86.o MODES_OBJ =ghash-x86.o PADLOCK_OBJ =e_padlock-x86.o CHACHA_ENC =chacha-x86.o POLY1305_OBJ =poly1305-x86.o PROCESSOR = RANLIB =/usr/bin/ranlib ARFLAGS = PERL =/usr/bin/perl

THIRTY_TWO_BIT mode BN_LLONG mode

Configured for linux-elf. tom@BKTKONOT002:~/Downloads/_openssl-build_linux-elf$ make\ > make: *** No rule to make target 'libcrypto.pc', needed by 'build_libs_nodep'. Stop. tom@BKTKONOT002:~/Downloads/_openssl-build_linux-elf$ make make: *** No rule to make target 'libcrypto.pc', needed by 'build_libs_nodep'. Stop. tom@BKTKONOT002:~/Downloads/_openssl-build_linux-elf$ dpkg-buildpackage -us -uc tail: cannot open ‘debian/changelog’ for reading: No such file or directory dpkg-buildpackage: error: tail of debian/changelog gave error exit status 1 tom@BKTKONOT002:~/Downloads/_openssl-build_linux-elf$ locate libcrypto /lib/i386-linux-gnu/libcrypto.so.1.0.0 tom@BKTKONOT002:~/Downloads/_openssl-build_linux-elf$ apt-get build-dep libcrypto E: Could not open lock file /var/lib/dpkg/lock - open (13: Permission denied) E: Unable to lock the administration directory (/var/lib/dpkg/), are you root? tom@BKTKONOT002:~/Downloads/_openssl-build_linux-elf$ sudo apt-get build-dep libcrypto [sudo] password for tom: Reading package lists... Done Building dependency tree Reading state information... Done E: Unable to find a source package for libcrypto tom@BKTKONOT002:~/Downloads/_openssl-build_linux-elf$ sudo apt-get build-dep openssl Reading package lists... Done Building dependency tree Reading state information... Done The following NEW packages will be installed:

 debhelper libsigsegv2 m4 po-debconf

0 upgraded, 4 newly installed, 0 to remove and 7 not upgraded. Need to get 1,170 kB of archives. After this operation, 2,183 kB of additional disk space will be used. Do you want to continue? [Y/n] y Get:1 http://hk.archive.ubuntu.com/ubuntu/ wily/main libsigsegv2 i386 2.10-4 [14.0 kB] Get:2 http://hk.archive.ubuntu.com/ubuntu/ wily/main po-debconf all 1.0.18 [234 kB] Get:3 http://hk.archive.ubuntu.com/ubuntu/ wily/main debhelper all 9.20150811ubuntu2 [732 kB] Get:4 http://hk.archive.ubuntu.com/ubuntu/ wily/main m4 i386 1.4.17-4 [190 kB] Fetched 1,170 kB in 0s (2,070 kB/s) Selecting previously unselected package libsigsegv2:i386. (Reading database ... 179391 files and directories currently installed.) Preparing to unpack .../libsigsegv2_2.10-4_i386.deb ... Unpacking libsigsegv2:i386 (2.10-4) ... Selecting previously unselected package po-debconf. Preparing to unpack .../po-debconf_1.0.18_all.deb ... Unpacking po-debconf (1.0.18) ... Selecting previously unselected package debhelper. Preparing to unpack .../debhelper_9.20150811ubuntu2_all.deb ... Unpacking debhelper (9.20150811ubuntu2) ... Selecting previously unselected package m4. Preparing to unpack .../archives/m4_1.4.17-4_i386.deb ... Unpacking m4 (1.4.17-4) ... Processing triggers for man-db (2.7.4-1) ... Processing triggers for doc-base (0.10.6) ... Processing 1 added doc-base file... Processing triggers for install-info (6.0.0.dfsg.1-3) ... Setting up libsigsegv2:i386 (2.10-4) ... Setting up po-debconf (1.0.18) ... Setting up debhelper (9.20150811ubuntu2) ... Setting up m4 (1.4.17-4) ... Processing triggers for libc-bin (2.21-0ubuntu4.1) ... tom@BKTKONOT002:~/Downloads/_openssl-build_linux-elf$ make make: *** No rule to make target 'libcrypto.pc', needed by 'build_libs_nodep'. Stop. tom@BKTKONOT002:~/Downloads/_openssl-build_linux-elf$ ../openssl/config --unified Operating system: i686-whatever-linux2 Smartmatch is experimental at ../openssl/Configure line 2110. Smartmatch is experimental at ../openssl/Configure line 2110. Configuring for linux-elf Smartmatch is experimental at ../openssl/Configure line 2110. Configuring OpenSSL version 1.1.0-pre4-dev (0x0x10100004L)

   no-crypto-mdebug [default]  OPENSSL_NO_CRYPTO_MDEBUG (skip dir)
   no-crypto-mdebug-backtrace [forced]   OPENSSL_NO_CRYPTO_MDEBUG_BACKTRACE (skip dir)
   no-ec_nistp_64_gcc_128 [default]  OPENSSL_NO_EC_NISTP_64_GCC_128 (skip dir)
   no-egd          [default]  OPENSSL_NO_EGD (skip dir)
   no-heartbeats   [default]  OPENSSL_NO_HEARTBEATS (skip dir)
   no-md2          [default]  OPENSSL_NO_MD2 (skip dir)
   no-rc5          [default]  OPENSSL_NO_RC5 (skip dir)
   no-sctp         [default]  OPENSSL_NO_SCTP (skip dir)
   no-shared       [default] 
   no-ssl-trace    [default]  OPENSSL_NO_SSL_TRACE (skip dir)
   no-static-engine [default]  OPENSSL_NO_STATIC_ENGINE (skip dir)
   no-unit-test    [default]  OPENSSL_NO_UNIT_TEST (skip dir)
   no-zlib         [default] 
   no-zlib-dynamic [forced]  

Configuring for linux-elf IsMK1MF =no CC =gcc CFLAG =-Wall -O3 -pthread -DL_ENDIAN -fomit-frame-pointer -Wa,--noexecstack DEFINES =DSO_DLFCN HAVE_DLFCN_H OPENSSL_THREADS OPENSSL_NO_STATIC_ENGINE OPENSSL_PIC OPENSSL_BN_ASM_PART_WORDS OPENSSL_IA32_SSE2 OPENSSL_BN_ASM_MONT OPENSSL_BN_ASM_GF2m SHA1_ASM SHA256_ASM SHA512_ASM MD5_ASM RMD160_ASM AES_ASM VPAES_ASM WHIRLPOOL_ASM GHASH_ASM ECP_NISTZ256_ASM POLY1305_ASM LFLAG = PLIB_LFLAG = EX_LIBS =-ldl APPS_OBJ = CPUID_OBJ =x86cpuid.o UPLINK_OBJ = BN_ASM =bn-586.o co-586.o x86-mont.o x86-gf2m.o EC_ASM =ecp_nistz256.o ecp_nistz256-x86.o DES_ENC =des-586.o crypt586.o AES_ENC =aes-586.o vpaes-x86.o aesni-x86.o BF_ENC =bf-586.o CAST_ENC =c_enc.o RC4_ENC =rc4-586.o RC5_ENC =rc5-586.o MD5_OBJ_ASM =md5-586.o SHA1_OBJ_ASM =sha1-586.o sha256-586.o sha512-586.o RMD160_OBJ_ASM=rmd-586.o CMLL_ENC =cmll-x86.o MODES_OBJ =ghash-x86.o PADLOCK_OBJ =e_padlock-x86.o CHACHA_ENC =chacha-x86.o POLY1305_OBJ =poly1305-x86.o PROCESSOR = RANLIB =/usr/bin/ranlib ARFLAGS = PERL =/usr/bin/perl

THIRTY_TWO_BIT mode BN_LLONG mode

Configured for linux-elf. tom@BKTKONOT002:~/Downloads/_openssl-build_linux-elf$ make make: *** No rule to make target 'libcrypto.pc', needed by 'build_libs_nodep'. Stop. tom@BKTKONOT002:~/Downloads/_openssl-build_linux-elf$ autoconf The program 'autoconf' can be found in the following packages:

* autoconf
* autoconf2.13

Try: sudo apt-get install <selected package> tom@BKTKONOT002:~/Downloads/_openssl-build_linux-elf$

Si osou[]

  • Comparison of TLS implementations
  • POSSE project
  • wolfSSL
  • MatrixSSL

Riförènses[]

  1. 1.0 1.1 Yadron, Danny (11 April 2014). "Internet Security Relies on Very Few". WSJ.com. Archived from the original. You must specify the date the archive was made using the |archivedate= parameter. http://online.wsj.com/news/articles/SB20001424052702303873604579495362672447986?mg=reno64-wsj&url=http%3A%2F%2Fonline.wsj.com%2Farticle%2FSB20001424052702303873604579495362672447986.html. Ritrīven on 14 April 2014. 
  2. "Critical crypto bug in OpenSSL opens two-thirds of the Web to eavesdropping". Archived from the original. You must specify the date the archive was made using the |archivedate= parameter. http://arstechnica.com/security/2014/04/critical-crypto-bug-in-openssl-opens-two-thirds-of-the-web-to-eavesdropping/. 
  3. "OpenSSL – Changelog". OpenSSL Software Foundation. Archived from the original. You must specify the date the archive was made using the |archivedate= parameter. https://www.openssl.org/news/changelog.html. Ritrīven on 17 September 2015. 
  4. "OpenSSL – Release Strategy". OpenSSL Software Foundation. Archived from the original. You must specify the date the archive was made using the |archivedate= parameter. https://www.openssl.org/policies/releasestrat.html. Ritrīven on 17 September 2015. 
  5. "OpenSSL 1.1.0 Series Release Notes". Archived from the original. You must specify the date the archive was made using the |archivedate= parameter. https://www.openssl.org/news/openssl-1.1.0-notes.html. Ritrīven on 2015-12-10. 
  6. 6.0 6.1 6.2 "GOST engine OpenSSL 1.0.0 README". cvs.openssl.org. Archived from the original. You must specify the date the archive was made using the |archivedate= parameter. http://cvs.openssl.org/fileview?f=openssl/engines/ccgost/README.gost. 
  7. "Protecting data for the long term with forward secrecy". Archived from the original. You must specify the date the archive was made using the |archivedate= parameter. http://googleonlinesecurity.blogspot.com.au/2011/11/protecting-data-for-long-term-with.html. Ritrīven on 2012-11-05. 
  8. Validated FIPS 140-1 and FIPS 140-2 Cryptographic Modules. NIST. Retrieved 2012-12-19.
  9. "Important Notes about OpenSSL and FIPS 140-2". openssl.org. Archived from the original. You must specify the date the archive was made using the |archivedate= parameter. https://www.openssl.org/docs/fips/fipsnotes.html. 
  10. "NIST recertifies open source encryption module". gcn.com. Archived from the original. You must specify the date the archive was made using the |archivedate= parameter. http://www.gcn.com/online/vol1_no1/43142-1.html. 
  11. "OpenSSL: Source, License". openssl.org. Archived from the original. You must specify the date the archive was made using the |archivedate= parameter. https://www.openssl.org/source/license.html. 
  12. "Licenses – Free Software Foundation". fsf.org. Archived from the original. You must specify the date the archive was made using the |archivedate= parameter. http://www.fsf.org/licensing/licenses. 
  13. "WGET 1.10.2 for Windows (win32)". users.ugent.be. Archived from the original. You must specify the date the archive was made using the |archivedate= parameter. http://users.ugent.be/~bpuype/wget. 
  14. "Releases of source and binaries". climm.org. Archived from the original. You must specify the date the archive was made using the |archivedate= parameter. http://www.climm.org/download.shtml.en. Ritrīven on 30 November 2010. 
  15. "Deluge LICENSE file". deluge-torrent.org. Archived from the original. You must specify the date the archive was made using the |archivedate= parameter. http://git.deluge-torrent.org/deluge/plain/LICENSE. Ritrīven on 24 January 2013. 
  16. Salz, Rich (1 August 2015). "License Agreements and Changes Are Coming". Archived from the original. You must specify the date the archive was made using the |archivedate= parameter. https://www.openssl.org/blog/blog/2015/08/01/cla/. Ritrīven on 23 August 2015. 
  17. "OpenSSL Updates Fix Critical Security Vulnerabilities [09 Aug 2014"]. Archived from the original. You must specify the date the archive was made using the |archivedate= parameter. https://blogs.comodo.com/it-security/openssl-updates-fix-critical-security-vulnerabilities/. Ritrīven on 25 Aug 2014. 
  18. "ASN1 BIO vulnerability". OpenSSL. Archived from the original. You must specify the date the archive was made using the |archivedate= parameter. https://www.openssl.org/news/secadv_20120419.txt. 
  19. Template:CVS
  20. "research!rsc: Lessons from the Debian/OpenSSL Fiasco". Archived from the original. You must specify the date the archive was made using the |archivedate= parameter. http://research.swtch.com/openssl. Ritrīven on 2015-08-12. 
  21. "SSLkeys - Debian Wiki". Archived from the original. You must specify the date the archive was made using the |archivedate= parameter. https://wiki.debian.org/SSLkeys. Ritrīven on 2015-06-19. 
  22. "Debian OpenSSLTemplate:Snd Predictable PRNG Bruteforce SSH Exploit PythonTemplate:Snd Exploits Database". Archived from the original. You must specify the date the archive was made using the |archivedate= parameter. https://www.exploit-db.com/exploits/5720/. Ritrīven on 2015-08-12. 
  23. "DSA-1571-1 openssl – predictable random number generator". Debian. May 13, 2008. Archived from the original. You must specify the date the archive was made using the |archivedate= parameter. http://www.debian.org/security/2008/dsa-1571. 
  24. OpenSSL.org (7 April 2014). "OpenSSL Security Advisory [07 Apr 2014"]. Archived from the original. You must specify the date the archive was made using the |archivedate= parameter. https://www.openssl.org/news/secadv_20140407.txt. Ritrīven on 9 April 2014. 
  25. OpenSSL (2014-04-07). "TLS heartbeat read overrun (CVE-2014-0160)". Archived from the original. You must specify the date the archive was made using the |archivedate= parameter. https://www.openssl.org/news/secadv_20140407.txt. Ritrīven on 2014-04-08. 
  26. Codenomicon Ltd (2014-04-08). "Heartbleed Bug". Archived from the original. You must specify the date the archive was made using the |archivedate= parameter. http://heartbleed.com/. Ritrīven on 2014-04-08. 
  27. "Man in Middle Attacks [04 Jun 2014"]. Archived from the original. You must specify the date the archive was made using the |archivedate= parameter. https://blogs.comodo.com/it-security/openssl-vulnerability-exploited-man-middle-attacks/. Ritrīven on 25 Aug 2014. 
  28. "Why Heartbleed is dangerous? Exploiting CVE-2014-0160". IPSec.pl. 2014. Archived from the original. You must specify the date the archive was made using the |archivedate= parameter. http://ipsec.pl/ssl-tls/2014/why-heartbleed-dangerous-exploiting-cve-2014-0160.html. 
  29. Mutton, Paul (8 April 2014). "Half a million widely trusted websites vulnerable to Heartbleed bug". Netcraft Ltd.. Archived from the original. You must specify the date the archive was made using the |archivedate= parameter. http://news.netcraft.com/archives/2014/04/08/half-a-million-widely-trusted-websites-vulnerable-to-heartbleed-bug.html. Ritrīven on 8 April 2014. 
  30. "OpenSSL continues to bleed out more flaws – more critical vulnerabilities found". Cyberoam Threat Research Labs. 2014. Archived from the original. You must specify the date the archive was made using the |archivedate= parameter. http://www.cyberoam.com/blog/openssl-continues-to-bleed-out-more-flaws-more-critical-vulnerabilities-found/. 
  31. "CVE-2014-0224". CVE. 2014. Archived from the original. You must specify the date the archive was made using the |archivedate= parameter. https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2014-0224. 
  32. "OpenSSL Security Advisory [05 Jun 2014"]. OpenSSL. 2014. Archived from the original. You must specify the date the archive was made using the |archivedate= parameter. https://www.openssl.org/news/secadv_20140605.txt. 
  33. "OpenSSL Patches Severe Denial-of-Service Vulnerability [20 March 2015"]. Brandon Stosh. 2015. Archived from the original. You must specify the date the archive was made using the |archivedate= parameter. http://freedomhacker.net/openssl-patches-severe-denial-of-service-vulnerability-3818/. 
  34. "security/assl: assl-1.5.0p0v0 – hide awful SSL API in a sane interface". OpenBSD ports. 2014-05-22. Archived from the original. You must specify the date the archive was made using the |archivedate= parameter. http://ports.su/security/assl. Ritrīven on 2015-02-10. 
  35. "OpenBSD has started a massive strip-down and cleanup of OpenSSL". OpenBSD journal. 2014-04-15. Archived from the original. You must specify the date the archive was made using the |archivedate= parameter. http://www.undeadly.org/cgi?action=article&sid=20140415093252&mode=expanded. 
  36. "OpenBSD forks, prunes, fixes OpenSSL". ZDNet. 21 April 2014. Archived from the original. You must specify the date the archive was made using the |archivedate= parameter. http://www.zdnet.com/openbsd-forks-prunes-fixes-openssl-7000028613/. Ritrīven on 21 April 2014. 
  37. "Google unveils independent 'fork' of OpenSSL called 'BoringSSL'". Ars Technica. 2014-06-21. Archived from the original. You must specify the date the archive was made using the |archivedate= parameter. http://arstechnica.com/security/2014/06/google-unveils-independent-fork-of-openssl-called-boringssl/. 
  38. "BoringSSL". Adam Langley's Weblog. 2014-06-20. Archived from the original. You must specify the date the archive was made using the |archivedate= parameter. https://www.imperialviolet.org/2014/06/20/boringssl.html. 

Ikstörnol liŋks[]

Commons-logo
Wikimedia Commons has media related to:

Template:Cryptographic software Template:SSL/TLS

Advertisement