Author Topic: memo field encryption  (Read 1382 times)

0 Members and 1 Guest are viewing this topic.

Offline arhag

  • Hero Member
  • *****
  • Posts: 1214
    • View Profile
    • My posts on Steem
  • BitShares: arhag
  • GitHub: arhag
I am looking for some information about exactly how the memo field is encrypted.  Specifically to non titan accounts.

If I send a transaction and include a memo, could I prove that this transaction contains that specific memo without exposing my private key?

Memos are encrypted using symmetric encryption where the shared encryption/decryption key is obtained through Diffie-Hellman key exchange between the sender and recipient. The sender uses a one-time key (the corresponding public key of which is publicly included with the transaction) with the recipient's public active key. Only the sender (through knowledge of the secret one-time private key and the recipient's public active key) and the recipient (through knowledge of their active private key and the one-time public key included in the transaction) are able to derive this shared key. If you want to prove to someone what the memo says (and who the sender is) you (and by you I mean either the sender or the recipient, but no one else) could in theory securely provide them with the shared key without any risk to the funds in that balance or exposing anything about your private keys.
« Last Edit: July 08, 2015, 05:54:50 am by arhag »

Offline puppies

  • Hero Member
  • *****
  • Posts: 1659
    • View Profile
  • BitShares: puppies
I am looking for some information about exactly how the memo field is encrypted.  Specifically to non titan accounts.

If I send a transaction and include a memo, could I prove that this transaction contains that specific memo without exposing my private key?

I ask because I have been playing around on the play blockchain with a roulette game https://bitsharestalk.org/index.php/topic,17381.0.html and pc has a very good question about the player being able to prove that they placed a bet and were not paid. 
https://metaexchange.info | Bitcoin<->Altcoin exchange | Instant | Safe | Low spreads