Nxt Forum

Nxt Discussion => Nxt Technical Discussion => Nxt Core Development => Monetary System => Topic started by: msin on January 08, 2015, 09:56:28 pm

Title: MS Coin for Shuffling Nxt
Post by: msin on January 08, 2015, 09:56:28 pm
Can someone (lyaffe) tell me the optimal setup for a MS coin which only serves as a method to mix Nxt?  Thanks.
Title: Re: MS Coin for Shuffling Nxt
Post by: Riker on January 09, 2015, 07:21:59 am
Can someone (lyaffe) tell me the optimal setup for a MS coin which only serves as a method to mix Nxt?  Thanks.

As far as I can tell at the moment, shuffling has no restrictions related to any other currency types. The only restriction is that all shuffling participate register the same number of currency units or NXT.
If we don't run into any issues, shuffling will be enabled for any currency which was not marked explicitly as non-shuffleable.
The current code (currently in Alpha stage) also allows shuffling NXT itself thus cutting the middleman currency, which is a much more common use case in my view, but we are still debating if to allow this or not.
What is your opinion ?
Title: Re: MS Coin for Shuffling Nxt
Post by: bitcoinpaul on January 09, 2015, 07:23:46 am
Can someone (lyaffe) tell me the optimal setup for a MS coin which only serves as a method to mix Nxt?  Thanks.

As far as I can tell at the moment, shuffling has no restrictions related to any other currency types. The only restriction is that all shuffling participate register the same number of currency units or NXT.
If we don't run into any issues, shuffling will be enabled for any currency which was not marked explicitly as non-shuffleable.
The current code (currently in Alpha stage) also allows shuffling NXT itself thus cutting the middleman currency, which is a much more common use case in my view, but we are still debating if to allow this or not.
What is your opinion ?

Allow.
Title: Re: MS Coin for Shuffling Nxt
Post by: Come-from-Beyond on January 09, 2015, 08:23:49 am
Allow.

Disallow.
Title: Re: MS Coin for Shuffling Nxt
Post by: valarmg on January 09, 2015, 09:53:57 am
Can someone (lyaffe) tell me the optimal setup for a MS coin which only serves as a method to mix Nxt?  Thanks.

As far as I can tell at the moment, shuffling has no restrictions related to any other currency types. The only restriction is that all shuffling participate register the same number of currency units or NXT.
If we don't run into any issues, shuffling will be enabled for any currency which was not marked explicitly as non-shuffleable.
The current code (currently in Alpha stage) also allows shuffling NXT itself thus cutting the middleman currency, which is a much more common use case in my view, but we are still debating if to allow this or not.
What is your opinion ?

100% allow. What are the reasons for disallowing?
Title: Re: MS Coin for Shuffling Nxt
Post by: Come-from-Beyond on January 09, 2015, 10:09:11 am
100% allow. What are the reasons for disallowing?

AFAIK noone analyzed how TF and mixing of NXT would work. I mean analyzing, not just thinking for a moment "I don't see any problem, let's mix NXTs".
Title: Re: MS Coin for Shuffling Nxt
Post by: valarmg on January 09, 2015, 10:17:23 am
100% allow. What are the reasons for disallowing?

AFAIK noone analyzed how TF and mixing of NXT would work. I mean analyzing, not just thinking for a moment "I don't see any problem, let's mix NXTs".

Okay, analyzing should be done first, and also simulations using the Haskell/Coq tools. Make sure there are no technical reasons why it shouldn't be done.
Title: Re: MS Coin for Shuffling Nxt
Post by: natty on January 09, 2015, 10:23:30 am
100% allow. What are the reasons for disallowing?

AFAIK noone analyzed how TF and mixing of NXT would work. I mean analyzing, not just thinking for a moment "I don't see any problem, let's mix NXTs".

Okay, analyzing should be done first, and also simulations using the Haskell/Coq tools. Make sure there are no technical reasons why it shouldn't be done.

Consensus research asset is not getting much love. Hungry scientists don't make good researchers.
Title: Re: MS Coin for Shuffling Nxt
Post by: Isildur23 on January 09, 2015, 11:20:50 am
100% allow. What are the reasons for disallowing?

AFAIK noone analyzed how TF and mixing of NXT would work. I mean analyzing, not just thinking for a moment "I don't see any problem, let's mix NXTs".

