Author

Topic: | Nxt | Blockchain Platform | Proof of Stake | Official - page 211. (Read 941382 times)

hero member
Activity: 574
Merit: 500
Our favorite sports car driving, shades wearing, audacious deal proposing Nxter has a new video...


https://bitcointalksearch.org/topic/m.11061636


(Marc De Mesel)
hero member
Activity: 574
Merit: 500
Nxt Startup DeBuNe in top 10 finalists at Singapore Govt-Backed FinTech Accelerator

http://cointelegraph.com/news/113950/singapore-govt-backed-finttech-accelerator-boosts-3-bitcoin-startups

Nice one. Anything we can do to help?
legendary
Activity: 1092
Merit: 1010
Nxt Startup DeBuNe in top 10 finalists at Singapore Govt-Backed FinTech Accelerator

http://cointelegraph.com/news/113950/singapore-govt-backed-finttech-accelerator-boosts-3-bitcoin-startups
legendary
Activity: 1092
Merit: 1010
NRS development release 1.5.1e adding prunable messages!

This is a development release for testing only. Source code is not provided.

https://nxtforum.org/nrs-releases/nrs-v1-5-1e/

Quote
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Release 1.5.1e

https://bitbucket.org/JeanLucPicard/nxt/downloads/nxt-client-1.5.1e.zip

sha256:

7f56babc8bce1ab12117dea86c0225611bb6eb86796de6c7869438a575523722  nxt-client-1.5.1e.zip


This is a development release for testing only. Source code is not provided.


Change log:

This is an experimental release which adds the Prunable Messages feature. It
will be enabled at the same block as the Voting and Phasing features.

This is a required update for all testnet nodes, but is also possible to run
on main net.


New features:

Prunable plain and encrypted messages.

Plain and encrypted messages can now be created as prunable. For a prunable
message, the message data itself is never a part of the transaction bytes.
Instead, only a 32 byte sha256 hash of it is included in the bytes that are
being signed, used to verify the signature, or to generate the full
transaction hash or id. This makes it possible to completely remove the
message data at a later time, keeping only that 32 byte hash, and still be
able to verify the transaction signature and have the transaction hash and
id unaffected by the pruning.

Prunable messages have a predefined lifetime, after which their prunable parts
are deleted from the blockchain. This lifetime is measured starting from the
transaction timestamp of the message. When a node receives a transaction or
a block from a peer, it is only required that the prunable parts of any
prunable message are also included if their expiration time has not yet been
reached. If it has, and a valid message hash is included instead, the block or
transaction will still be accepted.

Currently the minimum lifetime of all prunable data is set to 24 h for testnet,
to allow easier testing of this feature. For main net, it is tentatively set
to two weeks, but this is subject to change before the stable release. Note
that pruning is performed at the same time as derived table trimming, which
by default is every 1000 blocks, so the actual removal of the prunable data
from the database will happen with some delay after their expiration time.

A node can choose to keep prunable messages longer, by setting the
nxt.maxPrunableLifetime property to a larger value. It cannot be set to
prune them earlier. Changing this value only affect transactions received
after the change. Pruning can be disabled completely by setting this property
to -1.

Prunable messages that have not yet been expired, but are past the minimum
lifetime, are only retrievable using the getPrunableMessage(s) APIs, but
are not included as part of their transaction JSON.

If a transaction containing prunable attachments is phased, the prunable
parts are nevertheless saved and available immediately, not at finish height.
If their expiration deadline comes before the phasing finish height, they
will be pruned and not available at finish height.

Fees for prunable message attachments are set at 0.1 NXT per 1024 bytes, with
the first 1024 bytes free (the regular transaction fee depending on its type
still applies). This is again subject to change before the stable release.

The full size of prunable message attachments is limited to 42 kbytes. Note
that the full size is still included for the purpose of calculating the total
block payload, even though only the 32 byte hash is in the transaction bytes.

The size of regular plain and encrypted messages in this release has been
restricted back to 1000 bytes, and will likely be reduced even further, before
the stable release. This will be done in order to encourage users to switch to
prunable instead of regular messages. Fees for regular message attachments
will also be increased substantially.

Creating prunable plain messages of less than 28 bytes is not allowed, as at
such small sizes it is more efficient to store the full message instead of a
32 byte hash of it. There is no lower limit on prunable encrypted messages.

It is not possible for a transaction to have both prunable plain and prunable
encrypted message at the same time. It is also not possible to have both
prunable and regular message of the same type (plain or encrypted). It is
however possible to have a regular plain message and an encrypted prunable
message, or a prunable plain message and a regular encrypted message.

