wallet seed in backup

This commit is contained in:
Matias Alejo Garcia 2015-09-03 02:16:38 -03:00
commit fdbf9e2675
4 changed files with 65 additions and 57 deletions

View file

@ -7,45 +7,51 @@
<div class="content p20v" ng-controller="wordsController as wordsC"> <div class="content p20v" ng-controller="wordsController as wordsC">
<div class="row" ng-show="index.n==1">
<div class="m10t columns size-14 text-gray" translate> <div class="row">
<span translate> <h2> Wallet Seed </h2>
You will need these backup words to restore this personal wallet.
</span>
<span translate class="text-bold">
Write them down and keep them somewhere safe.
</span>
</div>
</div> </div>
<div class="row" ng-show="(index.n>1 && index.m != index.n )"> <div ng-show="wordsC.mywords">
<div class="m10t columns size-14 text-gray" translate> <div class="row" ng-show="index.n==1">
<span translate> <div class="m10t columns size-14 text-gray" translate>
To restore this {{index.m}}-{{index.n}} shared wallet you will need: <span translate>
</span>: You need the wallet seed to restore this personal wallet.
<ol class="m10t columns size-14 text-gray"> </span>
<li> Your backup words and access to the wallet service where your wallet is registered <span translate class="text-bold">
<li> <b>OR</b> the backup words of <b>all</b> copayers in the wallet Write it down and keep them somewhere safe.
<li> <b>OR</b> 1 wallet export file and the remaining quorum of backup words (e.g. in a 3-5 wallet: 1 wallet export file + 2 backup words of any of the other copayers). </span>
</ol> </div>
</span>
</div> </div>
</div> <div class="row" ng-show="(index.n>1 && index.m != index.n )">
<div class="row" ng-show="(index.n>1 && index.m == index.n )"> <div class="m10t columns size-14 text-gray" translate>
<div class="m10t columns size-14 text-gray" translate> <span translate>
<span translate> To restore this {{index.m}}-{{index.n}} shared wallet you will need:
To restore this {{index.m}}-{{index.n}} <b>shared</b> wallet you will need </span>:
</span>: <ol class="m10t columns size-14 text-gray">
<ol class="m10t columns size-14 text-gray"> <li> Your wallet seed and access to the wallet service where your wallet is registered
<li> Your backup words and access to the wallet service where wallet is registered <li> <b>OR</b> the wallet seed of <b>all</b> copayers in the wallet
<li> <b>OR</b> the backups words of <b>all</b> copayers in the wallet <li> <b>OR</b> 1 wallet export file and the remaining quorum of wallet seeds (e.g. in a 3-5 wallet: 1 wallet export file + 2 wallet seeds of any of the other copayers).
</ol> </ol>
</span> </span>
</div>
</div>
<div class="row" ng-show="(index.n>1 && index.m == index.n )">
<div class="m10t columns size-14 text-gray" translate>
<span translate>
To restore this {{index.m}}-{{index.n}} <b>shared</b> wallet you will need
</span>:
<ol class="m10t columns size-14 text-gray">
<li> Your wallet seed and access to the wallet service where wallet is registered
<li> <b>OR</b> the wallet seeds of <b>all</b> copayers in the wallet
</ol>
</span>
</div>
</div> </div>
</div> </div>
<div class="row m20t" ng-show="!wordsC.mywords"> <div class="row m20t" ng-show="!wordsC.mywords">
<div class="columns size-14 text-gray" translate> <div class="columns size-14 text-gray" translate>
The backup words had been deleted from this device The wallet seed for this wallet is not available on this device. You can still export the wallet to backup it.
</div> </div>
</div> </div>
@ -54,8 +60,8 @@
<div class="m10t oh" ng-init="show=false"> <div class="m10t oh" ng-init="show=false">
<a class="button outline light-gray expand tiny" ng-click="show=!show"> <a class="button outline light-gray expand tiny" ng-click="show=!show">
<i class="fi-widget m3r"></i> <i class="fi-widget m3r"></i>
<span translate ng-hide="show" ng-click="wordsC.done()">Show Backup Words</span> <span translate ng-hide="show" ng-click="wordsC.done()">Show Wallet Seed</span>
<span translate ng-hide="!show">Hide Backup Words</span> <span translate ng-hide="!show">Hide Wallet Seed</span>
<i ng-if="!show" class="icon-arrow-down4"></i> <i ng-if="!show" class="icon-arrow-down4"></i>
<i ng-if="show" class="icon-arrow-up4"></i> <i ng-if="show" class="icon-arrow-up4"></i>
</a> </a>
@ -70,7 +76,7 @@
<div class="m10 text-center columns"> <div class="m10 text-center columns">
<div class="m10 size-14 text-gray" translate> <div class="m10 size-14 text-gray" translate>
<span translate> <span translate>
Once you have wrote your backup words, it is recommended to delete them from this device. Once you have copy your wallet seed, it is recommended to delete it from this device.
</span> </span>
</div> </div>
<button class="button outline round dark-gray tiny" ng-click="wordsC.delete()"> <button class="button outline round dark-gray tiny" ng-click="wordsC.delete()">
@ -85,7 +91,7 @@
<!-- hide this in multisig just to show less text --> <!-- hide this in multisig just to show less text -->
<div class="row m20t" ng-show="index.n==1"> <div class="row m20t" ng-show="index.n==1">
<div class="columns size-14 text-gray" translate> <div class="columns size-14 text-gray" translate>
You can safely install your backup on another device and use your wallet from multiple devices at the same time. <a href="#" ng-click="$root.openExternalLink('https://github.com/bitpay/copay#backups')"> You can safely install your wallet on another device and use it from multiple devices at the same time. <a href="#" ng-click="$root.openExternalLink('https://github.com/bitpay/copay#backups')">
<span translate>Learn more about Copay backups</span> <span translate>Learn more about Copay backups</span>
</a> </a>

