Bitcoin Forum
May 08, 2024, 12:07:12 PM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1] 2 3 4 5 »  All
  Print  
Author Topic: Nxt Monetary System launched: Now on Nxt Testnet!  (Read 8436 times)
Damelon (OP)
Legendary
*
Offline Offline

Activity: 1092
Merit: 1010



View Profile
December 17, 2014, 04:23:28 PM
Last edit: December 17, 2014, 04:42:17 PM by Damelon
 #1

Hello people,

Beware Wall-of-Text below...

tl;dr version:
The Nxt Monetary System is a feature so distinct that I think it merits a separate topic.
Wíth the Monetary System, it becomes possible to issue Nxt backed currencies on top of the Nxt blockchain. These currencies can either work as a PoS currency ór a PoW currency.
The currencies are created by "locking" a certain amount of Nxt as collateral for all the coins subsequently released. Below, you can read the several parameters that can be set for these currencies, as well as several possible use cases for this feature of Nxt.

The Monetary System is currently running on the Nxt Testnet, so if you want to have a test drive, and even better: go on a bughunt, please join us and fiddle around with it.

How to use TestNet!
CHECK THIS VERY WELL!

1. Download last NRS release into some folder, say "testnxt". Version 1.4.0e can be found here: https://nxtforum.org/nrs-releases/nrs-v1-4-0e/
2. Unzip the archive, and go to folder testnxt\nxt\conf
3. Edit file nxt.properties: find the string nxt.isTestnet=false, and change it to nxt.isTestnet=true
4. Navigate to testnxt\nxt\, and start run.bat (windows) or ./run.sh (linux).
5. Open http://localhost:6876/ in your browser.
6. Request TestNxt in this thread: https://nxtforum.org/testnet/some-testnxt-to-test-asset-exchange/
7. Happy fiddling (and testing)

Overview

The "Currency" entity is the basic building block of the NXT Monetary System, currency has a unique name and code and uniqueness is guaranteed by the protocol, currencies can be deleted and their code can be reused under certain conditions.

The total currency supply is divisible into currency units. Like assets, currency units supports decimal positions implemented as a client side feature. The maximum number of currency units which can be issued per currency is similar to NXT i.e. 10^9 * 10^8. The actual maximum units supply is set by the currency issuer. The currency issuer is the account which issues the currency and pays the issuance fee. The issuer is responsible for setting the currency properties and in some configurations has additional control over the currency usage. Like asset balance, currency units can be transferred between accounts.

Currency Properties