Prunable encrypt-to-self messages are not currently supported as there seems to
be no good use case for them.

Prunable encrypted messages can optionally be compressed before the encryption
(default is to compress). The compression status is stored and does not need to
be specified when decrypting. Regular encrypted messages are still compressed
by default, but this compression can now optionally be disabled. For backwards
compatibility, since their current bytes format does not store the compression
status, this needs to be specified again when decrypting, else an error or
unreadable data will be returned.


New APIs:

GetPrunableMessage - returns the prunable message for a given transaction id,
optionally decrypting it if encrypted and if a secretPhrase is supplied.

GetPrunableMessages - returns all prunable messages for a given account id,
optionally limiting to only those with another account as recipient or sender,
and decrypting them if a secretPhrase is supplied.

Prunable messages that have already been pruned are not returned by the above
APIs.

The UI for those APIs will be implemented in a later release.

TrimDerivedTables - a debug API to trigger a derived tables trim, and prunable
tables pruning.


Changed APIs:

All APIs that create a new transaction now also accept optional
messageIsPrunable or encryptedMessageIsPrunable boolean parameters (default
false). If true, the message or encrypted message attachment, if any, is
created as a prunable message.

To control whether compression is performed before the encryption or not,
the new compressMessageToEncrypt and compressMessageToEncryptToSelf parameters
can be used (default true).

Prunable messages, if not yet pruned, are also returned as part of the
transaction json by the getAccountTransactions API, using the same fields as
the corresponding regular messages, but adding a messageIsPrunable or
encryptedMessageIsPrunable boolean flag.

ReadMessage now also handles prunable message attachments, if any. It takes
an optional uncompressDecryptedMessage and uncompressDecryptedMessageToSelf
(default true) parameters, only used for non-prunable messages (not needed
for prunable ones).

DecryptFrom accepts an optional uncompressDecryptedMessage parameter, and
encryptTo accepts an optional compressMessageToEncrypt parameter, default true.


INCOMPATIBLE changes:

BroadcastTransaction has been modified to optionally accept all parameters that
are needed to create a prunable plain or encrypted message (client side
encryption only). This is required because the data for such messages is never
a part of the transaction bytes themselves, so trying to broadcast a transaction
that has a prunable part by only submitting its bytes to broadcastTransaction
WILL FAIL, unless the corresponding parameters necessary to add the prunable
parts are also supplied. Note that they need to exactly match the original
parameters with which the transaction bytes have been created and signed.

For non-prunable messages, broadcastTransaction behaves as before, but users
are encouraged to start switching to prunable messages in view of the planned
size restrictions and fee increases.

The EncryptedData java class no longer handles compression internally, this is
left to the caller of the encrypt and decrypt methods to do.


Other changes:

GetPolls now supports an optional includeFinished parameter (default false).

Multiple bugfixes and improvements in the Voting System and Phasing UI.

The limit on transaction deadline of 1440 minutes has been removed. It is now
possible to create a transaction with a deadline of up to 32767 minutes. This
has been done because many use cases of phasing require that the transaction
bytes are prepared much earlier than the actual broadcasting of the transaction
to the blockchain.

This release will perform a database upgrade with a full rescan on first start.
On testnet, it will cause a rollback to block 256935.


-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.12 (GNU/Linux)

iQIcBAEBAgAGBQJVKXMXAAoJEFOhyXc7+e2ASF0QANeCGGCwaVVDi0i4YWvUVsAD
pUcy8R2NIvInbbL4dbYkfb8ZW2NaSws39hbCs7OPAGmR76JeOXRyTxyqimidGSpH
OAaupcnyEnz2bA3v/+orC8Nphaqh8HlvUffya940vn8G58y9FW5a6bnJYopB1C7x
NgE8NoUq8QnTu18zO/+KtNm7ymtAAwkCd5j25mpG9r2aalH31cf1YQ9NeKe1vO/G
qIfbOGfan0l1e08m3bzP1q71Lk/Brcioq5u6igRu1kRrdew2tg9NqcumsQN9s0YY
m1akOEpHfuAJZY2tjezOaZjRbPfr3JIBzlra7gIdSMcdA0OEFRNpb3cGqLfOQ82S
HPKoOjAQjTgDPzHmzjunFKyJiC7LFTDAtypg/Ko3bMxLghwAuWDtbwZYEptvEDzu
lhMB3UeGwrEYRsZtOVEa5fVXbqsascVtSAI/Zje+TeX+HOMfLob2rkpx1tC1jmBJ
YE6L32BfO+l4qooslgnbGFBCFHf3oyVle2bn+/2RMd6d56CvTQrpTC/pWFK2fpeO
JIPLBtkb/la/uS72AAZi7Uc9MGij+yWsJ9FZt9MKAPSXy8idYf8LcuAjFMflzXWy
ELHYz0U1yx4bciiO4Dx5raff7l1YsZ5j9+gIgo8iDP+pAw7sdU0Gv9e4zqkfyhq7
MK3oyuBnk9cGGwztb+QS
=8f8Y
-----END PGP SIGNATURE-----
sr. member
Activity: 406
Merit: 250
How come NxtReporting doesn't update the balance, assets owned, and other account information as quickly as NXTblocks? For example, I just recently transferred an asset to another account and NxtReporting doesn't show this transfer yet while NXTblocks already does.

