So if MaidSafe is a secure, free software framework for transmission, storage, and ownership over data and applications using RUDP/IP, can “app” authors offer proprietary applications designed not only to utilize MaidSafe but to also abuse the user? If someone writes a MaidSafe application for example, email, is there any way for it to be written so you as the author of the software can abuse those who use your application? Though MaidSafe is under the GPL, I assume applications written to interface with MaidSafe do not necessarily need be under the GPL (copyleft has its limits), similar to how applications written for “Linux” need not be under the GPL? If that’s true…
Could using a proprietary MaidSafe application expose oneself to a false sense of security and trust?
Yes it could. This is interesting as there are provable ways of interacting with maidsafe safely also but they might include some new types of computing.
Always Unfortunately this is the case with everything. Even scripted contracts etc. are similar, the level of completeness or capability of the operations (like turing complete operations) and the inability to see the code or understand it will always mean it can do anything. In c++ we have a term undefined behaviour, when a bit of code is not following the rules (but appears to work). The classical definition is this means anything is possible, wipe hard drive, burn our screen spend your crypto etc.
I see proprietary (or impossible to read open source) code like that, if it is closed or unreadable then it can do anything and the limitations to what it can do are unknown.
An option for the future is a formally specified domain specific language with specifications per domain. It is a ton of work though, but not something to fear. In saying that you still need people to code, experiment blow stuff up make new stuff etc. so the balance is fine (think like what Apple and Google do with the mobile world, more ‘protection’ is less freedom)
Exactly not a fixed problem, but addressable and being addressed. It will take a ton of time and effort, but arguably necessary.
So essentially, it should be assumed that a proprietary MaidSafe application is throwing away all meaningful advantages of using MaidSafe to begin with.
Could easily recognizable branding that tells a user that an application is both FOSS / MaidSafe be useful?
Absolutely, the issue is who says so. This is where pods come in I think, if they are truly independent and I believe they will over time with lots of debate and pushing boundaries of tech across all borders, then it may work. A bunch of teams co-signing a validation for some programs may be good as long as they can revoke just in case. It would have to be by version as well (sneaky hackers and their upgrades).
I suspect the network has to go this way at the core as trust in MaidSafe or any org cannot be relied on over time. As the code gets easier to read then validation is much simpler. So essentially I agree, with caveats.
Securing what applications run and when is primarily the responsibility of the operating system.
Sandboxing applications is becoming ever more important and OS developers are taking it more seriously. However, this is beyond the scope of the safe network for now, IMO.
I suspect you could mount different drives as different users with limited permissions without too much bother though. It is the basis of Unix user privileges after all.
@dirvine Will mounting seperate safe network personas via different local OS users be possible relatively easily?
Drives yes I imagine so. I have not thought too much about personas/vaults but interesting notion.
Malware apps cannot be prevented from doing harm, but evenso, the situation on MaidSafe is much better than the status quo.
For example, code can be loaded from trusted shares - your own storage for example, or a trusted share (such as MaidSafe).
We have this in the current internet, but the problem is that it can be circumvented too easily. For example, good code can be infected on the servers, or intercepted and infected during download. Things like that will be very hard, or nigh impossible on SAFE, which means attacks have to be more targeted (i.e at high value individuals) which makes most of us safer.
This could help people to firewall different applications, especially if the default is to run as the mount user - they would only have access to read/write shared local files then.
I actually set up a spare laptop to keep my Bitcoin wallet saved to another Linux user account. I use su to exec as that user, separate from my currently logged in user. XWindows happily runs the app along side the others, but in its own silo.
I am sure this isn’t the last word in security, but it gives me comfort.