core-crypto

CoreCrypto Keystore Implementation

Goals

Targets

Native - iOS - Android (aka Generic)

Nothing very fancy, pretty much everything is handed off to SQLCipher

WASM

Implementation details

Overview

graph TD
    subgraph KS [Keystore]
        subgraph w [WASM]
            B(Keystore Entities)
            C{AES-256-GCM} -->|Stores| R[Rexie]
            B -.->|Encrypts| C
            C -.->|Decrypts| B
            R -.-> I[IndexedDB]
        end

        subgraph g [Generic]
            RS[Rusqlite] --> S[SQLCipher]
            SC{AES-256-CBC}
            S -.->|Encrypts| SC
            SC -.->|Decrypts| S
            SC -->|Stores| SF[File]
        end
    end

Native

See SQLCipher design

Summary:

WASM

How the value-level encryption works