elective-stereophonic
elective-stereophonic
Current 1.7 changelog singapore
Please login or register.

Login with username, password and session length
Advanced search  

News:

Latest Nxt Client: Nxt 1.11.15

Pages: [1] 2 3  All

Author Topic: Current 1.7 changelog  (Read 14135 times)

Jean-Luc

  • Core Dev
  • Hero Member
  • *****
  • Karma: +816/-81
  • Offline Offline
  • Posts: 1610
    • View Profile
Current 1.7 changelog
« on: November 11, 2015, 05:14:14 pm »

In the spirit of keeping the community informed about what is coming in 1.7, here is the changelog, as it is now. All features described are already implemented, this is not a roadmap, this is completed work (for the server part at least, we are still waiting for the UI to be finished and polished).


Coin Shuffling
This feature is based on the paper by Tim Ruffing et al, http://crypsys.mmci.uni-saarland.de/projects/CoinShuffle/coinshuffle.pdf .

Coin shuffling can be used to perform mixing of NXT, MS currencies (unless created as non-shuffleable), or AE assets. Any account can create a new shuffling, specifying the holding to be shuffled, the shuffle amount, number of participants required, and registration deadline. This is done using the shufflingCreate API. The subsequent shuffling steps can be done either manually, by using the shufflingRegister (for accounts other than the creator), shufflingProcess, shufflingVerify or shufflingCancel APIs, or, much more conveniently, by starting an automated Shuffler, using the startShuffler API. Once started, the Shuffler monitors the blockchain state for transactions relevant to the specified shuffle, and automatically submits the required transactions on behalf of the user, performing shuffle processing, verification, or cancellation as needed. To do this, the Shuffler is required to keep the user secret phrase in memory, therefore it should be run on a trusted local machine only. A restart or a crash of the node requires the shuffler to be started again using the startShuffler API, as it should never save the user secret phrase on disk.

To participate in a shuffling, a deposit of 1000 NXT is needed, in addition to the amount of currency or asset being shuffled. Or if shuffling NXT, the amount of the shuffle must exceed this 1000 NXT minimum. If the shuffling completes successfully, this amount is added to the recipient account balance, to allow it to send outgoing transactions (as it is required that only new, unused accounts are specified as recipients). If the shuffle fails due to a registered participant failing to participate as required, or intentionally submitting false data, the participant responsible for the shuffle cancellation is penalized by retaining this deposit and sending it to the forger of the shuffle finish block instead. If a shuffle is cancelled because the required number of participants is not met, nobody is penalized and all deposits are refunded.

Query APIs to retrieve currently running shufflers, shufflings, and shuffling participants are: getAllShufflings, getAccountShufflings, getAssignedShufflings, getHoldingShufflings, getShufflers, getShuffling, and getShufflingParticipants.

If desired, finished shufflings can be automatically deleted from the database if the nxt.deleteFinishedShufflings property is set to true (default is false).

The fee for creating a shuffling or registering in one is 1 NXT, for the shuffling process or shuffling cancel transactions 10 NXT, and for the verify transaction 1 NXT.


Account control for phased transactions
Any account can be restricted to only be allowed to issue phased transactions subject to a specific voting model. This is achieved by the account submitting a setPhasingOnly transaction using the setPhasingOnlyControl API. The getPhasingOnlyControl API can be used to retrieve the status of an account phasing control, and getAllPhasingOnlyControls to get all accounts subject to phasing control with their respective restrictions.

Once set, the phasing only account control can only be disabled or changed with another setPhasingOnly transaction, itself subject to the currently set phasing restrictions.

Note that by-transaction and by-hash voting models are not allowed for phasing control, and setting voting model to none is used to disable the control.


Immediate release of phased transactions on approval
Phased transactions with a voting model that does not depend on account balance (such as by-transaction or by-hash), or by-account with no minimum balance and with a whitelist, will be released before their finish height as soon as approved (in the block in which the transaction causing their approval is executed), if possible. Such early finish is guaranteed for transaction types known to be phasing safe. For others, if the early finish does not succeed due to the transaction failing validation at this height or conflicting with another transaction in the same block, a second, final release attempt will be performed at finish height.


