Wallet Logo

f(x)Wallet by Function X Labs

Latest release: 2.2 ( 27th October 2022 ) 🔍 Last analysed 26th October 2021 . No source for current release found
3.3 ★★★★★
60 ratings
25th March 2021

Jump to verdict 

Help spread awareness for build reproducibility

Please help us spread the word discussing transparency with f(x)Wallet by Function X Labs  via their Twitter!

Do your own research!

Try out searching for "lost bitcoins", "stole my money" or "scammers" together with the wallet's name, even if you think the wallet is generally trustworthy. For all the bigger wallets you will find accusations. Make sure you understand why they were made and if you are comfortable with the provider's reaction.

If you find something we should include, you can create an issue or edit this analysis yourself and create a merge request for your changes.

The Analysis 

(Analysis from Android review)

App Description

It claims to support multiple blockchains including Bitcoin, Ethereum and their own, Function X.

Supports on-chain storage, transfer, and exchange of digital assets such as Bitcoin, ERC-20s, and Function X.

Google Play reviews show 4 stars out of 219 reviews.

Among a few of the reviews include:

Sead Metjahic
★★☆☆☆ September 24, 2021
Cannot create a backup due to it crashing… Not able to transfer my coins out of this wallet due to signature issue. Scared to even attempt uninstall and reinstall waiting for new update hopefully this gets resolved soon.

The Site

The terms of service can only be found on the app prior to “Create a new wallet” or “Import a Wallet”. Curiously, we cannot find a link to this terms anywhere else on the site or online. We endeavored to make a pastebin of the Terms that are copied verbatim from the app as of September 30, 2021.

Some pertinent provisions:

Services
The Wallet Application enables users: (i) the self-custody of their digital assets, meaning, we do not store your private key on your behalf;

The App

We installed the app both on Blue Stacks and on a Samsung Phone. Upon opening you have 2 options:

  • Create wallet
  • Restore or import existing wallet

Both require 24-word seed.

After that, there were no KYC measures or ID verification. A BTC wallet is available by scrolling down and tapping on “Add Asset”

It is possible to send or receive BTC from the app.

Verdict

The 24-word seed phrase is for the entire wallet and not just specifically for bitcoin.

We found a repository for the code and Emanuel made an issue on Github.

This repo last commit is from “Feb 4, 2021” and contain only 5 commits and 1 tag for version 1.0.0, while the android app with appid “com.pundix.functionx” was last updated in: “August 9, 2021” with version: 1.7.2 and according to appbrain had several version before that.

The source code for this app is not verifiable.

(dg)

Verdict Explained

Without public source of the reviewed release available, this product cannot be verified!

As part of our Methodology, we ask:

Is the source code publicly available?

If the answer is "no", we mark it as "No source for current release found".

A wallet that claims to not give the provider the means to steal the users’ funds might actually be lying. In the spirit of “Don’t trust - verify!” you don’t want to take the provider at his word, but trust that people hunting for fame and bug bounties could actually find flaws and back-doors in the wallet so the provider doesn’t dare to put these in.

Back-doors and flaws are frequently found in closed source products but some remain hidden for years. And even in open source security software there might be catastrophic flaws undiscovered for years.

An evil wallet provider would certainly prefer not to publish the code, as hiding it makes audits orders of magnitude harder.

For your security, you thus want the code to be available for review.

If the wallet provider doesn’t share up to date code, our analysis stops there as the wallet could steal your funds at any time, and there is no protection except the provider’s word.

“Up to date” strictly means that any instance of the product being updated without the source code being updated counts as closed source. This puts the burden on the provider to always first release the source code before releasing the product’s update. This paragraph is a clarification to our rules following a little poll.

We are not concerned about the license as long as it allows us to perform our analysis. For a security audit, it is not necessary that the provider allows others to use their code for a competing wallet. You should still prefer actual open source licenses as a competing wallet won’t use the code without giving it careful scrutiny.

The product cannot be independently verified. If the provider puts your funds at risk on purpose or by accident, you will probably not know about the issue before people start losing money. If the provider is more criminally inclined he might have collected all the backups of all the wallets, ready to be emptied at the press of a button. The product might have a formidable track record but out of distress or change in management turns out to be evil from some point on, with nobody outside ever knowing before it is too late.