The currency entity supports several properties. Properties can be mixed and matched in various ways to compose the currency type. The currency type then controls the inner workings of the currency. The list of available currency properties is as follows:
EXCHANGEABLE - the currency can be exchanged with NXT. Holders of the currency can publish an exchange offer specifying the buy and sell rate of the currency much the same as banks or currency exchanges publish their exchange rates . Each account can publish only a single exchange offer at any given time. Exchange offers has an expiry block after which they are no longer in effect. Buyers and sellers can issue exchange requests to match published exchange offers. Unlike asset bid/ask orders, exchange requests are not saved, they are either executed immediately (fully or partially) or not executed at all. A match of exchange offer with a buy or sell exchange request creates an exchange entity which represents the transfer of currency units in return to NXT balance and causes the relevant account balances to update. Issuing an exchange offer reduces the NXT and currency balance of the offer temporary as long as the exchange offer is in effect. Exchange offers also specify the limit on the number of exchanged units which can be larger than the number of units offered. When a buy exchange request matches an exchange offer the number of units offered for sell is reduced and the number of units offered to buy is increased as long as the limit has not been reached. Once the exchange limit of an exchange offer has been reached, This exchange offer can no longer be used.
CONTROLLABLE - currency property suitable for currencies which need to track an external entity. It imposes the following limitations on the currency (1) Currency can be transferred only to/from the issuer account (2) only the issuer account can publish exchange offers. The issuer account can issue a large (practically infinite) supply of units in advance, then transfer units to accounts or offer to exchange units to reflect actual transactions which takes place in an external system. The large supply of units in the issuer account can be used to mimic the effect of creating units out of nowhere to support features such as creating new units and interest payments.
RESERVABLE - currency units are not issued immediately. Instead the currency issuer sets a block height at which the currency is to be issued and a limit of NXT per unit needed in order to issue the currency. Currency "founders" then spend their NXT to reserve their currency stake. If the amount of NXT per unit needed in order to issue the currency is not reserved before reaching the block height the issuance is cancelled and funds are returned minus fees. If the required reserve is allocated, the currency is issued and units are split between founders according to their proportional stake of invested NXT. In case of rounding, leftovers are sent to the issuer account. See below discussion of usage scenarios for Reservable currency.
CLAIMABLE - currency units of resereable currency can later be claimed at the same NXT per unit rate reached when reserving the currency. The ability to claim a currency at a certain rate imposes some practical limits on the rates in which users would want to exchange it. However claimable currency can also be exchanged if only for the purpose of exchanging the whole currency supply so that the currency can be deleted.
MINTABLE - currency can be minted using proof of work algorithms much the same as Bitcoin. Unlike Bitcoin mining, minting currency does not secure the network (this is done by NXT). Minting is used solely for creating new currency units and serve as the only mechanism to increase the number of available units after the currency issuance.
NON_SHUFFLEABLE - this property indicates that in the future this currency cannot participate in coin shuffling. By default currencies are allowed to participate in shuffling.
Properties are combined into an Integer bit mask designated as the Currency type.

Currency Exchange
For exchangeable currency, each currency holder account, can publish a single exchange offer specifying the buy rate and sell rate vs NXT and the number of units she is willing to exchange (which cannot exceed her available currency units and NXT balance). Users can observe all currency exchange offers (intuitively similar to fiat exchange offices) and try to match them with buy/sell exchange requests. An exchange offer has an expiration height as well as a limit on the total number of units which can be exchanged. When units are bought from an exchange offer the number of units to sell increases automatically and vise versa. The publisher can also limit the total transaction volume of currency units traded for a specific exchange offer.

Deleting a Currency
Since the available currency codes are limited to 3, 4 or 5 uppercase letters, the total number of codes is limited to 26^3 + 26^4 + 26^5 - 1 = 12355927 unique values (The code "NXT" is reserved), it is likely that some of these codes will have value by themselves. Therefore deleting a currency is possible under certain conditions depending on the currency type. Users may re-issue or delete a currency and then issue a new currency with the same code but with different properties. In order to delete or re-issue a currency an account must poses all the currency units (and additional conditions apply based on the currency type)

Creating new Currency Units
The only way to create new currency units after issuing a currency is using proof of work minting. Other methods of creating units are susceptible to denial of service attacks and/or sock puppets and are therefore not allowed. The controlable currency type provides a partial solution for creating new units, by allowing the currency issuer account to treat her supply as a treasury and only consider units outside of this account as the total currency supply. This approach requires users to trust the currency issuer which can increase the currency supply at any time.

Minting
Users can issue minting requests in order to mint additional currency units. Each minting request triggers a hash calculation based on the submitted data and the currency hash algorithm. The resulting hash code is compared to the target value derived from the current currency difficulty. Minimal and maximal currency difficulty values and minting algorithm are specified when issuing the currency and cannot be changed later. The expected number of hash calculations (i.e. difficulty) of minting the first unit is 2^minDifficulty while the difficulty of minting the last unit is 2^maxDifficulty. Difficulty increases linearly from min to max based on the ratio between the current number of units and the total supply. Difficulty increases linearly with the number of units minted per CurrencyMint request, small minters can mint only a few units per request while large minters can mint large number of units per request. The number of units per minting request is limited to 1/10000 of the total unit supply. Minting is limited to a single minting transaction per block/account/currency. Currency issuers can specify initial supply of units as a "pre-mint" supply assigned to the issuer account then use crowd funding by making the currency RESERVABLE and EXCHANGEABLE. Once the currency becomes active the delta between the current supply (pre-minted and reserved) and total supply can be minted. The NRS provides a Java based, reference implementation mInter, which can be used for minting. In practice we expect users to enhance this minter to calculate hash codes using their Asics or GPUs, trying to match the current target, and once solving a hash, submit a currency mint transaction (thus paying a fee).
If indeed the hash code is smaller than the target the currency units are credited to the sender account.

