Stack Exchange Network

Stack Exchange network consists of 174 Q&A communities including Stack Overflow, the largest, most trusted online community for developers to learn, share their knowledge, and build their careers.

Visit Stack Exchange

Questions tagged [architecture]

Questions about Ethereum's architecture. Check tags such as dapp-development, contract-design, and design-patterns if they may fit better.

0
votes
0answers
12 views

Building Data Stream Market Place on Ethereum

I want to build a Data Stream Market Place based on Ethereum Like Streamr. There will be two kind of users, Sellers who can upload their Data Streams through API and Buyers who can purchase the ...
1
vote
0answers
76 views

How to update react component state with Drizzle

I'm using react and drizzle and want to update the classes state based on data returned from a call to a contract. I'm using the standard pattern from the drizzle box and here (https://itnext.io/how-...
1
vote
0answers
16 views

Deploy many instances of configured base contracts or track multiple agreements on one contract?

I am playing around with solidity, truffle, and node and i was wondering if I am trying to make a game that allows players to browse a list of games and join the ones they want. Would it be best to ...
3
votes
3answers
143 views

EVM - How is it connected to the Blockchain? [duplicate]

I have a few problems understanding the software architecture of the Blockchain. For me Blockchain is the database where all transactions, receipts, balances, etc are stored. But how is the connection ...
2
votes
1answer
51 views

Modify Struct on Upgradeable Smart Contracts

I have reviewed some techniques around Upgradeable smart contracts from starting point(Elena Dimitrova's Eternal Storage) to zeppelinOS's Unstructured Storage pattern. As I understood from posts that ...
3
votes
2answers
66 views

Wouldn't a 64bit-based EVM be more efficient on the Ethereum Ecosystem?

As the Ethereum Rationale design says: 32 byte word size - the alternative is 4 or 8 byte words, as in most other architectures, or unlimited, as in Bitcoin. 4 or 8 byte words are too restrictive ...
1
vote
1answer
50 views

Is there a “Desktop Dapp”?

The most of "decentralized applications" are a "web" application as follows : Front End (usually JavaScript) => Smart Contract (usually Solidity) => Blockchain (usually Ethereum) Is this the ...
3
votes
1answer
149 views

How do the ethereum components work together

hy i have been reading about the ethereum project and its components, i understand that there are 3 major components (EVM, swarm, whisper) Swarm is a peer to peer data sharing network in which ...
1
vote
0answers
38 views

Enterprise Ethereum Alliance - Enterprise Ethereum Architecture Stack (EEAS)

I read through the just released EEA Stack and Specification accessible at https://entethalliance.org/wp-content/uploads/2018/05/EEA-Architecture-Stack-Spring-2018.pdf It is a great first step in the ...
0
votes
0answers
32 views

Push Transfer of minted tokens

How can I create a single function which on its own, will reward an address with minted tokens if a certain time condition is met? Every time I try, I can only get it to work if I create two functions ...
2
votes
1answer
36 views

Duplicating data on server and contract

If I'm building a dapp, is it worthwhile to store information that is in the contract on a server for speed purposes, and only using the contract to track ownership of tokens. I.e. for something ...
2
votes
3answers
308 views

Doesn't having a centralised front end pose a huge security risk to an Ethereum app?

My understanding is that the typical architecture for an Ethereum app is to have a smart contract acting as a backend to a centralized, stateless front end which runs on a single server. Doesn't this ...
1
vote
2answers
64 views

Are Speed Bumps safe to delay contract action?

In the Ethereum Wiki it is stated that you can delay a smart contract's action in this defined way : struct RequestedWithdrawal { uint amount; uint time; } mapping (address => uint) private ...
0
votes
0answers
49 views

Message Complexity and Time complexity

I'm interested in the message complexity and the time complexity of block propagation. Message complexity As far as I understand, the network is flooded when a new block is discovered. I conclude ...
1
vote
1answer
174 views

codeHash variable value

It is stated in the Ethereum yellow paper: codeHash: The hash of the EVM code of this account—this is the code that gets executed should this address receive a message call; it is immutable ...
0
votes
0answers
128 views

Number of nodes in consortium?

I'm setting up a private ethereum network for a client that wants to onboard new consortium members in the future. My question is this: should every new consortium member have a node? or they can ...
1
vote
0answers
156 views

Limitation on amount of data that can be sent on Geth

We are creating a small private network with the purpose of sharing data. We thought that the main concern about writing large amounts of data in Ethereum would be the gas cost, which is not a problem ...
3
votes
2answers
1k views

What is the timestamp of a confirmed transaction based on?

Specifically, if we look at any transaction on the Ethereum blockchain, is the TimeStamp based on when the transaction is generated (like when you click generate transaction on MEW), or is it based on ...
7
votes
6answers
902 views

What would happen if EVM didn't exist in Ethereum?

It's not clear to me the importance of the Ethereum Virtual Machine and why it is used. So it is natural to ask what would happen if EVM didn't exist? or Ethereum didn't use it.
22
votes
2answers
14k views

What is nonce in Ethereum? How does it prevent double spending?

recently I got fascinated by blockchain, and started learning Ethereum. I came across the concept of the nonce in Ethereum. After researching I found out that nonce is used for two purposes. a. To ...
0
votes
1answer
338 views

Flow of Transactions and following State Changes (in respect to the blockchain)

Something rather basic I am not getting - Say I lay a transaction aimed to change the state of a smart contract, which in turn will interact with other contracts etc. until it reaches a halt. ...
1
vote
0answers
79 views

What (distributed) mechanism for broadcasting transactions and messages does Ethereum's P2P implement? [duplicate]

What (distributed) mechanism for broadcasting transactions and messages does Ethereum's P2P implement? I know that each node on the Ethereum network is only connected to a (small) subset of the other ...
0
votes
1answer
629 views

Transaction, block and mining

I'm looking for a detailed explanation (video would be the best) how and when transaction is being mined on Ethereum network (in theory), since the moment it's created with web3.eth.sendTransaction(). ...
1
vote
1answer
80 views

Why other blockchain would be better for monetary purposes than Ethereum? [closed]

I have seen a comment multiple times that other blockchains would be better for storing value in monetary purposes than Ethereum. Why is that said? UTXO? Volatility? The comment has been brought up ...
5
votes
1answer
2k views

Why did Ethereum design Ethash instead of using an existing memory-hard hash function?

Ethereum uses the Ethash hash function for proof-of-work. It was designed specifically for this purpose by Vitalik based on previous work by Thaddeus Dryja. The main rule they teach you in a crypto ...
5
votes
2answers
115 views

State of knowledge / research directions academic paper

The SoK paper by Bonneau et al provides a good overview of the state of knowledge (as of 2015) and research directions for Bitcoin. Is there anything similar for Ethereum?
3
votes
1answer
184 views

Architecture for business application

I'm building a business application (in a private ethereum network) in which certain users should be able to perform some transactions. The thing is that the blockchain authentication is hard to ...
2
votes
1answer
434 views

Why setting balanceOf instead of just using public variable in ERC20 tokens?

Good day, ERC20 specify the following 2 functions as its most important ones: function balanceOf(address _owner) constant returns (uint256 balance){} function transfer(address _to, uint256 _value) ...
4
votes
3answers
2k views

SafeMath safe add function assertions against overflows

Looking at the following safeAdd function, which is common in many smart contracts out there, it seems that only a and c are compared. But can't it be that b will be the uint that will cause an ...
2
votes
1answer
606 views

Is there a layered architecture diagram for Ethereum?

I wonder if there is a layered architecture diagram for Ethereum that shows from the lowest level to the highest level like the one of Java (http://docs.oracle.com/javase/8/docs/index.html)? It could ...
2
votes
1answer
270 views

Proof of Work validation

I am not too understanding this equation. Do any one know it? Especially what is m stand for since I cannot get it from the paper. Thanks
1
vote
1answer
2k views

How a contract stored in the blockchain? [duplicate]

I am very wondering how the contract code stored in the blockchain? I think the blockchain only contain a group of transactions and some meta data. Am I wrong? Thanks
3
votes
0answers
511 views

Does this architecture violate a Dapp-philosophy?

Sorry for my English, again... First I wanted to place this post on Etherium Reddit. If it needs to be there, just close this question... I need to implement this logic: From Wallet 1 user ...
2
votes
1answer
502 views

Can we connect 2 or more private block chains? [duplicate]

Lets say there are 2 organizations and each have their own private block chains in a different geographical region. Now they need to have a collaboration and share some part of the data between them. ...
4
votes
1answer
120 views

How to securely Interact with a contract on user's behalf from centralized server?

To explain myself, what I need is to be able to have a way so that the central server can only interact with the contract only with valid identification from a user? This identification provided by ...
3
votes
1answer
98 views

Why does the blockchain store multiple copies of the same code?

Based on joeykrug's questions on Github: Is there any reason we need to store multiple copies of code if the same contracts use the same code? For example, if a contract is deployed and another ...
7
votes
1answer
95 views

Are there multiple instances of Ethereum state or a single latest image?

Are there multiple instances of Ethereum's state? That is, is there one per mined block? Or a single latest image? Does Ethereum maintain a state snapshot, for every block since genesis, so that ...
2
votes
1answer
680 views

What is the Ethereum network architecture? What are the major components of this?

I'm looking for a visual (preferred) or a description of what Ethereum "looks" like to a network architect. For example, in contrasting Bitcoin, it consists of: "Full nodes" runs C++ code Uses QT ...
21
votes
2answers
3k views

What is the merit of creating new smart contract languages like Solidity instead of using other languages?

What is the pros and cons of creating new languages like Solidity for smart contracts instead of using other computer languages like Golang or Python?
6
votes
2answers
5k views

What diagrams exist to illustrate the Ethereum blockchain creation process?

I have found the below diagram (and this explanation) useful in understanding how blockchains work in general: [Illustration by Matthäus Wander (Wikimedia)] This answer goes on to say that ...
8
votes
1answer
464 views

Why are contracts limited to only the previous 256 block hashes?

Why are contracts limited to only the previous 256 block hashes using the BLOCKHASH opcode (and corresponding functions in Solidity and Serpent)? Why does another contract, such as this, need to be ...
35
votes
3answers
10k views

What are the pros and cons of Ethereum balances vs. UTXOs?

Ethereum has a simpler model by not having UTXOs (Unspent Transaction Outputs) like Bitcoin. What does Ethereum "give up" by not having UTXOs, and what does it gain?