minisketch
minisketch copied to clipboard
Minisketch: an optimized library for BCH-based set reconciliation
This PR adds a new CMake-based build system, which can be reused in downstream projects, including Bitcoin Core. Also an MSVC CI task has been added per [feedback](https://github.com/sipa/minisketch/pull/72#issuecomment-1283049075). Autotools vs...
At the moment the `__builtin_clz*` compile down to `bsrq` on x86_64. Compiling with `-mlzcnt` wires up the actual instruction. `CountBits` without `-mlzcnt`: ```asm _Z9CountBitsmi: .LFB189: .cfi_startproc endbr64 xorl %eax, %eax...
A part of https://github.com/bitcoin/bitcoin/pull/23810
A build system is Ubuntu 22.04: ``` $ g++ --version g++ (Ubuntu 11.2.0-19ubuntu1) 11.2.0 Copyright (C) 2021 Free Software Foundation, Inc. This is free software; see the source for copying...
I am wondering how I can extend Minisketch to support 96 bits. Maybe you can help me understand what are the SQR_TABLE, the QRT_TABLE, the typedef RecLinTrans and how to...
Fixes #25 - Added reference to Erlay paper in addition to references to BIP 330 and Rusty mailing list post on possible Lightning application - Made sure the reference numbers...
The linear mapping tables for squaring/squarerooting/solving x^2+x+a/converting between field representations are currently all encoded very compactly in the C++ code, and get expanded at compile time (through `constexpr`) into full...