@ideem/zsm-client-sdk
Version:
ZSM makes 2FA easy and invisible for everyone, all the time, using advanced cryptography like MPC to establish cryptographic proof of the origin of any transaction or login attempt, while eliminating opportunities for social engineering. ZSM has no relian
153 lines (132 loc) • 7.16 kB
Markdown
ZSM Client SDK for Browser Apps
Latest version: v2.5.0
Latest release date: Aug 29, 2025
The ZSM Client SDK for Browser Apps provides the resources needed to integrate Ideem's FIDO2 Authenticator
and Universal MFA into a browser application.
## Resources:
- Support: support@useideem.com
## Known Issues
- A corner-case exists in which a developer, using both the core SDK packages as well as the Passkeys+ SDK, may encounter conflicts if a ZSM credential is re-enrolled after the Passkeys+ credential has been enrolled. Dev team is aware of this issue and a fix is forthcoming. A safeguard has been implemented to prevent this issue from occurring accidentally but, in the immediate term, developers are advised to avoid re-enrolling ZSM credentials after Passkeys+ credentials have been enrolled.
----
## Release 2.5.0 - Aug 29, 2025 [ NPM PACKAGE RELEASE ] **[ LATEST ]**
- Significant re-architecture of the SDK to improve performance and maintainability (non-breaking, but may alter existing implementations, if plugins are used)
- Introduction of a new plugin system for easier integration of additional Ideem services
- Plugin system allows for dynamic loading and unloading of features
- Improved modularity and separation of concerns
- Enhanced error handling and recovery mechanisms
- Plugins can be easily added or removed without affecting the core SDK functionality
- Industry-leading implementation approach; no code changes or plugin registration required! Simply `import` the plugin and the functionality is available!
- Improved performance and reduced bundle size
- Advanced event coordination capabilities
- Fine-grained control over event propagation and handling
- Support for complex event workflows and dependencies
- Asynchronous loading of SDK and its constituent components and plugins
- Optional `async`/`await` support for class constructors
- Optional `finished()` method introduced for better async flow control
- Optional callback method support for SDK initialization
- Optional global-scoped events emitted during SDK initialization and lifecycle
- Relying Party improvements
- (RP) identification improvements
- (RP) configuration enhancements
- RP now single-instance when using Passkeys+; no need for secondary instance when using the same browser context
- Error handling, reporting, logging, and recovery improvements
- Centralized error handling and recovery mechanisms
- Extended support for custom error types and structured error information
- Normalized error responses across SDK components
- Significant improvements to documentation
- Significant updates to sample apps
- Automated shim polyfills introduced to simplify VanillaJS integrations using NPM packages (no more `importmap` configuration required!)
- Significant updates to build process and tooling
## Release 2.4.1 - May 5, 2025
- Minor bug fixes and improvements
- Updates to documentation
- Updates to sample apps
- Alters worker communication protocol to ensure that the worker is not blocked
by the main thread and vice versa, while still ensuring that the initialization
of the worker is completed before any other operations are performed.
## Release 2.4.0 - May 1, 2025
- Minor bug fixes and improvements
- Updates to documentation
- Adds event emitters to the UMFAClient and FIDO2Client for on-the-fly initializations
- Adds extended multi-tenancy support for the UMFAClient and FIDO2Client
- Adds increased detail to performance logging
- Extends secure local storage support
## Release 2.3.0 - Mar 24, 2025
- Minor bug fixes and improvements
- Updates to documentation
- Introduces web-worker-driven JS SDK Client for browser-based applications
- Significant performance improvements to the UMFA JS Client
- Updates native mobile SDKs to support the new optimized flows
- Adds unenroll/webauthnDelete functionality to UMFAClient and FIDO2Client (browser, mobile, and native)
- Updates data parsing and replication in SQL and Oracle environments
## Release 2.2.12 - Mar 14, 2025
- Minor bug fixes and improvements
- Updates to documentation
- Improves server-side TLS handling performance
- Adds optimized flows to the UMFA CLI Client
## Release 2.2.11 - Mar 5, 2025
- Minor bug fixes and improvements
- Updates to documentation
- Updates to UMFA CLI for enhanced trace reporting
- Updates Affinity rules
- Native Webauthn apps and sdk updates
- Improves package and file versioning for safer deployments
## Release 2.2.10 - Feb 27, 2025
- Minor bug fixes and improvements
- Updates to documentation
- Performance upgrades to AS2 environment
- Extended Trace Map and Host URL Parameter Renames
- Updates to Android-based tls security
- CLI updates for compression formats
## Release 2.2.9 - Feb 14, 2025
- Minor bug fixes and improvements
- Updates to documentation
- Adjustments to deployment process
- React Native SDK updates
- Extended trace mapping implementation
## Release 2.2.8 - Feb 7, 2025 [ NPM PACKAGE RELEASE ]
- Minor bug fixes and improvements
- Updates to documentation
- Adds support for the latest version of the React Native SDK
- Adds 2 New production-ready environments
- Updates binaries for use with M-class Macs
- Improves WASM binary benchmarks
## Release 2.2.7 - Jan 31, 2025
- Minor bug fixes and improvements
- Updates to documentation
- Removed validate token message from UMFA demo transcript
- Fixes condition in which mobile portrait view loses contact with clear and docs buttons.
- Removed dependency on colored crate
- Added new API for enhanced security features
## Release 2.2.6 - January 24, 2024 [ NPM PACKAGE RELEASE ]
- Minor bug fixes and improvements
- Updates to documentation
- Increased high-latency tolerance timeout from a 65-second max to a 300-second max.
- Expand Performance Logging
## Release 2.2.4 - January 22, 2024 [ NPM PACKAGE RELEASE ]
- Minor bug fixes and improvements
- Updates to documentation
- AS2 support added
## Release 2.2.3 - January 20, 2024 [ NPM PACKAGE RELEASE ]
- Minor bug fixes and improvements
- Updates to documentation
- Stability and format improvements
## Release v2.2.2 - January 13, 2024 [ NPM PACKAGE RELEASE ]
- Minor bug fixes and improvements
- Updates to documentation
- Deployment via NPM
- Addition of Vue support (foundation for other web frameworks)
- Addition of checkEnrollment() and enroll() APIs
- Addition of SDK-to-server API Key for reporting purposes (not security)
- Removal of validateToken() API. Token validation is to be via server-to-server for security reasons.
## Release v2.2.1 - December 9, 2024 [ NPM PACKAGE RELEASE ]
- Performance and stability improvements
- WASM size reduction
- Reduced expiration time to 30 seconds for the JWT returned by Authenticate
- Restructured SDK files to be more organized
- Modified application configuration approach to use a configuration json file,
but can also be overridden in the code.
- Improvements to Demo apps at https://demo.useideem.com
## Release v2.2.0 - November 19, 2024 [ NPM PACKAGE RELEASE ]
- Addition of FIDO2 Authenticator interfaces
- Addition of Universal MFA interfaces