Pages:
Author

Topic: QORA IS OPEN SOURCE !!! (Read 6655 times)

legendary
Activity: 1036
Merit: 1000
December 10, 2014, 08:09:26 PM
#86
AT integrating almost ready!

Congrats to qora for making it OpenSource. Now I am sure nobody will be able to say that qora is a nxt clone. Soon AT will be also launched and added to the repo. I will try to synchronize both releases of AT (qora and burst) so we can also run some atomic cross chain txs. Burst version ( as it is a nxt clone ) is also almost ready, Qora needs some work but is almost ready.  Also, while integrating AT in qora platform we added more functionality (new op codes), you can check the documentation in www.ciyam.org/at to see more info.


https://bitcointalk.org/index.php?topic=881230.200
legendary
Activity: 1036
Merit: 1000
December 10, 2014, 08:06:36 PM
#85
It's definitely not a clone

Congrats guys, open source really matters!

First look thoughts:

1. This is definitely not another Nxt fork
2. What's in native libs? I guess the should be opensourced as well.
3. I did successfully run Qora under Intellij Idea by importing Eclipse project in the repo and adding native libs to a project
4. JSON settings are looking cool, but comments are needed, I guess, especially for non-coders
5. Got unsafe memory issue related to MapDb https://github.com/Qora/Qora/issues/8 . I guess it's better to avoid off-heap operations, for current MapDb state at least. I bet I did read Jan Kotek's article on how to do that.
6. Worse issue, I got not much useful message trying to run a node after crash https://github.com/Qora/Qora/issues/9 . Verbosity matters here.
7. Code seems to be more clean & easier to read than Nxt at the moment. However, after adding features / patches it could be the same, so have luck guys  Grin   And formatting isn't Sun(Oracle)'s standard http://www.oracle.com/technetwork/java/codeconvtoc-136057.html (the same is true for Nxt).
8. Commented code is not good and not necessary with VCS (the same is true for Nxt at the moment as well)
9. What's the Orders launcher about  Huh
10. Any detailed description of Arbitrary Transaction available?



All I can verify is that Nxt vs. Qora looks completely different.  Also, Qora makes use of the global "Generating Balance" to determine the block Target.  From my scan of the Nxt code, no such value is used.  I think there is a bit more randomness to Nxt than their might be of Qora, but I won't stand by that.  Qora basically looks at the time since the last block, the forgers personal balance and the total balance of forging accounts.  It then uses a fairly straight forward process to test if a block has been forged.

I haven't been able to figure out what Nxt does.  This isn't because of poor Nxt coding.  It's because I don't have the time to look into it.  If a Nxt guru is around, please comment.

You can get Nxt forging algo in slighlty simplified form in my blog http://chepurnoy.org/blog/2014/10/inside-a-proof-of-stake-cryptocurrency-part-2/ . And I'm going to investigate Qora's forging algo(got no detailed view from first investigation). I can even publish a blog on that if it's interesting, and make executable simulation of Qora forging process(I already made that for Nxt https://github.com/ConsensusResearch/ForgingSimulation )


I haven't been able to figure out what Nxt does.  This isn't because of poor Nxt coding.  It's because I don't have the time to look into it.  If a Nxt guru is around, please comment.


I am not a Nxt guru but i reviewed the Nxt Code and i understand the Nxt forging algo.
Qora's forging Algo is definitely better, if it actually works (safe).
I think the biggest secret is still hidden in these native files.

I am not a crypto-expert, but i think
the problem with ECDSA is that for a specific public key and specific data to sign there are several valid signatures. That makes it normally a bad choice to determinate the next forging account.
Qora must have somehow solved that problem.
But as long as these native libs are not OS we will not know how.


sr. member
Activity: 316
Merit: 250
December 10, 2014, 10:28:59 AM
#84
Took you a year to forge code?

I'm waiting for Jeff Garzik to compile the code and determine whether the hashes match.


6 months
Yes please, more people who review the code, better it is

The Nxt and Qora hashes definitely do not match because the two coins are coded differently using different cryptographic technologies. One programmer has already reviewed Qora's code and he thinks its not a Nxt clone as shown below.






