Wallet Logo

AirGap Vault - Tezos, Cosmos, Ethereum, Bitcoin

Latest release: 3.17.2 ( 12th May 2022 ) 🔍 Last analysed 26th May 2022 . Reproducible when tested
4.2 ★★★★★
110 ratings
10 thousand
6th August 2018

Jump to verdict 

Older reviews (show 17 of 27 reproducible)

Help spread awareness for build reproducibility

Please follow AirGap Vault - Tezos, Cosmos, Ethereum, Bitcoin and thank them for being reproducible  via their Twitter!

Disclaimer

The following Analysis is not a full code review! We plan to make code reviews available in the future but even then it will never be a stamp of approval but rather a list of incidents and questionable coding practice. Nasa sends probes to space that crash due to software bugs despite a huge budget and stringent scrutiny.

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 

We ran our test script (?) which delivered these results:

===== Begin Results =====
appId:          it.airgap.vault
signer:         486381324d8669c80ca9b8c79d383dc972ec284227d65ebfe9e31cad5fd3f342
apkVersionName: 3.17.2
apkVersionCode: 41719
verdict:        reproducible
appHash:        8ed73272138890fe375719f744acc5bef09b9db6787eb750004d0a1211028ba0
commit:         bef8ff57622047e48c060138109490875f8473aa

Diff:
Only in /tmp/fromPlay_it.airgap.vault_41719/META-INF: MANIFEST.MF
Only in /tmp/fromPlay_it.airgap.vault_41719/META-INF: PAPERS.RSA
Only in /tmp/fromPlay_it.airgap.vault_41719/META-INF: PAPERS.SF

Revision, tag (and its signature):
object bef8ff57622047e48c060138109490875f8473aa
type commit
tag v3.17.2
tagger Mike Godenzi  1652370558 +0200

version 3.17.2
===== End Results =====

Which is what we want to see to give it the verdict reproducible.

Older Versions

For the record, we tested an older version after 3.17.2 which fixed a reproducibility issue. For completeness, here it is.

===== Begin Results =====
appId:          it.airgap.vault
signer:         486381324d8669c80ca9b8c79d383dc972ec284227d65ebfe9e31cad5fd3f342
apkVersionName: 3.17.0
apkVersionCode: 40643
verdict:        
appHash:        08a3d0282cbb5a40fe0c6bbbdbb9cd936a4486af0e8322d69b63a14ca9396cdf
commit:         7df4dccebf60394cd0be4cb490f78807801d19b5

Diff:
Only in /tmp/fromPlay_it.airgap.vault_40643/assets/public: 3.5a9c4e98d51999ad15a4.js
Only in /tmp/fromBuild_it.airgap.vault_40643/assets/public: 3.7b3b1c20ea4da581d9b2.js
Files /tmp/fromPlay_it.airgap.vault_40643/assets/public/index.html and /tmp/fromBuild_it.airgap.vault_40643/assets/public/index.html differ
Only in /tmp/fromBuild_it.airgap.vault_40643/assets/public: main.6fb58d6fabc4e86a32c2.js
Only in /tmp/fromPlay_it.airgap.vault_40643/assets/public: main.ace25affef6405ca9b3c.js
Only in /tmp/fromPlay_it.airgap.vault_40643/assets/public: runtime.08084bd89534cb816de6.js
Only in /tmp/fromBuild_it.airgap.vault_40643/assets/public: runtime.ba9d2467a394032e87bc.js
Only in /tmp/fromPlay_it.airgap.vault_40643/META-INF: MANIFEST.MF
Only in /tmp/fromPlay_it.airgap.vault_40643/META-INF: PAPERS.RSA
Only in /tmp/fromPlay_it.airgap.vault_40643/META-INF: PAPERS.SF

Revision, tag (and its signature):
object 7df4dccebf60394cd0be4cb490f78807801d19b5
type commit
tag v3.17.0
tagger Mike Godenzi <m.godenzi@papers.ch> 1650367671 +0200

version 3.17.0
===== End Results =====

(lw)

Verdict Explained

The binary provided was reproducible from the code provided.

As part of our Methodology, we ask:

Does the binary we built differ from what we downloaded? If not, we tag it Reproducible

If we can reproduce the binary we downloaded from the public source code, with all bytes accounted for, we call the product reproducible. This does not mean we audited the code but it’s the precondition to make sure the public code has relevance for the provided binary.

If the provider puts your funds at risk on purpose or by accident, security researchers can see this if they care to look. It also means that inside the company, engineers can verify that the release manager is releasing the product based on code known to all engineers on the team. A scammer would have to work under the potential eyes of security researchers. He would have to take more effort in hiding any exploit.

“Reproducible” does not mean “verified”. There is good reason to believe that security researchers as of today would not detect very blatant backdoors in the public source code before it gets exploited, much less if the attacker takes moderate efforts to hide it. This is especially true for less popular projects.