Which is the right order for Denominations?
A. Wei, Finney, Szabo, Ether, Tether.
B. Finney, Szabo, Mether, Gwei.
C. Gwei, Szabo, Finney, Ether.
Externally Owned Accounts:
A. can be destroyed using the selfdestruct keyword. This way all remaining ether will be sent to the receiver address, regardless if they have a fallback function or not.
B. are bound to a private key which is necessary to sign transactions outgoing from that account.
C. are logical opcodes running on the ethereum blockchain very similar to smart contracts.
Gas costs accrue on sending a transaction:
A. no matter the content.
B. only with a new smart contract deployment.
C. only interacting with an already deployed smart contract.
A Mapping consists of keys and value.
A. the Keys can be anything, but the value can't be another mapping or struct.
B. the Value can be anything, but the key cannot be another mapping, struct, integer or Boolean.
C. the value can be anything, but the key cannot be another mapping, struct, enum or dynamically sized array.
The Fallback function:
A. cannot receive Ether, not even by adding the payable modifier.
B. can contain as much logic as you want, but it's better to keep it short and not exceed the gas stipend of 2300 gas.
C. can be used to avoid receiving ether.
If contract MyContractA is derived from Contract MyContractB, then this would be the right syntax:
A. contract MyContractA is MyContractB { ... }
B. contract MyContractA inherit (MyContractB) {...}
C. contract MyContractA extends MyContractB {...}
D. contract MyContractB derives MyContractA {...}
When using assert to check invariants and it evaluates to false: A. all gas is consumed.
B. all remaining gas is returned.
Using selfdestruct(beneficiary) with the beneficiary being a contract without a payable fallback function:
A. will throw an exception, because the fallback function is non-payable and thus cannot receive ether.
B. it's impossible to secure a contract against receiving ether, because selfdestruct will always send ether to the address in the argument. This is a design decision of the Ethereum platform.
C. selfdestruct doesn't send anything to a contract, it just re-assigns the owner of the contract to a new person. Sending ether must be done outside of selfdestruct.
With the truffle config file you can manage:
A. the amount of gas your contract deployment and transactions, against your contract, will need. This way you can essentially lower the gas costs over traditional web3.js dApps.
B. different Networks to deploy your contracts to. This way you can easily deploy to a local blockchain, the main-net or the Ropsten/Rinkeby Test-Net with only one parameter.
C. you can manage your secret API keys to the Ethereum Network. This way you can get access to several different Ethereum nodes at the same time without the need to switch your keyfiles.
Truffle boxes are a great way:
A. to contribute to the box community which is the distributed file system for truffle.
B. to start with a pre-configured environment for most web-development needs.
C. to use tools that makes boxing of Dapps for different platforms very easy.