I am currently trying to figure out if my following scheme is implementable in ECC or whether I can use existing implementation. At first I was going with libsodium but it seems that it really doesn't support my use case.
My scenario: There are basically two groups. Group A which has read access (only decryption) and Group B which has write/read access (both encryption/decryption).
libSodium has something which is very similar: crypto_box_seal/crypto_box_seal_open
The issue with libSodium's api is that crypto_box_seal_open requires both keypairs. I would need the reverse of this api.
eg.
- private key => encryption/decryption
- public key => decryption
Does a scheme like this exist?