Canton DAML Technical Specification · Functional Financial Contracts + Sub-transaction Privacy

Confidence: Certain Updated 2026-05-26 Review by 2026-09-22 Sources 1 Machine-translated Original (JA)
#systems#dlt#daml#smart-contracts#privacy#canton
On this page

Wiki route

This entry sits under systems index. Read it against Canton Network overview · privacy-oriented institutional chain for DAML smart contracts for peer / contrast context and fintech index for the broader system / regulatory boundary.

Key facts

  • DAML is a functional + obligation-based contract language, not an imperative one
  • Sub-transaction privacy is enabled by default; each participant sees only the portions relevant to itself
  • Native support for multi-party atomic transactions
  • Regulator Node is a protocol-level first-class citizen, not after-the-fact auditing
  • Cross-application calls are atomic; bridges and wrapped tokens are unnecessary

Mechanism / How it works

Dimensional comparison of DAML vs Solidity:

DimensionSolidity(EVM)DAML(Canton)
Programming paradigmImperative + state mutationFunctional + modeling of multi-party rights and obligations
PrivacyFully public (everything on-chain is visible)Sub-transaction privacy (isolated by default)
Multi-party atomicityRequires complex contract combinationsNative support for multi-party atomic transactions
Supervisory nodeNo conceptRegulator Node model: embeds the supervisor as a participant
Application scenarioDeFi + general-purpose dAppsFinancial contracts + inter-institution settlement

A concrete example of DAML’s “rights and obligations modeling”: a bond contract explicitly states that “the issuer bears obligation X, the holder has right Y, and the custodian bears audit obligation Z” — this directly maps to the legal-contract semantics of traditional finance (compare the product structures expressed on DAML by BlackRock BUIDL / Apollo ACRED). In Solidity, programmers must code these role relationships themselves, which is error-prone.

Implementation of sub-transaction privacy: each transaction is decomposed into sub-events, and each sub-event is encrypted and broadcast only to the relevant participants. The Global Synchronizer is responsible only for ordering (it does not decrypt the contents).

Origin & evolution

DAML originated in Digital Asset’s early POCs in 2014-2017 年, was open-sourced on GitHub in 2017 年, and became the standard contract language of the Canton Network in 2019 年. It continued to iterate through 2020-2024 年; DAML 3.x added support for more fine-grained privacy primitives and cross-application choreography.

Sources