Bridging with the current Internet protocols and APIs


#1

I realized during the night that there is going to be another source of demand for Safecoins coming from the need for Safe apps to bridge with the current Internet protocols. For example, let’s say I am developing an online email service that aims to be interoperable with the current email system but uses the computational and storage resources of the Safe network to operate. At some point in the network, there will need to exist a Node that can receive requests from the email app and convert them into actual emails, and do this on reverse also, namely to act as an email server and convert the emails back to Safe data for a particular user. That Node could charge Safecoins for performing the operation in either direction.

In order to find the existing protocols from a Safe App, we would have to augment routing tables (or manage it in a separate layer) with additional services offered by Nodes. We could follow the same naming convention and assign 512-bit IDs to Nodes with email services. In order to find a Node to act as an outgoing server, one would select the closest(s) according to the XOR distance to the hash of the email message. That would automatically spread the load through all the existing Node servers. (I have not thought through yet how to spread the load when Nodes are acting as incoming email servers.)

In order to trust the proper operation of the Node, we could apply the same strategy as for Vaults, namely to have a check-and-balance system where neighbouring email Nodes challenge each other regularly with random email sending/receiving requests and rank the Node according to whether the emails were sent correctly or not.

I think the idea generalizes to other protocols.

Existing Internet companies with public protocols (APIs), such as Google, Twitter, Facebook, etc. could earn Safecoins by providing nodes that directly bridge to their existing public APIs. As the SAFE network becomes more popular a significant revenue stream could come from Safe Apps and maybe could shift the focus from ad-supported free services to a micro-transaction model based on Safecoin. That is, until they develop their services natively on the platform :wink: (or not, for some applications like large-scale high-performance numerical simulation, a dedicated cluster might still be the way to go…). @dirvine, do you see potential in this? The major shift in perspective for me is going from trying to replace the current Internet to providing a scalable glue-platform that offers both native micro-transactions and ties in existing systems while offering a way forward to offer storage, computational, and bandwidth resources to decentralize the implementation of those systems and organizations.

Other public protocols could be supported by having Farmers maintaining Nodes that perform these operations.

What do you guys think?

@happybeing (or another mod) I am not quite sure of the category(ies) in which to file this post. Please refile it if necessary.


#2

I would be interested in @dirvine’s response to this. I seem to remember him stating that they are totally separate networks and should not have common touchpoints…maybe for security reasons

The transition is an interesting area though, how do we go about creating a transition ramp from old to new? I would think at the very least Maidsafe could provide some kind of self service tool/ template, that would generate a webpage with the necessary information, on how to get onboard keep the transition story consistent.

I like your idea from the other thread regarding webrtc as a modelling tool. If that could be utilized to provide a user experience of the SAFEnetwork right inside an internet 1 web page that would be interesting. Provide the experience without installing anything.


#3

Should the security and performance issues be also addressed for the WebRTC+JavaScript implementation to become a full featured one, I think some nodes might also serve as bridges between this implementation and the native one. Although the current C++ implementation would need be extended for that, I see no technical reason why the original design would not support it. People could then try the Safe network without having to install anything and later install the native node, should they want to.

I don’t think it should be put on the critical path for the launch of the network and we should wait for the results of my initial experiments before prioritizing in any way. However should that work out, the adoption speed for the Safe network would only be limited by social factors and not technical ones, since the design does not require resources others than those provided by its users.


Webtorrent: Model for a hybrid web and native decentralized network
#4

Mail may be a wrong example for this, I think. I don’t think it can be made to work well with the MaidSafe file system.
But there are data-related services that could be, but some are quite well served by existing approaches (I mean existing new approaches, like Namecoin for DNS and user ID’s).


#5

Yes, I don’t think you’d get any votes from the devs prior to launch. I guess you’d be working up a paper for the proposal. Might be the first test case for the pod voting system for core changes.

The bridge functionality might be something that is never allowed to happen, but it’s something I’ve thought about. i.e a business runs a pilot with a private SAFE and decides to transition to 100% private SAFE. But if they are a 1 site business how do they achieve redundancy in the case of their building burning down.

Even if this one site business operates on global SAFE and say their comms cables are severed…do they have enough local chunks to continue to operate.

With the data retention laws and company backup policies, it might be tricky to run SAFE at all in a business scenario. A bridge would work well for replication in event of a 1 site destruction in a Private/Public network scenario. But in the scenario of using 100% Public SAFE with a comms outage, that might be a scenario that is unacceptable for business continuity.

I’d say getting the visual demo functionality running would be very useful especially for builders…but given the above scenarios, who are we pitching to otherwise? I’d say individuals, until someone can explain how a business/institute/government could operate with SAFE and satisfy both law and backup policies.


#6

I am not sure but anyhow that is further down the road and the JS implementation is going to be useful in itself both for explanatory purposes and for my PhD project, independently of whether a bridge to the native network happens or not. We can have a discussion about it later once both are actually operational.