MaidSafe Dev Update :safe: 24th May 2016

Hi everyone,

Thank you to everyone who got involved with TEST 3 last week, the data from these real world tests is invaluable to the Dev team, so your participation is useful and important. We do plan on rolling out another phase of community testing, however, we would like to include the newer async networking component that is currently being implemented in Crust as part of the up and coming TEST 4. We anticipate this will greatly improve data persistence. As you can see from the update below the team are burning the midnight oil and completion of the next batch of pre-release code is imminent, so it should be the beginning of next week when the next iteration of the software is ready for another round of public testing. In the meantime remember that the community have their own test network up and running I personally have a Vault running adding resource to this test network - nice work from @bluebird and to all the community contributors running a Vault, while poking and prodding that network.

##Crust, Core: Andrew, Spandan (tl) & Vinicius.

The team are currently focused on implementing the async work in Crust and that work is nearing completion. Nat traversal is already functional, the only missing piece is IGD. IGD is a 3rd party crate and porting it to async is taking a little time because internally it uses http pull parser, etc which are themselves blocking. IGD or Internet Gateway Device is a client that communicates with a UPNP enabled gateway device (a router).

Service Discovery (beaconing to find peers on LAN) is complete and now tested. The bootstrapping process sans Service Discovery has also been tested. The only remaining parts to conclude are the Direct Connection listener, parallel bootstrapping and hole punching connect which we aim to have completed this week. Although that might sound overly optimistic, the amount of effort being put in by the guys and progress thus far allows us to this prediction relatively confidently.

All of this means that Crust becomes fully async for the first time and on all platforms that we currently support. This will of course result in much less resource usage, context switches and makes for faster and easier to maintain code. We plan on integrating with Routing and thoroughly testing it very soon.

##Routing, Vaults: Adam, Andreas (tl), Fraser & Qi.

We are currently doing some spring cleaning: After months of frantic experimentation some parts of our code have become quite unwieldy, which is slowing us down a little. So we have rewritten much of kademlia_routing_table and are going to extract some functionality out of the Routing core module, amongst other ongoing simplifications and refactorings. This should not take more than a few days to complete and will greatly help us move forward quickly afterwards.
We also finished the implementation of the “Ack” feature, which will greatly reduce the amount of redundant messages that we send.

##Client : Krishna (tl), Ross, Scott & Shankar.

Good progress has been made by @Shankar and @Scott with regards to the changes that were planned for the website.

A test suite is being integrated for the launcher to test the APIs as part of CI. We are in the process of integrating Travis and Appveyor to run the CI scripts with the ffi dependency of the safe_core.

An RFC for the launcher API standards will be raised this week (tomorrow likely :wink:). The RFC is going to detail how the streaming APIs can be added to the launcher, along with a few clean ups.

We are also planning to drop the encryption between the applications and the launcher. Since the launcher and the applications all run on the same local machine, it wouldn’t be a necessity to have the encryption between the applications and launcher. A few community members were in favour of this approach, however, please feel free to let us know your thoughts.

The launcher tests that were integrated have exposed few bugs with the APIs, the plan is to work on these and get them fixed before we start on the next set of launcher enhancements.


We shall announce and release the next round of community testing here on the SAFE Network forum, so keep your eyes peeled for the TEST 4 post.

Thanks as always for your all of your support, here is a link to the weekly transcript.

49 Likes

First to see :slight_smile: great work !

1 Like

Thank you @Ross and team :slight_smile: Lots of good stuff here. Any news on ARM? lol

2 Likes

Where is the inminent MVP from February?

Maybe I miss something

2 Likes

I feel like Bill Murray in Groundhog Day with the weekly dev update.

3 Likes

Yeah I know, right!? Like I totally remember reading this last week:

“Service Discovery (beaconing to find peers on LAN) is complete and now tested. The bootstrapping process sans Service Discovery has also been tested. The only remaining parts to conclude are the Direct Connection listener, parallel bootstrapping and hole punching connect which we aim to have completed this week. Although that might sound overly optimistic, the amount of effort being put in by the guys and progress thus far allows us to this prediction relatively confidently. All of this means that Crust becomes fully async for the first time and on all platforms that we currently support. This will of course result in much less resource usage, context switches and makes for faster and easier to maintain code.”

