DuoKey

Microsoft 365 Double Key Encryption

DuoKey vs Thales

Thales offers Microsoft 365 DKE as a module of CipherTrust Cloud Key Manager, on a CipherTrust Manager appliance or as CipherTrust Data Security Platform as a Service, and as Luna Key Broker for DKE, a container the customer deploys on Kubernetes. DuoKey is a Swiss DKE service operated by DuoKey (ISO 27001, SOC 2, TISAX AL3) or deployed on your own infrastructure, with keys protected by Multi-Party Computation or an HSM backend.

DuoKey

30 / 33

Thales

21 / 33

Compared capabilities supported, based on public documentation.

Only DuoKey

  • Admin SSO and MFA
  • Contextual access on key use
  • Built-in monitoring dashboard
  • Block rules that override allows
  • Tamper-evident audit log
  • Optional mTLS on decrypt calls
  • Built-in end-to-end key test
  • Multi-site or geo-redundant deployment
  • Rotation without a new Purview label
  • Automatic Entra ID app registration
  • No end-of-life runtime or OS
  • Key never assembled in one place

Feature by feature

DuoKey and Thales, side by side

CapabilityDuoKeyThales

Vendor and support

124/7 support with SLA response times

Round-the-clock support with contractual response times for critical incidents.

Yes24/7 on Platinum, 1-hour critical responseSource
Yes24x7x365; 1 hour for critical issuesSource

2Evaluation or trial licence

A free trial or proof-of-concept licence to test before buying.

YesFree 30-day proof of conceptSource
Yes90-day Community Edition trialSource

Microsoft DKE coverage

3Native Microsoft 365 DKE endpoint

Serves the Microsoft GetKey and Decrypt calls used by Word, Excel, PowerPoint and Outlook.

4Decrypt authorized by Entra ID groups

The key service itself restricts decryption to members of directory groups or roles.

YesEntra ID or Okta group rulesSource
YesEmail or Active Directory groupSource

5Multi-tenant and partner (B2B) tenants

One key service shared with several Entra ID tenants or external partners.

YesDKE Authorized TenantsSource

Administration and access control

6Admin SSO and MFA

Administrators sign in through the corporate identity provider with multi-factor authentication.

YesOIDC, TOTP and passkeysSource
PartialOIDC/LDAP; 2FA via user certificateSource

7Fine-grained administrator RBAC

Custom roles and permissions scoped to keys, services or organisational units.

YesRoles scoped to organisational unitsSource
YesGroups plus per-resource permissionsSource

8Quorum (four-eyes) approval

Sensitive key operations need approval from several administrators.

YesM-of-N on key and vault deletion, vault rotationSource
YesQuorums on delete, backup, restoreSource

9Contextual access on key use

Decrypt allowed or denied by IP range, country or time of day.

YesIP, country and time rulesSource
Not documentedEmail or role onlySource

Monitoring

10Audit logs exported to a SIEM

Key and admin events forwarded to Splunk, Sentinel, QRadar or syslog.

YesSplunk, Sentinel, QRadar, syslog/CEFSource
YesSyslog, Elasticsearch, Splunk appSource

11Built-in monitoring dashboard

Health and usage dashboard shipped with the product.

YesPer-service health, GetKey and Decrypt countersSource
PartialThrough Splunk app or PrometheusSource

12SNMP monitoring

SNMP polling or traps for the operations team.

Not documentedNot in public docs
YesSNMP v1, v2c, v3Source

Zero Trust and audit

28Access rules changed live

DKE access rules are edited in a UI or API and apply at once, without config files or redeployment.

YesPolicies apply without restartSource
YesTenants, emails, roles in GUI or APISource

29Block rules that override allows

Explicit deny rules to cut decrypt access for a user, group, network or country during an incident.

YesBypass > Block > Allow > default denySource
PartialDisable a whole endpoint onlySource

30Several identity providers

Entra ID plus Okta, Keycloak or other OIDC providers for sign-in and group-based rules.

YesEntra ID, Okta, Keycloak and other OIDCSource
YesPlatform admin: LDAP and OIDC groupsSource

31Tamper-evident audit log