Some explorers just lag a bit behind due to how fast they handle and display new blocks (maybe they only check once every n minutes)

nxtexplorer.com does it as well, whereas
nxtportal.org (my favourite) updates almost in realtime.

Ah, OK thanks for the explanation.

Before NXT, I usually used Blockchain.info which usually updates instantly so I didn't know that some blockchain explorers were updated faster/slower than others.

EDIT: Looks like nxtportal doesn't support partial searches whereas NXTblocks does. e.g. searching for "NXT-NFUN" doesn't show up a list of accounts containing "NFUN" in their name. Sad
legendary
Activity: 1225
Merit: 1000
How come NxtReporting doesn't update the balance, assets owned, and other account information as quickly as NXTblocks? For example, I just recently transferred an asset to another account and NxtReporting doesn't show this transfer yet while NXTblocks already does.

Some explorers just lag a bit behind due to how fast they handle and display new blocks (maybe they only check once every n minutes)

nxtexplorer.com does it as well, whereas
nxtportal.org (my favourite) updates almost in realtime.
sr. member
Activity: 406
Merit: 250
How come NxtReporting doesn't update the balance, assets owned, and other account information as quickly as NXTblocks? For example, I just recently transferred an asset to another account and NxtReporting doesn't show this transfer yet while NXTblocks already does.
hero member
Activity: 574
Merit: 500
Info on Nxt's new multipool for the miners among us can be found here:

https://nxtforum.org/nxt-indirect-mining/(xpool-ca)(multipool)-paying-(nxt)-(btc)-(dash)-(btcd)-(fibre)-(bits)

Please pass on any feedback in the thread
hero member
Activity: 574
Merit: 500
Are arbitrary messages used this much that it is necessary to prune it? Wouldn't it make more sense to implement blockchain pruning, would it?

Jean Luc has finished Blockchain Pruning of Arbitrary Messages and will be included in the next testnet release  Shocked

The implementation of prunable plain and encrypted messages is complete and will be in 1.5.1e.

Arbitrary Messages is a misleading name as it makes people think that they are only used for instant messaging or other similar usage.

Arbitrary Messages (AM) are actually the main data storage method in Nxt. A more descriptive translation might be "Any data storage" but limited to 1kB. So you can think of this as blockchain pruning. They are used to store hashes and reference in third party apps and such like, James uses them a lot in his projects. If the transaction is complete, the AMs are no longer needed so it is good they can be pruned.

In the next version of Nxt, this size is being increased to 40kB to make them more useful. So the Fees for these are still be discussed AFAIK, but if too cheap then there is potential for bad guys to block the blockchain cheaply. Hence, blockchain pruning being implemented too.
tyz
legendary
Activity: 3360
Merit: 1533
Are arbitrary messages used this much that it is necessary to prune it? Wouldn't it make more sense to implement blockchain pruning, would it?

Jean Luc has finished Blockchain Pruning of Arbitrary Messages and will be included in the next testnet release  Shocked

The implementation of prunable plain and encrypted messages is complete and will be in 1.5.1e.
legendary
Activity: 1540
Merit: 1000
Jean Luc has finished Blockchain Pruning of Arbitrary Messages and will be included in the next testnet release  Shocked

The implementation of prunable plain and encrypted messages is complete and will be in 1.5.1e.
Jean-Luc, i love yu  Kiss Grin
hero member
Activity: 574
Merit: 500
Jean Luc has finished Blockchain Pruning of Arbitrary Messages and will be included in the next testnet release  Shocked

The implementation of prunable plain and encrypted messages is complete and will be in 1.5.1e.
hero member
Activity: 574
Merit: 500
Nxt has a new Multipool for miners to get Nxt. Try it out, report any problems  Grin

Ok, NXT is available as a payout option on my pool. Please help support NXT and the pool, come mine with your ASIC's that have been collecting dust Wink