Store of Value
The combination of RESERVABLE and CLAIMABLE properties can be used to allocate initial value for a currency by locking NXT. Once the currency is issued the reserved NXT are locked and the only way to release them is to claim back the currency units in return to NXT. This provides the currency a value based on the locked NXT balance. Note: locked NXT do not participate in forging, therefore, in theory its possible that large amount of NXT becomes locked as currency store of value thus reducing the amount of NXT used for securing the network, we are aware of this problem and we'll monitor it closely. We do not expect this to become a major problem any time soon.

Crowd Funding
The combination of RESERVABLE and (not CLAIMABLE) properties can be used for crowd funding, in this configuration the NXT balance reserved by founders, is not locked, instead it is sent to the currency issuer account once the currency becomes active. The issuer can use these NXT for its operations and the founders cannot claim back their currency units, only exchange it based on the published exchange offers.

Fees
Currency issuance fee is based on the length of the currency code.
3 Letters - 25000 NXT
4 Letters - 1000 NXT
5 Letters - 40 NXT
Re-issuing an existing currency with different properties costs 40 NXT regardless of the number of letters. All other currency transaction (as of today) has a fee on 1 NXT.

Member of the Nxt Foundation | Donations: NXT-D6K7-MLY6-98FM-FLL5T
Join Nxt Slack! https://nxtchat.herokuapp.com/
Founder of Blockchain Workspace | Personal Site & Blog
1715170032
Hero Member
*
Offline Offline

Posts: 1715170032

View Profile Personal Message (Offline)

Ignore
1715170032
Reply with quote  #2

1715170032
Report to moderator
1715170032
Hero Member
*
Offline Offline

Posts: 1715170032

View Profile Personal Message (Offline)

Ignore
1715170032
Reply with quote  #2

1715170032
Report to moderator
1715170032
Hero Member
*
Offline Offline

Posts: 1715170032

View Profile Personal Message (Offline)

Ignore
1715170032
Reply with quote  #2

1715170032
Report to moderator
According to NIST and ECRYPT II, the cryptographic algorithms used in Bitcoin are expected to be strong until at least 2030. (After that, it will not be too difficult to transition to different algorithms.)
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction.
1715170032
Hero Member
*
Offline Offline

Posts: 1715170032

View Profile Personal Message (Offline)

Ignore
1715170032
Reply with quote  #2

1715170032
Report to moderator
1715170032
Hero Member
*
Offline Offline

Posts: 1715170032

View Profile Personal Message (Offline)

Ignore
1715170032
Reply with quote  #2

1715170032
Report to moderator
1715170032
Hero Member
*
Offline Offline

Posts: 1715170032

View Profile Personal Message (Offline)

Ignore
1715170032
Reply with quote  #2

1715170032
Report to moderator
Istanbul34
Full Member
***
Offline Offline

Activity: 232
Merit: 100


View Profile
December 17, 2014, 04:34:54 PM
 #2

This release will definitely change the Cryptocurrency landscape.
barbierir
Hero Member
*****
Offline Offline

Activity: 515
Merit: 502



View Profile WWW
December 17, 2014, 04:40:16 PM
 #3

It is one of those things that you don't know exactly what it will be good for but, at the same time, you sense that it's great and that people will find many ingenious and useful applications  Cool  crowdfunding is only the first one

◈▣ KOMODO ● Set Your Ideas Free ▣◈
.......AN ECOSYSTEM FOR NATIVE BLOCKCHAINS.......
Blockchain Generator | Decentralized Crowdfunding | Decentralized Exchange | Bitcoin Security | Zero-Knowledge Proofs | Blockchain Interoperability | Scalable Infrastructure
habraken
Sr. Member
****
Offline Offline

