aboutsummaryrefslogtreecommitdiff
path: root/packages/anastasis-core/src/index.ts
diff options
context:
space:
mode:
authorFlorian Dold <florian@dold.me>2021-10-18 21:48:22 +0200
committerFlorian Dold <florian@dold.me>2021-10-18 21:48:45 +0200
commit269022a526b670d602ca146f4df02850983bb72e (patch)
treee0a66e8b15ef305c99274c76964a119d0d9512ba /packages/anastasis-core/src/index.ts
parent3a69f27412782872c1264e8a4dd1be13d57a8a80 (diff)
downloadwallet-core-269022a526b670d602ca146f4df02850983bb72e.tar.xz
move some more crypto to taler-util package
Diffstat (limited to 'packages/anastasis-core/src/index.ts')
-rw-r--r--packages/anastasis-core/src/index.ts15
1 files changed, 14 insertions, 1 deletions
diff --git a/packages/anastasis-core/src/index.ts b/packages/anastasis-core/src/index.ts
index f33a0be46..8921433b7 100644
--- a/packages/anastasis-core/src/index.ts
+++ b/packages/anastasis-core/src/index.ts
@@ -36,8 +36,10 @@ import {
} from "./reducer-types.js";
import fetchPonyfill from "fetch-ponyfill";
import {
+ accountKeypairDerive,
coreSecretEncrypt,
encryptKeyshare,
+ encryptRecoveryDocument,
encryptTruth,
PolicyKey,
policyKeyDerive,
@@ -492,14 +494,25 @@ async function uploadSecret(
policies: policies.map((x, i) => {
return {
master_key: csr.encMasterKeys[i],
+ // FIXME: ...
uuid: [],
- salt:
+ salt: undefined as any,
};
}),
};
for (const prov of state.policy_providers!) {
+ const uid = uidMap[prov.provider_url]
+ const acctKeypair = accountKeypairDerive(uid);
+ const encRecoveryDoc = await encryptRecoveryDocument(uid, rd);
// FIXME: Upload recovery document.
+ const resp = await fetch(
+ new URL(`policy/${acctKeypair.pub}`, prov.provider_url).href,
+ {
+ method: "POST",
+ body: decodeCrock(encRecoveryDoc),
+ },
+ );
}
return {