hello!
---> from #clojure what kind of public key properties are you looking for?
gpg is sort of what I have in mind, but I don't really care about web-of-trust things
I would like to be able to generate priv/public keypairs on the fly
do you need to interact with various other things, or is it all in house?
because java has a bunch of elliptic curves built in https://docs.oracle.com/javase/10/docs/api/index.html?java/security/KeyPair.html
GPG can do a lot
are you looking for public key stuff, or doing key agreement + symmetric crypto?
yeah, I do not need the whole GPG kitchen sink
I would like to be able to generate public and private keys for users, break the private key apart with Shamir's secret sharing, and then store the shares in different places
The idea being to reassemble the private key to decrypt messages encrypted with the public key
I see
that sounds legit. Consider not encrypting using public key encryption alone -- many systems do key wrapping (of a symmetric key)
break up the shares for recovery, but the private key is only used to decrypt a symmetric secret, and it's that secret that is used to encrypt/decrypt the data
or you can derive secrets from a root secret using a derivation scheme
well, I'd like to start simple and build it up. I was hoping to play around with a toy implementation in a repl, but haven't had a good time with it yet
I looked at buddy, but that requires shelling out to openssl to actually generate the keypair, and I'd rather not have the external dep if I don't need it
ok, cool, the codahale one seems to make a lot more sense than secretshare
at least, I've gotten it to work
I'll have to try the java keypair stuff now