New base target adjustment algorithm
Average block times will be 60 s, with 1440 blocks per day. Block times should practically never exceed 10 min.

Limit of 1000 NXT on minimum forging balance. This applies to the total of the account own guaranteed balance plus any balances leased to it, but not to each individual balance lease. An account with balance lower than the limit can still lease its balance to another.


Account properties
Those are name / value pairs that can be set on any account (except Genesis), by either the account owner, or by another account. Names are limited to 32 characters, and values to 160 characters. Names are unique per account and per setter account, but not globally unique. Account properties cannot be transferred between accounts. The setter of an account property can edit it by replacing its value with another. Either the setter, or the recipient (if different) of an account property can delete it. There is no limit on the number of properties an account can have. Fee for setting account property is 1 NXT for value up to 32 chars, with additional 1 NXT fee for every 32 chars after that.

Account properties are managed using the setAccountProperty and deleteAccountProperty APIs. To query the properties of an account, or those set by an account, the getAccountProperties API can be used.


Singleton assets
Issuing an asset with a quantity of 1, decimals 0, and description length not exceeding 160 characters, will require a base minimum fee of 1 NXT only, instead of the regular 1000 NXT asset issuance fee. For description of more than 32 chars, an extra 1 NXT fee is added for each 32 chars. Asset name for singleton assets is limited to 10 chars, same as for regular assets.


Throttling of unique resource allocation transactions
Asset issuance (excluding singleton assets), monetary system currency issuance, and alias assignment (excluding re-assignment), will be limited to only one transaction of each type accepted per block.


Spreading back block fees for asset and currency issuance
The transaction fees for asset (excluding singleton assets) and currency issuance will be split between the forgers of the current and the previous three blocks in a 4:3:2:1 ratio.


Deletion of asset shares will be performed as a separate AssetDelete transaction type instead of as sending the shares to Genesis. Sending shares to Genesis will no longer be allowed.


Fees and size limit changes

Several transaction types or attachments will have new fees and size limits, to encourage users to utilize the prunable versions when available, and to make fees proportionate to actual blockchain space consumed.

Aliases:
Base fee 2 NXT, with 2 NXT additional fee for each 32 chars of name plus URI total length, after the first 32 chars. Name and URI size limits remain at 100 and 1000 chars respectively.

Messages and EncryptedMessages (non-prunable):
Maximum length reduced to 160 bytes. 1 NXT fee for each 32 bytes after the first 32 bytes. For encrypted messages, the length is measured excluding the nonce and the 16 byte AES initialization vector.

Fees and size limit for prunable messages remain unchanged.

AccountInfo:
Base fee 1 NXT, with 2 NXT additional fee for each 32 chars of name plus description total length, after the first 32 chars. Name and description size limits remain at 100 and 1000 chars. AccountInfo transactions throttled at one per block.

Polls:
Base fee 10 NXT for polls with up to 20 options, and total size of poll name plus poll description plus total option length not exceeding 320 chars. For each option above 20, an additional fee of 1 NXT, and for each 32 chars after 320, an additional fee of 1 NXT. Poll creation throttled to one per block. Name, description, and option length limits remain at 100, 1000, and 100 chars respectively.

DGS Listing:
Base fee 2 NXT, with 2 NXT additional fee for each 32 chars of name plus description total length, after the first 32 chars. Name and description size limits remain at 100 and 1000 max. DGS Listing throttled at one per block.

DGS Delivery:
Base fee 1 NXT, with 2 NXT additional fee for each 32 bytes of encrypted goods data after the first 32 bytes, nonce and AES initialization bytes excluded. Encrypted goods data size limit remains 1000 bytes.


Logged
GPG key fingerprint: 263A 9EB0 29CF C77A 3D06  FD13 811D 6940 E1E4 240C
NXT-X4LF-9A4G-WN9Z-2R322

Sebastien256

  • Hero Member
  • *****
  • Karma: +169/-24
  • Offline Offline
  • Posts: 2820
  • ^LOOK UP^ = Nxt community!
    • View Profile
Re: Current 1.7 changelog
« Reply #1 on: November 11, 2015, 05:15:36 pm »

Thanks you JL, great post!
Logged
Please drop your ideas concerning Nxt and/or NRS in this topic -> List of feature request for Nxt and/or NRS (with the full list in OP).

