mirror of
https://github.com/element-hq/element-web
synced 2024-11-28 20:38:55 +03:00
Show private key cache state in debug panel
This commit is contained in:
parent
c53b07a35a
commit
1c802cc6af
2 changed files with 21 additions and 0 deletions
|
@ -32,6 +32,8 @@ export default class CrossSigningPanel extends React.PureComponent {
|
||||||
error: null,
|
error: null,
|
||||||
crossSigningPublicKeysOnDevice: false,
|
crossSigningPublicKeysOnDevice: false,
|
||||||
crossSigningPrivateKeysInStorage: false,
|
crossSigningPrivateKeysInStorage: false,
|
||||||
|
selfSigningPrivateKeyCached: false,
|
||||||
|
userSigningPrivateKeyCached: false,
|
||||||
secretStorageKeyInAccount: false,
|
secretStorageKeyInAccount: false,
|
||||||
secretStorageKeyNeedsUpgrade: null,
|
secretStorageKeyNeedsUpgrade: null,
|
||||||
};
|
};
|
||||||
|
@ -71,10 +73,13 @@ export default class CrossSigningPanel extends React.PureComponent {
|
||||||
|
|
||||||
async _getUpdatedStatus() {
|
async _getUpdatedStatus() {
|
||||||
const cli = MatrixClientPeg.get();
|
const cli = MatrixClientPeg.get();
|
||||||
|
const pkCache = cli.getCrossSigningCacheCallbacks();
|
||||||
const crossSigning = cli._crypto._crossSigningInfo;
|
const crossSigning = cli._crypto._crossSigningInfo;
|
||||||
const secretStorage = cli._crypto._secretStorage;
|
const secretStorage = cli._crypto._secretStorage;
|
||||||
const crossSigningPublicKeysOnDevice = crossSigning.getId();
|
const crossSigningPublicKeysOnDevice = crossSigning.getId();
|
||||||
const crossSigningPrivateKeysInStorage = await crossSigning.isStoredInSecretStorage(secretStorage);
|
const crossSigningPrivateKeysInStorage = await crossSigning.isStoredInSecretStorage(secretStorage);
|
||||||
|
const selfSigningPrivateKeyCached = !!(pkCache && await pkCache.getCrossSigningKeyCache("self_signing"));
|
||||||
|
const userSigningPrivateKeyCached = !!(pkCache && await pkCache.getCrossSigningKeyCache("user_signing"));
|
||||||
const secretStorageKeyInAccount = await secretStorage.hasKey();
|
const secretStorageKeyInAccount = await secretStorage.hasKey();
|
||||||
const homeserverSupportsCrossSigning =
|
const homeserverSupportsCrossSigning =
|
||||||
await cli.doesServerSupportUnstableFeature("org.matrix.e2e_cross_signing");
|
await cli.doesServerSupportUnstableFeature("org.matrix.e2e_cross_signing");
|
||||||
|
@ -84,6 +89,8 @@ export default class CrossSigningPanel extends React.PureComponent {
|
||||||
this.setState({
|
this.setState({
|
||||||
crossSigningPublicKeysOnDevice,
|
crossSigningPublicKeysOnDevice,
|
||||||
crossSigningPrivateKeysInStorage,
|
crossSigningPrivateKeysInStorage,
|
||||||
|
selfSigningPrivateKeyCached,
|
||||||
|
userSigningPrivateKeyCached,
|
||||||
secretStorageKeyInAccount,
|
secretStorageKeyInAccount,
|
||||||
homeserverSupportsCrossSigning,
|
homeserverSupportsCrossSigning,
|
||||||
crossSigningReady,
|
crossSigningReady,
|
||||||
|
@ -130,6 +137,8 @@ export default class CrossSigningPanel extends React.PureComponent {
|
||||||
error,
|
error,
|
||||||
crossSigningPublicKeysOnDevice,
|
crossSigningPublicKeysOnDevice,
|
||||||
crossSigningPrivateKeysInStorage,
|
crossSigningPrivateKeysInStorage,
|
||||||
|
selfSigningPrivateKeyCached,
|
||||||
|
userSigningPrivateKeyCached,
|
||||||
secretStorageKeyInAccount,
|
secretStorageKeyInAccount,
|
||||||
homeserverSupportsCrossSigning,
|
homeserverSupportsCrossSigning,
|
||||||
crossSigningReady,
|
crossSigningReady,
|
||||||
|
@ -209,6 +218,14 @@ export default class CrossSigningPanel extends React.PureComponent {
|
||||||
<td>{_t("Cross-signing private keys:")}</td>
|
<td>{_t("Cross-signing private keys:")}</td>
|
||||||
<td>{crossSigningPrivateKeysInStorage ? _t("in secret storage") : _t("not found")}</td>
|
<td>{crossSigningPrivateKeysInStorage ? _t("in secret storage") : _t("not found")}</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>{_t("Self signing private key:")}</td>
|
||||||
|
<td>{selfSigningPrivateKeyCached ? _t("cached locally") : _t("not found locally")}</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>{_t("User signing private key:")}</td>
|
||||||
|
<td>{userSigningPrivateKeyCached ? _t("cached locally") : _t("not found locally")}</td>
|
||||||
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td>{_t("Secret storage public key:")}</td>
|
<td>{_t("Secret storage public key:")}</td>
|
||||||
<td>{secretStorageKeyInAccount ? _t("in account data") : _t("not found")}</td>
|
<td>{secretStorageKeyInAccount ? _t("in account data") : _t("not found")}</td>
|
||||||
|
|
|
@ -582,6 +582,10 @@
|
||||||
"not found": "not found",
|
"not found": "not found",
|
||||||
"Cross-signing private keys:": "Cross-signing private keys:",
|
"Cross-signing private keys:": "Cross-signing private keys:",
|
||||||
"in secret storage": "in secret storage",
|
"in secret storage": "in secret storage",
|
||||||
|
"Self signing private key:": "Self signing private key:",
|
||||||
|
"cached locally": "cached locally",
|
||||||
|
"not found locally": "not found locally",
|
||||||
|
"User signing private key:": "User signing private key:",
|
||||||
"Secret storage public key:": "Secret storage public key:",
|
"Secret storage public key:": "Secret storage public key:",
|
||||||
"in account data": "in account data",
|
"in account data": "in account data",
|
||||||
"Homeserver feature support:": "Homeserver feature support:",
|
"Homeserver feature support:": "Homeserver feature support:",
|
||||||
|
|
Loading…
Reference in a new issue