Bitcoin Forum

Alternate cryptocurrencies => Altcoin Discussion => Topic started by: merockstar on June 24, 2014, 11:06:53 AM



Title: [BitShares] All you need to know about Privacy in BitShares/DPOS (Project: TITAN
Post by: merockstar on June 24, 2014, 11:06:53 AM
https://github.com/BitShares/bitshares_toolkit/wiki/AYNTK_TITAN


All about TITAN
Where is the name TITAN coming from?

TITAN stands for T ransfer I nvisibly T o A ny N ame and describes that transactions performed are anonymous by default.
How can I use it?

    Just type: wallet_transfer AMOUNT UNIT sender receiver memo
    The wallet will do the rest!
    As you can see it's the basic transmit procedure, thus all transactions are anonymous on the blockchain by default!

What does it mean? What are the features?

    No need to exchange ugly addresses. Instead a Name can be registered with the blockchain which suffices to receive payments
    The receiver is anonymous to everyone except the sender.
    Simplifies accounting in the wallet, as you can register arbitrary names and no one can see your balance (except you, of course)!

How can the receiver be anonymous for everyone else?

    For each payment a temporary one-time address is generated
    The details of TITAN can be summarized to:

    dan   => DANS_EXT_PUBLIC_KEY
    scott => SCOTTS_EXT_PUBLIC_KEY

    scott:  Generate OneTimePrivateKey & OneTimePublicKey Pair
    scott:  OneTimePrivateKey * DANS_EXT_PUBLIC_KEY => SECRET
                DANS_EXT_PUBLIC_KEY.child( SECRET ) => RECEIVE_PUBLIC_KEY => RECEIVE_ADDRESS
    scott:  RECEIVE_PUBLIC_KEY * SCOTTS_EXT_PRIVATE_KEY => CHECK_SECRET
                                                        => SHORT_HASH(CHECK_SECRET) == SHORT_SIGNATURE
    scott-broadcast:   OneTimePublicKey + RECEIVE_ADDRESS + ENCRYPT( from scott + SHORT_SIGNATURE, SECRET )
    dan:   OneTimePublicKey * DANS_EXT_PRIVATE_KEY => SECRET
              DANS_EXT_PRIVATE_KEY.child( SECRET ) => RECEIVE_PRIVATE_KEY =>
                             => RECEIVE_PUBLIC_KEY => RECEIVE_ADDRESS

    dan:   DECRYPT( data, SECRET ) => "from scott" + SHORT_SIGNATURE
    dan:   SCOTT_EXT_PUBLIC_KEY * RECEIVE_PRIVATE_KEY => CHECK_SECRET => SHORT_HASH(CHECK_SECRET)

Isn't that exactly the same as bitcoin's stealth-addresses?

    This is a variation of stealth addresses (http://www.coindesk.com/stealth-addresses-secret-bitcoin-privacy) that leverages the name system to solve the first part of the problem.
    Just type: wallet_transfer AMOUNT UNIT sender receiver memo

Are read-only/watch-only keys possible with TITAN?

Yes. The basic support is already in place.
Where can I find more about about the various types keys used in TITAN

We have a dedicated article about the key structures in place in this wiki:

    Wallets, accounts, owners & active keys - The differences between Bitcoin and Bitshares

What advanced features does it have?

    Ability to encode a message and 'from' data into the transaction for payment details, much like a 'purpose field'

Sources

    https://bitsharestalk.org/index.php?topic=4887.msg64091#msg64091
    https://bitsharestalk.org/index.php?topic=4699.0


Title: Re: [BitShares] All you need to know about Privacy in BitShares/DPOS (Project: TITAN
Post by: xeroc on June 24, 2014, 11:21:33 AM
On the current testnet TITAN works flawlessly .. it's incredible ... instead of..

> need funds: XTS7zLgcAUW9Yqt9CEXfY5vMiaaRjREchNva1HBhPVAasW7kr94ZB

we now have

> need funds: myBlockchainName

It's awesome .. sending money to a nickname and noone on the blockchain can even interpret the transaction ..


Title: Re: [BitShares] All you need to know about Privacy in BitShares/DPOS (Project: TITAN
Post by: xeroc on June 24, 2014, 12:20:06 PM
Ah .. BTW: you can add comments/memos to you transactions.
Quote from the testnet:
Quote
   1358.0    2014-06-24T09:40:00 cass-local          xeroc-delegate      have fun                              10,000.000000 EUR         0.00000 XTS        99a05b77

this particular transaction as seen from the network:
Code:
{
  "trx": {
    "expiration": null,
    "delegate_slate_id": null,
    "operations": [{
        "type": "withdraw_op_type",
        "data": {
          "balance_id": "XTSDy8wNDV5uga4HA8meNvC1bzNKHzuwwP37",
          "amount": 10000,
          "claim_input_data": ""
        }
      },{
        "type": "issue_asset_op_type",
        "data": {
          "amount": {
            "amount": 10000000000,
            "asset_id": 2
          }
        }
      },{
        "type": "deposit_op_type",
        "data": {
          "amount": 10000000000,
          "condition": {
            "asset_id": 2,
            "delegate_slate_id": 0,
            "type": "withdraw_signature_type",
            "data": {
              "owner": "XTS6ET615GHJ9d4dYKxE5qJkZLR746aQMHkr",
              "memo": {
                "one_time_key": "XTS4v2V1nQuKUECEezru3EtFi3i6c3AgoGoSCsbQEDkeJCUSctdVo",
                "encrypted_memo_data": "a7293c2fe8d39e585205ecd4a128312f31f130cda9c9d6cf10e203c8117dcd175c036a3c7da2ec0e1f6d92c32818ef3b14bcd4a61cf72eeea956d7195c76b0f2"
              }
            }
          }
        }
      }
    ],
    "signatures": [
      "1f21ee08c16f4856cddb77e4da8e3c293df620dc6baa4c63d88366b3a994c794b5ec2941db71434e2bf5f35a694d3603766a8b290c24d7088b128b82a75e6dc65c",
      "1f59b012087df1270d84ba8118302eeef45bb01329139fad48efd6613ae6cbf231e97257592176a673e48809e1e5254a0665169608146e0c303374671a53ecbf03"
    ]
  },
  "signed_keys": [
    "XTS4fHgXDYoXPtcgFfZShw8MFMSm5JDaQbxZ",
    "XTSHKmNC237TzfmqPRns4i6V7GqGV2uh9eHF",
    "XTS22AsrMD4G9p9cBk6BMNVn1epZNTEFtcki",
    "XTS83f7192ck15c8y3AMQYds9kwSNMdmYyEn",
    "XTSrYckEeP8ZoviKKJ2umNgL4c1VCoNryK8",
    "XTSPA5z1adLTPBTZFcWxpRAZMpxJ4xnDJnkv",
    "XTS2hoZwv9mVXHYgW8Qyht3Rj23BBYA1RMeS",
    "XTSAed1bUdTNCVJTRP94rYJrCJ2yDmdpszD1",
    "XTSEjpvcUbarGHyBYjPNKWk1z52B1gFTNKNN",
    "XTSFioBa5duVGaUFSfVWMnqbVfqZCR3pS9nA"
  ],
 "validation_error": null,
  "required_deposits": [],
  "provided_deposits": [[
      "XTSLBRucwGEZhBjjjfhsVDnVTXp8AWiir7ew",{
        "amount": 10000000000,
        "asset_id": 2 
      }
    ]
  ]
}


Title: Re: [BitShares] All you need to know about Privacy in BitShares/DPOS (Project: TITAN
Post by: MasterMined710 on July 25, 2014, 11:55:31 PM
thanks for the info.
so are there transaction hashes so i can prove i sent the money/btsx.
if dan buys something from stans shop and then stan says he did not receive the money how can you verify stan received it without blockchain transaction hashes?



Title: Re: [BitShares] All you need to know about Privacy in BitShares/DPOS (Project: TITAN
Post by: clout on July 26, 2014, 01:20:54 AM
thanks for the info.
so are there transaction hashes so i can prove i sent the money/btsx.
if dan buys something from stans shop and then stan says he did not receive the money how can you verify stan received it without blockchain transaction hashes?



yes there are trx hashes