Lokinet goes next level: Integration in Session and other apps
We often talk about Lokinet being a next-generation onion router — fast, versatile, and adaptable. It’s plug and play, and it can be used with any application you can think of. For a long time, that has been Lokinet...in theory. But with the arrival of the Audacious Aurochs hardfork, service nodes are now able to support the release of Liblokinet.
Liblokinet cuts right to the heart of what Oxen is all about: creating a platform for developers to make more secure, private applications. Lokinet isn’t just an onion router you download and use to secure your browsing (although, it is that). With the arrival of Liblokinet in the next few weeks, developers can integrate Lokinet as a library into their applications. This lets them communicate with service nodes, other Lokinet clients, and SNApps.
Before the hardfork, Lokinet needed to be enabled at the system level — meaning your operating system. For desktop, this wasn’t a huge problem, but it was much more difficult for mobile implementations. Because of the way mobile devices handle their networking, it requires utilisation of VPN APIs. While we are working on that for Android, and plan to do it for iOS as well, what all this means is that Lokinet would end up running in the background of your device all the time, even if it was only needed (or being used) for one app. Not ideal — and not letting Lokinet live up to its full potential.
With Liblokinet, all that changes. Now, applications have their own private version of Lokinet, allowing for much easier integration into mobile devices. This opens up a whole new world of development possibilities for applications — you could integrate Lokinet directly into something like an email client, only building a Lokinet path when you needed to send an email; a file sharing application, by easily adding a secure transfer mode which creates Lokinet paths on demand with other users running the app; use it to submit your Blink transactions to the Oxen network or…implement onion routed voice calls on your messaging app?
Using Lokinet to implement voice calls on Session
The Oxen ecosystem is alive and well, and good news for Lokinet is good news for Session as well. We’re excited to use Session to demonstrate the enormous power of Liblokinet, and we’re going to be using Liblokinet to integrate onion routed voice calls in Session.
Voice calls have been on Session’s roadmap for a long time, but there was no onion routing solution fast enough to handle voice calling, and we didn’t want to sacrifice privacy and security by doing voice calls without it. Now, all that has changed. The Session engineers now have a way to build a robust voice call implementation that lives up to Session’s sky-high security standards.
However the fun doesn't end there, Liblokinet also allows us to do away with the 10mb file cap on attachments. Using Liblokinet, Session will be able to maintain a persistent connection to the service node network — meaning messages arrive faster and using less bandwidth.
Other possible improvements include
Onion routed Peer to Peer messaging (Increases messaging speed and reduces load on storage server network)
Onion routed Peer to Peer file transfers (Transfer large files to friends if they are online)
Reliable onion routed push notifications (Delivered by holding a connection open with a service node)
The future of onion routing
Liblokinet captures the spirit of Oxen. Private software shouldn’t be a niche. You shouldn’t have to search for private alternatives. You shouldn’t have to think about it — it should just work.
Now, any app developer will be able to take advantage of the incredible power of Lokinet and the service node network. It’s not just about building private alternatives — it’s about making privacy popular.