First of all, Happy New Year! What year has it been With any luck, we will top last year with an even more amazing year. It’s been too long since I posted an update on myself and the Go team, and mostly due to lack of time. I’ve been so incredibly busy and so much has happened in the last 2 months that I’ve barely had time to sit down and take it all in.
As you may be well aware, the audit is just around the corner and my little baby (let’s go ethereum!) will be undergoing a full inspection very, very soon. Audit teams will take it apart and see if the repository contains anything incorrectly implemented and look for major security flaws in the design and implementation. We’ve been pretty strong on testing, testing implementation details as well as consensus testing (thanks to Christoph) and we’ll continue to add more tests over time. We’ll see how they hold up during the audit (although I’m sure we’ll be fine, it’s still a bit scary (-:)
Developing
PoC-7 it has been released now for about a week and has been pretty stable (and growing in size!). We are already hard at work finalizing PoC-8, which includes numerous small changes:
- Blocking time set back to 12s (was 4s)
- by code PREVHASH has become BLOCKHASH( N ) and therefore PREVHASH = BLOCKHASH(NUMBER – 1)
- We add an additional precompiled contract at address 0x04 that returns the given input (acts like copy/memcpy)
In progress
P2P
Felix has been hard at work on our new P2P package which has now entered v0.1 (PoC-7) and will experience its first update for PoC-8 soon. Felix has done an amazing job designing the package and is a real pleasure to work with. The automatically generated documentation can be found at GoDoc.
Whisper
About a month ago I finished the first draft of Whisper for the Go implementation and now passes whispered messages just fine over the network and uses the P2P package mentioned above. The Go API is relatively easy and requires almost no configuration.
back end
The ethereum backend stack also received its first (well deserved) major overhaul. Viktor has been working incredibly hard to re-implement the download manager and the ethereum subprotocol.
Swarm
Since the first day Dani joined the team, he has been passionately working on the pair selection algorithm Y distributed preimage file. The DPA will be used for our Swarm technology. The specification is 95% complete and approximately 50% implemented. Progress is going strong!
Both go-ethereum/p2p Y go-ethereum/whisper they have been developed in such a way that neither requires ethereum to operate. If you are developing in Go and your application requires a P2P network or (dark) messaging, try the packages. An example subprotocol can be found here and an example of how to use Whisper can be found here.
AMS Center
Now that the hub it’s finally ready, you can come in and have a coffee with us. You can find us in the elegant Amsterdam Zuid neighborhood, near the Museumplein (Alexander Boerstraat 21).
In my next post, I hope to have a version candidate for PoC-8 and maybe even a draft implementation of swarm. But until then, happy whispering and mining!