mirror of mkp224o for onion v3 vanity addresses in case of takedowns
Go to file
2019-05-14 20:29:27 +03:00
ed25519 explicit void params declarations, add warnings to keep it correct 2019-05-14 20:29:27 +03:00
.gitattributes .gitattributes: make sure *.h *.c are detected as C 2018-10-28 22:43:51 -05:00
.gitignore remove irrelevant gitignore line 2018-05-15 05:56:02 +00:00
autogen.sh add amd64-{51-30k,64-24k} from SUPERCOP, now use autoconf 2017-09-27 02:35:56 +03:00
base16_from.c some more explicitness 2018-02-23 00:11:20 +00:00
base16_to.c init 2017-09-24 22:13:16 +03:00
base16.h improvements all over the place 2017-09-25 20:49:47 +03:00
base32_from.c some more explicitness 2018-02-23 00:11:20 +00:00
base32_to.c improvements all over the place 2017-09-25 20:49:47 +03:00
base32.h harden pseudo-YAML validation 2018-07-12 12:11:44 +00:00
base64_from.c stronger base64 validation 2018-07-12 11:56:43 +00:00
base64_to.c optional functionality for writing results to the single file and extracting specific keys from it 2018-07-06 13:16:48 +03:00
base64.h split worker off 2019-03-16 21:57:29 +02:00
common.h cleanups, make clang happy 2019-03-15 21:04:40 +00:00
configure.ac explicit void params declarations, add warnings to keep it correct 2019-05-14 20:29:27 +03:00
COPYING.txt README & COPYING 2017-09-25 22:22:07 +03:00
cpucount.c glibc isn't limited to linux 2019-03-31 19:26:53 +00:00
cpucount.h explicit void declaration, remove unused arg. thanks ccomp 2017-10-23 02:15:23 +00:00
filters_common.inc.h split worker off 2019-03-16 21:57:29 +02:00
filters_main.inc.h split worker off 2019-03-16 21:57:29 +02:00
filters_worker.inc.h split worker off 2019-03-16 21:57:29 +02:00
filters.h explicit void params declarations, add warnings to keep it correct 2019-05-14 20:29:27 +03:00
hex.h add numwords functionality 2017-10-22 05:07:45 +00:00
ioutil.c some more explicitness 2018-02-23 00:11:20 +00:00
ioutil.h attempt to support windows 2018-02-22 00:35:58 +00:00
keccak.c explicit void declaration, remove unused arg. thanks ccomp 2017-10-23 02:15:23 +00:00
keccak.h explicit void declaration, remove unused arg. thanks ccomp 2017-10-23 02:15:23 +00:00
likely.h some fixes and optimizations 2017-09-27 21:38:15 +03:00
main.c explicit void params declarations, add warnings to keep it correct 2019-05-14 20:29:27 +03:00
Makefile.in oops forgot 2019-03-31 23:26:26 +03:00
OPTIMISATION.txt s/avaiable/available/ 2018-01-10 21:33:37 +00:00
README.txt split worker off 2019-03-16 21:57:29 +02:00
test_base16.c delet trailing whitespace 2018-07-12 13:05:53 +00:00
test_base32.c delet trailing whitespace 2018-07-12 13:05:53 +00:00
test_base64.c cleanups, make clang happy 2019-03-15 21:04:40 +00:00
test_ed25519.c delet trailing whitespace 2018-07-12 13:05:53 +00:00
types.h more flexible intfilter config 2017-10-22 01:58:22 +00:00
vec.c some vec tweaks 2017-10-10 03:14:45 +00:00
vec.h small fixup, implement deduplication support 2018-09-26 20:54:14 +03:00
worker_batch.inc.h split worker off 2019-03-16 21:57:29 +02:00
worker_fast_pass.inc.h split worker off 2019-03-16 21:57:29 +02:00
worker_fast.inc.h split worker off 2019-03-16 21:57:29 +02:00
worker_slow.inc.h split worker off 2019-03-16 21:57:29 +02:00
worker.c unconditionally define feature test macros 2019-03-31 19:36:58 +00:00
worker.h split worker off 2019-03-16 21:57:29 +02:00
yaml.c explicit void params declarations, add warnings to keep it correct 2019-05-14 20:29:27 +03:00
yaml.h explicit void params declarations, add warnings to keep it correct 2019-05-14 20:29:27 +03:00

mkp224o - vanity address generator for ed25519 onion services

This tool generates vanity ed25519 (hidden service version 3, formely known as proposal 224) onion addresses.
For context, see <https://gitweb.torproject.org/torspec.git/plain/rend-spec-v3.txt>.

REQUIREMENTS:
C99 compatible compiler, libsodium, GNU make, GNU autoconf, UNIX-like platform (currently tested in Linux and OpenBSD).

BUILDING:
`./autogen.sh` to generate configure script, if it's not there already.
`./configure` to generate makefile; in *BSD platforms you probably want to use
`./configure CPPFLAGS="-I/usr/local/include" LDFLAGS="-L/usr/local/lib"`.
You probably also want to pass something like "--enable-amd64-51-30k"
or "--enable-donna" to configure script for faster key generation;
run `./configure --help` to see all available options.
Finally, `make` to start building (`gmake` in *BSD platforms).

USAGE:
Generator needs one or more filters to work.
It makes directory with secret/public keys and hostname
for each discovered service. By default root is current
directory, but that can be overridden with -d switch.
Use -s switch to enable printing of statistics, which may be useful
when benchmarking different ed25519 implementations on your machine.
Use -h switch to obtain all available options.
I highly recommend reading OPTIMISATION.txt for performance-related tips.

CONTACT:
For bug reports/questions/whatever else, email cathugger at cock dot li.
PGP key, if needed, can be found at <http://cathug2kyi4ilneggumrenayhuhsvrgn6qv2y47bgeet42iivkpynqad.onion/contact.html>.

ACKNOWLEDGEMENTS & LEGAL:
To the extent possible under law, the author(s) have dedicated all copyright and related and neighboring rights to this software to the public domain worldwide. This software is distributed without any warranty.
You should have received a copy of the CC0 Public Domain Dedication along with this software. If not, see <http://creativecommons.org/publicdomain/zero/1.0/>.

keccak.c is based on <https://github.com/gvanas/KeccakCodePackage/blob/master/Standalone/CompactFIPS202/Keccak-more-compact.c>.
ed25519/{ref10,amd64-51-30k,amd64-64-24k} are adopted from SUPERCOP <https://bench.cr.yp.to/supercop.html>.
ed25519/ed25519-donna adopted from <https://github.com/floodyberry/ed25519-donna>.
Idea used in worker_fast() is stolen from <https://github.com/Yawning/horse25519>.
base64 routines and initial YAML processing work contributed by Alexander Khristoforov <heios@protonmail.com>.
Passphrase-based generation code and idea used in worker_batch() contributed by <https://github.com/foobar2019>.