Activity: 251
Merit: 250


View Profile
December 17, 2014, 05:42:41 PM
 #4

Use for loyalty points/tokens? Smiley
Less technical skills required than when you have to create/clone your own crypto.
Hollowman338
Legendary
*
Offline Offline

Activity: 1246
Merit: 1000



View Profile
December 17, 2014, 05:51:00 PM
 #5

Why not just use NXT itself?  What utility will this feature provide?
Come-from-Beyond
Legendary
*
Offline Offline

Activity: 2142
Merit: 1009

Newbie


View Profile
December 17, 2014, 06:05:10 PM
 #6

Why not just use NXT itself?  What utility will this feature provide?

Decentralization2
tyz
Legendary
*
Offline Offline

Activity: 3360
Merit: 1531



View Profile
December 17, 2014, 06:57:03 PM
 #7



NXT is pure innovation!
fullhouse
Sr. Member
****
Offline Offline

Activity: 364
Merit: 250


View Profile
December 17, 2014, 07:01:57 PM
 #8

i will get some testnet coin , let's see what will happen then

Damelon (OP)
Legendary
*
Offline Offline

Activity: 1092
Merit: 1010



View Profile
December 17, 2014, 07:06:15 PM
 #9

i will get some testnet coin , let's see what will happen then

For more info specific to using this release, please keep an eye on https://nxtforum.org/nrs-releases/nrs-v1-4-0e/

It's still in testing, so things are less intuitive than they will be in the stable release.  Smiley

Member of the Nxt Foundation | Donations: NXT-D6K7-MLY6-98FM-FLL5T
Join Nxt Slack! https://nxtchat.herokuapp.com/
Founder of Blockchain Workspace | Personal Site & Blog
fullhouse
Sr. Member
****
Offline Offline

Activity: 364
Merit: 250


View Profile
December 17, 2014, 07:12:58 PM
 #10

i will get some testnet coin , let's see what will happen then

For more info specific to using this release, please keep an eye on https://nxtforum.org/nrs-releases/nrs-v1-4-0e/

It's still in testing, so things are less intuitive than they will be in the stable release.  Smiley
thanks , will join the communication soon

crimi
Full Member
***
Offline Offline

Activity: 147
Merit: 100


View Profile
December 17, 2014, 07:21:27 PM
 #11

Made my own currency and started minting. To see the monetary system in action is damn cool.
sniveling
Sr. Member
****
Offline Offline

Activity: 719
Merit: 250


View Profile
December 17, 2014, 07:31:37 PM
 #12

How long until it's on the main net?
martismartis
Legendary
*
Offline Offline

Activity: 1162
Merit: 1005


View Profile
December 17, 2014, 07:45:38 PM
 #13

Just reposting from nxt forum:

GJ devs, open node here:

http://5.196.1.215:6876/index.html

If you want to play with it but don't have the time to setup one.
Damelon (OP)
Legendary
*
Offline Offline

Activity: 1092
Merit: 1010



View Profile
December 17, 2014, 07:45:59 PM
 #14

Made my own currency and started minting. To see the monetary system in action is damn cool.

I've not yet figured out how to mint.
Could you maybe explain to less technically adept people (me)?  Grin

How long until it's on the main net?

Depends on how well this test goes, probably.
We've heard no firm dates yet, but maybe the development manager ChuckOne can tell us.

Member of the Nxt Foundation | Donations: NXT-D6K7-MLY6-98FM-FLL5T
Join Nxt Slack! https://nxtchat.herokuapp.com/
Founder of Blockchain Workspace | Personal Site & Blog
BitSwe
Newbie
*
Offline Offline

Activity: 38
Merit: 0


View Profile
December 17, 2014, 07:46:12 PM
 #15

Cool, I'll keep my eyes on this one ...
Labteck
Sr. Member
****
Offline Offline

Activity: 311
Merit: 250