Each audit record is signed or hash-chained, so edits and deletions are detectable.

YesHMAC-SHA256 per record plus SHA-256 chainSource
PartialDownloaded log bundles signedSource

32Optional mTLS on decrypt calls

A client-certificate check on DKE decrypt calls, on top of the Entra ID token.

YesClient CA, allowed subjects, headerSource
Not documentedOnly for a load balancer in frontSource

33Built-in end-to-end key test

The key and backend are tested with a wrap/unwrap round-trip before the service goes live.

YesPreflight wrap/unwrap checkSource
Not documented

Availability and key lifecycle

13High-availability cluster

Active-active nodes so the key service survives a node failure.

YesN+1 Cockpit, 3+ MPC nodesSource

14Multi-site or geo-redundant deployment

Survives the loss of a whole data centre.

YesThree-site MPC clusterSource
PartialDisaster recovery stated for SaaSSource

15Key backup and recovery procedure

Documented backup and restore of keys after an incident.

16Old documents open after rotation

Content protected with a previous key version stays readable.

YesRotated keys kept decrypt-onlySource

17Rotation without a new Purview label

Rotating the key does not require a new label or a relabelling campaign.

YesLabel URL unchanged since Cockpit 2.0.8Source
PartialNew version on same endpoint; not statedSource

18Scheduled key rotation

Automatic rotation on a schedule.

Not documentedManual one-click rotation documented
YesRotation schedule per DKE endpointSource

Hosting and deployment

19Vendor-hosted DKE service (SaaS)

The vendor runs the DKE endpoint; nothing for the customer to host.

YesOperated by DuoKeySource
YesCipherTrust as a Service, EU or USSource

20On-premises option

Run the whole DKE stack inside your own perimeter.

YesOpenShift or VMsSource

21Automatic Entra ID app registration

The DKE app registration is created for you instead of manual portal steps.

YesCreated through Microsoft GraphSource
NoManual Azure portal stepsSource

22No end-of-life runtime or OS

The documented deployment does not depend on an unsupported framework or operating system.

YesSupported OpenShift 4.xSource
PartialCCKM supported; Luna Key Broker image is CentOS 7Source

Key storage, compliance and exit

23FIPS 140 Level 3 key storage

Keys protected by a FIPS 140-2 or 140-3 Level 3 validated module.

YesWith an HSM backend such as SecurosysSource
YesLuna HSM, FIPS 140-3 Level 3Source

24Key never assembled in one place

Multi-Party Computation or threshold cryptography: no single node holds the whole key.

YesWith the MPC key backendSource
Not documented

25Vendor ISO/IEC 27001 certified

The vendor's own operations are ISO/IEC 27001 certified.

YesISO 27001, SOC 2, TISAX AL3Source
YesDPoD operations, ISO 27001:2022Source

26Customer chooses the hosting region

Pick where the key service and keys are hosted.

YesEU, Switzerland or USSource
YesEU or US for SaaSSource

27Key export in standard formats

Reversibility: keys can be exported through KMIP, PKCS#8 or PKCS#12.

Not documentedKeys marked non-extractableSource
YesPKCS#1, #8, #12 and KMIPSource

Why teams choose DuoKey

Key differences with Thales

01

Context on every decrypt

CipherTrust authorizes DKE by email or Active Directory group per tenant. DuoKey adds IP range, country and time-of-day rules to each decrypt, so a valid user outside an allowed context is still refused.

02

No key in one place

Thales protects DKE keys in Luna HSMs. With DuoKey's MPC backend the key is split across independent nodes and never assembled, so no single device or administrator can use it alone.

03

No manual Azure wiring

Thales documents the Entra ID app registration as manual portal steps, and allows one DKE service per CipherTrust Manager instance. DuoKey creates the app registration through Microsoft Graph and runs as many DKE services as you need.

04

The Luna Key Broker path

Thales's public Luna Key Broker guide runs to more than 50 manual commands on AKS, uses a CentOS 7 image (end of life since June 2024) and ships a sample policy that admits any user with a UPN. The guide itself presents this as a basic demonstration.

What Thales does well

