aboutsummaryrefslogtreecommitdiffstats
path: root/docs/multi_vault_planning.md
diff options
context:
space:
mode:
authorDan Finlay <dan@danfinlay.com>2016-10-12 06:06:09 +0800
committerDan Finlay <dan@danfinlay.com>2016-10-12 06:06:09 +0800
commitf8b52a3895e0d093f7d831695b56f236a911fb0f (patch)
tree711e8bca03404fced427374e2620f55a5621ee4b /docs/multi_vault_planning.md
parentdec282f4fde4b3d1a286c587b64f171835d6ad6a (diff)
downloadtangerine-wallet-browser-f8b52a3895e0d093f7d831695b56f236a911fb0f.tar
tangerine-wallet-browser-f8b52a3895e0d093f7d831695b56f236a911fb0f.tar.gz
tangerine-wallet-browser-f8b52a3895e0d093f7d831695b56f236a911fb0f.tar.bz2
tangerine-wallet-browser-f8b52a3895e0d093f7d831695b56f236a911fb0f.tar.lz
tangerine-wallet-browser-f8b52a3895e0d093f7d831695b56f236a911fb0f.tar.xz
tangerine-wallet-browser-f8b52a3895e0d093f7d831695b56f236a911fb0f.tar.zst
tangerine-wallet-browser-f8b52a3895e0d093f7d831695b56f236a911fb0f.zip
Add to doc
Diffstat (limited to 'docs/multi_vault_planning.md')
-rw-r--r--docs/multi_vault_planning.md13
1 files changed, 13 insertions, 0 deletions
diff --git a/docs/multi_vault_planning.md b/docs/multi_vault_planning.md
index dbd98e4a5..fdde2bc50 100644
--- a/docs/multi_vault_planning.md
+++ b/docs/multi_vault_planning.md
@@ -85,6 +85,12 @@ If we adopt a ReactStore style unidirectional action dispatching data flow, thes
- saveAccountLabel()
- recoverSeed()
+Additional methods, new to this:
+- serialize()
+ - Returns pojo with optional `secret` key whose contents will be encrypted with the users' password and salt when written to disk.
+ - The isolation of secrets is to preserve performance when decrypting user data.
+- deserialize(pojo)
+
### KeyChain (ReduxStore?)
// attributes
@name
@@ -99,6 +105,9 @@ If we adopt a ReactStore style unidirectional action dispatching data flow, thes
serialize(cb) -> obj
deserialize(obj)
+ dispatch({ type: <str>, value: <pojo> })
+
+
### KeyChainViewState
// The serialized, renderable keychain data
accountList: [],
@@ -173,3 +182,7 @@ KeyChainViewState {
}
}
+## A note on the security of arbitrary action dispatchers
+
+Since keychains will be dispatching actions that are then passed through the background process to be routed, we should not trust or require them to include their own keychain ID as a prefix to their action, but we should tack it on ourselves, so that no action dispatched by a KeyChainComponent ever reaches any KeyChain other than its own.
+