Bitcoin Forum
November 19, 2024, 11:45:48 AM *
News: Latest Bitcoin Core release: 28.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: ECDSA dropped out of openssl 1.0.0b?  (Read 7905 times)
marcus_of_augustus (OP)
Legendary
*
Offline Offline

Activity: 3920
Merit: 2349


Eadem mutata resurgo


View Profile
May 23, 2011, 09:05:26 AM
Last edit: May 23, 2011, 08:57:00 PM by minute_of_angle
 #1

Code:
$ make -f makefile.unix bitcoind
g++ -c -O2 -Wno-invalid-offsetof -Wformat -g -D__WXDEBUG__ -DNOPCH -DFOURWAYSSE2 -DUSE_SSL -DUSE_UPNP=0 -o obj/nogui/util.o util.cpp
In file included from util.cpp:4:
headers.h:38:27: error: openssl/ecdsa.h: No such file or directory

Code:
$ openssl version
OpenSSL 1.0.0b-fips 16 Nov 2010

Soooo, no ecdsa.h included with  openssl 1.0.0b.

Do I need to ruin my repository 'adhering' linux just to build bitcoin?

What gives here?

theymos
Administrator
Legendary
*
Offline Offline

Activity: 5390
Merit: 13427


View Profile
May 23, 2011, 09:28:21 AM
 #2

OpenSSL 1.0.0b does have ECDSA. You're using some modified version. A few distros remove ECDSA due to (overblown) patent concerns.

1NXYoJ5xU91Jp83XfVMHwwTUyZFK64BoAD
error
Hero Member
*****
Offline Offline

Activity: 588
Merit: 500



View Profile
May 23, 2011, 09:28:49 AM
 #3

Don't build bitcoin on a Red Hat derived system. Red Hat strips all the ECC stuff out of OpenSSL.

3KzNGwzRZ6SimWuFAgh4TnXzHpruHMZmV8
marcus_of_augustus (OP)
Legendary
*
Offline Offline

Activity: 3920
Merit: 2349


Eadem mutata resurgo


View Profile
May 23, 2011, 09:35:46 AM
 #4


What if I like Redhat or CentOS?

Bitcoin just cannot be built cleanly on them without a protracted battle with repository nazis or jacking your system (think SElinux scrap)?

Basically, I'm SOOL if I want to build "officially" on anything RH derived is what you are saying, right?

ribuck
Donator
Hero Member
*
Offline Offline

Activity: 826
Merit: 1060


View Profile
May 23, 2011, 11:36:27 AM
 #5

