UserVerificationStatus
Defined in: src/crypto-api/index.ts:869
Represents the ways in which we trust a user
Properties
Section titled “Properties”
readonlyknown:boolean
Defined in: src/crypto-api/index.ts:887
Indicates if we have saved a known identity for this user. Typically, this means that we share a room with them (or have done in the past).
If this is false, then the other flags (isCrossSigningVerified, wasCrossSigningVerified,
needsUserApproval) will also be false. This means that we haven’t seen this user before.
If this is true, then there are further possibilities:
-
If isCrossSigningVerified returns
true, then we have cryptographically verified the current identity of this user: that is the highest form of trust we have. -
If needsUserApproval is
true, that means that the user has changed their identity. -
Otherwise, the user is “TOFU trusted”: we have a record of their identity, and, typically, will share encrypted content with them as long as they retain that identity.
needsUserApproval
Section titled “needsUserApproval”
readonlyneedsUserApproval:boolean
Defined in: src/crypto-api/index.ts:902
Indicates if the identity has changed in a way that needs user approval.
This happens if the identity has changed since we first saw it, unless the new identity has also been verified by our user (eg via an interactive verification).
To rectify this, either:
- Conduct a verification of the new identity via CryptoApi.requestVerificationDM.
- Pin the new identity, via CryptoApi.pinCurrentUserIdentity.
Returns
Section titled “Returns”true if the identity has changed in a way that needs user approval.
Methods
Section titled “Methods”isCrossSigningVerified()
Section titled “isCrossSigningVerified()”isCrossSigningVerified():
boolean
Defined in: src/crypto-api/index.ts:925
Returns
Section titled “Returns”boolean
true if this user is verified via cross signing
isTofu()
Section titled “isTofu()”isTofu():
boolean
Defined in: src/crypto-api/index.ts:942
Returns
Section titled “Returns”boolean
true if this user’s key is trusted on first use
isVerified()
Section titled “isVerified()”isVerified():
boolean
Defined in: src/crypto-api/index.ts:918
Returns
Section titled “Returns”boolean
true if this user is verified via any means
wasCrossSigningVerified()
Section titled “wasCrossSigningVerified()”wasCrossSigningVerified():
boolean
Defined in: src/crypto-api/index.ts:933
Returns
Section titled “Returns”boolean
true if we ever verified this user before (at least for the history of verifications observed by this device).