CipherTrust is mature: 24/7 support with one-hour critical response, quorum approvals, SNMP, scheduled DKE rotation, Active Directory group authorization, standard key export and a hosted option in the EU or US. If you already run CipherTrust for other workloads, consolidating DKE there is a reasonable choice.

FAQ

Is DuoKey an alternative to Thales for Microsoft 365 DKE?

Yes. DuoKey provides the customer-held second key and the DKE service that Microsoft 365 calls, operated by DuoKey or deployed on your own infrastructure.

Can I migrate from Thales to DuoKey?

Yes. Create a DuoKey DKE service and a sensitivity label for new content, and keep the existing Thales service running for documents already protected with it until they are re-labelled or reach the end of retention.

How were these criteria chosen?

They follow the sections of a customer DKE and key management RFP: support, Microsoft DKE coverage, administration, monitoring, availability, hosting, key storage and exit. Every cell links to the public document it is based on.

Evidence

Every claim on this page, sourced

Thales

  1. [1]www.applytosupply.digitalmarketplace.service.gov.ukcriteria 1https://www.applytosupply.digitalmarketplace.service.gov.uk/g-cloud-14/services/916507393315784
  2. [2]cpl.thalesgroup.comcriteria 2, 20, 23https://cpl.thalesgroup.com/cloud-security/encryption/double-key-encryption
  3. [3]docs-cybersec.thalesgroup.comcriteria 3, 5, 32, 21https://docs-cybersec.thalesgroup.com/bundle/v2.20-cdsp-cm/page/admin/cckm_ag/msft-dke/index.html
  4. [4]docs-cybersec.thalesgroup.comcriteria 4, 9https://docs-cybersec.thalesgroup.com/bundle/v2.20-cdsp-cm/page/admin/cckm_ag/msft-dke/dke-ten/index.html
  5. [5]docs-cybersec.thalesgroup.comcriteria 6https://docs-cybersec.thalesgroup.com/bundle/v2.20-cdsp-cm/page/admin/cm_admin/authentication/users/index.html
  6. [6]docs-cybersec.thalesgroup.comcriteria 7https://docs-cybersec.thalesgroup.com/bundle/v2.20-cdsp-cm/page/admin/cm_admin/abac-permissions/index.html
  7. [7]docs-cybersec.thalesgroup.comcriteria 8https://docs-cybersec.thalesgroup.com/bundle/v2.20-cdsp-cm/page/admin/cm_admin/quorums/index.html
  8. [8]docs-cybersec.thalesgroup.comcriteria 10https://docs-cybersec.thalesgroup.com/bundle/v2.20-cdsp-cm/page/admin/cm_admin/monitoring/log-forwarding/index.html
  9. [9]docs-cybersec.thalesgroup.comcriteria 11https://docs-cybersec.thalesgroup.com/bundle/v2.20-cdsp-cm/page/admin/cm_admin/config-splunk/index.html
  10. [10]docs-cybersec.thalesgroup.comcriteria 12https://docs-cybersec.thalesgroup.com/bundle/v2.20-cdsp-cm/page/admin/cm_admin/snmp/index.html
  11. [11]docs-cybersec.thalesgroup.comcriteria 28, 29, 16, 17https://docs-cybersec.thalesgroup.com/bundle/v2.20-cdsp-cm/page/admin/cckm_ag/msft-dke/managing_dke_endpoints/index.html
  12. [12]docs-cybersec.thalesgroup.comcriteria 30https://docs-cybersec.thalesgroup.com/bundle/v2.20-cdsp-cm/page/admin/cm_admin/group-mapping/index.html
  13. [13]docs-cybersec.thalesgroup.comcriteria 31https://docs-cybersec.thalesgroup.com/bundle/v2.20-cdsp-cm/page/admin/cm_admin/monitoring/logs/index.html
  14. [14]docs-cybersec.thalesgroup.comcriteria 13https://docs-cybersec.thalesgroup.com/bundle/v2.20-cdsp-cm/page/admin/cm_admin/clusters-and-nodes/index.html
  15. [15]thalesdocs.comcriteria 14, 25https://thalesdocs.com/dpod/resources/white_papers/platform_white_paper/index.html
  16. [16]docs-cybersec.thalesgroup.comcriteria 15https://docs-cybersec.thalesgroup.com/bundle/v2.20-cdsp-cm/page/admin/cm_admin/backups/index.html
  17. [17]docs-cybersec.thalesgroup.comcriteria 18https://docs-cybersec.thalesgroup.com/bundle/cdsp-cdspaas/page/reference/cckmapi/msft-dke-apis/msft-enable-key-rotation-dke-endpt/index.html
  18. [18]docs-cybersec.thalesgroup.comcriteria 19https://docs-cybersec.thalesgroup.com/bundle/cdsp-cdspaas/page/admin/cckm_ag/msft-dke/index.html
  19. [19]github.comcriteria 22https://github.com/ThalesGroup/dke-service-setup/blob/main/guide.md
  20. [20]docs-cybersec.thalesgroup.comcriteria 26https://docs-cybersec.thalesgroup.com/bundle/cdsp-cdspaas/page/getting_started_with_cdspaas/index.html
  21. [21]docs-cybersec.thalesgroup.comcriteria 27https://docs-cybersec.thalesgroup.com/bundle/v2.20-cdsp-cm/page/admin/cm_admin/keys/index.html

