Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions client-sdk-references/flutter/encryption.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
---
title: Encryption
url: /usage/use-case-examples/data-encryption
---
4 changes: 4 additions & 0 deletions client-sdk-references/javascript-web/encryption.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
---
title: Encryption
url: /usage/use-case-examples/data-encryption
---
4 changes: 4 additions & 0 deletions client-sdk-references/react-native-and-expo/encryption.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
---
title: Encryption
url: /usage/use-case-examples/data-encryption
---
3 changes: 3 additions & 0 deletions mint.json
Original file line number Diff line number Diff line change
Expand Up @@ -290,6 +290,7 @@
"client-sdk-references/flutter/flutter-orm-support",
"client-sdk-references/flutter/usage-examples",
"client-sdk-references/flutter/unit-testing",
"client-sdk-references/flutter/encryption",
"client-sdk-references/flutter/api-reference"
]
},
Expand All @@ -301,6 +302,7 @@
"client-sdk-references/react-native-and-expo/react-native-web-support",
"client-sdk-references/react-native-and-expo/javascript-orm-support",
"client-sdk-references/react-native-and-expo/usage-examples",
"client-sdk-references/react-native-and-expo/encryption",
"client-sdk-references/react-native-and-expo/api-reference"
]
},
Expand All @@ -319,6 +321,7 @@
},
"client-sdk-references/javascript-web/javascript-spa-frameworks",
"client-sdk-references/javascript-web/usage-examples",
"client-sdk-references/javascript-web/encryption",
"client-sdk-references/javascript-web/api-reference"
]
},
Expand Down
3 changes: 3 additions & 0 deletions resources/demo-apps-example-projects.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -63,6 +63,9 @@ Example projects are listed under backend they use, but you can easily wire up y
* [example-nextjs](https://github.com/powersync-ja/powersync-js/blob/main/demos/example-nextjs/README.md): A minimal example demonstrating setup with [Next.js](https://nextjs.org/).
* [example-webpack](https://github.com/powersync-ja/powersync-js/blob/main/demos/example-webpack/README.md): A minimal example demonstrating bundling with [Webpack](https://webpack.js.org/).
* [example-vite](https://github.com/powersync-ja/powersync-js/blob/main/demos/example-vite/README.md): A minimal example demonstrating bundling with [Vite](https://vitejs.dev/).

#### Other
* [example-vite-encryption](https://github.com/powersync-ja/powersync-js/blob/main/demos/example-vite-encryption/README.md): A minimal example demonstrating encryption of the web database.
</Accordion>

<Accordion title="Node.js (alpha)" icon="node-js">
Expand Down
24 changes: 18 additions & 6 deletions usage/use-case-examples/data-encryption.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -8,12 +8,10 @@ Data is always encrypted in transit using TLS — both between the client and Po

### At Rest Encryption

The client-side database can be encrypted at rest using [SQLCipher](https://www.zetetic.net/sqlcipher/).

This is currently available for:
The client-side database can be encrypted at rest. This is currently available for:

<Accordion title="Flutter" icon="flutter">
SQLCipher support is available for Flutter through the `powersync_sqlcipher` SDK. See usage details in the package README:
[SQLCipher](https://www.zetetic.net/sqlcipher/) support is available for Flutter through the `powersync_sqlcipher` SDK. See usage details in the package README:

<Card
title="powersync_sqlcipher"
Expand All @@ -24,7 +22,7 @@ SQLCipher support is available for Flutter through the `powersync_sqlcipher` SDK
</Accordion>

<Accordion title="React Native & Expo" icon="react">
SQLCipher support is available for React Native through the `@powersync/op-sqlite` package. See usage details in the package README:
[SQLCipher](https://www.zetetic.net/sqlcipher/) support is available for PowerSync's React Native SDK through the `@powersync/op-sqlite` package. See usage details in the package README:

<Card
title="npm: @powersync/op-sqlite"
Expand All @@ -34,9 +32,23 @@ SQLCipher support is available for Flutter through the `powersync_sqlcipher` SDK
/>
</Accordion>

<Accordion title="JavaScript Web" icon="js">
The Web SDK uses the [ChaCha20 cipher algorithm by default](https://utelle.github.io/SQLite3MultipleCiphers/docs/ciphers/cipher_chacha20/). See usage details in the package README:

<Card
title="npm: @powersync/web"
icon="npm"
href="https://www.npmjs.com/package/@powersync/web"
horizontal
/>
Additionally, a minimal example demonstrating encryption of the web database is available [here](https://github.com/powersync-ja/powersync-js/tree/main/demos/example-vite-encryption).
</Accordion>

<Note>
Support for encryption on other platforms is planned. In the meantime, let us know your needs and use cases on [Discord](https://discord.gg/powersync).
</Note>


Support for SQLCipher on other platforms is planned. In the meantime, let us know with your needs and use cases on [Discord](https://discord.gg/powersync).

### End-to-end Encryption

Expand Down