Introduction
I'm Peter Šurda. I first encountered Bitcoin in April 2010, and I didn't understand it and wasn't interested in it. But it kept showing up in the news, so about a year later I looked at it more in depth. I realised that I still don't fully understand it, but now I was interested. I decided to write my master's thesis about it, and it was one of the early economic research on Bitcoin.
Since then I spent more time with Bitcoin, I've been lecturing about it and helping people understand it. I run a blog, economicsofbitcoin.com, but it hasn't been updated lately. I started focusing on bitmessage, which I find fascinating just like I'm fascinated with Bitcoin. I launched a Bitmessage to email gateway service, mailchuck.com, which allows bitmessage users to communicate with people who still use email. However, later I realised that Bitmessage itself needs some help, so for the last 2 months I've been improving the PyBitmessage client, and managed to officially join the Bitmessage team. This is more-or-less now my full time job. I'm trying to streamline the product development lifecycle and I've been releasing a new development version almost every week.
I would like to build a sustainable business around Bitmessage that helps to finance the development of the Bitmessage client as well. I think that people should not be required to disclose their identity to anyone with whom they communicate or do business with, and the infrastructure providers involved in this exchange should not require such disclosure either.
Prior to Bitcoin/Bitmessage, I was primarily a software developer, I worked in email security, online payments, networking and multimedia areas.
I'll be putting replies into a single post, like Mike Hearn.
Replies:
I don't think we will see much change to how it is now, there will tend to be a single dominant monetary asset and it probably will remain bitcoin. The next couple of spots might reshuffle, but I don't expect much change there either. Basically I'm making the conservative "things will remain as they are" estimate.Which digital currency (litecoin,dogecoin, peercoin etc) do you think will be the biggest competitor to bitcoin in 5 years
On protocol level, the competition is somewhat different, and I think Ethereum is a number one competitor. It depends on how projects like sidechains or the lightning network evolve.
But I could obviously be totally wrong.
I met Johann Gevers, the CEO of Monetas, a couple of times and he's a very nice guy who is really passionate about what he's doing. I think that having a technology that complements Bitcoin is great, and we'll have to see how Monetas/Open Transactions compares to Lightning/Sidechains once all of them are actually used and compete head-to-head. I certainly can't predict which will gain more traction and where.You´ve talked about sidechains and the lightning protocol, what´s your opinion about the monetas.net company and their off-chain solution?
Monetas also made some contributions to bitmessage, do you think they are useful?
If I don´t remember wrong you are involved in Austrian economics, what is your vision about bitcoin for the years to come?
Do you think it will be mass adopted and the price will rise by orders of magnitude?
I don't know exactly what the status of their bitmessage implementation is, but it looks like they haven't done much development lately. My personal short-term focus on PyBitmessage is on improving the user interface, user feedback revealed this to be the greatest deficiency. However, I made some core improvements too, for example my unofficial PyBitmessage releases now include a C PoW library, SQLite database zeroes deleted data, and nodes can now use TLS for communication. I hope that once I get a working business strategy, I can finance an implementation of a C library for Bitmessage, and this can then be integrated easier into other projects. C libraries can be even loaded by many other programming languages.
I do consider myself a part of the Austrian School of Economics, and I actually lecture about Bitcoin at Scholarium, which is the Viennese equivalent of the Ludwig von Mises Institute, but smaller in scope. A lot of economists misunderstand monetary economics when looking at Bitcoin, and overlook that monetary demand consists of holding, rather than spending, an asset. In the more developed countries, typically people see little benefit in holding Bitcoins as opposed to holding Euros or Dollars, and it looks like Cyprus and Greece didn't scare them enough. In less developed countries, people have less savings, so they can also hold less Bitcoins. On the other hand, the financial system contains more and more concentrated debt that cannot be repaid, combined with a dramatic increase of the monetary base, and thus does not appear to have a very promising future either. If Bitcoin's monetary demand increases, then the price would increase too, however monetary demand is often mixed with speculation and this can influence the price in both directions.
In general, when predicting the future, I tend to remember these two quotes:
There are two kinds of forecasters: those who don’t know, and those who don’t know they don’t know.
It's tough to make predictions, especially about the future.
Thank you Roger for the work you've been doing for Bitcoin, and for having me doing AMA!Thank you so much for pushing ahead with Bitmessage.
What news sources were you reading that Bitcoin kept popping up way back in 2010?
That's a very easy question: Slashdot. I've been following Slashdot since it launched in '97, and Bitcoin showed up there several times in 2010 and 2011.
I would have to make some educated guesses. Atheros (Jonathan Warren) who originally conceived Bitmessage, has not been spending that much time on it lately. He told me he's working on some other projects. Also, there was a lack of activity on the "logistics" of the project, such as handling issues and pull requests. There are actually many people who contribute in some way, but it looks like it was stuck on Atheros' lack of time. Before I joined, he had been the only one with write access to the project on github. Since I joined, I created a short term plan for the next release. I looked at all the open issues and pull requests and categorised them. I think I closed over 100 of them in total already (but many of them were created by me to keep track of what I worked on). I also improved the process security based on Peter Todd's recommendations (signing commits, and I also sign released binaries). I bought my first Mac so I can test it on all three platforms and make the releases myself. I think that the logistics have much improved over the last month.Do you think that the development of bitmessage stalled because of lacking incentive structure?
Is there a project in development to build it on the bitcoin or another blockchain?
I feel comfortable in my current role, and it's great to have feedback from the users as well. I feel passionate about Bitmessage and I think it's a good fit for my skills. But as I wrote back in the Introduction, I'd like to find a way of creating a sustainable business plan that will help finance this client development as well. I can't keep working on PyBitmessage full time while living mainly off my savings. I'm hoping that people that I talk to will have suggestions or even help in some way.
Bitmessage does not use a blockchain and I think that moving it onto a blockchain wouldn't make much sense.
I plan to have some level of linux binaries by version 0.6, which will be an official release and should happen by the end of the year. My goal is to have at least an Ubuntu PPA (which I can do myself). There are other people who work on integration with ebuild, archlinux or debian, but it still requires me (or, less likely, Atheros) to coordinate. Since PyBitmessage now includes C library for PoW, there will have to be some changes in the distribution config files/scripts.Do you have any plans to put up Linux builds on https://github.com/mailchuck/PyBitmessage/releases as well?
I'm sure many people would like that
Even though it depends on the specific situation, but I think it's generally better to develop collaboratively and get your income from source other than licensing, for example complementary services.(1) What motivates you to develop open source software?
Based on my (admittedly not very sophisticated) research, the problem number one was a crappy user interface. Fixing this has been my priority. Luckily, some guy on github did the groundwork for that (I tend to suck at UI design), but I was still left with tons of bugs and incomplete integration. In the meantime it's been working pretty well and there aren't that many bugs left (and they tend to be annoyances that are fixed once you restart the client).(2) What do you think most people don't get about Bitmessage?
I "read" reddit through an RSS reader, and then click on the entries that interest me. I don't visit any of the others you mentioned. I think I'm already receiving too much information and have to cut down on it.(3) Do you browse any of the *Chans? (2chan, 4chan, 8chan, etc) Do you browse on Reddit? Also Tumblr?
I'm not against it but it's not a priority.(3) What is your opinion about migrating Bitmessage to Python 3.x ?
I'm not against this either but it's not a priority either. More preferably I would like to have a C library for the core, and the UI can remain in python and load the C library. The connection between the two isn't actually that big, they do run in separate threads and communicate through signals. The SQlite database thread is shared, and config file interaction is basically the only thing that isn't separated well.(4) What is your opinion about separating the Bitmessage Core & UI layer into separate repos / projects?
Looks like I missed this question before. I think that you're limited to 8 outgoing connections, and incoming can go to like 1000 or something like that. I don't think this is configurable, but you can configure bandwidth limits.Is there a way to limit the number of connections (like adding maxconnections=25 to bitcoin.conf in Bitcoin Core) in Bitmessage?
Yes, definitely. My service, mailchuck.com allows you to use a Bitmessage client to send and receive emails. If you use my releases of the Bitmessage client, it has a very smooth integration that makes work pretty much transparently (with the old releases, it still works but it's not as smooth). I would also like to offer a complementary service for businesses that want to send emails to Bitmessage users, but I haven't found anyone interested in that so far.Do you think making Bitmessage client compatible with legacy email would help adoption?
Questions over Bitmessage
Some people asked me over Bitmessage and I replied too. I'm copying them here (slightly reformatted):
First of all, these are really good questions. I hope that my answers aren't be too crappy.Have you heard of mixnets? I've heard they are touted as being the most anonymous networks. How do you feel bitmessage compares?
Have you heard of public-key based routing? Do you think it would help bitmessage?
What are the major failings and successes of bitmessage, security- and anonymity- wise?
Have you heard of secushare? Do you think it will compete / complement bitmessage?
What about older technologies such as retroshare? Do you feel bitmessage's messaging is superior?
Prior to my exposure to Bitmessage, I hadn't really spent much time thinking about anonymity from design perspective. I knew there were other projects but I hadn't tried them out. Even with Bitmessage, I wasn't planning on getting involved directly in its development. And even now, when I am involved, I'm not planning on working on the protocol design. I would need to do more studying before that. I could do TLS because the design was done by others posting on github, I just did the implementation (and most of my time was spent fighting with python's poor SSL features and not really on cryptography). As I said in another post yesterday, low level crypto is not my area of expertise. In general, I would prefer if someone else did that. I'd only get involved as a last resort.
I started using Bitmessage because I read about it in the news, not because I compared it other systems. I don't really have a strong opinion about how it compares to other systems.
I think that Bitmessage's scalability will have to be addressed at some stage in the future. I don't think that a proposal coming from me would be a good one, but I'd be willing to coordinate and participate, and probably help out on the implementation as well.One of the criticisms of bitmessage is that it is "not a real blockchain" -- it doesn't use the bulk of the bitcoin protocol concept, mostly simply sharing every packet with everybody else. It does not even form a hash tree of subsequent messages. Do you feel these are failings? Would you consider adding a growing hash tree to the bitmessage protocol?
For me personally, the lack of PFS-like functionality is one of the main deficiencies of Bitmessage (apart from scalability). However, based on my understanding, PFS is a session feature, and Bitmessage does not have sessions. Whoever tries to fix this would probably have to come up with an innovative proposal.Another criticism is the lack of forward secrecy in the protocol. Do you feel this is important?
I'm more familiar with Bitmessage than with other protocols.Perhaps a summary of many of my thoughts in these questions is this: what draws you toward bitmessage rather than one of the many more developer-supported protocols?
I don't think that would be a good employment of my skills, at least not with my current level of understanding. It would be better if someone else did that.Would you ever consider porting bitmessage to run on the gnunet backend, to share resources with a larger developer community?
The backend is open source: https://github.com/PeterSurda/bitmessage-email-gatewayDo you ever consider turning mailchuck into a nonprofit, accepting donations in addition to fees, and opensourcing the backend?
It wasn't even originally started by me, but by a guy who vanished: https://www.reddit.com/r/bitmessage/com ... ee_online/
I'm not opposed to the donations approach, the exact strategy is still open to change. I may, for example, make the B2C product (getting an email address) fully free and only charge for B2B services (for example, businesses being able to send messages to Bitmessage users via email).
Yes, if you figure out how, let me knowIt would be great to have some larger effort out there to allow normal e-mail receipt into more secure networks.

I do have some knowledge about how cryptography works internally, but I wouldn't describe myself as an expert. I'm comfortable with using the OpenSSL C library (and I did that several times across several projects), but if I had to reimplement the primitives myself, I would need to do some studying. The closest I recall to me implementing a primitive was when I had to write code for a LUHN checksum.In one of the questions on your AMA you mentioned that you worked in email security and networking before. How good is your knowledge about cryptographic primitives, i.e. the Elliptic Curve cryptography as used by BitMessage, or ciphers / hashes etc. used by TLS? Are you
limited to knowledge about how and when to use them, or do you know how some of these work internally?
It's possible that in the near future I may have to deal with this in more depth anyway, because the OpenCL kernel for Bitmessage does not work on AMD GPUs and someone needs to fix it. I guess then we'll know how well I can handle low level crypto.