Except I didn’t.

15 Likes

Seems like good progress to me, although maybe a big picture view for some would be nice i.e. What (will likely) happens after Test 4? But personally I’m satisfied with the progress and I find it inspiring and exciting

2 Likes

…:joy::joy::joy:…

Poor ARM is like the stepchild of the SAFE family…lol!
I’m sure it will find a happy home soon though!

4 Likes

There are a ton of new/completed items this week AND some much more specific deadlines/expectations for upcoming features. I am confident they would not get this specific about release times without a very high level of confidence.

This feels like a big step forward!!

5 Likes

Nice update :thumbsup:. We’ll fire up TEST 4 next week and I’m curious to see how that one goes.

I’ve added some bugs with the Demo app, but I don’t know if they belong to the Launcher or to the Demo app. #65 and #66. Are these problem with the Launcher API or problems with the Demo app itself??

Keep up the good work. The ants are coming…

6 Likes

This is concerning to me. To use a simplistic example what if one manages to plug in a thumbdrive with some malware, scan your private information between the app and launcher and the pull it off the machine directly but unplugging the thumbdrive. No internet connection required. Not all data transfers involve the internet. Or that malware could simply sit dormant on a file somewhere with your private data, and whoever else’s, until it IS transfered to another computer with an internet connection where it can upload itself somehow. I’m not sure how such a piece of software would work but my point is that just assuming that because the app and launcher are on a local machine and therefore do not need to be encrypted is a false sense of security.

Great work with the update and hope to see those improvements soon. Can’t wait for Testnet 4.

6 Likes

I completely agree, but if a user does not have a file or data encrypted on their system, it will not help protect the data to encrypt it in transit between the apps and the launchers.

For example, if i have an image on my local machine, malware or a thumbdrive that is malicious can just simply grab the file sitting on my machine and run off with it. Having an unencrypted file be encrypted only in transit doesn’t really help much…and if the file itself is encrypted on my machine already, then having it encrypted in transit would be a bit redundant…keep in mind this is not the transfer of data from your machine to the network, just from one app to another on your local machine.

1 Like

Dude I’m starting to be concerned with the fact you still haven’t caught this. The encryption is not being used during initial pre release tests so they can see the results!!! These are pre release tests, they are not safe, secure, or private. They are tests to see how the network functions at the low level on a global scale, THEN once tests are satisfactory, THEN encryption will be put back in place, fully implemented and THEN it will be considered safe, secure, and private.

2 Likes

True if a file is unecrypted on your machine a malicious program can run off with it but we’re talking about the SAFE network here which theoretically could contain data gathered from several different machines over time. Not to mention financial information and private information that you don’t want anyone to see or be downloaded to any unencrypted machine. So while yes a malicious program could run off with your local porn collection would you want it to run off with your credit card details, your safecoin accounts, your biometric data or some data that reveals your a transexual drug lord with a hidden villa in South America who is data a cybernetic genetically engineered terrorist operative? I mean come on? There are some things you just do NOT keep on your hard drive.

1 Like

So a chunked malicious program that may be subject to data loss on a testnet is going to steal my identity? Solution use a clean computer or encrypt all of said important private information

The answer to that question all depends on how test 4 goes. If all things go well then the next release (after 4) should be alpha, however, if we hit some issues then more tests may be required. Apologies, but that is probably as definitive as we can be.

16 Likes

You know it is never, ever forgotten, while we wait for Hardkernel to sort our U3’s out, I have got a hold of a Raspberry Pi 3 and got as far as installing Rust and building a Vault on it, will test more this week - getting it on the Community test network is the aim :smiley:

13 Likes

Thanks @polpolrene for raising these - I am sure @Krishna_Kumar and @Shankar will pick these up when they get a chance - they monitor both repos, so they are with the right guys :slight_smile:

1 Like

Anything that hits the network or is in transit to the network will still be encrypted locally before it goes out as I understand it.

Anything you have stored on the network such as credit card info or safecoins will always be encrypted. (does not travel between the app and the launcher that is part of the proposed unencrypted data)

Vaults will be encrypted always so that will not be an issue and there will only be chunks not whole files stored there.

We may want to check with @Ross to see specifically what would be left unencrypted if this option is chosen…

How did you know!!?? :joy:

1 Like