View Profile
December 17, 2014, 07:57:21 PM
 #16

Cool! when will go real NXT?

▄████████████████████████████████████████████████████████▄
██████████████████████████████████████████████████████████
██████████████████████████████████████████████████████████
██████████████████████████████████████████████████████████
██████████████████████████████████████████████████████████
██████████████████████████████████████████████████████████
██████████████████████████████████████████████████████████
████████████████████  █████████████████████████████████████
███████████████████  ██████████████████████████████████████
██████████████████  ███████████████████████████████████████
██████████████████████████████████████████████████████████
██████████████████████████████████████████████████████████
██████████████████████████████████████████████████████████
 ▀███████████████████████████████████████████████████████▀
       VIORCOIN[by_conty] ▄████████████████████████████████████████████████████████▄
██████████████████████████████████████████████████████████
██████████████████████████████████████████████████████████
██████████████████████████████████████████████████████████
██████████████████████████████████████████████████████████
██████████████████████████████████████████████████████████
██████████████████████████████████████████████████████████
████████████████████  █████████████████████████████████████
███████████████████  ██████████████████████████████████████
██████████████████  ███████████████████████████████████████
██████████████████████████████████████████████████████████
██████████████████████████████████████████████████████████
██████████████████████████████████████████████████████████
 ▀███████████████████████████████████████████████████████▀
        Make International Calls
      Cheap and More Secure
th4o
Member
**
Offline Offline

Activity: 588
Merit: 10


View Profile
December 17, 2014, 07:59:37 PM
 #17

Made my own currency and started minting. To see the monetary system in action is damn cool.

I've not yet figured out how to mint.
Could you maybe explain to less technically adept people (me)?  Grin

How long until it's on the main net?

Depends on how well this test goes, probably.
We've heard no firm dates yet, but maybe the development manager ChuckOne can tell us.


Have a look at the config file. There's a section for minting. After that start minter.sh/bat

It's quite easy Smiley
McDoxy1
Full Member
***
Offline Offline

Activity: 134
Merit: 100


View Profile
December 17, 2014, 09:05:54 PM
 #18

Very cool Smiley
Damelon (OP)
Legendary
*
Offline Offline

Activity: 1092
Merit: 1010



View Profile
December 17, 2014, 09:10:26 PM
 #19

OK, for those confused by "minting"

You need to fill out the following in nxt-default.properties file

#### MINT ####

# Address of the NXT server to which the mint worker submits its transactions (default: localhost)
nxt.mint.serverAddress=localhost

# Specify a mintable currency code
nxt.mint.currencyCode=Coin shortcode

# Secret phrase for the minting account, this secret phrase is sent to the host specified by
# nxt.mint.serverAddress therefore do not specify secret phrase of an account with lots of funds
nxt.mint.secretPhrase=your passphrase

# Number of units to mint per transaction
# The minting difficulty grows linearly with the number of units per mint
nxt.mint.unitsPerMint=1 < no idea exactly what does yet. I left it at 1.

# The initial nonce used for minting
# Set to 0 to start with a random nonce
nxt.mint.initialNonce=0 < left this at 0, too

# Number of concurrency threads used for minting
# Set to 0 allocate one thread per processor core
nxt.mint.threadPoolSize=0 < same

# When set to false mint transactions are not submitted when a hash is solved.
# Set this value to true to perform actual minting
nxt.mint.isSubmitted=true

You then, with Nxt running, need to run either mint.bat or mint.sh.

And voila, you are minting.

If anyone can tell us more about the parameters, that would be nice.  Smiley

Member of the Nxt Foundation | Donations: NXT-D6K7-MLY6-98FM-FLL5T
Join Nxt Slack! https://nxtchat.herokuapp.com/
Founder of Blockchain Workspace | Personal Site & Blog
Equate
Hero Member
*****
Offline Offline

Activity: 770
Merit: 500


View Profile
December 17, 2014, 09:14:42 PM
 #20

NXT never ceases to amaze me , good job guys.
Pages: [1] 2 3 4 5 »  All
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!