_mr_e

  • Hero Member
  • *****
  • Karma: +88/-18
  • Offline Offline
  • Posts: 956
    • View Profile
Re: Current 1.7 changelog
« Reply #2 on: November 11, 2015, 06:08:32 pm »

Who has reviewed the shuffle system? Does this mean we should be able to deposit btc into mgw and shuffle the superbtc, effectively creating a super cheap bitcoin mixer?
Logged

Ore Mountains

  • Jr. Member
  • **
  • Karma: +5/-0
  • Offline Offline
  • Posts: 33
  • Hashes to hashes
    • View Profile
Re: Current 1.7 changelog
« Reply #3 on: November 11, 2015, 06:12:39 pm »

Cool, also thanks for linking the paper!
Logged

EvilDave

  • Hero Member
  • *****
  • Karma: +341/-40
  • Offline Offline
  • Posts: 1789
    • View Profile
    • NXT Foundation
Re: Current 1.7 changelog
« Reply #4 on: November 11, 2015, 06:21:25 pm »

Who has reviewed the shuffle system? Does this mean we should be able to deposit btc into mgw and shuffle the superbtc, effectively creating a super cheap bitcoin mixer?

Tim Ruffing did the review.....
Here's his original paper on coin shuffling again:
https://www.petsymposium.org/2014/papers/Ruffing.pdf
Logged
Nulli Dei, nulli Reges, solum NXT
NXT Donations: NXT-BNZB-9V8M-XRPW-3S3WD
We will ride eternal, shiny and chrome!

_mr_e

  • Hero Member
  • *****
  • Karma: +88/-18
  • Offline Offline
  • Posts: 956
    • View Profile
Re: Current 1.7 changelog
« Reply #5 on: November 11, 2015, 06:24:12 pm »

Who has reviewed the shuffle system? Does this mean we should be able to deposit btc into mgw and shuffle the superbtc, effectively creating a super cheap bitcoin mixer?

Tim Ruffing did the review.....
Here's his original paper on coin shuffling again:
https://www.petsymposium.org/2014/papers/Ruffing.pdf

Awesome, I saw a forum post a while back where he was critiquing some issues, I never saw a follow up that he had okd the implementation. but that's great if so! Do you have a link if it was publicly discussed?
Logged

farl4bit

  • Global Moderator
  • Hero Member
  • *****
  • Karma: +210/-45
  • Offline Offline
  • Posts: 3461
    • View Profile
    • Blockchain Twitter
Re: Current 1.7 changelog
« Reply #6 on: November 11, 2015, 06:34:52 pm »

What a great changelog. Although I don't understand all of it, it looks really promising. How is it going with the development? Hard work? Allnighters?
Logged

bidji29

  • Sr. Member
  • ****
  • Karma: +53/-11
  • Offline Offline
  • Posts: 250
    • View Profile
Re: Current 1.7 changelog
« Reply #7 on: November 11, 2015, 07:03:05 pm »

What is the reason for limiting those special transaction at 1/block?
I guess it's to limit the abuse and bloat but 1 is very low.
WHy not make it like 3 or 5, it would cover our base for longer in case the use of NXT increase
Logged

Seccour

  • Sr. Member
  • ****
  • Karma: +68/-15
  • Offline Offline
  • Posts: 381
    • View Profile
Re: Current 1.7 changelog
« Reply #8 on: November 11, 2015, 07:08:04 pm »

" Throttling of unique resource allocation transactions
Asset issuance (excluding singleton assets), monetary system currency issuance, and alias assignment (excluding re-assignment), will be limited to only one transaction of each type accepted per block. "

Why do you want to limit it ?
Logged
SecFund : 9125535795764729261 (Asset ID)

Jean-Luc

  • Core Dev
  • Hero Member
  • *****
  • Karma: +816/-81
  • Offline Offline
  • Posts: 1610
    • View Profile
Re: Current 1.7 changelog
« Reply #9 on: November 11, 2015, 07:19:21 pm »

The reason for throttling was discussed before, it is one of the ways to protect against forgers acquiring unique resources for free. The other is the spreading back of fees for such transactions.