xpool . ca

Any problems, let me know as it took quite a bit to get this working and there may very well be some bugs to squish.

Cheers!
tyz
legendary
Activity: 3360
Merit: 1533
Wow, this sounds really cool. Seems Nxt settles another unique feature in the crypto world.

Wondering if Nxt 1.5 will have multisign on board? I remember that it was planned for version 1.5.

1.5 will have two phased transactions, which is Nxt's new and improved version of multisig.

It not only makes a transaction that only goes through if the correct amount of people sign off on it.
But it also allows you to create transactions that depend on the results of a poll.
As well as a transaction that only goes through if a hash is revealed (P2H)
As well as a transaction that only goes through if another transaction also is accepted (Atomic on chain transactions)

So 1.5 should be very cool, and 1.5.0e is being tested on the public testnet right now.
member
Activity: 63
Merit: 10
Wondering if Nxt 1.5 will have multisign on board? I remember that it was planned for version 1.5.

1.5 will have two phased transactions, which is Nxt's new and improved version of multisig.

It not only makes a transaction that only goes through if the correct amount of people sign off on it.
But it also allows you to create transactions that depend on the results of a poll.
As well as a transaction that only goes through if a hash is revealed (P2H)
As well as a transaction that only goes through if another transaction also is accepted (Atomic on chain transactions)

So 1.5 should be very cool, and 1.5.0e is being tested on the public testnet right now.
tyz
legendary
Activity: 3360
Merit: 1533
Wondering if Nxt 1.5 will have multisign on board? I remember that it was planned for version 1.5.
hero member
Activity: 574
Merit: 500
I think the SSL cert ran out today, I already flagged it up.

There was a lot of projects to have nxt websites that have consolidated. Nextcoin.org was hosted by Graviton, I think most traffic moved to nxtforun.org so he shut it down.

Tell me if you have missing info from your bookmarks.
sr. member
Activity: 406
Merit: 250
Not sure if this is just a problem on my end but it seems there might be an issue with the site's certificate for Nxtcrypto.org which hosts the NXT wiki:



Also, why does NXT keep switching its domains around? I just recently found a bookmarked list of NXT sites on my computer from 2014 and half of the links either don't work or redirect to other sites. e.g. Nxtcommunity.org and Nxtcrypto.org now redirect to Nxter.org. Nextcoin.org doesn't resolve at all (does anyone here know what happened to it?). Nxtra.org now redirects to Nxt.org. Nxtcrypto.org redirects to Nxter.org but the wiki is still hosted at Nxtcrypto.org. Nxtclients.org redirects to Nxt.org and Forums.nxtcrypto.org no longer works. So confusing! (Not to mention it's probably not all that great in terms of SEO either.)
newbie
Activity: 27
Merit: 0
Very interesting! Thanks for sharing.

Milestone reached in independent verification of Nxt's algo, courtesy of Vitalik Buterin  Wink

In the paper - https://raw.githubusercontent.com/vbuterin/scalability_paper/master/scalability.pdf, the authors used Nxt algo as an example. It seems a confirmation of Nxt security (But I am not a expert)

Quote
Example 3.0.2. The cryptoeconomically secure entropy source used in NXT[16] is de ned recursively as follows:
 E(G) = 0
 E( + ) = sha256(E()+V ( )) where V ( ) is the block proposer of

Assumption 3.1. For any time internal I, there exists some xed probabil-ity po(I) such that a node randomly selected according to the weight functionused to measure a cryptoeconomic state machine's Byzantine fault tolerancecan be expected to be oine for at least the next I seconds starting from anyparticular point in time with at least probability po.Note. We can derive the above assumption from an altruism assumption bysimply stating in the protocol that nodes \should" randomly drop oinewith low probability; however, in practice it is simpler and cleaner to relyonly on natural faults.Note. Combining the two uninuenceability criteria into one (\it is impos-
sible to increase the probability of P from p to p  (1+k) without expendingat least b L k resources") is likely very dicult; it is hard to avoid having
ways to cheaply multiply the probability of low-probability predicates byonly acting when you are sure that your action will have an inuence on theresult.
......

Lemma 3.0.3. The NXT algorithm described above satis es the conditionsfor being a cryptoeconomically secure entropy source.Proof. To prove unpredictability, we note that the NXT blockchain pro-duces a block every minute, and so the update v   sha256(v; V ( )) takesplace once a minute. During each round of updating, there is a probabil-ity 1 ...........

BCNext's idea not to provide the whitepaper to force an independent analysis has finally worked. Good, now this page can be turned.
Jump to: