Pages:
Author

Topic: Idea about a new blockchain - page 2. (Read 480 times)

hero member
Activity: 994
Merit: 513
May 29, 2018, 04:02:03 AM
#35
Good start, I have some questions, though:

Quote
How to incentive miners?

Miners should be economically incentive to process the free transactions the same way do process transactions that pays a fee (all transactions in the economic layers must pay a fee). In order to archive that, the miners can redeem the proof of work included in the free transactions. Think of it like the proof-of-work performed by the clients are coupons that the miners can redeem and for native currency that will be included in the block rewards (like a regular fee).

Thus, the interaction with the smart contracts are not free, the gas required to execute the smart contract is paid as proof of work.

How does this coupon system work exactly? Is there a lottery, is there a reward-per-coupon-system? Redeeming the PoW as a classic PoW, with the miners being essentially pool operators and the senders contributing to the pool won't work.

In either case, this will lead to the effect that every block will be full. If nothing else, miners will fill them themselves, just to not miss out on the rewards. This isn't necessarily a bad thing, just something to keep in mind.

Quote
Why having many blockchains?

Having a separated blockchain for each smart contract has advantages:

    The main chain is smaller.
    Each blockchain is well scoped
        Calculate the global state of smart contract is simpler and faster.z
        Busy/popular smart contracts will have longer chains, while the main chain growth at a predictable pace.

The blocks in the main chain will have references to the newest blocks created in the side chains. That means that the side chains are going to be secure through the main chain, simplifying things for consensus (which is happening only in the main chain).

Where is the data of sidechains stored? How are those who store it incentivised to do so?
newbie
Activity: 25
Merit: 1
May 29, 2018, 12:41:11 AM
#34
I assume you meant Shun the Emperor? I don't realls see a connection between Andromeda and him. Why not go with something a bit closer, like Shiji?

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

Also, "Shun" is an english word with not the most ideal meaning.

https://www.merriam-webster.com/dictionary/shun

I wasn't aware of the meaning of Shun in English, but my reference was apparently too obscure. I meant 'Shun' because of https://en.wikipedia.org/wiki/Andromeda_Shun

Anyways, here is the first version of the whitepaper,

https://github.com/iam-zhang-wei/whitepaper/blob/master/README.md

I wrote in a hurry, I will polish it up tonight but I think it is good enough to get even more feedback.
hero member
Activity: 994
Merit: 513
May 26, 2018, 05:21:57 AM
#33
(…)

Things that will be free:
  • Interact with smart contracts
  • Create transactions with `0` of the native currency.

Things that will require a 'fee' to be paid:
  • Transfer the native currency
  • Create smart contacts.


(…)


Here is something I missed before, I think it hasn't been adressed yet:

The assumption was that Gas was needed as an anti spam measure, but it also needed to incentivise miners to include an interaction or a transaction in the blockchain. Thus, unless I'm missing something, having a pure PoW as a means to prevent spam is either not enough or you'd need to force miners to include these kinds of transactions. Or am I missing something here?

I thought of mentioned it, but apparently not. Well, the PoW can be translated to gas. Think of it like the PoW that people are done in order to interact with smart contracts are like coupons that miners can redeem for their equivalent in 'fees'. At the end of the day it would be the same for the miners to process transactions that pay fee or transaction that have done and include some PoW in them.

The difficulty of the PoW would be used to measure how much gas a PoW worth.

Is the idea behind this clear?

Ah yes, I thought about something like this… It's kinda like the miner providing a pool. However, in that case, it goes back to the question, what if you can't provide the needed PoW because your computer (or rather your phone) isn't powerful enough?

Also, what would a transaction look like in this case? Because if a sender would have to provide PoW right from the beginning, it is potentially a part of every miner's pool, which means nobody is really profiting from it...

(…)

I think I'll name project Andromeda (as a reference to the many chains) and the native coin should be named Shun (Google why).

(…)

I assume you meant Shun the Emperor? I don't realls see a connection between Andromeda and him. Why not go with something a bit closer, like Shiji?

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

Also, "Shun" is an english word with not the most ideal meaning.

https://www.merriam-webster.com/dictionary/shun
newbie
Activity: 25
Merit: 1
May 26, 2018, 12:10:45 AM
#32
Thanks everyone for you feedback.

I'm now writing a formal specification,a whitepaper answering all the questions that you guys asked here and more. I will also put a website so more people can know about my idea. I think I'll name project Andromeda (as a reference to the many chains) and the native coin should be named Shun (Google why).

So far I can do the prototype, I'm a Golang developer and I have experience with the Geth. My prototype will be a fork off Ethereum, I think it would be crazy not to start off Geth/Ethereum.
newbie
Activity: 25
Merit: 1
May 25, 2018, 11:45:32 PM
#31
(…)

Things that will be free:
  • Interact with smart contracts
  • Create transactions with `0` of the native currency.

Things that will require a 'fee' to be paid:
  • Transfer the native currency
  • Create smart contacts.


(…)


Here is something I missed before, I think it hasn't been adressed yet:

The assumption was that Gas was needed as an anti spam measure, but it also needed to incentivise miners to include an interaction or a transaction in the blockchain. Thus, unless I'm missing something, having a pure PoW as a means to prevent spam is either not enough or you'd need to force miners to include these kinds of transactions. Or am I missing something here?

I thought of mentioned it, but apparently not. Well, the PoW can be translated to gas. Think of it like the PoW that people are done in order to interact with smart contracts are like coupons that miners can redeem for their equivalent in 'fees'. At the end of the day it would be the same for the miners to process transactions that pay fee or transaction that have done and include some PoW in them.

The difficulty of the PoW would be used to measure how much gas a PoW worth.

Is the idea behind this clear?
hero member
Activity: 994
Merit: 513
May 25, 2018, 07:04:56 PM
#30
(…)

Things that will be free:
  • Interact with smart contracts
  • Create transactions with `0` of the native currency.

Things that will require a 'fee' to be paid:
  • Transfer the native currency
  • Create smart contacts.


(…)


Here is something I missed before, I think it hasn't been adressed yet:

The assumption was that Gas was needed as an anti spam measure, but it also needed to incentivise miners to include an interaction or a transaction in the blockchain. Thus, unless I'm missing something, having a pure PoW as a means to prevent spam is either not enough or you'd need to force miners to include these kinds of transactions. Or am I missing something here?
hero member
Activity: 994
Merit: 513
May 24, 2018, 03:22:26 AM
#29
Another idea that crossed my mind, but I don't know yet how to implement, is that each smart contract has their own blockchain, aside from the main monetary chain (here smart contract's definition and native currency are going to be stored).

If you want to run a full node, you would have many blockchains, if you only care about your own DAPP's blockchain you can do so using less resources (Monetary chain + my dapp chain).

Do you think this may be a better idea?
I think it's a good idea (that's basically how Lisk works) but the problem is that then you must take care that the security of every sidechain is ensured by a sufficient number of validators. The incentive system for that may be pretty complex. The "child chain" model I mentioned earlier may be simpler as the validators would be basically the same ones, but it gives less scalability advantages. Every model comes with some sort of tradeoff ...

My idea is that each smart contract has their own blockchain, as I mentioned before, *but* the main chain has a reference to their last valid node (a hash). By doing so, the smart contract's blockchain is a secure as the main chain (which is secure with Proof of work, stake or any other method (I think PoW is good for starters)).

(A) <- (B) <- (C) <- (F) <- (H)
            |_(A') <- (A1')

Let's assume that in block "H" the smart contract A' is updated, then inside the block "H" there will be something like "the new head of blockchain A' is A1'".

TL;DR the sidechains are not secured with PoW or anything but with a reference to the newer head block on the main chain.

That's my idea so far, I'm now creating a document with some formal specification to ask for more feedback, I'll publish the document in here first.

That looks a bit like the idea behind Lisk, which has a strong sidechain focus. If you haven't, you might want to check it out.
newbie
Activity: 224
Merit: 0
May 23, 2018, 06:45:16 PM
#28
There is a lot of idea behidn the blockchaine technoil:ogy and they are all good idea
newbie
Activity: 25
Merit: 1
May 23, 2018, 06:36:09 PM
#27
Another idea that crossed my mind, but I don't know yet how to implement, is that each smart contract has their own blockchain, aside from the main monetary chain (here smart contract's definition and native currency are going to be stored).

If you want to run a full node, you would have many blockchains, if you only care about your own DAPP's blockchain you can do so using less resources (Monetary chain + my dapp chain).

Do you think this may be a better idea?
I think it's a good idea (that's basically how Lisk works) but the problem is that then you must take care that the security of every sidechain is ensured by a sufficient number of validators. The incentive system for that may be pretty complex. The "child chain" model I mentioned earlier may be simpler as the validators would be basically the same ones, but it gives less scalability advantages. Every model comes with some sort of tradeoff ...

My idea is that each smart contract has their own blockchain, as I mentioned before, *but* the main chain has a reference to their last valid node (a hash). By doing so, the smart contract's blockchain is a secure as the main chain (which is secure with Proof of work, stake or any other method (I think PoW is good for starters)).

(A) <- (B) <- (C) <- (F) <- (H)
            |_(A') <- (A1')

Let's assume that in block "H" the smart contract A' is updated, then inside the block "H" there will be something like "the new head of blockchain A' is A1'".

TL;DR the sidechains are not secured with PoW or anything but with a reference to the newer head block on the main chain.

That's my idea so far, I'm now creating a document with some formal specification to ask for more feedback, I'll publish the document in here first.
legendary
Activity: 3906
Merit: 6249
Decentralization Maximalist
May 23, 2018, 06:12:41 PM
#26
Another idea that crossed my mind, but I don't know yet how to implement, is that each smart contract has their own blockchain, aside from the main monetary chain (here smart contract's definition and native currency are going to be stored).

If you want to run a full node, you would have many blockchains, if you only care about your own DAPP's blockchain you can do so using less resources (Monetary chain + my dapp chain).

Do you think this may be a better idea?
I think it's a good idea (that's basically how Lisk works) but the problem is that then you must take care that the security of every sidechain is ensured by a sufficient number of validators. The incentive system for that may be pretty complex. The "child chain" model I mentioned earlier may be simpler as the validators would be basically the same ones, but it gives less scalability advantages. Every model comes with some sort of tradeoff ...
hero member
Activity: 994
Merit: 513
May 23, 2018, 02:42:42 PM
#25
Thanks guys for you feed. What would be the next logical step? I was thinking in writing a whitepaper or maybe a (power point?) presentation with my ideas and plans, try to get more developers interested and make it happen.

Suggestions?

Another thing, especially for smartphones, would be internet-by-proxy/internet-routing. Let me elaborate on that a bit:

A few years back, I heard of an app called firechat or something like that. It did something rather simple, yet neat: it looked for other phones near you and got in contact with them directly. I'm not sure what it used exactly, I don't think it was Bluetooth, more like a local lan (I'm not familiar with this type of setup). Now, the interesting thing was that in some countries with poor internet infrastructure, people used it as relays to get messages into the internet. A message(like email or whatever) jumped from phone to phone until eventually, it got to a phone that was connected to the internet.

I've always wondered why this wasn't explored more, especially as a way to earn some tokens or whathaveyou. I mean, combine that with a decentralized Twitter…

Looking at sm

I've seen projects like this before, it's a doable idea since all nodes will just broadcast the message (which they don't understand because it's encrypted) until the real recipient gets the message and deciphers it.

https://www.indiegogo.com/projects/sonnet-most-advanced-wireless-mesh-network#/

I get your idea though, people would broadcast until one of the nodes kindly publish the transaction to the Internet. Neat idea, I like it. It's a bit out of my scope of knowledge though, I'm not an Android/iOS developer.

Well, to be honest, all of this is pretty much out of my scope of knowledge, including the next logical step. The problem is that almost everyone is working on their own stuff, but maybe write a whitepaper, then reach out to some public figures you trust, which are not directly associated with concrete projects, such as Andreas Antonopoulos (although guys like Vitalik Buterin, Zooko Wilcox, Charlie Lee and so on seem to be relatively open to communication), not in a way that implies that you want them on board, but ask them this very question: "I have this idea, what would you say the next logical step would be? How can I reach out to people?" That's probably what I would do if I wanted to commit myself to such a project.

Also, get people involved as early as possible. You want others to understand what you are doing, be it to discuss ideas, in case of you having to stop working on the project for whatever reason and so on.

Here's another thought on the PoW-as-a-service thing: I like it because it keeps the first layer extremely simple. You could build all kinds of stuff on top of that, without having the massive clusterfuck which is ethereum. Multiple languages? No problem. Private chains? Go for it. This is really great, because I think, if you were to move to multiple layer blockchain solutions (i.e. off-chain scaling, such as lightning network and so on), you don't have to make compromises as to what the first layer looks like. So this would be my approach: keep the first layer as simple as possible. I'm not sure whether this is inside the scope of what you are working on, it was just a thoguth I just had.

In that regard, you wouldn't have to work on the Internet-by-relay thing. Let someone else build it.
newbie
Activity: 25
Merit: 1
May 23, 2018, 10:35:43 AM
#24
Thanks guys for you feed. What would be the next logical step? I was thinking in writing a whitepaper or maybe a (power point?) presentation with my ideas and plans, try to get more developers interested and make it happen.

Suggestions?

Another thing, especially for smartphones, would be internet-by-proxy/internet-routing. Let me elaborate on that a bit:

A few years back, I heard of an app called firechat or something like that. It did something rather simple, yet neat: it looked for other phones near you and got in contact with them directly. I'm not sure what it used exactly, I don't think it was Bluetooth, more like a local lan (I'm not familiar with this type of setup). Now, the interesting thing was that in some countries with poor internet infrastructure, people used it as relays to get messages into the internet. A message(like email or whatever) jumped from phone to phone until eventually, it got to a phone that was connected to the internet.

I've always wondered why this wasn't explored more, especially as a way to earn some tokens or whathaveyou. I mean, combine that with a decentralized Twitter…

Looking at sm

I've seen projects like this before, it's a doable idea since all nodes will just broadcast the message (which they don't understand because it's encrypted) until the real recipient gets the message and deciphers it.

https://www.indiegogo.com/projects/sonnet-most-advanced-wireless-mesh-network#/

I get your idea though, people would broadcast until one of the nodes kindly publish the transaction to the Internet. Neat idea, I like it. It's a bit out of my scope of knowledge though, I'm not an Android/iOS developer.
hero member
Activity: 994
Merit: 513
May 22, 2018, 06:55:10 PM
#23
This thing is getting momentum, I love it Smiley

I think you want to go bigger than "just" a blockchain based, decentralized Twitter, but for the sake of simplicity, let's keep is a the main example.


(…)

Smartphones can talk to 2 or 3 API (or even more) providers which runs the entire copy of the ledger (both layers).

My concern wasn't so much the node/storage side, but the PoW side. What you could come up with is some type of "PoW-as-a-service" solution, where nodes provide their computing power for a service. What comes to mind is the client side of things: Maybe a client which shows you ads would be a way to reimburse the client provider, who at the same time provides you with a means to create PoWs. I'd rather pay a small fee, but others might be fine with the ad route.

In fact, the whole PoW-as-a-service thind opens up a number of possible ways to monetize unused assets. Storage, obivously, especially in a system which probably can't feasibly scale if you'd put every message (and every picture) on the mainchain.

Another thing, especially for smartphones, would be internet-by-proxy/internet-routing. Let me elaborate on that a bit:

A few years back, I heard of an app called firechat or something like that. It did something rather simple, yet neat: it looked for other phones near you and got in contact with them directly. I'm not sure what it used exactly, I don't think it was Bluetooth, more like a local lan (I'm not familiar with this type of setup). Now, the interesting thing was that in some countries with poor internet infrastructure, people used it as relays to get messages into the internet. A message(like email or whatever) jumped from phone to phone until eventually, it got to a phone that was connected to the internet.

I've always wondered why this wasn't explored more, especially as a way to earn some tokens or whathaveyou. I mean, combine that with a decentralized Twitter…

Looking at sm
member
Activity: 308
Merit: 15
May 22, 2018, 06:26:51 PM
#22
If you would be creating a blockchain as your content was all about with these features, you are absolutely good to go. I would really say yes and comply with your idea and infact would assist in all ways to learn much more bitter. Everything would be split and not on only on those existing blockchain.
newbie
Activity: 25
Merit: 1
May 22, 2018, 06:17:36 PM
#21
What if we have two different chains? One for the native currency (Which does pay fee) and another for smart contracts execution (which are paid with PoW).
Yep, that's a good idea and similar to the child-chain stuff I mentioned - myself I was thinking about a similar service some time ago. Cryptonite (XCN) which has a strong pruning feature (and so the blockchain size is small even with a high throughput) would have been my choice for a base for the "interaction" chain, which would be a sidechain of the main "monetary chain".

But now again to your idea to a "decentralized Twitter": Is it really necessary that all messages would be stored on-chain? What if you create a partly off-chain model? You could think about a Lightning-like model, but I think for a publication chain maybe a model where messages are published in a BitTorrent-like network would be fine - but to ensure integrity the publisher can choose to simply store a hash of his last tweets in the blockchain. If he makes an important tweet he could always choose to store it entirely, but then paying a fee ... (I'm only brainstroming a bit here ...)

Another idea that crossed my mind, but I don't know yet how to implement, is that each smart contract has their own blockchain, aside from the main monetary chain (here smart contract's definition and native currency are going to be stored).

If you want to run a full node, you would have many blockchains, if you only care about your own DAPP's blockchain you can do so using less resources (Monetary chain + my dapp chain).

Do you think this may be a better idea?
legendary
Activity: 3906
Merit: 6249
Decentralization Maximalist
May 22, 2018, 05:55:21 PM
#20
What if we have two different chains? One for the native currency (Which does pay fee) and another for smart contracts execution (which are paid with PoW).
Yep, that's a good idea and similar to the child-chain stuff I mentioned - myself I was thinking about a similar service some time ago. Cryptonite (XCN) which has a strong pruning feature (and so the blockchain size is small even with a high throughput) would have been my choice for a base for the "interaction" chain, which would be a sidechain of the main "monetary chain".

But now again to your idea to a "decentralized Twitter": Is it really necessary that all messages would be stored on-chain? What if you create a partly off-chain model? You could think about a Lightning-like model, but I think for a publication chain maybe a model where messages are published in a BitTorrent-like network would be fine - but to ensure integrity the publisher can choose to simply store a hash of his last tweets in the blockchain. If he makes an important tweet he could always choose to store it entirely, but then paying a fee ... (I'm only brainstroming a bit here ...)
newbie
Activity: 25
Merit: 1
May 22, 2018, 03:23:41 PM
#19

If only mining pools (individual miners do not really need that) would run full nodes, then we'd have a centralized system like EOS is.

I don't think everybody needs to run their own copy of the ledger.

https://www.youtube.com/watch?v=vM_Ski2eK6A

(…)

I think it is important that everyone is able to run a full node if they wish, though.

However, all in all, I love the idea of having something which is pretty much a "service layer" and have a "consumer layer" on top. I believe eventually, this is where Crypto is headed anyway.

Do you think maybe some type of Proof of Capacity / renting out disk space might be the way to go? If you want to build a decentralized Twitter, you'll have a space problem anyway. Messages have to be stored somewhere and you can't prune them (which is why I think pruning is not that important anyway). However, I'm afraid some 16GB Smartphone won't have enough disk space to make any kind of impact, which bring us back to square one, doesn't it…

Smartphones can talk to 2 or 3 API (or even more) providers which runs the entire copy of the ledger (both layers).
newbie
Activity: 25
Merit: 1
May 22, 2018, 03:06:05 PM
#18
I don't think everybody needs to run their own copy of the ledger.
Here I agree, but a certain decentralization is healthy. At least businesses should be able to run full nodes with standard hardware.

Not everybody needs a copy of the ledger. Even on my computer right now, all the clients are thin clients (Ethereum and bitcoin).

Ethereum blockchain size is over ~400GB right now. It does not fit in my brand new laptop, yet I'm still able to use it.

But it's a good thing that people are concern about it and I think I found something.

What if we have two different chains? One for the native currency (Which does pay fee) and another for smart contracts execution (which are paid with PoW).

Because smart contracts execution will not need the native currency (just PoW) I think we can discard my initial idea of '0' value transactions with no fees. All transactions that are going on the value layer should pay fees. All transactions being executed in the execution layer are paid with PoW. I think that separation is fair enough. People would still need the native currency for creating smart contracts, but interacting with them are paid with PoW.

Sounds better?

Cheers,
sr. member
Activity: 560
Merit: 273
May 22, 2018, 03:41:08 AM
#17
Have you explored the idea of an EOS platform? I think, interacting with the blockchain will be free for end users on the EOS.

EOS does not exists yet. And when it does it will be super centralized. Think of it on a VISA-like company own by ~20 something nodes. Not for me, thank you.

Yeah, you're darn right about that! I see now where you are ending up on this.
hero member
Activity: 994
Merit: 513
May 22, 2018, 03:34:11 AM
#16

If only mining pools (individual miners do not really need that) would run full nodes, then we'd have a centralized system like EOS is.

I don't think everybody needs to run their own copy of the ledger.

https://www.youtube.com/watch?v=vM_Ski2eK6A

(…)

I think it is important that everyone is able to run a full node if they wish, though.

However, all in all, I love the idea of having something which is pretty much a "service layer" and have a "consumer layer" on top. I believe eventually, this is where Crypto is headed anyway.

Do you think maybe some type of Proof of Capacity / renting out disk space might be the way to go? If you want to build a decentralized Twitter, you'll have a space problem anyway. Messages have to be stored somewhere and you can't prune them (which is why I think pruning is not that important anyway). However, I'm afraid some 16GB Smartphone won't have enough disk space to make any kind of impact, which bring us back to square one, doesn't it…
Pages:
Jump to: