I wonder if I provide someone with two public keys from different elliptic curves, is there any way to prove that these two public keys are generated from the same private key without revealing the private key itself?
For example, I have a private key (which is a large random 256-bit number) and I generate one public key on the secp256r1 curve and another public key on the secp256k1 curve, how do I provide the two keys to a third party and prove to them that these two public keys are generated from the same private key? Is there some kind of zero-knowledge proof or some algorithm that can accomplish that? Thanks.