View file

@ -117,13 +117,12 @@
<switch id="network-name" name="isTestnet" ng-model="isTestnet" class="green right m5t m10b"></switch> <switch id="network-name" name="isTestnet" ng-model="isTestnet" class="green right m5t m10b"></switch>
</label> </label>
<label for="seed" class="oh"> <label for="seed" class="oh">
<span translate>Specify the wallet seed</span> <span translate>Specify your wallet's key seed</span>
<switch id="seed" name="setSeed" ng-model="setSeed" class="green right m5t m10b"></switch> <switch id="seed" name="setSeed" ng-model="setSeed" class="green right m5t m10b"></switch>
</label> </label>
<label for="createPassphrase" class="line-b oh" ng-show="!setSeed" ><span translate>Seed Passphrase</span> <small translate>Add an optional passphrase to secure the wallet seed</small> <label for="createPassphrase" class="line-b oh" ng-show="!setSeed" ><span translate>Seed Passphrase</span> <small translate>Add an optional passphrase to secure the seed</small>
<div class="input"> <div class="input">
<input type="text" class="form-control" <input type="text" class="form-control"
name="createPassphrase" ng-model="createPassphrase"> name="createPassphrase" ng-model="createPassphrase">
@ -131,14 +130,13 @@
</label> </label>
<label for="ext-master" class="m10t" ng-show="setSeed"> <label for="ext-master" class="m10t" ng-show="setSeed">
<span translate>Wallet Seed</span> <span translate>Wallet Key Seed</span>
<small translate>Enter the 12 words to seed the wallet (BIP39)</small> <small translate>Enter the 12 words seed (BIP39)</small>
<input id="ext-master" <input id="ext-master"
type="text" type="text"
placeholder="{{'Wallet seed'|translate}}"
name="privateKey" ng-model="privateKey"> name="privateKey" ng-model="privateKey">
</label> </label>
<label for="passphrase" class="line-b oh" ng-show="setSeed"><span translate>Seed Passphrase</span> <small translate>Seed could require a passphrase to be imported</small> <label for="passphrase" class="line-b oh" ng-show="setSeed"><span translate>Seed Passphrase</span> <small translate>The seed could require a passphrase to be imported</small>
<div class="input"> <div class="input">
<input type="text" class="form-control" name="passphrase" ng-model="passphrase"> <input type="text" class="form-control" name="passphrase" ng-model="passphrase">
</div> </div>

