diff --git a/client-sdk-references/flutter/encryption.mdx b/client-sdk-references/flutter/encryption.mdx new file mode 100644 index 00000000..9399d3a9 --- /dev/null +++ b/client-sdk-references/flutter/encryption.mdx @@ -0,0 +1,4 @@ +--- +title: Encryption +url: /usage/use-case-examples/data-encryption +--- diff --git a/client-sdk-references/javascript-web/encryption.mdx b/client-sdk-references/javascript-web/encryption.mdx new file mode 100644 index 00000000..9399d3a9 --- /dev/null +++ b/client-sdk-references/javascript-web/encryption.mdx @@ -0,0 +1,4 @@ +--- +title: Encryption +url: /usage/use-case-examples/data-encryption +--- diff --git a/client-sdk-references/react-native-and-expo/encryption.mdx b/client-sdk-references/react-native-and-expo/encryption.mdx new file mode 100644 index 00000000..9399d3a9 --- /dev/null +++ b/client-sdk-references/react-native-and-expo/encryption.mdx @@ -0,0 +1,4 @@ +--- +title: Encryption +url: /usage/use-case-examples/data-encryption +--- diff --git a/mint.json b/mint.json index f9ceb703..f4465df0 100644 --- a/mint.json +++ b/mint.json @@ -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" ] }, @@ -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" ] }, @@ -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" ] }, diff --git a/resources/demo-apps-example-projects.mdx b/resources/demo-apps-example-projects.mdx index c7c43003..9dacf7e9 100644 --- a/resources/demo-apps-example-projects.mdx +++ b/resources/demo-apps-example-projects.mdx @@ -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. diff --git a/usage/use-case-examples/data-encryption.mdx b/usage/use-case-examples/data-encryption.mdx index d3f25e8b..006a8214 100644 --- a/usage/use-case-examples/data-encryption.mdx +++ b/usage/use-case-examples/data-encryption.mdx @@ -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: -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: - 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: + + 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: + + + 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). + + + + 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). + -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