Questions tagged [ethereum-design]

The tag has no usage guidance.

Filter by
Sorted by
Tagged with
1
vote
0answers
13 views

UNGAS and why was GAS made available to programming smart contracts?

Hardforks, such as Istanbul, have illustrated the best practice that smart contracts should not make any assumptions about gas. Gas costs have, can, and will change, for example: Is transfer() still ...
1
vote
0answers
22 views

History question: Left and Right padding

from: https://solidity.readthedocs.io/en/v0.5.12/abi-spec.html#encoding-of-indexed-event-parameters bytesNN types are padded on the right while uintNN / intNN are padded on the left. I would ...
0
votes
1answer
25 views

Why some transaction errors lead to discarding the whole block?

In terms of go-ethereum code, transaction errors can be grouped into (I made up the terminology) several categories by their effect on state transition. System errors: like database connection issues....
3
votes
0answers
41 views

What is an SSZ partial?

What is an SSZ partial? What are its benefits and are there any existing similar concepts that would help in understanding it? Some references: https://github.com/ethereum/eth2.0-specs/pull/1184/...
0
votes
1answer
69 views

How to get the return value of a contract from a contract call?

If a contract does returns something, (whether a string or return true/return false) how to get it’s return value ? I mean where does the return value is stored ? Is necessary to use RETURNDATACOPY or ...
1
vote
1answer
25 views

Is it possible to manipulate maximum callstack size in solidity?

I'm a student learning about solidity language. According to solidity's official docs, the maximum callstack size is 1024. But, I am wondering, can a developer change the maximum callstack size in ...
0
votes
2answers
611 views

What are offchain and onchain Transactions?

What is meant by off-chain and on-chain transactions? I don't get the meaning of off-chain and on-chain in general.
0
votes
1answer
21 views

Dynamic Arrays of type memory

Are the dynamic arrays of type memory fixed sized. I have read that the arrays of type memory are fixed sixed. Thanks
0
votes
1answer
36 views

Smart Contract (SC) - Is it a Block itself?

Is SC a block itself on the Ethereum Block chain or it's just a storage? I know SC has its own hash address, it's own data stored in State variables, but does it has nonce and gas limit?
2
votes
1answer
71 views

What is the collapse function, L, explained in Ethereum yellow paper?

I have learned the Ethereum yellow paper. In the 4th page of the paper, you can find the following statements: The function, L_s of sigma is defined as p of a, and the function is used to provide a ...
3
votes
0answers
26 views

Does any client maintain a mapping of hashes to addresses?

As explained in the Design Rationale wiki: Using sha3(k) as the key in the "secure tree" (used in the state and account storage tries): this makes it much more difficult to DoS the trie by setting ...
4
votes
1answer
279 views

Why are keys hashed in Merkle Patricia Trie?

Account addresses are hashed before they are recorded in the Patricia Merkle Trie, as well as storage slot indexes. This makes it difficult to enumerate all accounts and storage slots by scanning the ...
2
votes
1answer
50 views

Is there a document describing the design rationale behind Ethereum?

What are the design decissions behind Ethereum? Why are storage words 256-bit long? Why is Ethereum using the account model and not the UTXO model? ... Is there a document describing these design ...
4
votes
1answer
482 views

Why is the Ethereum Virtual Machine designed as a stack based language?

I heard that Ethereum is about to change into a flavor of Web Assembly (a register-based language, eWASM). Web Assembly is register-based, which means they are faster. So why is Ethereum using a ...