cybterpunk
|
|
July 22, 2017, 02:37:38 PM |
|
Just to give a small update on what we are currently working on:
Preface:
The current approach has totally disconnected the verification of work from the remaining verification routines (which are required to verify the consensus critical PoS operations). The reason for this approach were on the one hand some concerns, that people were feeling unsafe to execute "untrusted" code. On the other hand, the verification on each node would limit the amount of time a work-task may run: imagine, that a pretty complex job is on the network which takes around 5 minutes to execute. If miners work 5 minutes on it, everything is just fine. But if every node needs 5 minutes to verify the solution, it wouldn't take long until the entire network stalls.
So the solution was to use "super nodes" which do this complex verification stuff. Super nodes were meant to be super-efficient very fast computers capable of doing many many verification if a very short time. However, and you all are right, this means centralization and "blind trust". But in fact, a decentralized system is what we want.
Codebase:
Supernodes were working fine (see PoC from a few months ago) and they were using the native xel_miner application (written in C) to do the verification. Xel_miner was not only encapsulating the entire mining logic but also provided an API for super nodes, which could enqueue the transactions seen on the XEL network and semlessly receive the verification result for further processing.
Goal:
We worked out a different (asymetric) verification method. This clearly limits the use cases to some extent but on the other hand it vastly increases the integrity of the entire blockchain.
The asymetric verification will allow us to code arbitrarily complex ElasticPL programs (they may run for hours) and define separate, much less complex verification functions (which finish in a blick of an eye). Verifcation routines must be coded very carefully (to avoid unwanted "trapdoor" solutions which do not reflect what we actually want) but there will be a developers guide sooner or later.
Now, this scheme allows us to move the verification back into the java code base and again perform the verification on all nodes. (All is not strictly correct, as you will learn in the next point). This way, we drop any super nodes and guard nodes, and avoid any kind of centralization at all.
Work should not be consensus critical:
In an early version of Elastic (way before the super node proof-of-concept) work transactions were regular transactions and were consensus critical. Probably everyone of those who followed the progress remember the chain forks due to some unforseeable error (differencies in floating point operations on different platforms could lead to a hard fork ... yes).
We do not want this, so we: 1. Do not model the work communication as actual transactions but as binary messages transmitted over the Elastic messaging system. 2. Only do work processing when a "work=true" flag is set in the config. If you do not want to participate in any working activity, you can leave this feature off and you will not participate in any verification whatsoever (good for those who do not trust any code). But if you decide to turn it on later on, you can just catch up by synching all new "unparsed" messages of this kind. This is possible, because the "sort-of parallel chain encoded in those binary messages" and the actual blockchain do not need to be in sync at any point. Well, let's not become too technical here!
The cool thing is: If something goes wrong with one work package, other work packages and, even more important, the entire blockchain remains unaffected by it. How the work-payments will be modelled in this "unconventional approach" will be revealed at a later point in time :wink:
Now comes the actual task:
And now comes the task, which causes so much work at the moment and which eats up every free second that we have: We have to port the C ElasticPL to JAVA ElasticPL - in a way, that both work in the same way, in all cases on all platforms.
I am half way through (all of it was done in the last week alone - it's been "burnout-ish"):
github.com20
OrdinaryDude/ElasticPLJava
Contribute to ElasticPLJava development by creating an account on GitHub. What is there is the Tokenizing (splitting up code into tokens) and the construction of the Abstract Syntax Tree. This was pretty hard - and this basically defines the entire ElasticPL language. What is still missing is the interpreter, and this is what I will be doing next.
If someone wants to play around, just open the project linked above in IntelliJ Idea and launch it. You will not see much, but those of you, who really want to dig into it, will quickly find out how to verify that the AST tree is actually built correctly. Also: feel free to report any bugs or any inconsistencies between the C and the Java version.
Disclosure: I currently do hold XEL coins.
|
|
|
|
badinvesterguy
|
|
July 22, 2017, 02:49:11 PM |
|
another one that wants out early ?
|
|
|
|
crazyheinz
Member
Offline
Activity: 64
Merit: 10
|
|
July 22, 2017, 02:49:23 PM |
|
anyone has an idea how much you can make forging for example 1000 xel?
|
|
|
|
mr.coinzy
|
|
July 22, 2017, 05:28:38 PM |
|
Just to give a small update on what we are currently working on:
Preface:
The current approach has totally disconnected the verification of work from the remaining verification routines (which are required to verify the consensus critical PoS operations). The reason for this approach were on the one hand some concerns, that people were feeling unsafe to execute "untrusted" code. On the other hand, the verification on each node would limit the amount of time a work-task may run: imagine, that a pretty complex job is on the network which takes around 5 minutes to execute. If miners work 5 minutes on it, everything is just fine. But if every node needs 5 minutes to verify the solution, it wouldn't take long until the entire network stalls.
So the solution was to use "super nodes" which do this complex verification stuff. Super nodes were meant to be super-efficient very fast computers capable of doing many many verification if a very short time. However, and you all are right, this means centralization and "blind trust". But in fact, a decentralized system is what we want.
Codebase:
Supernodes were working fine (see PoC from a few months ago) and they were using the native xel_miner application (written in C) to do the verification. Xel_miner was not only encapsulating the entire mining logic but also provided an API for super nodes, which could enqueue the transactions seen on the XEL network and semlessly receive the verification result for further processing.
Goal:
We worked out a different (asymetric) verification method. This clearly limits the use cases to some extent but on the other hand it vastly increases the integrity of the entire blockchain.
The asymetric verification will allow us to code arbitrarily complex ElasticPL programs (they may run for hours) and define separate, much less complex verification functions (which finish in a blick of an eye). Verifcation routines must be coded very carefully (to avoid unwanted "trapdoor" solutions which do not reflect what we actually want) but there will be a developers guide sooner or later.
Now, this scheme allows us to move the verification back into the java code base and again perform the verification on all nodes. (All is not strictly correct, as you will learn in the next point). This way, we drop any super nodes and guard nodes, and avoid any kind of centralization at all.
Work should not be consensus critical:
In an early version of Elastic (way before the super node proof-of-concept) work transactions were regular transactions and were consensus critical. Probably everyone of those who followed the progress remember the chain forks due to some unforseeable error (differencies in floating point operations on different platforms could lead to a hard fork ... yes).
We do not want this, so we: 1. Do not model the work communication as actual transactions but as binary messages transmitted over the Elastic messaging system. 2. Only do work processing when a "work=true" flag is set in the config. If you do not want to participate in any working activity, you can leave this feature off and you will not participate in any verification whatsoever (good for those who do not trust any code). But if you decide to turn it on later on, you can just catch up by synching all new "unparsed" messages of this kind. This is possible, because the "sort-of parallel chain encoded in those binary messages" and the actual blockchain do not need to be in sync at any point. Well, let's not become too technical here!
The cool thing is: If something goes wrong with one work package, other work packages and, even more important, the entire blockchain remains unaffected by it. How the work-payments will be modelled in this "unconventional approach" will be revealed at a later point in time :wink:
Now comes the actual task:
And now comes the task, which causes so much work at the moment and which eats up every free second that we have: We have to port the C ElasticPL to JAVA ElasticPL - in a way, that both work in the same way, in all cases on all platforms.
I am half way through (all of it was done in the last week alone - it's been "burnout-ish"):
github.com20
OrdinaryDude/ElasticPLJava
Contribute to ElasticPLJava development by creating an account on GitHub. What is there is the Tokenizing (splitting up code into tokens) and the construction of the Abstract Syntax Tree. This was pretty hard - and this basically defines the entire ElasticPL language. What is still missing is the interpreter, and this is what I will be doing next.
If someone wants to play around, just open the project linked above in IntelliJ Idea and launch it. You will not see much, but those of you, who really want to dig into it, will quickly find out how to verify that the AST tree is actually built correctly. Also: feel free to report any bugs or any inconsistencies between the C and the Java version.
Disclosure: I currently do hold XEL coins.
When you Quote someone or post something that has been posted by someone else before, please make sure you give the credit due to the original person who actually made the post. This was EK's update and should be referred to as such. Thanks.
|
|
|
|
HomoHenning
|
|
July 22, 2017, 09:11:37 PM |
|
looking promising (devs working hard) price is still very low imo
|
|
|
|
me1507
|
|
July 23, 2017, 10:29:40 PM |
|
Nice to see Elastic keep moving forward in development, slow but sure. At the beginning of the year Stratis came out as a great force, as Elastic is at the moment and I didn't buy some Stratis because I thought it was too soon and suddenly things happened and I missed the big train... I'll not let it happen again , I started Elastic shopping.
Agreed, this is a good time to jump in while the price still below 10k satoshi
|
|
|
|
Soul_eater_123
Legendary
Offline
Activity: 952
Merit: 1000
|
|
July 23, 2017, 11:36:58 PM |
|
Agreed, this is a good time to jump in while the price still below 10k satoshi
True I have picked up a few to trade with and to fund projects.
|
|
|
|
devking
Member
Offline
Activity: 96
Merit: 10
|
|
July 24, 2017, 01:10:06 AM |
|
At the beginning of the year Stratis came out as a great force, as Elastic is at the moment and I didn't buy some Stratis because I thought it was too soon and suddenly things happened and I missed the big train... I'll not let it happen again , I started Elastic shopping.
True, I'm a Stratis ico holder. Never sold. I have invested in two ico's Stratis and Elastic for long term last year. Always believe in tech not the hype and hold long term not for short gains. Both Stratis and Elastic haven't reached their full potential. So wait for that as it may take more 1-2 yrs.
|
|
|
|
yanlap
|
|
July 24, 2017, 03:30:14 AM |
|
At the beginning of the year Stratis came out as a great force, as Elastic is at the moment and I didn't buy some Stratis because I thought it was too soon and suddenly things happened and I missed the big train... I'll not let it happen again , I started Elastic shopping.
True, I'm a Stratis ico holder. Never sold. I have invested in two ico's Stratis and Elastic for long term last year. Always believe in tech not the hype and hold long term not for short gains. Both Stratis and Elastic haven't reached their full potential. So wait for that as it may take more 1-2 yrs. You have good insight. Patience is bitter but its fruit is sweet.
|
|
|
|
kurumi
|
|
July 24, 2017, 04:55:13 AM |
|
|
|
|
|
clivemy
|
|
July 24, 2017, 09:31:10 AM |
|
Excellent. :-) @IMI can we link to this on the front page of this thread?
|
|
|
|
Convery
|
|
July 24, 2017, 01:48:58 PM |
|
I bought the ICO last year total 8 btc and sold OTC for 25k sats and now I bought all my XEL again
|
|
|
|
alope
|
|
July 24, 2017, 01:54:47 PM |
|
China people now can buy xel in new china exchange market. Today open the trade. https://eichain.com
|
|
|
|
sandan2002
Member
Offline
Activity: 143
Merit: 10
|
|
July 24, 2017, 03:43:05 PM |
|
Elastic coin is the Super Computer and in the near future it could become big like etheteum is,maybe better.
|
|
|
|
unvoid
|
|
July 24, 2017, 05:00:29 PM |
|
China people now can buy xel in new china exchange market. Today open the trade. https://eichain.comThis news is incredible, it really shows that Elastic is on the right track! In addition, the Chinese are the strength of the market, it's definitely great news. What justifies this current high is this news? I would be cautious with this. Exchange created february this year. I can't see any markets (without sign up and I don't want to sign up just for that). On front page there is some chart for Elastic without X/Y axis info. Maybe someone have a time to check those new exchanges. If so, please share with us any findings. Be careful with any not widely known exchange.
|
BTC: 1CMgHWx4wkAaAy2FfeCyPdedUExmhGhfi5 XEL: XEL-HCM8-KB6E-YFLK-8BWMF
|
|
|
mr.coinzy
|
|
July 24, 2017, 05:20:34 PM |
|
Definitely better be safe than sorry. I would be very very careful about trading in such a new exchange. better to avoid and trade only in places that have a proven record of reliability. Don't forget there are enough people out there who try to scam people out of their money. Of course that doesn't mean this is not legit, but i would be extra cautious.
|
|
|
|
biznes35
|
|
July 24, 2017, 05:54:26 PM |
|
Definitely better be safe than sorry. I would be very very careful about trading in such a new exchange. better to avoid and trade only in places that have a proven record of reliability. Don't forget there are enough people out there who try to scam people out of their money. Of course that doesn't mean this is not legit, but i would be extra cautious.
Why such growth of Elastic today who can say? Was there some news or just Pump?
|
|
|
|
oscurito23
|
|
July 24, 2017, 06:31:16 PM |
|
Definitely better be safe than sorry. I would be very very careful about trading in such a new exchange. better to avoid and trade only in places that have a proven record of reliability. Don't forget there are enough people out there who try to scam people out of their money. Of course that doesn't mean this is not legit, but i would be extra cautious.
Why such growth of Elastic today who can say? Was there some news or just Pump? Done the Chinese translation in here. https://bitcointalk.org/index.php?topic=2043034.0Many chinese people buying in 4 hours when his wake up again more pump!
|
|
|
|
syclone
|
|
July 24, 2017, 07:12:15 PM |
|
A lot of Alts have been in a accumulation sideways pattern after those big / major dumps a few weeks ago. I'm seeing a lot of them rebounding nicely off their newly found floor. Of course, XEL is a long term hold for me so I'm not really keeping track of its day to day price movements.
|
|
|
|
Convery
|
|
July 24, 2017, 08:37:55 PM |
|
China people now can buy xel in new china exchange market. Today open the trade. https://eichain.comThis news is incredible, it really shows that Elastic is on the right track! In addition, the Chinese are the strength of the market, it's definitely great news. What justifies this current high is this news? I would be cautious with this. Exchange created february this year. I can't see any markets (without sign up and I don't want to sign up just for that). On front page there is some chart for Elastic without X/Y axis info. Maybe someone have a time to check those new exchanges. If so, please share with us any findings. Be careful with any not widely known exchange.New exchange , can't trust it . Bittrex is the best .
|
|
|
|
|