Just like fees, the throttling limit can be changed at the next hard fork if needed. We don't get a sustained flow of 60 new assets per hour, or currencies, or aliases. And throttling just means your transaction gets to wait until the next block. If in a hurry, sending it with a higher fee will make sure it gets in a block faster.
Logged
GPG key fingerprint: 263A 9EB0 29CF C77A 3D06  FD13 811D 6940 E1E4 240C
NXT-X4LF-9A4G-WN9Z-2R322

kushti

  • Core Dev
  • Sr. Member
  • ****
  • Karma: +184/-5
  • Offline Offline
  • Posts: 384
  • Nxt Core & Apps Dev
    • View Profile
Re: Current 1.7 changelog
« Reply #10 on: November 11, 2015, 07:27:28 pm »

Is some help with tests writing / code reviewing needed? Please PM me if so
Logged
for donations / messages: NXT-PKXM-WH25-UXXG-CJAVD (alias: kushti)

allwelder

  • Hero Member
  • *****
  • Karma: +196/-13
  • Offline Offline
  • Posts: 1867
  • NxtChina.org
    • View Profile
    • NxtChina.org
Re: Current 1.7 changelog
« Reply #11 on: November 11, 2015, 11:59:16 pm »

Thanks.


Singleton assets
Issuing an asset with a quantity of 1, decimals 0, and description length not exceeding 160 characters, will require a base minimum fee of 1 NXT only, instead of the regular 1000 NXT asset issuance fee. For description of more than 32 chars, an extra 1 NXT fee is added for each 32 chars. Asset name for singleton assets is limited to 10 chars, same as for regular assets.

What's the purpose of this feature?
Logged
NxtChina |Weibo |Twitter Donation welcomed:NXT-APL9-66GU-K8LY-B3JJJ

Sabertooth

  • Jr. Member
  • **
  • Karma: +3/-1
  • Offline Offline
  • Posts: 53
    • View Profile
Re: Current 1.7 changelog
« Reply #12 on: November 12, 2015, 12:14:37 am »

Thanks.


Singleton assets
Issuing an asset with a quantity of 1, decimals 0, and description length not exceeding 160 characters, will require a base minimum fee of 1 NXT only, instead of the regular 1000 NXT asset issuance fee. For description of more than 32 chars, an extra 1 NXT fee is added for each 32 chars. Asset name for singleton assets is limited to 10 chars, same as for regular assets.

What's the purpose of this feature?

Use your imagination, gold bars with serial numbers etc....
Logged

allbits

  • Full Member
  • ***
  • Karma: +31/-3
  • Offline Offline
  • Posts: 221
    • View Profile
Re: Current 1.7 changelog
« Reply #13 on: November 12, 2015, 01:41:52 am »

Use cases for singleton assets? - How about the issuance of negotiable instruments?

https://en.wikipedia.org/wiki/Negotiable_instrument

Let's say twinwinnerd wants to borrow money from me?  I lend him the money, on certain terms, and he sends me a singleton asset that describes these terms.  Upon the expiry of a certain defined period, the bearer of the asset can present to twinwinnerd and he will honor the obligation (or default, as the case may be).

During the time period in question, I might choose to hold the singleton asset or transfer it to another person by listing it on the AE or on the DGS or on FreeMarket.  In the middle ages, bills of exchange traversed the continent from one holder to another, at various discount rates.  Of course, one main purpose for this was to span space and time, and therefore my example may be merely a quaint reference to a former time rather than an actual use case.

Or perhaps asset issuers might decide to accept "Bills of Exchange" in exchange for the issuance of assets, for example, if they trusted the creditor in question.  They then might be able to sell the Bill of Exchange on the marketplace for immediate cash sometime later, provided they offered a satisfactory discount rate.  Of course, the creditor could easily do this directly but, who knows, such an exchange might make sense for all the parties involved.

Or perhaps an asset owner of an asset that is being actively traded might wish to lend stock to a market maker who wants to take short positions (or to allow others to take short positions).  They could agree on detailed terms about time to repay, form of repayment and compensation/interest.  The stock lender would then have a negotiable instrument that, perhaps, he could sell prior to expiration if the need arose or if he wanted to exit the position at a favorable time prior to expiration of the instrument.
Logged

