Hot answers tagged

48

Hal Finney was a cypherpunk activist of note, and the first Bitcoin user after Satoshi Nakamoto. He described his history with Bitcoin in this forum post. From that post: When Satoshi announced the first release of the software, I grabbed it right away. I think I was the first person besides Satoshi to run bitcoin. I mined block 70-something, and I ...


41

Edited to add: As predicted, with the launch of the Ethereum Name Service (ENS), users and wallets have gradually begun switching over to using strings like "mywallet.eth" instead of the raw hex addresses. Because that name was not known at the time this answer was written, it refers to the same concept as a "namereg". I can elaborate on this a little bit, ...


32

There is no Vitalik Buterin. Vitalik Buterin is a lie, invented by the Soviet shadow government to distract attention from the upcoming conspiracy to institute the new world order with the People's Bank of China and R3. These are not the Vitalik Buterin you are looking for.


31

What about an ada, babbage, shannon, grand, and einstein? See unitMap (taken from https://github.com/ethereum/web3.js/blob/0.15.0/lib/utils/utils.js#L40): var unitMap = { 'wei': '1', 'kwei': '1000', 'ada': '1000', 'femtoether': '1000', 'mwei': '1000000', 'babbage': '1000000', 'picoether':...


30

I share with you the spreadsheet which explains the formula behind the gas cost of each OPCODE. Version 1.0 was created by Core Devs of Ethereum. I look forward how to articulate future updates of it. It is a meta-consensus challenge to resolve.


26

Poloniex has a pretty complete dataset available. Raw data as JSON here. Edit the timestamps in the API to get a different snapshot. Edit the period to adjust the details.


26

I would say as a matter of style, stick to using wei, shannon, finney and ether. Ether = main unit. Finney = for micropayments. Shannon = for gas prices. Wei = for discussion around APIs and other use cases where you need to talk about the underlying unit. https://en.wikipedia.org/wiki/Hal_Finney_%28computer_scientist%29 https://en.wikipedia.org/wiki/...


25

Vitalik Buterin gave a presentation about Ethereum to Hyperledger April 28 2016 and had this slide: EVM Requirements ● Small code size (so that very many contracts from many users can be stored by one node) ● VM security designed around running untrusted code from arbitrary parties ● Multiple implementations (for cross-checking, and to mitigate developer ...


25

Ethereum Mainnet blocks #0 (genesis block) and #1 (first mined block): > new Date(eth.getBlock(0).timestamp * 1000).toUTCString() "Thu, 01 Jan 1970 00:00:00 UTC" > new Date(eth.getBlock(1).timestamp * 1000).toUTCString() "Thu, 30 Jul 2015 15:26:28 UTC" 0.1 #200,000 Ice Age Source: u/accape's statement "There is also the very ...


20

To get event logs of the past, you can instantiate the event with a block range, and use the myEvent.get function to retrieve events. In your example, we could do something minimal like this: let transferEvent = product.Transferred({}, {fromBlock: 0, toBlock: 'latest'}) transferEvent.get((error, logs) => { // we have the logs, now print them logs....


18

There's some explanation in the original design proposal here: https://t.co/An1ZpRSu7O . Basically, it was meant to use some OOP features to provide a convenient abstraction for contracts. Objects' data could be arbitrarily complex through its mapping mechanism. The original design included the ability to specify (and therefore optimise) that mapping. For ...


18

source is a quote from vitalik buterin : here I was browsing a list of elements from science fiction on Wikipedia when I came across the name. I immediately realized that I liked it better than all of the other alternatives that I had seen; I suppose it was the fact that sounded nice and it had the word "ether", referring to the hypothetical ...


17

So the important point in your question is why a new VM and not a java VM. ok let's choose a Java VM instead, what do we get? : 1- complex and voluminous Bytecode => how to store it, in the blockchain for which cost? (Knowing that a single java method can have a size up to 64KB) so such VM or language isn't space saving. 2- useless features and security ...


17

This is referred to as a "Nothing up my sleeve number" which is common practice for security / cryptography based software. From Wikipedia: In cryptography, nothing up my sleeve numbers are any numbers which, by their construction, are above suspicion of hidden properties. They are used in creating cryptographic functions such as hashes and ciphers. ...


13

Etherchain and Etherscan currently both allow you to download raw data for any of their charts.


12

Initial there were three high level languages to develop ethereum smart contracts: Mutan, a Golang-like language. It was deprecated in march 2015. LLL, a Lisp-like language. Still supported in core but hardly used. Serpent, a Python-like language Read the docs. However, it is no longer recommended to use. Later, Solidity was introduced as the 4th language. ...


11

RLP was chosen because of (1) simplicity of implementation, and (2) guaranteed absolute byte-perfect consistency. Source is Ethereum Wiki: RLP is intended to be a highly minimalistic serialization format; its sole purpose is to store nested arrays of bytes. Unlike protobuf, BSON and other existing solutions, RLP does not attempt to define any ...


11

The Ethereum paper is the White Paper, originally published by Vitalik towards the end of 2013. (About a month later, in early 2014, Vitalik announced the start of the project.) Other colours of paper are presumably plays on the fact that the colour white was already taken. The Yellow Paper (a technical specification) was written later by Gavin Wood (at ...


10

He's a real person https://en.wikipedia.org/wiki/Vitalik_Buterin Vitalik wrote the Ethereum Whitepaper, which could be described as "starting" Ethereum. He has implemented many things in Ethereum, and it would be safe to say if a single face had to be put on Ethereum, it would be his. That said launching Ethereum was a sizable team effort and one can look ...


9

The total cost of a transaction that creates a contract or executes a contract is based on 2 factors: gasUsed is the total gas that is consumed gasPrice specified in the transaction Total cost = gasUsed * gasPrice gasUsed Each operation in the EVM was assigned a number of how much gas it consumes. gasUsed is summing up all the gas for all the ...


9

A block chain is an old cryptographic construct where encryption is done in blocks, with each block encrypting a certain number of bits of the plaintext. To decrease the possibility of some attacks, like frequency analysis, encryption of each block uses some input from the previous block as part of the key for the next block. While this doesn't have ...


9

Morden: a subway station in London Ropsten: a metro station in Stockholm Rinkeby: a metro station in Stockholm Kovan: a subway station in Singapore Testnets are named after train stations as a convention, usually where the respective testnet maintainers are based from. sources: 1, 2


8

There does not appear to be active development on LLL as the Ethereum Foundation has identified Solidity as it's primary language that will receive development support from them. However, it is not "dead" in the sense that there are still bug fixes and small changes happening to the repository infrequently. Interesting side note: Inline ASM may be ...


8

Ethereum addresses do, now, have a checksum. See EIP55 for the specification and updates about implementation. It is optional for use, but if you see a mixed-case address it should be validated according to the following rule: Convert the address to hex, but if the ith digit is a letter (ie. it's one of abcdef) print it in uppercase if the 4*ith bit of the ...


8

Here's the answer from V: ethertarian seriously? there's no checksum? you typo one character wrong and your ether is lost forever? Damn.... TIL Ethereum has a massive design oversight permalink vbuterinEthereum You're not meant to use ether addresses; you're meant to use the namereg and equivalents of things like bip70. Source: https:/...


7

Smart contracts need to have an absolutely deterministic outcome, because multiple machines will be running it. It also needed to store state in the blockchain. Because no VM met those requirements, a new one had to be created. EVM was created to meet all the requirements while allowing as much flexibility as possible.


7

1 Bitcoin got you 2000 ETH and at the time 1 Bitcoin was somewhere around $500 - $600, but you can check that bit.


7

What were the technical challenges why the protocol didn't prevent them in the first place? There weren't any particular technical challenges. It was simply an oversight, "a mistake, a flaw in the protocol." This was a known subtlety (see "note: there is a difference between zero-balance and nonexistent") It was always understood that zero-balance ...


7

No, Solidity code (and EVM code in general) is only able to read the current state at the block at which it is being called. If it were able to read state at previous blocks you would need the entire history of the blockchain to validate a block. By not allowing this, the Ethereum developers made it possible to validate a block with only the current state, ...


6

GavCoin is a sample smart contract implementation of a token in the very early days of the Ethereum blockchain. It's significance is that token is implemented in LLL developed about 2 years ago. (In my opinion, LLL was too hard to work with. Just use the new Solidity programming language - you can find examples at Where can I find some Solidity / Smart ...


Only top voted, non community-wiki answers of a minimum length are eligible