But if mixing is done via a MS currency, it would not affect TF, right?
Title: Re: MS Coin for Shuffling Nxt
Post by: Come-from-Beyond on January 09, 2015, 11:21:28 am
But if mixing is done via a MS currency, it would not affect TF, right?

Right.
Title: Re: MS Coin for Shuffling Nxt
Post by: Riker on January 09, 2015, 11:55:57 am
My understanding is that the risk of coin shuffling using NXT, is that during the shuffling process the forging balance of the participants is reduced temporarily until shuffling is concluded and this can take days or weeks in some cases, therefore if its heavily used it can reduce the forging power of the network. Its a similar phenomena to issuing a reserveable/claimable currency and locking your NXT.
 
My estimate is that its not a big risk. Even if popularity sky rockets, a typical shuffling would not involve more 100K NXT and we will have no more than 100 running concurrently thus reducing the forging power by 1% at most.

Shuffling currencies does not reduce the forging power directly, however, if the shuffling is performed using reserveable/claimable currency the NXT used for shuffling is locked anyway so its as secure as shuffling the NXT directly.

Shuffling on non-claimable currency is less attractive since you'll have to exchange NXT into currency then shuffle then exchange back to NXT losing the spread in the process.
Title: Re: MS Coin for Shuffling Nxt
Post by: msin on January 09, 2015, 04:27:30 pm
Thanks Lyaffe for the responses.  I would say my initial response would be to allow shuffling within Nxt, however if it affects TF (which is more important than Nxt shuffling) I would say let's stick to shuffling within MS.  I was interested in issuing a very simple MS specifically for shuffling, with no cost to the user other than the transaction fee.
Title: Re: MS Coin for Shuffling Nxt
Post by: msin on January 09, 2015, 06:05:19 pm
Questions
1. Can someone explain how mixing takes place within MS, is it between independent owners of coin or can coins be mixed directly with issuers supply? 
2. Will Controllable negate the ability for a user to effectively mix a coins?
3. Also need some clarification on Exchange Booth fees, does the buyer pay both tx fees for buying and selling a coin?

Here is a scenario (assuming mixing can take place with issuers supply)

Issue a coin as both Exchangeable and Controllable.  This way the coin can't be traded on open market.
List coin on Exchange Booth offering to sell 1 coin for 100 Nxt, and offer to buy 1 coin for 100 Nxt.
Buyer buys 1 coin for 100Nxt, spending an additional 1 Nxt for Tx fee.
Buyer mixes coin (I'm assuming transferring ownership to another Nxt account)
Buyer then sells 1 coin back to me for 100 Nxt on Exchange Booth, spending 1 Nxt for Tx fee.
Buyer spends maximum 102 Nxt to mix 100 Nxt.

I'm still unclear on how exactly mixing takes place.  If it has to happen between users, then I would make the coin only Exchangeable and issue an extremely large supply so there is no secondary market and then of course put up a very large buy order on Exchange booth so the buyer never pays more than he/she paid and tx fees to mix coin. 
Title: Re: MS Coin for Shuffling Nxt
Post by: Come-from-Beyond on January 09, 2015, 06:35:42 pm
Here some pictures - https://bitcointalk.org/index.php?topic=567625.msg6370451#msg6370451

Everyone pays fees for himself on every stage.

I don't know all details related to Controllable, etc.
Title: Re: MS Coin for Shuffling Nxt
Post by: msin on January 09, 2015, 06:41:23 pm
Here some pictures - https://bitcointalk.org/index.php?topic=567625.msg6370451#msg6370451

Everyone pays fees for himself on every stage.

I don't know all details related to Controllable, etc.

Okay thanks, definitely looks like multiple parties are required.  Hopefully Lyaffe can shed some light.
Title: Re: MS Coin for Shuffling Nxt
Post by: Riker on January 09, 2015, 08:21:15 pm
Coin shuffling documentation is here https://bitbucket.org/JeanLucPicard/nxt/issue/135
Controlable shouldn't be a problem since at the end of the shuffling all currency balances remain the same and due to this I don't think it will clash with any other currency property.

Title: Re: MS Coin for Shuffling Nxt
Post by: Come-from-Beyond on January 09, 2015, 09:07:51 pm
Coin shuffling documentation is here https://bitbucket.org/JeanLucPicard/nxt/issue/135
Controlable shouldn't be a problem since at the end of the shuffling all currency balances remain the same and due to this I don't think it will clash with any other currency property.

For users it's true - balances will remain the same. But for other observers (and the system) - balances will change, otherwise there is no point to mix coins.
Title: Re: MS Coin for Shuffling Nxt
Post by: msin on January 09, 2015, 09:11:45 pm
Coin shuffling documentation is here https://bitbucket.org/JeanLucPicard/nxt/issue/135
Controlable shouldn't be a problem since at the end of the shuffling all currency balances remain the same and due to this I don't think it will clash with any other currency property.

We should track down Timruffling and give him some Nxt as a thank you.  :)
Title: Re: MS Coin for Shuffling Nxt
Post by: valarmg on January 09, 2015, 09:31:34 pm
Possible to shuffle a whole account, assets and all?
Title: Re: MS Coin for Shuffling Nxt
Post by: Riker on January 09, 2015, 09:34:14 pm
Coin shuffling documentation is here https://bitbucket.org/JeanLucPicard/nxt/issue/135
Controlable shouldn't be a problem since at the end of the shuffling all currency balances remain the same and due to this I don't think it will clash with any other currency property.

