Skip to content
qtvibingPublic

About

vanity pgp keys on the gpu with opencl

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

keysmith

vanity openpgp key ids by the gpu

keysmith generates an ed25519 openpgp primary key on the cpu, then has an opencl gpu walk the key creation timestamp backwards until the long key id matches a hex pattern

on an amd 9070 xt / gfx1201, this currently does about 20 billion attempts/sec, so ~3s for 9 chars, ~30s for 10, and ~4h for 12

install

install an opencl runtime for your gpu, then:

cargo build --release

usage

prefix match, the default:

./target/release/keysmith c0ffee --uid "alice <alice@example.com>"

suffix match:

./target/release/keysmith c0ffee --mode suffix --uid "alice <alice@example.com>"

write keys somewhere else:

./target/release/keysmith 000000000 --uid "alice <alice@example.com>" -o keys

pick a gpu:

./target/release/keysmith c0ffee --uid "alice <alice@example.com>" --device 1

output

fingerprint: 0123456789ABCDEF0123456789ABCDEF00C0FFEE
key id:      0x89ABCDEF00C0FFEE
public:      ./0123456789ABCDEF0123456789ABCDEF00C0FFEE.public.asc
secret:      ./0123456789ABCDEF0123456789ABCDEF00C0FFEE.secret.asc

import it with:

gpg --import ./0123456789ABCDEF0123456789ABCDEF00C0FFEE.secret.asc

patterns

these are the same:

c0ffee
0xC0FFEE
C0:FF:EE

the expected work is 16^n attempts for n hex chars

prefix: 0xC0FFEE..........
suffix: 0x..........C0FFEE

About

vanity pgp keys on the gpu with opencl

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages