Skip to main content
added 5 characters in body
Source Link
knaccc
  • 8.5k
  • 16
  • 23

Monero's stealth addressing works like this:

  1. You start with a destination wallet address, which is a pair of public keys A, B which have corresponding private keys a, b known only to the recipient.

  2. A Diffie-Hellman exchange is performed, resulting in a shared secret which can be transformed to produce a private key s.

  3. A public key S corresponding to the private key s is determined.

  4. A homomorphic encryption scheme is used to combine S with B. Homomorphic means that the private key corresponding to the public key S+B can be determined only by someone (i.e. the recipient) that knows s and b. S+B is published as the one-time output public key, and only the recipient (and not the sender or anyone else) can determine the private key for this one-time output. This means the sender can't spend the newly created output themselves.

Steps 1-3 can be done using any asymmetric encryption scheme, such as RSA.

To achieve step 4, you need an asymmetric encryption scheme which is homomorphic. I'm not an expert, but it's possible that the RSA unpadded scheme may work for this: https://en.wikipedia.org/wiki/Homomorphic_encryption#Unpadded_RSA

I don't know if any PQC asymmetric encryption schemes exist which support homomorphic encryption.

Monero's stealth addressing works like this:

  1. You start with a destination wallet address, which is a pair of public keys A, B which have corresponding private keys a, b known only to the recipient.

  2. A Diffie-Hellman exchange is performed, resulting in a shared secret which can be transformed to produce a private key s.

  3. A public key S corresponding to the private key s is determined.

  4. A homomorphic encryption scheme is used to combine S with B. Homomorphic means that the private key corresponding to the public key S+B can be determined by someone (i.e. the recipient) that knows s and b.

Steps 1-3 can be done using any asymmetric encryption scheme, such as RSA.

To achieve step 4, you need an asymmetric encryption scheme which is homomorphic. I'm not an expert, but it's possible that the RSA unpadded scheme may work for this: https://en.wikipedia.org/wiki/Homomorphic_encryption#Unpadded_RSA

I don't know if any PQC asymmetric encryption schemes exist which support homomorphic encryption.

Monero's stealth addressing works like this:

  1. You start with a destination wallet address, which is a pair of public keys A, B which have corresponding private keys a, b known only to the recipient.

  2. A Diffie-Hellman exchange is performed, resulting in a shared secret which can be transformed to produce a private key s.

  3. A public key S corresponding to the private key s is determined.

  4. A homomorphic encryption scheme is used to combine S with B. Homomorphic means that the private key corresponding to the public key S+B can be determined only by someone (i.e. the recipient) that knows s and b. S+B is published as the one-time output public key, and only the recipient (and not the sender or anyone else) can determine the private key for this one-time output. This means the sender can't spend the newly created output themselves.

Steps 1-3 can be done using any asymmetric encryption scheme, such as RSA.

To achieve step 4, you need an asymmetric encryption scheme which is homomorphic. I'm not an expert, but it's possible that the RSA unpadded scheme may work for this: https://en.wikipedia.org/wiki/Homomorphic_encryption#Unpadded_RSA

I don't know if any PQC asymmetric encryption schemes exist which support homomorphic encryption.

added 11 characters in body
Source Link
knaccc
  • 8.5k
  • 16
  • 23

Monero's stealth addressing works like this:

  1. You start with a destination wallet address, which is a pair of public keys A, B which have corresponding private keys a, b known only to the recipient.

  2. A Diffie-Hellman exchange is performed, resulting in a shared secret which can be transformed to produce a private key s.

  3. A public key S corresponding to the private key s is determined.

  4. A homomorphic encryption scheme is used to combine S with B. Homomorphic means that the private key corresponding to the public key S+B can be determined by someone (i.e. the recipient) that knows s and b.

Steps 1-3 can be done using any asymmetric encryption scheme, such as RSA.

To achieve step 4, you need an asymmetric encryption scheme which is homomorphic. I'm not an expert, but I thinkit's possible that the RSA unpadded scheme may work for this: https://en.wikipedia.org/wiki/Homomorphic_encryption#Unpadded_RSA

I don't know if any PQC asymmetric encryption schemes exist which support homomorphic encryption.

Monero's stealth addressing works like this:

  1. You start with a destination wallet address, which is a pair of public keys A, B which have corresponding private keys a, b known only to the recipient.

  2. A Diffie-Hellman exchange is performed, resulting in a shared secret which can be transformed to produce a private key s.

  3. A public key S corresponding to the private key s is determined.

  4. A homomorphic encryption scheme is used to combine S with B. Homomorphic means that the private key corresponding to the public key S+B can be determined by someone (i.e. the recipient) that knows s and b.

Steps 1-3 can be done using any asymmetric encryption scheme, such as RSA.

To achieve step 4, you need an asymmetric encryption scheme which is homomorphic. I'm not an expert, but I think the RSA unpadded scheme may work for this: https://en.wikipedia.org/wiki/Homomorphic_encryption#Unpadded_RSA

I don't know if any PQC asymmetric encryption schemes exist which support homomorphic encryption.

Monero's stealth addressing works like this:

  1. You start with a destination wallet address, which is a pair of public keys A, B which have corresponding private keys a, b known only to the recipient.

  2. A Diffie-Hellman exchange is performed, resulting in a shared secret which can be transformed to produce a private key s.

  3. A public key S corresponding to the private key s is determined.

  4. A homomorphic encryption scheme is used to combine S with B. Homomorphic means that the private key corresponding to the public key S+B can be determined by someone (i.e. the recipient) that knows s and b.

Steps 1-3 can be done using any asymmetric encryption scheme, such as RSA.

To achieve step 4, you need an asymmetric encryption scheme which is homomorphic. I'm not an expert, but it's possible that the RSA unpadded scheme may work for this: https://en.wikipedia.org/wiki/Homomorphic_encryption#Unpadded_RSA

I don't know if any PQC asymmetric encryption schemes exist which support homomorphic encryption.

Source Link
knaccc
  • 8.5k
  • 16
  • 23

Monero's stealth addressing works like this:

  1. You start with a destination wallet address, which is a pair of public keys A, B which have corresponding private keys a, b known only to the recipient.

  2. A Diffie-Hellman exchange is performed, resulting in a shared secret which can be transformed to produce a private key s.

  3. A public key S corresponding to the private key s is determined.

  4. A homomorphic encryption scheme is used to combine S with B. Homomorphic means that the private key corresponding to the public key S+B can be determined by someone (i.e. the recipient) that knows s and b.

Steps 1-3 can be done using any asymmetric encryption scheme, such as RSA.

To achieve step 4, you need an asymmetric encryption scheme which is homomorphic. I'm not an expert, but I think the RSA unpadded scheme may work for this: https://en.wikipedia.org/wiki/Homomorphic_encryption#Unpadded_RSA

I don't know if any PQC asymmetric encryption schemes exist which support homomorphic encryption.