Setting the bar for the Tari developer and creator community
Aurora is a reference-design mobile wallet app for the forthcoming Tari digital currency. The goal is for creators and developers to be able to use the open-source Aurora libraries and codebase as a starting point for developing their own Tari wallets and applications. Aurora also sets the bar for applications that use the Tari protocol. In its production-ready state, it will be a beautiful, easy to use Tari wallet focused on Tari as a default-private digital currency.
Want to contribute to Aurora? Get started for iOS or Android.
Sending and receiving digital currencies is anxiety-inducing. One wrong character and your money is gone forever. To solve this problem, addresses on the Tari network are strings of Emoji. The Tari community calls this revolutionary address form factor Emoji ID. With Emoji ID, the first three and last three emojis are easier to identify and recall than random characters, and each Emoji ID includes a checksum to ensure the address isn’t malformed. Emoji ID helps further the Tari community's goal of making Tari easy to use for everyone.
Learn more about Emoji ID
The heart of Aurora is lib_tariwallet, a highly efficient and extensible library written in Rust with C-bindings for JNI and Swift codebases. Whether you use Aurora on your iOS or Android device, under the hood, you are using the same powerful Rust library.
By using Rust, Aurora has more robust performance and memory guarantees. Like the rest of the Aurora codebase, lib_tariwallet is open-source and well-documented.
Learn more about it here
Launching Aurora starts a Tor onion service which obfuscates your IP. This makes your wallet a first-class citizen on the Tari network and able to speak with other wallets peer-to-peer. Aurora uses the high-performance Tari network comms layer to encrypt all peer-to-peer communication.
When Aurora needs to make a connection to a peer that it does not have routing information for, a discovery request is routed through the Tari networks distributed hash table. This makes it difficult for other nodes to perform any form of network analysis. At the application layer, Aurora offers meaningful privacy benefits end-to-end. At the protocol layer, the Tari protocol employs MimbleWimble to obfuscate transactions. The result is an interconnected ecosystem dedicated to enhancing your privacy.
Once you’ve downloaded Tari Aurora, check out the TTL (Tari Testnet Limited) Store to spend your “hard-earned” tXTR on exclusive, one-of-a-kind, stuff produced by the team at Tari Labs. Enjoy!
* tXTR has no monetary value and cannot be exchanged for cash, cash equivalent, or other tokens or cryptocurrencies.
When you first download Aurora, you’ll receive some tXTR from the faucet bot. If you want more, ask your friends to send you some or try mining testnet Tari. Learn more about mining testnet Tari.
This means the transaction is being processed on the Tari network, which usually takes no more than a couple of minutes.
There are no hidden third party services in the app and it strives to be as free of centralized services as possible. That said, the wallets do make use of a few services to improve the user experience for Aurora:
The Tari testnet faucet. The faucet is a server that Aurora contacts to obtain the "seed tXTR" that every user receives when creating a new wallet. Your wallet‘s IP address is recorded on this server to prevent a Sybil attack from draining the faucet and ruining the experience for everyone else.
Matomo - Matomo is used by the mobile wallet community to understand how you interact with the wallet and to identify pain points and shortcomings in the UX. Your IP address is not recorded (it is anonymized however, so that returning visitors can be identified). Some device information including operating system and manufacturer is recorded. The Matomo server that collects this data is managed by Tari Labs.
Apple push notifications - iOS does not allow apps to remain in the background. This poses a problem for Mimblewimble-based crypto wallets and is a UX non-starter because your wallet must sign any incoming transactions before they can be broadcast to the blockchain. This would mean that an iOS app would have to be open and in the foreground in order to receive tXTR. The mobile developers decided to make use of Apple‘s push notifications to alert the app whenever a transaction is inbound. This requires the running of a centralized notification server, managed by Tari Labs, as well as the routing of all notifications through Apple‘s servers. To maximize privacy, these notifications carry no identifiable information at all (though Apple Inc., in theory, knows when and how many notifications a particular device is receiving).
Sentry - Both Android and iOS Aurora apps make use of Sentry to collect crash reports. The Sentry server is managed by Tari Labs.
About The TTL Store
The TTL Store store is hosted and managed by Tari Labs. All of these services and their user experience-privacy trade-offs were carefully considered before including them. However, we know that these trade-offs are different for everyone, and for that reason, it‘s entirely possible to remove these services and compile a version of the wallet that works for the most part (although without push notifications, the iOS app will deliver a severely sub-optimal experience). To help privacy-focused users out, there is a "privacy" flavor in the Android app that will easily allow one to compile a version of the wallet that excludes ALL of the services described above. Naturally, this means that you won‘t receive tXTR from the faucet, be able to interact with The TTL Store, or participate in helping to improve the app. A similar approach for the iOS app is in the works as well, so keep an eye on the updates page as to when this will drop.
Aurora is intended to work with a wide range of Apple (iOS 13+) and Android (Nougat 7.0+) mobile devices. Found an incompatible device? Please post about it on our public Telegram so someone in the community can look into it.
Feel free to ask any questions and report bugs on Telegram.