seald_sdk_flutter 0.11.0
seald_sdk_flutter: ^0.11.0 copied to clipboard
Seald SDK for Flutter: simple end-to-end encryption for your app
0.11.0 : 2025/10/14 #
- [enhancement] Release database lock automatically when instantiation failed.
- [new feature] Add
maxParallelRequestsoption to SealdSdk, AnonymousSdk, TMR Plugin, and Password Plugin. - [bug fix] Fix a bug that would break subsequent renews after renewing the keys of group that had GroupTmrTemporaryKeys.
- [enhancement] Update dependencies.
0.10.0 : 2025/09/08 #
- [new feature] Implement Anonymous SDK.
- [new feature] Anonymous SDK now can create
AnonymousEncryptionSession. This session exposes six functions:EncryptMessage,DecryptMessage,EncryptFile,DecryptFile,EncryptFileFromPath,DecryptFileFromPath. - [new feature] Implement serialization / deserialization of
EncryptionSessionandAnonymousEncryptionSession. - [breaking change] The internal codes for representing
RetrievalDetailsflows have changed to align with JS, so theRetrievalDetailsof some sessions that were cached before update and retrieved from cache after update may be invalid. - [new feature] Add functions
EncryptionSession.ListRecipientsto list all recipients of anEncryptionSession - [breaking change]
session.RevokeRecipientscan now revoke SymEncKeys & TMR Accesses, and takes the corresponding arguments.
0.9.0 : 2025/02/05 #
- [enhancement] Encryption / Decryption from file paths now streams the data in chunks, to avoid having to load the entire file in-memory, and for better performance.
- [new feature] Add optional
metadataargument tocreateEncryptionSession, to be able to add an arbitrary metadata string. - [new feature] Add
sealdSdkVersionto get the current SDK version. - [enhancement] Update dependencies
0.8.0 : 2024/11/20 #
- [breaking change] Correctly specify minimum Flutter version as
3.10.0. Version0.7.0was already incompatible with Flutter versions older than3.10.0, it just was not specified inpubspec.yaml. - [new feature] Add group TMR temporary keys functions to join a group using TMR.
CreateGroupTMRTemporaryKey,ListGroupTMRTemporaryKeys,DeleteGroupTMRTemporaryKey,ConvertGroupTMRTemporaryKeyandSearchGroupTMRTemporaryKeys. - [enhancement] Update dependencies
0.7.1 : 2024/09/12 #
- [bug fix] Log timestamps now correctly have millisecond precision.
0.7.0 : 2024/08/29 #
- [enhancement] Add a specific error when given a database encryption key of invalid length.
- [enhancement] Add the URL and the method when returning an APIError
- [enhancement] Now runs on Flutter for macOS
- [bug fix] Fix sending of SDK version header
- [bug fix] Now respects configured
keySizewhen using native key generation. - [bug fix] Fix memory-management of
session.encryptFileandsession.decryptFile, and their async versions. - [enhancement] First release publicly available on GitHub
0.6.0 : 2024/05/30 #
- [enhancement] Better performance when retrieving the same session multiple times in parallel when cache is enabled: now only one calls hits the API, while the others wait for it then use the cache.
- [enhancement] Add default rights when handling recipients.
- [new feature] In SSKS Password,
SaveIdentityFromPassword,SaveIdentityFromRawKeys, andChangeIdentityPasswordnow return the SSKS ID of the stored identity, which can be used by your backend to manage it. - [new feature] In SSKS TMR, adding new
SaveIdentityResponseclass, which is returned bySaveIdentity. - [breaking change] In SSKS TMR,
challengeis now a proper optional argument for all methods. This changes the order of arguments. - [breaking change] Change
String databaseEncryptionKeyB64argument of SealdSDK constructor toUint8List? databaseEncryptionKey. - [new feature] Add
sealdSdk.retrieveMultipleEncryption()method, which takes an array of session IDs as input, and returns an array of EncryptionSession instances. - [new feature] Add
sealdSdk.prepareRenew()method, which return a prepared key renewal that can be stored on SSKS to avoid any data loss situation during a private key renewal, and add the correspondingpreparedRenewalargument in methodrenewKeys. - [enhancement] Send public key hash at login for better performance.
- [new feature] Also add
privateKeysargument to methodsaddGroupMembers/removeGroupMembers, and to all async methods. - @flutter [breaking change] Rename
generatePrivateKeystogeneratePrivateKeysAsync. - @flutter [breaking change] Order of some optional args has changed, for coherence with other languages.
0.5.0-beta.1 : 2024/03/28 #
- [packaging] fix publishing details
0.5.0-beta.0 : 2024/03/28 #
- [new feature] Add
GetSigchainHashandCheckSigchainHashmethods to verify a users sigchain - [bug fix] Only try renewing group keys automatically if current user is a group admin.
- [enhancement] Use native private key generation for async methods.
- [new feature] Add
generatePrivateKeysmethod which generates private keys natively and asynchronously, and returns aSealdGeneratedPrivateKeysinstance, and addprivateKeysargument to relevant sync methods. - [breaking change]
SealdSdkmust now be instantiated from the root isolate, or you must pass therootIsolateTokenargument. - [new feature] Add the possibility to create TMR access to retrieve
encryptionSession. AddconvertTmrAccessesthat can convert TMR accesses to classic access for a recipient.
0.4.0-beta.2 : 2024/01/05 #
- [bug fix] On iOS, fix build of internal library to pass Apple validation.
0.4.0-beta.1 : 2023/12/20 #
0.4.0-beta.0 : 2023/12/15 #
- [enhancement] Automatically renew group keys when calling
AddGroupMembers/RemoveGroupMembersand the group keys expire in less than 6 months. - [enhancement] Optimizing the time taken to retrieve a group for the first time.
- [enhancement] Remove unused value
CountfromDeviceMissingKeystype. - [breaking change] Change arguments to SSKS Plugins initialization to make it more coherent with the main SDK.
- [enhancement] Add a header with the version to API requests, to facilitate debugging.
- [enhancement] Handle HTTP
423 - Lockedfor all API call that can return it. (ie: sigchain handling request). - [new feature] Add
addProxySessionmethod (and its async version) onEncryptionSession, to add a proxy session to an existing session. - [breaking change]
encryptionSession.revokeRecipientsmethod (and its async version) now takesrecipientsIdsandproxySessionsIdsas optional arguments, to be able to revoke proxy sessions. - [breaking change] All
EncryptionSessionrevocation methods now return an instance ofRevokeResult, which is a new class. - [new feature]
sealdSdk.retrieveEncryptionSessionandsealdSdk.retrieveEncryptionSessionAsyncmethods now take additionallookupProxyKey&lookupGroupKeyoptional arguments. - [new feature] Instances of
EncryptionSessionexpose how the session was retrieved in a newretrievalDetailsfield, which is an instance the newEncryptionSessionRetrievalDetailsclass. - [enhancement] All thrown exceptions are now instances of
SealdException, with proper exposed error codes and details. - [new feature] Add
parseSessionIdutil function. - [enhancement] Various optimizations, minor bug fixes, and updates of dependencies.
0.3.0-beta.0 : 2023/10/13 #
- [breaking change] Rename
EncryptionSessionclass intoSealdEncryptionSessionfor coherence. - [enhancement] Cleaner doc.
- [bug fix] Handle edge case when searching for a user in the middle of their sigchain being updated.
0.2.0-beta.0 : 2023/09/07 #
- [enhancement] Initial release with new unified build system.
- [new feature] Add
sdk.retrieveEncryptionSessionFromBytesmethod /fileBytesargument tosdk.retrieveEncryptionSession. - [enhancement] In base64 parsing for
dbb64SymKey/databaseEncryptionKeyB64, now ignores new lines.