Ok, here are some quick notes on Qora v. Nxt (I've looked at both sets of code a little while this evening.)

Initial Impressions

I can not rule out, beyond certainty, that this wasn't cloned but I can easily verify that if this started from a Nxt fork, a TON of work has been put in modifying the code.  Qora is organized completely differently than Nxt.  From the application entry point, all initialization methods execute completely differently.  If Qora took Nxt, he heavily modified it beyond recognition.

Personally, I've suspected that this wasn't a clone and I've never seen any reason not to trust Qora's claims.  So far, this seems to be likely true-- this is not a fork and is "new source".

Cryptography Analysis

Nxt uses SHA-256 to hash passphrases and then Curve25519 and SHA-256 again to create public/private key.  It signs it's data using, EC-KCDSA.

Qora is a bit of a different beast.  I'm still digging into this section of code but if my quick-scan of DB, Crypto and Account files has produced an accurate understanding, your wallet seed is a random value, stored to a secure DB. Each time a new account is generated, a nonce is appended to the the seed, and a new address is calculated and stored in the DB.

Specifically, an address account is generated by taking the Nonce+seed+Nonce value and double-SHA-256 hashing it to produce a unique account seed.

Next, a Key pair is generated using Ed25519 key pair creation, from the account seed.  To be clear, Ed25519 is slightly different than Curve25519 (which is what Nxt uses.)  After the Pub/Privkey pair is generated,the application takes the RIPEMD160 of the SHA-256 hash of the pub-key.  NExt, Qora prepends a version byte to this hash and then double, SHA-256 hashes the byte array and finally appends the first four bytes of the new hash, to the former.  These last four bytes are used as an account checksum and are used for account ID validation.

This process of a account generation is significantly different than Nxt.  Obviously, Qora makes use of a wallet, where Nxt does not.  Still, the process of creating a payment address is far more robust than Nxt.  In fact, this process is almost-exactly how BTC addresses are created, rather than Nxt.  The only variation is that the version byte is likely different (which results in the "Q" at the beginning of the address) and Ed25519 keys are used by Qora where ECDSA keys are used by BTC and it's clones.

Forging

First, let me go ahead and say that forging is something that I've never looked into deeply. I  understand the very high-level nature of it and I very much understand the big differences between traditional "1.0" coins and these new PoS "2.0" coins.  My notes on forging will, therefore, be very basic sense I know so little about the nuts-and-bolts.  Regardless, here are my observations.

The code is significantly organized in a different manner.  At first glance, I think Nxt and Qora us a completely different approach to come up with similar results.  Again, Qora is more succinct than Nxt.  I'll have to take a while longer to dig into this but since I can't seem to figure out how to build and debug java code through eclipse (Tongue yeah, pretty basic stuff, I know...) I can't run the code and step through this portion to clarify what's going on.  All I can verify is that Nxt vs. Qora looks completely different.  Also, Qora makes use of the global "Generating Balance" to determine the block Target.  From my scan of the Nxt code, no such value is used.  I think there is a bit more randomness to Nxt than their might be of Qora, but I won't stand by that.  Qora basically looks at the time since the last block, the forgers personal balance and the total balance of forging accounts.  It then uses a fairly straight forward process to test if a block has been forged.

I haven't been able to figure out what Nxt does.  This isn't because of poor Nxt coding.  It's because I don't have the time to look into it.  If a Nxt guru is around, please comment.

Final Thoughts

My vote is, no, this is not a clone.  If Qora was inspired by Nxt, I would make the guess that he read up a lot on it, possibly read through the source and thought "I can do that" and gave it a go at writing his own application.  Qora uses mostly different libraries and is structured significantly different.  

I also assume that Qora is a professional day-time coder, who works with a team of devs at a software firm or possibly large company.  Nxt feels like good, solid code, but it doesn't adhere to strict practices that big-team developers tend to follow since they are use to having to organize and share  code with co-workers.  I know that open source projects are often shared across devs, but having worked in both environments I can attest that "good" developers, in both areas of software engineering tend to have different coding approaches and styles because requirements differ.  Qora feels like it's written by an experienced, professional business coder, while Nxt feels like a large, open source project.

One piece of software isn't necessarily better than the other but they look VERY different.  This adds to strong evidence supporting that this is almost certainly NOT a clone.
full member
Activity: 177
Merit: 100
December 10, 2014, 07:37:26 AM
#83
Took you a year to forge code?

I'm waiting for Jeff Garzik to compile the code and determine whether the hashes match.


6 months
Yes please, more people who review the code, better it is
legendary
Activity: 1036
Merit: 1000
December 10, 2014, 07:24:15 AM
#82
Ok, here are some quick notes on Qora v. Nxt (I've looked at both sets of code a little while this evening.)

Initial Impressions

I can not rule out, beyond certainty, that this wasn't cloned but I can easily verify that if this started from a Nxt fork, a TON of work has been put in modifying the code.  Qora is organized completely differently than Nxt.  From the application entry point, all initialization methods execute completely differently.  If Qora took Nxt, he heavily modified it beyond recognition.

Personally, I've suspected that this wasn't a clone and I've never seen any reason not to trust Qora's claims.  So far, this seems to be likely true-- this is not a fork and is "new source".

Cryptography Analysis

Nxt uses SHA-256 to hash passphrases and then Curve25519 and SHA-256 again to create public/private key.  It signs it's data using, EC-KCDSA.

Qora is a bit of a different beast.  I'm still digging into this section of code but if my quick-scan of DB, Crypto and Account files has produced an accurate understanding, your wallet seed is a random value, stored to a secure DB. Each time a new account is generated, a nonce is appended to the the seed, and a new address is calculated and stored in the DB.

Specifically, an address account is generated by taking the Nonce+seed+Nonce value and double-SHA-256 hashing it to produce a unique account seed.

Next, a Key pair is generated using Ed25519 key pair creation, from the account seed.  To be clear, Ed25519 is slightly different than Curve25519 (which is what Nxt uses.)  After the Pub/Privkey pair is generated,the application takes the RIPEMD160 of the SHA-256 hash of the pub-key.  NExt, Qora prepends a version byte to this hash and then double, SHA-256 hashes the byte array and finally appends the first four bytes of the new hash, to the former.  These last four bytes are used as an account checksum and are used for account ID validation.

This process of a account generation is significantly different than Nxt.  Obviously, Qora makes use of a wallet, where Nxt does not.  Still, the process of creating a payment address is far more robust than Nxt.  In fact, this process is almost-exactly how BTC addresses are created, rather than Nxt.  The only variation is that the version byte is likely different (which results in the "Q" at the beginning of the address) and Ed25519 keys are used by Qora where ECDSA keys are used by BTC and it's clones.

Forging

First, let me go ahead and say that forging is something that I've never looked into deeply. I  understand the very high-level nature of it and I very much understand the big differences between traditional "1.0" coins and these new PoS "2.0" coins.  My notes on forging will, therefore, be very basic sense I know so little about the nuts-and-bolts.  Regardless, here are my observations.

The code is significantly organized in a different manner.  At first glance, I think Nxt and Qora us a completely different approach to come up with similar results.  Again, Qora is more succinct than Nxt.  I'll have to take a while longer to dig into this but since I can't seem to figure out how to build and debug java code through eclipse (Tongue yeah, pretty basic stuff, I know...) I can't run the code and step through this portion to clarify what's going on.  All I can verify is that Nxt vs. Qora looks completely different.  Also, Qora makes use of the global "Generating Balance" to determine the block Target.  From my scan of the Nxt code, no such value is used.  I think there is a bit more randomness to Nxt than their might be of Qora, but I won't stand by that.  Qora basically looks at the time since the last block, the forgers personal balance and the total balance of forging accounts.  It then uses a fairly straight forward process to test if a block has been forged.

I haven't been able to figure out what Nxt does.  This isn't because of poor Nxt coding.  It's because I don't have the time to look into it.  If a Nxt guru is around, please comment.

Final Thoughts

My vote is, no, this is not a clone.  If Qora was inspired by Nxt, I would make the guess that he read up a lot on it, possibly read through the source and thought "I can do that" and gave it a go at writing his own application.  Qora uses mostly different libraries and is structured significantly different. 

I also assume that Qora is a professional day-time coder, who works with a team of devs at a software firm or possibly large company.  Nxt feels like good, solid code, but it doesn't adhere to strict practices that big-team developers tend to follow since they are use to having to organize and share  code with co-workers.  I know that open source projects are often shared across devs, but having worked in both environments I can attest that "good" developers, in both areas of software engineering tend to have different coding approaches and styles because requirements differ.  Qora feels like it's written by an experienced, professional business coder, while Nxt feels like a large, open source project.

One piece of software isn't necessarily better than the other but they look VERY different.  This adds to strong evidence supporting that this is almost certainly NOT a clone.
hero member
Activity: 756
Merit: 506
December 09, 2014, 10:00:34 PM
#81
Took you a year to forge code?

I'm waiting for Jeff Garzik to compile the code and determine whether the hashes match.
legendary
Activity: 1036
Merit: 1000
December 09, 2014, 09:28:49 PM
#80
legendary
Activity: 1708
Merit: 1000
Reality is stranger than fiction
legendary
Activity: 1036
Merit: 1000
legendary
Activity: 1036
Merit: 1000
December 08, 2014, 09:26:20 PM
#77
legendary
Activity: 1036
Merit: 1000
October 15, 2014, 08:42:46 PM
#76


goes
Turing Complete



In less than 24 hours the crowdfunding for the integration of the Automated Transactions has been fulfilled and the Qora community embraced the AT team by overbuying the ATFunding asset.Right now remaining unit's are 20,643,121 and there have already been sold 229,356,879 unit's of the ATFunding asset.

The truth is that I'm speechless .. I'm really amazed by Qora community who have embraced this reminding again that Qora is all about innovation!!!!!
A long awaited feature for the entire world of cryptocurrencies will be integrated into Qora and this is because of Qora community who decided to make it happen!!!

As I said I am really speechless.. I have nothing more to say!! Thank you all for making this real!!!

The asset of the AT team regarding Qora will be created soon and announced by the AT team with all the needed details.

In the pre announcement I have stated that I will provide escrow services for this integration.The funds will be released to the AT team by me partially when I have proofs of the integration process.Any recommendations about this would be fully appreciated. I hope to release the funds the soonest possible and to have AT running on Qora in a few days!But this is something between the developers and they will coordinate it properly.


PS : Some details has been discussed earlier today at Qora chat.You can find them here
PS2 : I'm not going to forge for the entire period that I will hold the amount of this crowdfunding.
sr. member
Activity: 478
Merit: 250
October 15, 2014, 02:44:21 PM
#75
If there are any Qora whales who would buy 5 million shares of the AT asset and then sell them to me when Poloniex fixes their Qora wallet then I would be very grateful. Please pm if you can do this. Thank you.
hero member
Activity: 502
Merit: 500
October 15, 2014, 02:11:51 PM
#74
wow, people are going to buy all the funding shares!
full member
Activity: 168
Merit: 100
October 15, 2014, 01:34:49 AM
#73



goes
Turing Complete



Qora and AT team agreed to integrate a Turing complete virtual machine into Qora named
Automated Transactions.


In a brief preview Automated transactions allows many types of applications ranging from games of chance to automated crowdfunding and ensuring that savings will not be lost forever.

But this project needs to get funded in order to be done and ATFunding is the asset that represents this crowdfunding.

ATFunding asset has a quantity of 250 millions assets with each unit's price equals to 1 Qora and a total net worth of 250.000.000 Qora.
AT team will integrate Automated Transactions into Qora if the minimum amount of 100 millions Qora has been pledged for this purpose.

The crowdfunind period has started today, 15 of October and will last for a period of two weeks.If the sold units during this period reaches the minimum quantity of 100.000.000 then Automated Transactions will be integrated into Qora.

The ATFunding asset holders by funding this project they will also be able to exchange their ATFunding asset with the official asset of AT Team that they will issue if the minimum goal has been reached (details can be found here).





ATFunding asset specifications

Name : ATFunding

Asset Key : 61

Asset Owner : QYsLsfwMRBPnunmuWmFkM4hvGsfooY8ssU

Asset Description : This asset represents the funding of AT team
                                for the integration of a Turing complete virtual machine into Qora.


Quantity : 250.000.000 units

Divisible : Yes

Price : 1 Qora/unit


Crowdfunding has began






Cross post


Maybe this could be another thread?   The new Etherum!

Its a good way for people to check out the AE too.
legendary
Activity: 1036
Merit: 1000
October 14, 2014, 07:11:46 PM
#72



goes
Turing Complete



Qora and AT team agreed to integrate a Turing complete virtual machine into Qora named
Automated Transactions.


In a brief preview Automated transactions allows many types of applications ranging from games of chance to automated crowdfunding and ensuring that savings will not be lost forever.

But this project needs to get funded in order to be done and ATFunding is the asset that represents this crowdfunding.

ATFunding asset has a quantity of 250 millions assets with each unit's price equals to 1 Qora and a total net worth of 250.000.000 Qora.
AT team will integrate Automated Transactions into Qora if the minimum amount of 100 millions Qora has been pledged for this purpose.

The crowdfunind period has started today, 15 of October and will last for a period of two weeks.If the sold units during this period reaches the minimum quantity of 100.000.000 then Automated Transactions will be integrated into Qora.

The ATFunding asset holders by funding this project they will also be able to exchange their ATFunding asset with the official asset of AT Team that they will issue if the minimum goal has been reached (details can be found here).





ATFunding asset specifications

Name : ATFunding

Asset Key : 61

Asset Owner : QYsLsfwMRBPnunmuWmFkM4hvGsfooY8ssU

Asset Description : This asset represents the funding of AT team
                                for the integration of a Turing complete virtual machine into Qora.


Quantity : 250.000.000 units

Divisible : Yes

Price : 1 Qora/unit


Crowdfunding has began






Cross post
legendary
Activity: 1428
Merit: 1000
October 08, 2014, 03:01:44 PM
#71
choochoo
legendary
Activity: 1708
Merit: 1000
Reality is stranger than fiction
October 08, 2014, 08:25:07 AM
#70
So great news!!!

legendary
Activity: 1036
Merit: 1000
October 08, 2014, 08:16:04 AM
#69
Qora and AT team agreed to integrate a Turing complete virtual machine into Qora named Automated Transactions.

In a brief preview Automated transactions allows many types of applications ranging from games of chance to automated crowdfunding and ensuring that savings will not be lost forever.

But this project needs to be funded by Qora Community in order to be done.
ATFunding is an asset I have issued which represents the funding purpose of this project.I will provide escrow services on this fund raising.
ATFunding asset has a quantity of 250 millions assets with each asset's price equals to 1 Qora and total worth of 250.000.000 Qora.
AT team will integrate Automated Transactions into Qora if the minimum amount of 100 millions Qora has been pledged for this purpose.
The crowdfunind period will start at 15 of October and will last for a period of two weeks.If the sold units during this period reaches the minimum quantity of 100.000.000 assets then Automated Transactions will be integrated into Qora.

The ATFunding asset holders by funding this project they will also be able to exchange their ATFunding assets with the official asset of AT Team that they will issue if the minimum goal has been reached.25% of the AT Team services asset will be exchanged with the total quantity of the ATFunding Assets, 1 ATFunding asset will be equal to 1 AT team services asset.

So, actually a maximum quantity of 25% of the AT services asset, a divinded asset, will be sold into this fund raising period in a lower price,only via ATFunding asset and the integration will be achieved if 100.000.000 or more ATFunding assets sold.


Specification and use cases of AT can be found here.

AT Team :

CIYAM
vbecas
btc2nxt

ATFunding asset specifications :

Name : ATFunding
Asset Key : 61
Asset Owner : QYsLsfwMRBPnunmuWmFkM4hvGsfooY8ssU
Asset Description : This asset represents the funding of AT team for the integration of a Turing complete virtual machine into Qora.
Quantity : 250.000.000 units
Divisible : Yes
Price : 1 Qora/unit



Version 18 is now available.

https://mega.co.nz/#!a8gBlTaR!qilS-9NrDvBzGSg0V6IOKLk4_FEXqLIdnRnQSSooelU
http://qora.org/Qora.v18.zip
MD5: 799A733C886C833AA15E3B8A57D8FB1A
SHA-1: 494C525CBC2403B1FFEC8DA35ECF013EBCFAC052

Please download the application from the original post and not from a quote.

  • Reworked the closing of the application. Closing the application by force should no longer be required. When you close the application by force while it is processing a block, you will receive an error the next time you start it up.
  • Fixed a problem while synchronizing that caused the database to become corrupt.
  • Fixed multiple rounding issues on the assets GUI.
  • Fixed a problem where cancelling an order that created a trade caused problems for the GUI.
  • Fixed a problem where an order could create empty trades.
legendary
Activity: 1036
Merit: 1000
September 27, 2014, 07:20:33 PM
#68

Once qora hammers out the bugs and designs a superfly wallet...


What's a superfly wallet? Does it have near instant transaction processing like Nxt is planning?

http://wiki.nxtcrypto.org/wiki/Whitepaper:Nxt
"The planned implementation of Transparent Forging will allow for near instant transaction processing, drastically increasing this limit."

Cannot wait for the Superfly wallet !!!

This feature will surpasse NxT definitely!

See http://qora.co.in/chat/logs/2014/07/31.html
....
[21:49:34] @Qora do you have any ideas up you sleeve once we have ae and wallet upgrades?
[21:49:58] like ideas that would set us apart from nxt
[21:51:04] If I can do the wallet like I want it will make us unique.
[21:52:53] Will there be teaser screenshots?!
[22:00:18] @Qora can you guve us a description of what you have envisioned for the wallet to make us unique?
[22:33:57] You will see it in time :p.

legendary
Activity: 1036
Merit: 1000
September 21, 2014, 08:51:05 PM
#67
Congratulations !

Remember this day! 21 September 2014!

People who don't know Qora, download the wallet and have a look by yourself!

Pages:
Jump to: