Introducing the Arweave web extension 2.0!

The Arweave Project
9 min readNov 1, 2018

--

We are super excited to announce the release of our updated Arweave web extension wallet, which you can download here. If you have an existing wallet you should already be familiar with the basics, however if it’s your first venture into the wonderful world of Arweave: don’t sweat it, because we’ve put together a step-by-step guide to ensure that you can get up and running in no time.

Getting Started

Setting up your wallet is super easy, simply click the Arweave icon in your browser menu to get started. If you’re a first time user select Create a new wallet, and if you have an existing Arweave key file, you can select Import an existing wallet. For those of you with existing wallets, you can jump to the ‘Existing Users’ section further down the page.

New Users : Generating Your Wallet

If you’re using the Arweave wallet for the first time and have selected Create a new wallet, this will prompt the Arweave extension to open and automatically download your key file.

This key file is for your newly generated Arweave wallet that you must keep safe and secure. By safe and secure, we mean keeping it protected from loss or misplacement as it’s not possible to regenerate. In simpler terms: once it’s gone, it’s gone! We always recommend storing it in a safe location on multiple (at least 3) devices. We also recommend that you encrypt the file, as anyone who has access to it also has access to your wallet. For more information, check out the encryption tips section at the bottom of this post.

You only have one chance to download the key file, however if for some reason the download couldn’t be completed, you can start the process all over again and a fresh wallet will be generated.

New Users: Protecting Your Wallet

Once you’ve given your wallet a name and set an encryption passphrase, click Continue.

This encryption passphrase is only used for the copy of the key file stored in the Chrome extension, it is in no way related to the JSON file you first downloaded — this downloaded file will remain unencrypted unless you choose to encrypt it! For more information, check out the encryption tips section at the bottom of this post.

New Users: Your Encryption Passphrase

In addition to downloading the key file to your computer/hard drive, a copy of the file will also exist in the web extension. Don’t worry though, your browser storage is secure and there are lots of mechanisms to stop malicious content (like websites and other extensions) from accessing it. However, this doesn’t stop anybody with physical access to your machine, so setting an encryption passphrase adds an additional layer of protection.

Note: using your chosen encryption passphrase is the only way to decrypt your wallet again, meaning that you’ll be prompted for it each time you perform actions such as archiving a web page, or sending AR to another user/wallet. If you forget this passphrase there is no way to reset it, you must re-import the file (as explained in the ‘Existing users: Loading your wallet’ section below).

Your wallet is now loaded, secured, and ready to go! Cue fanfare! 🎉

To navigate back to the wallet menu or add another wallet, click any of the two options below:

Existing Users: Loading Your Wallet

If you already have an Arweave key file, you can dive straight into loading your wallet by clicking the Arweave icon in the Chrome browser menu, then selecting Import an existing wallet.

Load your existing key file by clicking the folder icon, or by dragging and dropping it into the highlighted box. You are also required to give your wallet a name and set an encryption passphrase, as this keeps your wallet secure while it is loaded into your web extension - preventing anyone apart from yourself from sending tokens or archiving content.

This encryption passphrase is only used for the copy of the key file stored in the Chrome extension, it is in no way related to the JSON file you first downloaded — this downloaded file will remain unencrypted unless you choose to encrypt it! For more information, check out the encryption tips section at the bottom of this post.

Click Continue and you’re done! Hooray 🎉

Wallet Options & Multiple Wallets

You can load multiple wallets into the web extension at any time, by simply heading to the wallets menu and clicking Load Wallet or Generate New Wallet — the process is exactly the same as the first wallet.

To switch between wallets, left-click the extension icon, then select the ‘Wallets’ tab

To switch between the currently active wallet used to archive pages or send AR from, just click the wallet, then select Use.

This menu also has options for renaming, exporting, and removing wallets.

When you change your active wallet, you will also see the address change on the ‘transfers’ page and in the ‘wallets’ popup window.

Archiving

Let’s go: it’s time to make history. By this, we mean archiving the web. Archiving is easy, simply browse whichever page you’d like to archive and click Archive this Page.

