I would encourage that we not start with new words (telepathy, and please please please not "magic send"). Is not teleporting still the main concept? It is an established term now, one that btcd is known for and alot of people are waiting on. Does this not suffice for the name?
Teleporting is for sending of funds
Teleporting uses the privacyNetwork
other things can use the privacyNetwork
whatever it is called, the sending of data from one person to another without anybody knowing the IP address is quite a fundamental thing.
after doing the following API (one on each computer):
./BitcoinDarkd SuperNET '{"requestType":"mindmeld","myname":"yourhandle","other":"otherhandle"}'
./BitcoinDarkd SuperNET '{"requestType":"mindmeld","myname":"otherhandle","other":"yourhandle"}'
The following happens:
38 28 33 33 40
28 32 31 27 28
33 31 29 32 35
33 27 32 33 31
40 28 35 31 30
dist from privateaddr above -> bestmetric 0.632 avedist 31.8
31 28 33 33 40
28 31 31 27 28
33 31 30 32 35
33 27 32 32 31
40 28 35 31 31
bestaddr.
3397518935526591714 bestmetric 0.632
Other pubkey.(c330e6542defef123504ebe247603008df234859ee55225d1124534462436b1b)
10694781281555936856 8894667849638377372 13434315136155299987 17572279667799017517 18429876966171494368 mytxid.7232362215934077752 othertxid.6762902089573300365 | myaddr.
2834459742776037913############# other node
28 31 28 27 28
31 35 33 32 35
28 33 40 33 40
27 32 33 35 31
28 35 40 31 34
dist from privateaddr above -> bestmetric 0.632 avedist 31.8
31 31 28 27 28
31 32 33 32 35
28 33 31 33 40
27 32 33 30 31
28 35 40 31 31
bestaddr.
7112391407263245770 bestmetric 0.632
Other pubkey.(ffe89032a5d457014b02c704a7b19eede4cfce1fc83fa554f0e875098d06240f)
8894667849638377372 13434315136155299987 10694781281555936856 17572279667799017517 18429876966171494368 mytxid.6762902089573300365 othertxid.7232362215934077752 | myaddr.
5558871420373351853I am displaying the distance from the actual private address (red) in the top matrix and the distance from the deaddrop address (blue) in the bottom matrix. In DHT the distance is really the only useful information about an address. The red address is NEVER sent publicly, only the publickey is put into the cloud in a location based on the handles the two people use, so it is "published" as anybody can access them, but generally public keys are public so this is much less info than normal.
Once both sides exchange public keys, they then can encrypt and only then are the deaddrop addresses exchanged. Notice the difference in the account numbers red vs blue. what is more important is that the distance of the blue addresses from the other nodes:
31 31 30 32 31
31 32 31 30 31
as opposed to the red addresses:
38 32 29 33 30
28 35 40 35 34
Keep in mind the average distance is 31.8, so let us assume that someone the blue address is compromised. What does it divulge?
It is pretty much equal distance from all the other nodes (including the actual source and destination), so it is like camouflauge. Even if the attacker got the blue address, it certainly cant lead to the red address and it just ends up saying equal chance for any of the nodes to be yours, basically useless guessing. As the network grows, the effect becomes stronger, though finding addresses that are equidistant from a large number of addresses becomes more and more difficult so there will be an eventual cap on the anon set from this.
Notice that not only is the IP address not known, but the destination acct address is not known either, in fact there is no actual destination account, that is how I know it cant be divulged. The destination is the publickey that is generated each session (or transaction), so if there is no account, then it cant be correlated to the IP address. Even when there are a small number of nodes, there is privacy with this method and I believe that is quite unique.
This does raise the issue of spoofing, so there will need to be authentication of some public account before any transactions are done, but there is now an automatic cloud based public key exchange based on user handles, no crazy long numbers to deal with.
Now with a secure link between two nodes, the teleporting is basically done other than the accounting, which is just normal arithmetic. still quite important, but no need for any magic, so it shouldnt take too long. Anyway I have to make sure each step is as solid as possible and I hope you can understand this. If I miss some major flaw, then what happens to the price? Should I rush something out and then we find a weakness that could have been avoided?
What would happen if after releasing Teleport++ nobody can find any flaws? What if it allows fully anonymous transactions and communications over the internet? I think it has been about 2 months since the initial Teleport concept to now. Is this really such a long time? If so, then I suggest to sell all the BTCD as it wont be finished in the next 48 hours. In the two months, I also did a little ICO that boosts the potential audience tenfold and I still predict that I wont be the bottleneck for completing the release.
So, if you want something right now, then I suggest to sell all your BTCD and buy LTCD, I hear they are soon coming out with some fantastic cut and paste. Please put things in perspective. Just how long should it take to implement Teleport? Do you think stressing me out with some artificial deadlines will help?
James