View file

@ -44,7 +44,7 @@
</div> </div>
<div class="m10 size-14 text-gray" translate> <div class="m10 size-14 text-gray" translate>
Not including the private key will allow the user to see the wallet balance, transactions, and create spend proposals. However, it will not be able to approve (sign) proposals. WARNING: Not including the private key will allows checking the wallet balance, transactions, and create spend proposals from the export. However, does not allow to approve (sign) proposals, so <b>funds can not be accesed from a export without the private key</b>.
</div> </div>
</div> </div>

View file

@ -101,11 +101,11 @@
<div class="large-12 columns"> <div class="large-12 columns">
<label for="seed" class="oh"> <label for="seed" class="oh">
<span translate>Specify the wallet seed</span> <span translate>Specify your wallet's key seed</span>
<switch id="seed" name="setSeed" ng-model="setSeed" class="green right m5t m10b"></switch> <switch id="seed" name="setSeed" ng-model="setSeed" class="green right m5t m10b"></switch>
</label> </label>
<label for="createPassphrase" class="line-b oh" ng-show="!setSeed" ><span translate>Seed Passphrase</span> <small translate>Add an optional passphrase to secure the wallet seed</small> <label for="createPassphrase" class="line-b oh" ng-show="!setSeed" ><span translate>Seed Passphrase</span> <small translate>Add an optional passphrase to secure the seed</small>
<div class="input"> <div class="input">
<input type="text" class="form-control" <input type="text" class="form-control"
name="createPassphrase" ng-model="createPassphrase"> name="createPassphrase" ng-model="createPassphrase">
@ -113,14 +113,13 @@
</label> </label>
<label for="ext-master" class="m10t" ng-show="setSeed"> <label for="ext-master" class="m10t" ng-show="setSeed">
<span translate>Wallet Seed</span> <span translate>Wallet Key Seed</span>
<small translate>Enter the 12 words to seed the wallet (BIP39)</small> <small translate>Enter the 12 words seed (BIP39)</small>
<input id="ext-master" <input id="ext-master"
type="text" type="text"
placeholder="{{'Wallet seed'|translate}}"
name="privateKey" ng-model="privateKey"> name="privateKey" ng-model="privateKey">
</label> </label>
<label for="passphrase" class="line-b oh" ng-show="setSeed"><span translate>Seed Passphrase</span> <small translate>Seed could require a passphrase to be imported</small> <label for="passphrase" class="line-b oh" ng-show="setSeed"><span translate>Seed Passphrase</span> <small translate>The seed could require a passphrase to be imported</small>
<div class="input"> <div class="input">
<input type="text" class="form-control" name="passphrase" ng-model="passphrase"> <input type="text" class="form-control" name="passphrase" ng-model="passphrase">
</div> </div>
@ -128,14 +127,19 @@
</div> </div>
</div> </div>
<div class="box-notification" ng-show="!setSeed && createPassphrase"> <div class="box-notification" ng-show="!setSeed && createPassphrase">
<span class="text-warning size-14"> <span class="text-warning size-14">
<i class="fi-alert"></i> <i class="fi-alert"></i>
<span translate> <span translate>
WARNING: Passphrase cannot be recovered. <b>Be sure to write it down</b>. The wallet can not be restored without the passphrase. WARNING: Passphrase cannot be recovered. <b>Be sure to write it down</b>. The wallet can not be restored without the passphrase.
</span>
</span> </span>
</div> </span>
</div>
<button translate type="submit" class="button expand black m0 round" <button translate type="submit" class="button expand black m0 round"
ng-disabled="joinForm.$invalid || join.loading">Join</button> ng-disabled="joinForm.$invalid || join.loading">Join</button>
</form> </form>