fanquake
commented at 2:14 pm on October 26, 2019:
member
Now that #17165 has been merged, removing our remaining OpenSSL usage is possible.
That remaining usage was a call to RAND_bytes during the ::SLOW path of ProcRand. As well as feeding output from our RNG back into OpenSSL via RAND_add during the ::SLOW and ::SLEEP paths.
Optimistically tagged for 0.20.0. Needs discussion, potentially in an upcoming weekly meeting?
If you consider this pull request important, please also help to review the conflicting pull requests. Ideally, start with the one that should be merged first.
sipa
commented at 7:46 pm on October 26, 2019:
member
I think we wanted to include some of the environmental entropy sources (statistics, pid, …) that OpenSSL uses in our own RNG state first. See #10299. I’ll PR something soon.
promag
commented at 7:48 pm on October 26, 2019:
member
Concept ACK.
BlockMechanic
commented at 7:22 am on October 27, 2019:
contributor
Concept ACK.
I recently ran into openssl issues here #17123, this is awesome !
laanwj
commented at 9:55 am on October 27, 2019:
member
Concept and code review ACK, agree that we should ideally get #17270 in first.
practicalswift
commented at 10:02 pm on October 27, 2019:
contributor
Concept ACK
Very pleased to see OpenSSL go :)
fanquake force-pushed
on Oct 28, 2019
fanquake renamed this:
[WIP] Remove OpenSSL
Remove OpenSSL
on Oct 28, 2019
fanquake removed the label
Needs Conceptual Review
on Oct 28, 2019
fanquake
commented at 1:10 pm on October 28, 2019:
member
Fixed doc nit above and squashed some commits together. This is waiting on #17270.
Sjors
commented at 3:47 pm on October 29, 2019:
member
jamesob
commented at 4:03 pm on October 29, 2019:
member
big Concept ACK
fanquake force-pushed
on Nov 2, 2019
random: stop feeding RNG output back into OpenSSL
On the ::SLOW or ::SLEEP paths, we would feed our RNG output back into
OpenSSL using RAND_add. This commit removes that functionality.
RAND_add(): https://www.openssl.org/docs/manmaster/man3/RAND_add.html
RAND_add() mixes the num bytes at buf into the internal state of the
random generator. This function will not normally be needed, as
mentioned above. The randomness argument is an estimate of how much
randomness is contained in buf, in bytes, and should be a number
between zero and num.
5624ab0b4f
random: stop retrieving random bytes from OpenSSL
On the ::SLOW path we would use OpenSSL as an additional source of
random bytes. This commit removes that functionality. Note that this was
always only an additional source, and that we never checked the return
value
RAND_bytes(): https://www.openssl.org/docs/manmaster/man3/RAND_bytes.html
RAND_bytes() puts num cryptographically strong pseudo-random bytes into buf.
4fcfcc294e
random: Remove remaining OpenSSL calls and locking infrastructureb49b6b0f70
build: remove OpenSSL detection and libs8983ee3e6d
depends: remove OpenSSL package648b2e3c32
doc: remove OpenSSL from build instructions and licensing infoa4eb839619
ci: remove OpenSSL installation397dbae070
doc: add OpenSSL removal to release-notes.mde5a0bece6e
fanquake force-pushed
on Nov 18, 2019
fanquake marked this as ready for review
on Nov 18, 2019
fanquake removed the label
Needs release note
on Nov 18, 2019
fanquake added the label
Build system
on Nov 18, 2019
fanquake added the label
Utils/log/libs
on Nov 18, 2019
MarcoFalke added the label
Needs gitian build
on Nov 18, 2019
MarcoFalke
commented at 3:45 pm on November 18, 2019:
member
ACKe5a0bece6e84402fcb1fe4f25fd24da1d21ec077
DrahtBot
commented at 0:32 am on November 19, 2019:
member
DrahtBot removed the label
Needs gitian build
on Nov 19, 2019
laanwj
commented at 8:25 am on November 19, 2019:
member
ACKe5a0bece6e84402fcb1fe4f25fd24da1d21ec077
laanwj referenced this in commit
2065ef66ee
on Nov 19, 2019
laanwj merged this
on Nov 19, 2019
laanwj closed this
on Nov 19, 2019
fanquake deleted the branch
on Nov 19, 2019
sidhujag
commented at 3:18 pm on November 19, 2019:
none
concept ACK, is libsecp256k1 going to remove OpenSSL as well? It uses $CRYPTO_CFLAGS
sidhujag referenced this in commit
517bf47683
on Nov 19, 2019
fanquake referenced this in commit
b4a1da9ef8
on Nov 19, 2019
sipa
commented at 4:41 pm on November 19, 2019:
member
@sidhujag libsecp256k1 only uses OpenSSL as an optional dependency in tests. This may change in the future, but the same reasons really don’t apply.
sidhujag referenced this in commit
8acd6757e7
on Nov 19, 2019
laanwj
commented at 10:11 am on November 20, 2019:
member
it doesn’t affect any of the bitcoin core binaries, so it’s off topic here. Please take your question upstream.
(That said, cross-checking against other libs is generally a good idea for cryptographic libraries.)
fanquake referenced this in commit
b07b2a9887
on Jan 10, 2020
fanquake referenced this in commit
6fe72fef8a
on Jan 10, 2020
fanquake referenced this in commit
0ee3961ccd
on Jan 11, 2020
cdecker referenced this in commit
46f879d73f
on Jan 12, 2020
deadalnix referenced this in commit
8d6b4a37ad
on May 25, 2020
deadalnix referenced this in commit
1092598e82
on May 25, 2020
deadalnix referenced this in commit
ea9e88b8c6
on May 25, 2020
RdeWilde
commented at 4:05 am on July 26, 2020:
none
Great 👌🏼
ftrader referenced this in commit
7e5daea9ee
on Aug 17, 2020
zkbot referenced this in commit
5bea6d806f
on Sep 23, 2020
zkbot referenced this in commit
8777d2884e
on Sep 29, 2020
zkbot referenced this in commit
b5fa52b701
on Oct 1, 2020
sidhujag referenced this in commit
8d83aefe28
on Nov 10, 2020
sidhujag referenced this in commit
c1d569169a
on Nov 10, 2020
furszy referenced this in commit
086fc30d75
on May 12, 2021
This is a metadata mirror of the GitHub repository
bitcoin/bitcoin.
This site is not affiliated with GitHub.
Content is generated from a GitHub metadata backup.
generated: 2025-05-06 03:13 UTC
This site is hosted by @0xB10C More mirrored repositories can be found on mirror.b10c.me