aboutsummaryrefslogtreecommitdiff
path: root/packages/anastasis-core/src/index.ts
diff options
context:
space:
mode:
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 {