Lightning Labs Strikes on iOS, Android With Noncustodial Mobile Wallet
2019 has been an electric year for the Lightning Network, and San Francisco–based Lightning Labs has delivered another striking development. The development company has already launched the alpha for its desktop Lightning wallet in April, announced Lightning Loop/Hyperloop to allow seamless channel funding and withdrawals, and released the network’s first iteration of watchtowers this year.
Now, it’s bringing its Lightning wallet to mobile with the launch of iOS and Android apps.
Lightning Labs applications developer Tankred Hase dropped the news in a blog post on June 19, 2019.
“We couldn’t be more excited to announce a major release today,” he wrote. “Our Lightning App is now available on Bitcoin mainnet in alpha for iOS (on Testflight) and Android (on Google Play), making it the first mainnet app on all major mobile and desktop platforms.”
The post emphasizes that the team developed the application with a “clean user interface and a goal to hide complexity and make the app more accessible to new users.”
Under the Hood
Simple as it seems on the surface, under the hood, the Lightning wallet application leverages the bleeding edge of the Lightning Network’s sharpest tech. Like the desktop app before it, the mobile application is noncustodial. It gives users the nearly full-fledged functionality of a Lightning node using Lightning’s LND implementation.
Neutrino, a lightweight client that allows Bitcoin wallets to verify transactions without syncing the full Bitcoin blockchain, makes this possible. This client makes it possible for users to have custody of their own Lightning funds as if they were running a full node. Hase highlighted that it’s a more efficient and privacy-preserving alternative to the Simplified Payment Verification (SPV) method that underpins most light wallets.
“It’s not as secure as running your own node. But it’s pretty close and a trade-off we felt was necessary for broader adoption on mobile,” Hase told Bitcoin Magazine. He added that, as with the desktop app, Lightning might give advanced users the option to connect the Neutrino client to their own nodes.
In addition to Neutrino, the app also features an autopilot function for connecting to nodes for reliable payment channel routing.
Lightning Wallet Privacy
The private key for each user’s wallet is encrypted and “never leaves the device,” Hase assures his readers, and the iPhone’s Touch ID / Face ID gives an added layer of security in the case of a theft. Admittedly, Android’s OS security isn’t as robust, but the team is working on supporting more secure hardware features for it in the future (they use Pixel 3’s Titan M security module as an example).
“One thing we do in [the app] is have LND (which holds the user’s private key) run in a different thread than the user interface,” Hase explained.
When asked about what’s next for the application — the blog mentions integrating Lightning Loop in the not-so-far-off future — Hase said that the team is focused on providing devs with a mobile software developer kit that has “better tooling and a well documented API.” LND, Hase explained, is written in Go while Android and iOS are written in Java and Objective-C/Swift, respectively. Binding the two is labor intensive, so an intuitive API would ease the process for teams trying to integrate Lightning’s kit into other wallets.
The Lightning Network has ended on a high note after rounding another milestone, and Hase is enthusiastic about its future — hurdles and headaches included.
“It’s just fun and exciting to be able to work in this ecosystem,” he said. “Bitcoiners are very friendly and principled folks. It’s probably going to take some time until Lightning becomes adopted as a means of payment for more than just demo purposes. But providing a usable, secure and private experience for end users is definitely an exciting first step in enabling that journey.”If you’re reading this on mobile, you can install the apps by following these links: iOS app (on Testflight) and Android app (on Google Play).