Did we mention it’s that easy?!

Before your page is archived, you’ll see a preview of how the page will look. You may notice some slight differences from the original page, this is for a few reasons:

1) Javascript is disabled and completely stripped from the page; this is for your own safety, as running JavaScript can compromise browser security.

2) Assets like images and CSS will be embedded directly in the archived page itself, instead of remaining on the original website server. This means that even if the website goes down in future, the page will still render correctly as it’s now is a self-contained package.

3) Safe mode is on by default. You can read about safe mode below.

We’re continually working to make the archiving process more resilient, which means progressively reducing web pages’ reliance on outside sources to function. For example, by including CSS (the code that styles web pages) within archived pages, we are ensuring that pages always display correctly even if the CSS outside of the archived page is altered.

Once you’re happy with the preview, click Archive this on Arweave; review the information and price, enter your wallet encryption passphrase, then hit confirm.

It should only take a few seconds to submit your transaction to the network, however this depends on a few factors such as the current network state, your internet connection speed, and the size of the page you’re archiving. Once you’re done, you’ll see the screen that says ‘Transaction sent — This should be mined into a block soon.’

Safe mode

What is it?

Many websites employ various means of customising content for users by tracking their online activity — ever noticed after browsing those pair of shoes how many spooky ads follow you around the web?! Yup, this is what we’re talking about!

This means that when you archive a page from a browser which contains personal information (e.g. you’re logged into Google Suite, Amazon, Facebook), you may also end up archiving tiny artifacts about yourself, such as your browsing habits. Because some of these artifacts are subtle and are often hidden or embedded within the source code, it’s important to make sure you protect your information by archiving in safe mode.

Here’s an example: Imagine you’re logged into amazon.co.uk and information such as your name, postal code, account age, number of items in basket, and recent Prime Video streams are on display, as seen in the screenshot below.

During safe mode, all of your personal information becomes invisible — as you can see in the screenshot below.

How does it work?

Safe mode works similar to ‘Incognito Mode’ which you may be familiar with from using the Google Chrome browser. When archiving in safe mode a fresh request copy of the URL is made without any cookies, meaning your archive only exposes the minimum amount of information possible about your browser session.

Here’s a redacted view of the HTTP headers sent on the original amazon.co.uk request — you can see it sends a bunch of tracking information about your session.

With safe mode turned on, we only send the minimum amount of information required to render the page. The cookie and session data is now gone, and this is a much safer way to archive pages.

Why is this the default?

Safe mode is turned on by default to prevent the accidental archiving of personal or sensitive information. Imagine you open your bank account and click archive — during safe mode you’ll only see the login page of your bank, but should you turn safe mode off, you’ll see all of your account details/activity. We feel that safe mode is the safest way to enable quick archiving from your browser.

What about paywalls or other “gated” content? How do I turn it off?

Some content may only be visible if you’re logged in (like newspapers that use paywalls). With safe mode turned on, you might not be able to archive these pages and after all, the point of safe mode is to mask your identity so the website you’re visiting doesn’t know if you’re logged in or not!

You can toggle safe mode on and off by clicking the Safe Mode switch on the preview page. When you turn safe mode off, the preview will switch to the content pulled directly from the tab you archived.

Useful Tips:

Encryption: If you already use an encrypted password manager like 1password then this is a quick and easy way to secure the file.

Key Files: Your key file will be called something like arweave-keyfile-abc123.json and the ‘abc123’ part is your unique wallet address. Wallet addresses are 43 characters long and can contain any alphanumeric characters, as wall as dashes and underscores (a-z0–9-_). Your key file is a standardised and interoperable format called JSON Web Key, which you can read more about here.

As always, we welcome all community feedback and suggestions! Just drop us an email at team@arweave.org any time. You can also join us on Telegram, Discord, and follow us on Twitter and in our Telegram announcements channel for all project updates.

-arweave-team

--

--

The Arweave Project
The Arweave Project

Written by The Arweave Project

A novel data storage blockchain protocol enabling a permanent serverless web and creating truly permanent data storage for the first time.

No responses yet