What if I like Redhat or CentOS?
Just install OpenSSL from a tarball (from http://www.openssl.org/source/ ) instead of from the repository. You may also have to link the static libraries libssl.a and libcrypto.a into /usr/lib
marcus_of_augustus (OP)
Legendary
*
Offline Offline

Activity: 3920
Merit: 2349


Eadem mutata resurgo


View Profile
May 23, 2011, 12:41:32 PM
 #6

What if I like Redhat or CentOS?
Just install OpenSSL from a tarball (from http://www.openssl.org/source/ ) instead of from the repository. You may also have to link the static libraries libssl.a and libcrypto.a into /usr/lib

Have you actually done this or are you saying "this could be done"?

theymos
Administrator
Legendary
*
Offline Offline

Activity: 5390
Merit: 13427


View Profile
May 23, 2011, 06:30:29 PM
 #7

OpenSSL is an easy compile. You can just prefix it somewhere and use that version for Bitcoin only. I used to do this when my system's OpenSSL was the wrong version.

1NXYoJ5xU91Jp83XfVMHwwTUyZFK64BoAD
error
Hero Member
*****
Offline Offline

Activity: 588
Merit: 500



View Profile
May 23, 2011, 07:32:08 PM
 #8

Right. The "official" Bitcoin binary builds have OpenSSL statically linked in (or they'd fail spectacularly on a Red Hat box). Just do the same yourself.

3KzNGwzRZ6SimWuFAgh4TnXzHpruHMZmV8
xf2_org
Member
**
Offline Offline

Activity: 98
Merit: 13


View Profile
May 23, 2011, 08:38:58 PM
 #9

Fedora / RHEL / derivatives have EC removed for patent related reasons (one reason why I refuse to distribute a bitcoin binary to anyone, for any reason).

It is trivial to compile and install openssl yourself, then build bitcoin.  I run Fedora 14, as do many others on the forums/IRC, and use this solution without a problem.

marcus_of_augustus (OP)
Legendary
*
Offline Offline

Activity: 3920
Merit: 2349


Eadem mutata resurgo


View Profile
May 23, 2011, 08:58:51 PM
 #10


Messy.

bittrader
Jr. Member
*
Offline Offline

Activity: 42
Merit: 1



View Profile
May 24, 2011, 02:15:39 AM
 #11

Some instructions for building OpenSSL on CentOS 5.5 for use with Bitcoin are here: http://www.staff.tugraz.at/michael.steurer/Bitcoin-CentOS5.5-V1.pdf

It's pretty straightforward. One small part of the guide is incorrect though. It tells you to run something like this:

Code:
$ ./Configure --prefix=~/Bitcoin/Deps --openssldir=~/Bitcoin/Deps/openssl linux-x86_64

when actually you need this:

Code:
$ ./Configure --prefix=~/Bitcoin/Deps --openssldir=/openssl linux-x86_64
yogi
Legendary
*
Offline Offline

Activity: 947
Merit: 1042


Hamster ate my bitcoin


View Profile
June 26, 2012, 05:14:46 PM
 #12


This is also true for 32bit configure.

This:

Code:
$ ./Configure --prefix=~/Bitcoin/Deps --openssldir=~/Bitcoin/Deps/openssl linux-generic32

Needs to be this:

Code:
$ ./Configure --prefix=~/Bitcoin/Deps --openssldir=/openssl linux-generic32

jgarzik
Legendary
*
Offline Offline

Activity: 1596
Merit: 1100


View Profile
June 26, 2012, 05:39:39 PM
 #13


The preferred "fixes" for Red Hat, CentOS, Fedora systems are, if you want to do it yourself,

1) Download SRPM

2) Download associated source code from openssl.org

3) Edit SPECS/openssl.spec,
a) replacing source tarball filename with the downloaded one
b) comment out all references to source1
c) remove the "no-ec" stuff from the configure line

4) rebuild with "rpmbuild -ba SPECS/openssl.spec" or similar

5) install build rpms found in RPMS/


Jeff Garzik, Bloq CEO, former bitcoin core dev team; opinions are my own.
Visit bloq.com / metronome.io
Donations / tip jar: 1BrufViLKnSWtuWGkryPsKsxonV2NQ7Tcj
gmaxwell
Staff
Legendary
*
Offline Offline

Activity: 4284
Merit: 8808



View Profile WWW
July 02, 2012, 02:54:15 AM
 #14


The preferred "fixes" for Red Hat, CentOS, Fedora systems are, if you want to do it yourself,

I maintain modified openssl Fedora rpm's for my own use:

https://people.xiph.org/~greg/openssl/

Perhaps some other people might find them useful, either outright or just the spec file changes.
marcus_of_augustus (OP)
Legendary
*
Offline Offline

Activity: 3920
Merit: 2349


Eadem mutata resurgo


View Profile
July 02, 2012, 06:51:30 AM
 #15


The preferred "fixes" for Red Hat, CentOS, Fedora systems are, if you want to do it yourself,

I maintain modified openssl Fedora rpm's for my own use:

https://people.xiph.org/~greg/openssl/

Perhaps some other people might find them useful, either outright or just the spec file changes.

You missed out on the bounty ... https://bitcointalk.org/index.php?topic=85228.0

Pages: [1]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!