13 | - pubkey :
string
14 | Public Key (EOS6MRyAjQq8ud7hVNYcfnVPJqcVpscN5So8BhtHuGYqET5GDW5CV)
15 |
16 | - wif :
string
17 | Wallet Import Format
18 | (5JMx76CTUTXxpAbwAqGMMVzSeJaP5UVTT5c2uobcpaMUdLAphSp)
19 |
20 | - privateKey :
object
21 | Private key object from eosjs-ecc.
22 |
23 | - masterPrivateKey :
string
24 | Master Private Key. Strong random key used to derive all other key types.
25 | Has a 'PW' prefix followed by a valid wif. ('PW' + wif ===
26 | 'PW5JMx76CTUTXxpAbwAqGMMVzSeJaP5UVTT5c2uobcpaMUdLAphSp')
27 |
28 | - owner :
wif
29 | Cold storage / recovery key. Has authoritiy to do everything including
30 | account recovery.
31 |
32 | - active :
wif
33 | Spending key. Has the authority to do everything except account recovery.
34 |
35 | - parentPrivateKey :
masterPrivateKey | wif
36 | Master private key or one of its derived private keys.
37 |
38 | - auth :
object
39 | Signing Keys and(or) Accounts each having a weight that when matched in
40 | the signatures should accumulate to meet or exceed the auth's total threshold.
41 |
42 | - accountPermissions :
object
43 | Permissions object from Eos blockchain obtained via get_account.
44 | See chain API get_account => account.permissions.
45 |
46 | - keyPath :
string
47 |
48 | - keyPathPrivate :
object
49 | An expanded version of a private key, a keypath ('active/mypermission'),
50 | and its calculated public key (for performance reasons).
51 |
52 | - minimatch :
string
53 | Glob matching expressions (active, active/**, owner/*).
54 |
55 | - keyPathMatcher :
minimatch
56 | Key derviation path (owner, active/*, active/**, active/mypermission)
57 |
58 | - uriData :
string
59 | A URI without the prefixing scheme, host, port.
60 |
61 | - uriMatcher :
string
62 | A valid regular expression string. The provided string is modified when
63 | it is converted to a RegExp object:
64 |
65 | - A start of line match is implied (
^ is always added, do not add one)
66 | - Unless the uriPath ends with
$, automatically matches query parameters
67 | and fragment (hash tag info).
68 | - The RegExp that is created is always case-insensitive to help a
69 | non-canonical path match. Uri paths should be canonical.
70 |
71 |
72 | - uriMatchers :
uriMatcher | Array.<uriMatcher>
73 |
74 | - uriRule :
Object.<keyPathMatcher, uriMatchers>
75 |
76 | - uriRules :
Object.<uriRule>
77 | Define rules that say which private keys may exist within given locations
78 | of the application. If a rule is not found or does not match, the keystore
79 | will remove the key. The UI can prompt the user to obtain the needed key
80 | again.
81 | For any non-trivial configuration, implementions should create a unit test
82 | that will test the actual configuration used in the application
83 | (see ./uri-rules.test.js for a template).
84 | Paths imply that active is always derived from owner. So, instead of writing
85 | owner/active/** the path must be written as active/**.
86 |
87 |
88 |
89 |