DuoKey

  1. [1]docs.duokey.comcriteria 1, 2https://docs.duokey.com/docs/why-mpc
  2. [2]docs.duokey.comcriteria 3https://docs.duokey.com/docs/double-key-encryption/cockpit-v2/overview
  3. [3]docs.duokey.comcriteria 4, 29https://docs.duokey.com/docs/double-key-encryption/cockpit-v2/access-policies
  4. [4]docs.duokey.comcriteria 5https://docs.duokey.com/docs/double-key-encryption/operations/b2b-collaboration
  5. [5]docs.duokey.comcriteria 6, 31https://docs.duokey.com/docs/cockpit/security
  6. [6]docs.duokey.comcriteria 7https://docs.duokey.com/docs/cockpit/administration
  7. [7]docs.duokey.comcriteria 8https://docs.duokey.com/docs/cockpit/key-policies
  8. [8]docs.duokey.comcriteria 9https://docs.duokey.com/docs/cockpit/access-policies
  9. [9]docs.duokey.comcriteria 10https://docs.duokey.com/docs/openshift-on-prem/security/compliance-audit
  10. [10]docs.duokey.comcriteria 11, 32, 33https://docs.duokey.com/docs/double-key-encryption/setup/dke-service-deployment
  11. [11]docs.duokey.comcriteria 28https://docs.duokey.com/docs/double-key-encryption/operations/zero-trust-access-control
  12. [12]docs.duokey.comcriteria 30https://docs.duokey.com/docs/developer/administration-api
  13. [13]docs.duokey.comcriteria 13https://docs.duokey.com/docs/openshift-on-prem/vm-deployment
  14. [14]docs.duokey.comcriteria 14https://docs.duokey.com/docs/openshift-on-prem/mpc-cluster
  15. [15]docs.duokey.comcriteria 15https://docs.duokey.com/docs/openshift-on-prem/operations/backup-recovery
  16. [16]docs.duokey.comcriteria 16, 17, 21https://docs.duokey.com/docs/double-key-encryption/cockpit-v2/dke-configuration
  17. [17]docs.duokey.comcriteria 19https://docs.duokey.com/docs/double-key-encryption/knowledgebase
  18. [18]docs.duokey.comcriteria 20, 22, 24https://docs.duokey.com/docs/openshift-on-prem/prerequisites
  19. [19]docs.duokey.comcriteria 23https://docs.duokey.com/docs/oracle-tde/overview
  20. [20]duokey.comcriteria 25https://duokey.com/en/compliance/iso-27001
  21. [21]docs.duokey.comcriteria 26https://docs.duokey.com/docs/double-key-encryption/faq
  22. [22]docs.duokey.comcriteria 27https://docs.duokey.com/docs/pkcs11-lib/function-coverage

Discuss the decisions that matter most to your security programme.

Tell us where control is difficult today. We will help you identify a practical next step.