We should track down Timruffling and give him some Nxt as a thank you.  :)

PM me if you need his email address. He even offered is help with code review once we iron all the details.
Title: Re: MS Coin for Shuffling Nxt
Post by: Riker on January 09, 2015, 09:38:19 pm
Possible to shuffle a whole account, assets and all?

Currently, shuffling works either for NXT or for currency units. There is no support for Asset shuffling at the moment although I can't think of any technical reason which prevents this.
Title: Re: MS Coin for Shuffling Nxt
Post by: valarmg on January 09, 2015, 09:46:53 pm
Possible to shuffle a whole account, assets and all?

Currently, shuffling works either for NXT or for currency units. There is no support for Asset shuffling at the moment although I can't think of any technical reason which prevents this.

Asset shuffling would be fantastic, and should definitely be considered. Not much point being able to hide Nxt from snooping eyes if most of a person's funds are tied up in assets.

I would say Nxt shuffling > Asset shuffling >>>> MS shuffling
Title: Re: MS Coin for Shuffling Nxt
Post by: Daedelus on January 09, 2015, 09:48:23 pm
 (http://static.fjcdn.com/gifs/Everyday+i+m+shuffling_7d4fe9_3215136.gif)

Everyday we shuffling  :D
Title: Re: MS Coin for Shuffling Nxt
Post by: msin on January 09, 2015, 09:59:45 pm
Coin shuffling documentation is here https://bitbucket.org/JeanLucPicard/nxt/issue/135
Controlable shouldn't be a problem since at the end of the shuffling all currency balances remain the same and due to this I don't think it will clash with any other currency property.

Lyaffe, I'm still a bit confused after reading the documentation.  Since multiple people need to participate and mix the same amounts, how does this exactly operate within client?  If I want to mix a coin, do I need to wait for 3 others to mix the same amount, or is it just done automatically without the knowledge of others who are participating in the mixing? 
Title: Re: MS Coin for Shuffling Nxt
Post by: Riker on January 09, 2015, 10:07:12 pm
Coin shuffling documentation is here https://bitbucket.org/JeanLucPicard/nxt/issue/135
Controlable shouldn't be a problem since at the end of the shuffling all currency balances remain the same and due to this I don't think it will clash with any other currency property.

Lyaffe, I'm still a bit confused after reading the documentation.  Since multiple people need to participate and mix the same amounts, how does this exactly operate within client?  If I want to mix a coin, do I need to wait for 3 others to mix the same amount, or is it just done automatically without the knowledge of others who are participating in the mixing?

The way I envision it, is that you create a "Shuffling" specifying the currency to shuffle, amount and number of registrants. Then you'll wait for anonymous users to join your shuffling, once the required number of users has registered, the process proceeds to the next step automatically.
Title: Re: MS Coin for Shuffling Nxt
Post by: Come-from-Beyond on January 09, 2015, 10:22:54 pm
The way I envision it, is that you create a "Shuffling" specifying the currency to shuffle, amount and number of registrants. Then you'll wait for anonymous users to join your shuffling, once the required number of users has registered, the process proceeds to the next step automatically.

Not completely automatically, client software must be kept online and logged with the passphrase because shuffling is an interactive process. It can even be cancelled if one of the participants won't publish required data within a timeframe (he will be punished for that though).
Title: Re: MS Coin for Shuffling Nxt
Post by: msin on January 09, 2015, 10:24:50 pm
Coin shuffling documentation is here https://bitbucket.org/JeanLucPicard/nxt/issue/135
Controlable shouldn't be a problem since at the end of the shuffling all currency balances remain the same and due to this I don't think it will clash with any other currency property.

Lyaffe, I'm still a bit confused after reading the documentation.  Since multiple people need to participate and mix the same amounts, how does this exactly operate within client?  If I want to mix a coin, do I need to wait for 3 others to mix the same amount, or is it just done automatically without the knowledge of others who are participating in the mixing?

The way I envision it, is that you create a "Shuffling" specifying the currency to shuffle, amount and number of registrants. Then you'll wait for anonymous users to join your shuffling, once the required number of users has registered, the process proceeds to the next step automatically.

Got it, I have time, I thought it was going to be ready with MS launch :)
Title: Re: MS Coin for Shuffling Nxt
Post by: 2Kool4Skewl on January 10, 2015, 09:15:18 am
As far as I can tell at the moment, shuffling has no restrictions related to any other currency types. The only restriction is that all shuffling participate register the same number of currency units or NXT.
If we don't run into any issues, shuffling will be enabled for any currency which was not marked explicitly as non-shuffleable.
The current code (currently in Alpha stage) also allows shuffling NXT itself thus cutting the middleman currency, which is a much more common use case in my view, but we are still debating if to allow this or not.
What is your opinion ?

