e2ee. (#226)
* chore: e2ee. * update. * update. * update. * update. * chore: Use feat/frame-encryption branch of flutter-webrtc. * chore: Add E2EEKEY defines for dart environment, and e2ee switch. * Add encodedInsertableStreams to RTCConfiguration. * update. * feat: Add e2ee indicator for Participant. * feat: add e2ee worker js for flutter web. * dart format. * remove unused file. * fix flutter analyze . * update. * update. * add: indicate for decryption failure, and string key. * remove .lock files. * update. * update. * update e2ee.worker for web. * feat: support setCodecPreferences. * state TrackE2EEStateEvent. * fix wrong import interface from dart_webrtc. * update. * update. * update. * update. * update pubspec.lock. * chore: update protocol and add EncryptionType for Participant. * Update lib/src/e2ee/options.dart Co-authored-by: Théo Monnom <theo.monnom@outlook.com> * fix typo. * revert changes for internal import. * Add _cleanUp() for previous room. * Add e2ee supports detection method for native/web. * Remove redundant overriding methods. * dart format. * Add e2ee.worker code and deployment docs. * chore: remove duplicate words. * chore: using Pbkdf2 derive the key. * Update pubspec.yaml * fix e2ee for safari. * fix key length. * update e2ee.worker.dart.js. * fix. * update proto. * update. * chore: add simulate for rachetKey. * update. * chore: key ratchet for flutter web. * update. * update. * update. * chore: key ratchet export for web. * bump version for xframeworks. * update. * chore: some changes for key safety ratcheting. * update. * fix typo. * update. * rename. * magic bytes for web. * bump version for flutter-webrtc. * fix analyzer. --------- Co-authored-by: Théo Monnom <theo.monnom@outlook.com>
This commit is contained in:
@@ -20,13 +20,13 @@ More Docs and guides are available at [https://docs.livekit.io](https://docs.liv
|
||||
|
||||
## Current supported features
|
||||
|
||||
| Feature | Subscribe/Publish | Simulcast | Background audio | Screen sharing |
|
||||
| :-----: | :---------------: | :-------: | :--------------: | :------------: |
|
||||
| Web | 🟢 | 🟢 | 🟢 | 🟢 |
|
||||
| iOS | 🟢 | 🟢 | 🟢 | 🟢 |
|
||||
| Android | 🟢 | 🟢 | 🟢 | 🟢 |
|
||||
| Mac | 🟢 | 🟢 | 🟢 | 🟢 |
|
||||
| Windows | 🟢 | 🟢 | 🟢 | 🟢 |
|
||||
| Feature | Subscribe/Publish | Simulcast | Background audio | Screen sharing | End to End Encryption |
|
||||
| :-----: | :---------------: | :-------: | :--------------: | :------------: | :------------: |
|
||||
| Web | 🟢 | 🟢 | 🟢 | 🟢 | 🟢 |
|
||||
| iOS | 🟢 | 🟢 | 🟢 | 🟢 | 🟢 |
|
||||
| Android | 🟢 | 🟢 | 🟢 | 🟢 | 🟢 |
|
||||
| Mac | 🟢 | 🟢 | 🟢 | 🟢 | 🟢 |
|
||||
| Windows | 🟢 | 🟢 | 🟢 | 🟢 | 🟢 |
|
||||
|
||||
🟢 = Available
|
||||
|
||||
@@ -215,6 +215,21 @@ try {
|
||||
}
|
||||
```
|
||||
|
||||
### End to End Encryption
|
||||
|
||||
LiveKit supports end-to-end encryption for audio/video data sent over the network.
|
||||
By default, the native platform can support E2EE without any settings, but for flutter web, you need to use the following steps to create `e2ee.worker.dart.js` file.
|
||||
|
||||
```bash
|
||||
# for example app
|
||||
dart compile js .\web\e2ee.worker.dart -o .\example\web\e2ee.worker.dart.js
|
||||
# for your project
|
||||
export YOU_PROJECT_DIR=your_project_dir
|
||||
git clone https://github.com/livekit/client-sdk-flutter.git
|
||||
cd client-sdk-flutter && flutter pub get
|
||||
dart compile js .\web\e2ee.worker.dart -o ${YOU_PROJECT_DIR}\web\e2ee.worker.dart.js
|
||||
```
|
||||
|
||||
### Advanced track manipulation
|
||||
|
||||
The setCameraEnabled/setMicrophoneEnabled helpers are wrappers around the Track API.
|
||||
|
||||
Reference in New Issue
Block a user