qq2536007339

  • Hero Member
  • *****
  • Karma: +42/-9
  • Offline Offline
  • Posts: 512
    • View Profile
Re: Current 1.7 changelog
« Reply #14 on: November 12, 2015, 01:52:11 am »

What's a great changelog.
Logged
你送我阿朵,我是要的。ARDOR-DJ68-PG7W-4JEU-2LU5T

allbits

  • Full Member
  • ***
  • Karma: +31/-3
  • Offline Offline
  • Posts: 221
    • View Profile
Re: Current 1.7 changelog
« Reply #15 on: November 12, 2015, 04:41:20 am »

Also, bearer bonds are a use case for singleton assets

https://en.wikipedia.org/wiki/Bearer_bond

Supernet, for example, could issue bearer bonds, with a set face value, that pay interest or dividends of some kind for a period of time.  These bonds could then be freely tradable in an after market.
Logged

Sebastien256

  • Hero Member
  • *****
  • Karma: +169/-24
  • Offline Offline
  • Posts: 2820
  • ^LOOK UP^ = Nxt community!
    • View Profile
Re: Current 1.7 changelog
« Reply #16 on: November 12, 2015, 06:57:14 am »

Thanks.


Singleton assets
Issuing an asset with a quantity of 1, decimals 0, and description length not exceeding 160 characters, will require a base minimum fee of 1 NXT only, instead of the regular 1000 NXT asset issuance fee. For description of more than 32 chars, an extra 1 NXT fee is added for each 32 chars. Asset name for singleton assets is limited to 10 chars, same as for regular assets.

What's the purpose of this feature?
one possibility:
https://nxtforum.org/core-development-discussion/list-of-feature-request-for-nrs/msg184211/#msg184211

I think this feature will be use for the mmo voxelnaults
Logged
Please drop your ideas concerning Nxt and/or NRS in this topic -> List of feature request for Nxt and/or NRS (with the full list in OP).

bcdev

  • Hero Member
  • *****
  • Karma: +162/-22
  • Offline Offline
  • Posts: 666
    • View Profile
Re: Current 1.7 changelog
« Reply #17 on: November 12, 2015, 08:33:20 am »

Thanks.


Singleton assets
Issuing an asset with a quantity of 1, decimals 0, and description length not exceeding 160 characters, will require a base minimum fee of 1 NXT only, instead of the regular 1000 NXT asset issuance fee. For description of more than 32 chars, an extra 1 NXT fee is added for each 32 chars. Asset name for singleton assets is limited to 10 chars, same as for regular assets.

What's the purpose of this feature?
Imagine a car that opens only to a person who has the token.
Then buying/selling that car is literally "buy a token on AE" and drive to it's location. The car will recognize you automatically as a new owner.
Logged

coinomat

  • Hero Member
  • *****
  • Karma: +214/-18
  • Offline Offline
  • Posts: 1520
    • View Profile
Re: Current 1.7 changelog
« Reply #18 on: November 12, 2015, 08:46:17 am »

Lot's of action could come out of this.
asset deletion is a nice feature.
To be frank I'm not really worried about coin shuffling any more, in the short run it just won't have sufficient volume to really matter
Logged
Time to go further

cc001

  • Hero Member
  • *****
  • Karma: +68/-4
  • Offline Offline
  • Posts: 829
    • View Profile
Re: Current 1.7 changelog
« Reply #19 on: November 12, 2015, 08:56:30 am »

To be frank I'm not really worried about coin shuffling any more, in the short run it just won't have sufficient volume to really matter
Why are you worried about coin shuffling (or have been in the beginning)? I think it is absolutely crucial for every cryptocurrency (including BTC) to be completely anonymous to become mainstream (and I mean regular use cases, not blackmarket stuff).
It is a GREAT step forward for Nxt to implement that protocol, we should promote/market that heavily
Logged
cc001 Personal - NXT-8RXS-2SSK-RNF2-HSNL8
NxtReporting.com - The Nxt Asset Exchange Portfolio Manager with Profitability Tracking - Donations are greatly appreciated on NXT-5W4G-GAR6-JHJP-H8ZTW
Pages: [1] 2 3  All
 

elective-stereophonic
elective-stereophonic
assembly
assembly