Disallow.

1 - It's probably best to keep the TF algo as simple as possible.
2 - If coin mixing were ever to become "illegal" in a certain jurisdiction, people could still own NXT and use the platform.
3 - There is no reason to burden NXT with additional complication when it can easily be extracted to another layer and still utilized for mixing NXT if wanted.
Title: Re: MS Coin for Shuffling Nxt
Post by: Daedelus on June 25, 2015, 05:19:39 pm
Just posting for visability

"Coin shuffling documentation is here https://bitbucket.org/JeanLucPicard/nxt/issue/135"

Maybe add to OP msin?
Title: Re: MS Coin for Shuffling Nxt
Post by: Nxter on June 25, 2015, 05:37:59 pm
Is it confirmed that MS coin shuffling be on 1.6?
Title: Re: MS Coin for Shuffling Nxt
Post by: Daedelus on July 02, 2015, 10:38:42 am
Is it confirmed that MS coin shuffling be on 1.6?

Nothing is confirmed until it is released... but having said that there is this...

MS Coin shuffling confirmed for NRS 1.6

Most businesses like Jetcoin are likely to need only a small subset of all Nxt features - I guess balance leasing, aliases, DGS, MS (or at least some MS currency versions), coin shuffling (coming in 1.6), are not needed and not relevant for Jetcoin.

Source: https://bitcointalk.org/index.php?topic=831202.msg11376452#msg11376452

Updated OP to reflect this.
Title: Re: MS Coin for Shuffling Nxt
Post by: Nxter on July 04, 2015, 12:09:21 am
Is it confirmed that MS coin shuffling be on 1.6?

Nothing is confirmed until it is released... but having said that there is this...

MS Coin shuffling confirmed for NRS 1.6

Most businesses like Jetcoin are likely to need only a small subset of all Nxt features - I guess balance leasing, aliases, DGS, MS (or at least some MS currency versions), coin shuffling (coming in 1.6), are not needed and not relevant for Jetcoin.

Source: https://bitcointalk.org/index.php?topic=831202.msg11376452#msg11376452

Updated OP to reflect this.

Thanks for the info. :)
Title: Re: MS Coin for Shuffling Nxt
Post by: Brangdon on July 18, 2015, 05:08:34 pm
2 - If coin mixing were ever to become "illegal" in a certain jurisdiction, people could still own NXT and use the platform.
It's hard to say. Logically, they could allow Nxt and disallow mixing. Is using NXT that once got shuffled any different from using NXT that were exchanged for a shuffled MS coin?

Quote
3 - There is no reason to burden NXT with additional complication when it can easily be extracted to another layer and still utilized for mixing NXT if wanted.
From what I hear, it doesn't much much difference to the code. Where-as requiring NXT to be exchanged for an MS coin before, and back afterwards, makes the shuffling significantly more complex for users. Which MS coin do I pick? What if the exchange rate changes? If I really want to shuffle Bitcoin, I have to exchange BTC for NXT and then exchange NXT for XOS, and then back again. It's like we're designing the most hard-to-use system we can.
elective-stereophonic
elective-stereophonic
assembly
assembly