{"templateId":"markdown","sharedDataIds":{"sidebar":"sidebar-products/wallet/sidebars.yaml"},"props":{"metadata":{"markdoc":{"tagList":["admonition"]},"type":"markdown"},"seo":{"title":"Signing & approvals overview","description":"User guides, API reference, and support resources.","siteUrl":"https://docs.ripple.com/products/custody","lang":"en-US","llmstxt":{"hide":false,"sections":[{"title":"Table of contents","includeFiles":["**/*"],"excludeFiles":[]}],"excludeFiles":[]}},"dynamicMarkdocComponents":[],"compilationErrors":[],"ast":{"$$mdtype":"Tag","name":"article","attributes":{},"children":[{"$$mdtype":"Tag","name":"Heading","attributes":{"level":1,"id":"signing--approvals-overview","__idx":0},"children":["Signing & approvals overview"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Wallet-as-a-Service (Palisade) provides multiple layers of security controls to protect your digital assets. These controls work together to ensure that only authorized transactions are executed and that your wallet keys remain secure."]},{"$$mdtype":"Tag","name":"Admonition","attributes":{"type":"info","name":"In this section"},"children":[{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"a","attributes":{"href":"/products/wallet/user-interface/security-controls/mpc-quorums"},"children":["MPC quorums"]}," – Configure multi-party signing with distributed key shards"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"a","attributes":{"href":"/products/wallet/user-interface/security-controls/approvals"},"children":["Approvals"]}," – Set up approval workflows for transactions and operations"]}]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"mpc-quorums","__idx":1},"children":["MPC quorums"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Multi-Party Computation (MPC) quorums split wallet private keys across multiple devices, ensuring that no single device holds the complete key. When a transaction requires signing, multiple devices must participate to create a valid signature."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["MPC quorums support:"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Mobile devices"]},": Manual review and approval via the Palisade Mobile app"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["CloudSign devices"]},": Programmatic signing for high-volume operations"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Mixed quorums"]},": Combination of mobile and CloudSign for flexibility"]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["See ",{"$$mdtype":"Tag","name":"a","attributes":{"href":"/products/wallet/user-interface/security-controls/mpc-quorums"},"children":["MPC quorums"]}," for configuration details."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"approvals","__idx":2},"children":["Approvals"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Approval groups add a human authorization layer to transactions. Before a transaction is submitted to the blockchain, designated approvers must review and approve it through the web console or mobile app."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Key features:"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Configure approval groups for transactions, addresses, policies, and more"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Set minimum required approvers (e.g., 2 of 3 must approve)"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Configurable timeout periods for approval windows"]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["See ",{"$$mdtype":"Tag","name":"a","attributes":{"href":"/products/wallet/user-interface/security-controls/approvals"},"children":["Approvals"]}," for setup instructions."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"how-these-controls-work-together","__idx":3},"children":["How these controls work together"]},{"$$mdtype":"Tag","name":"Mermaid","attributes":{"data-language":"mermaid","diagramSource":"flowchart TD\n    TX[Transaction Created] --> PC[Policy Check]\n    PC --> AP{Approvals Required?}\n    AP -->|Yes| AG[Approval Group Review]\n    AP -->|No| SIG\n    AG -->|Approved| SIG[MPC Signature]\n    AG -->|Rejected| REJ[Transaction Rejected]\n    SIG --> BC[Blockchain Submission]\n    BC --> CONF[Confirmed]\n","diagramHtml":"<div class=\"mermaid\" data-processed=\"true\"><svg id=\"mermaid-1772138370922\" width=\"100%\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" class=\"flowchart\" style=\"max-width: 486.046875px;\" viewBox=\"0 0 486.046875 895.28125\" role=\"graphics-document document\" aria-roledescription=\"flowchart-v2\"><style>#mermaid-1772138370922{font-family:\"trebuchet ms\",verdana,arial,sans-serif;font-size:16px;fill:#333;}@keyframes edge-animation-frame{from{stroke-dashoffset:0;}}@keyframes dash{to{stroke-dashoffset:0;}}#mermaid-1772138370922 .edge-animation-slow{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 50s linear infinite;stroke-linecap:round;}#mermaid-1772138370922 .edge-animation-fast{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 20s linear infinite;stroke-linecap:round;}#mermaid-1772138370922 .error-icon{fill:#552222;}#mermaid-1772138370922 .error-text{fill:#552222;stroke:#552222;}#mermaid-1772138370922 .edge-thickness-normal{stroke-width:1px;}#mermaid-1772138370922 .edge-thickness-thick{stroke-width:3.5px;}#mermaid-1772138370922 .edge-pattern-solid{stroke-dasharray:0;}#mermaid-1772138370922 .edge-thickness-invisible{stroke-width:0;fill:none;}#mermaid-1772138370922 .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-1772138370922 .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-1772138370922 .marker{fill:#333333;stroke:#333333;}#mermaid-1772138370922 .marker.cross{stroke:#333333;}#mermaid-1772138370922 svg{font-family:\"trebuchet ms\",verdana,arial,sans-serif;font-size:16px;}#mermaid-1772138370922 p{margin:0;}#mermaid-1772138370922 .label{font-family:\"trebuchet ms\",verdana,arial,sans-serif;color:#333;}#mermaid-1772138370922 .cluster-label text{fill:#333;}#mermaid-1772138370922 .cluster-label span{color:#333;}#mermaid-1772138370922 .cluster-label span p{background-color:transparent;}#mermaid-1772138370922 .label text,#mermaid-1772138370922 span{fill:#333;color:#333;}#mermaid-1772138370922 .node rect,#mermaid-1772138370922 .node circle,#mermaid-1772138370922 .node ellipse,#mermaid-1772138370922 .node polygon,#mermaid-1772138370922 .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-1772138370922 .rough-node .label text,#mermaid-1772138370922 .node .label text,#mermaid-1772138370922 .image-shape .label,#mermaid-1772138370922 .icon-shape .label{text-anchor:middle;}#mermaid-1772138370922 .node .katex path{fill:#000;stroke:#000;stroke-width:1px;}#mermaid-1772138370922 .rough-node .label,#mermaid-1772138370922 .node .label,#mermaid-1772138370922 .image-shape .label,#mermaid-1772138370922 .icon-shape .label{text-align:center;}#mermaid-1772138370922 .node.clickable{cursor:pointer;}#mermaid-1772138370922 .root .anchor path{fill:#333333!important;stroke-width:0;stroke:#333333;}#mermaid-1772138370922 .arrowheadPath{fill:#333333;}#mermaid-1772138370922 .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-1772138370922 .flowchart-link{stroke:#333333;fill:none;}#mermaid-1772138370922 .edgeLabel{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-1772138370922 .edgeLabel p{background-color:rgba(232,232,232, 0.8);}#mermaid-1772138370922 .edgeLabel rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-1772138370922 .labelBkg{background-color:rgba(232, 232, 232, 0.5);}#mermaid-1772138370922 .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-1772138370922 .cluster text{fill:#333;}#mermaid-1772138370922 .cluster span{color:#333;}#mermaid-1772138370922 div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:\"trebuchet ms\",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-1772138370922 .flowchartTitleText{text-anchor:middle;font-size:18px;fill:#333;}#mermaid-1772138370922 rect.text{fill:none;stroke-width:0;}#mermaid-1772138370922 .icon-shape,#mermaid-1772138370922 .image-shape{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-1772138370922 .icon-shape p,#mermaid-1772138370922 .image-shape p{background-color:rgba(232,232,232, 0.8);padding:2px;}#mermaid-1772138370922 .icon-shape rect,#mermaid-1772138370922 .image-shape rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-1772138370922 .label-icon{display:inline-block;height:1em;overflow:visible;vertical-align:-0.125em;}#mermaid-1772138370922 .node .label-icon path{fill:currentColor;stroke:revert;stroke-width:revert;}#mermaid-1772138370922 :root{--mermaid-font-family:\"trebuchet ms\",verdana,arial,sans-serif;}</style><g><marker id=\"mermaid-1772138370922_flowchart-v2-pointEnd\" class=\"marker flowchart-v2\" viewBox=\"0 0 10 10\" refX=\"5\" refY=\"5\" markerUnits=\"userSpaceOnUse\" markerWidth=\"8\" markerHeight=\"8\" orient=\"auto\"><path d=\"M 0 0 L 10 5 L 0 10 z\" class=\"arrowMarkerPath\" style=\"stroke-width: 1; stroke-dasharray: 1, 0;\"></path></marker><marker id=\"mermaid-1772138370922_flowchart-v2-pointStart\" class=\"marker flowchart-v2\" viewBox=\"0 0 10 10\" refX=\"4.5\" refY=\"5\" markerUnits=\"userSpaceOnUse\" markerWidth=\"8\" markerHeight=\"8\" orient=\"auto\"><path d=\"M 0 5 L 10 10 L 10 0 z\" class=\"arrowMarkerPath\" style=\"stroke-width: 1; stroke-dasharray: 1, 0;\"></path></marker><marker id=\"mermaid-1772138370922_flowchart-v2-circleEnd\" class=\"marker flowchart-v2\" viewBox=\"0 0 10 10\" refX=\"11\" refY=\"5\" markerUnits=\"userSpaceOnUse\" markerWidth=\"11\" markerHeight=\"11\" orient=\"auto\"><circle cx=\"5\" cy=\"5\" r=\"5\" class=\"arrowMarkerPath\" style=\"stroke-width: 1; stroke-dasharray: 1, 0;\"></circle></marker><marker id=\"mermaid-1772138370922_flowchart-v2-circleStart\" class=\"marker flowchart-v2\" viewBox=\"0 0 10 10\" refX=\"-1\" refY=\"5\" markerUnits=\"userSpaceOnUse\" markerWidth=\"11\" markerHeight=\"11\" orient=\"auto\"><circle cx=\"5\" cy=\"5\" r=\"5\" class=\"arrowMarkerPath\" style=\"stroke-width: 1; stroke-dasharray: 1, 0;\"></circle></marker><marker id=\"mermaid-1772138370922_flowchart-v2-crossEnd\" class=\"marker cross flowchart-v2\" viewBox=\"0 0 11 11\" refX=\"12\" refY=\"5.2\" markerUnits=\"userSpaceOnUse\" markerWidth=\"11\" markerHeight=\"11\" orient=\"auto\"><path d=\"M 1,1 l 9,9 M 10,1 l -9,9\" class=\"arrowMarkerPath\" style=\"stroke-width: 2; stroke-dasharray: 1, 0;\"></path></marker><marker id=\"mermaid-1772138370922_flowchart-v2-crossStart\" class=\"marker cross flowchart-v2\" viewBox=\"0 0 11 11\" refX=\"-1\" refY=\"5.2\" markerUnits=\"userSpaceOnUse\" markerWidth=\"11\" markerHeight=\"11\" orient=\"auto\"><path d=\"M 1,1 l 9,9 M 10,1 l -9,9\" class=\"arrowMarkerPath\" style=\"stroke-width: 2; stroke-dasharray: 1, 0;\"></path></marker><g class=\"root\"><g class=\"clusters\"></g><g class=\"edgePaths\"><path d=\"M244.477,62L244.477,66.167C244.477,70.333,244.477,78.667,244.477,86.333C244.477,94,244.477,101,244.477,104.5L244.477,108\" id=\"L_TX_PC_0\" class=\"edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link\" style=\";\" data-edge=\"true\" data-et=\"edge\" data-id=\"L_TX_PC_0\" data-points=\"W3sieCI6MjQ0LjQ3NjU2MjUsInkiOjYyfSx7IngiOjI0NC40NzY1NjI1LCJ5Ijo4N30seyJ4IjoyNDQuNDc2NTYyNSwieSI6MTEyfV0=\" marker-end=\"url(#mermaid-1772138370922_flowchart-v2-pointEnd)\"></path><path d=\"M244.477,166L244.477,170.167C244.477,174.333,244.477,182.667,244.477,190.333C244.477,198,244.477,205,244.477,208.5L244.477,212\" id=\"L_PC_AP_0\" class=\"edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link\" style=\";\" data-edge=\"true\" data-et=\"edge\" data-id=\"L_PC_AP_0\" data-points=\"W3sieCI6MjQ0LjQ3NjU2MjUsInkiOjE2Nn0seyJ4IjoyNDQuNDc2NTYyNSwieSI6MTkxfSx7IngiOjI0NC40NzY1NjI1LCJ5IjoyMTZ9XQ==\" marker-end=\"url(#mermaid-1772138370922_flowchart-v2-pointEnd)\"></path><path d=\"M282.533,385.225L289.792,397.734C297.051,410.244,311.568,435.262,318.827,453.272C326.086,471.281,326.086,482.281,326.086,487.781L326.086,493.281\" id=\"L_AP_AG_0\" class=\"edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link\" style=\";\" data-edge=\"true\" data-et=\"edge\" data-id=\"L_AP_AG_0\" data-points=\"W3sieCI6MjgyLjUzMzAxNTI4MjI2OTQsInkiOjM4NS4yMjQ3OTcyMTc3MzA2fSx7IngiOjMyNi4wODU5Mzc1LCJ5Ijo0NjAuMjgxMjV9LHsieCI6MzI2LjA4NTkzNzUsInkiOjQ5Ny4yODEyNX1d\" marker-end=\"url(#mermaid-1772138370922_flowchart-v2-pointEnd)\"></path><path d=\"M191.086,369.891L175.08,384.956C159.073,400.021,127.06,430.151,111.053,455.883C95.047,481.615,95.047,502.948,95.047,524.281C95.047,545.615,95.047,566.948,97.491,583.171C99.936,599.394,104.825,610.507,107.269,616.063L109.714,621.62\" id=\"L_AP_SIG_0\" class=\"edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link\" style=\";\" data-edge=\"true\" data-et=\"edge\" data-id=\"L_AP_SIG_0\" data-points=\"W3sieCI6MTkxLjA4NjEwNjY3MzY5MTcyLCJ5IjozNjkuODkwNzk0MTczNjkxNzV9LHsieCI6OTUuMDQ2ODc1LCJ5Ijo0NjAuMjgxMjV9LHsieCI6OTUuMDQ2ODc1LCJ5Ijo1MjQuMjgxMjV9LHsieCI6OTUuMDQ2ODc1LCJ5Ijo1ODguMjgxMjV9LHsieCI6MTExLjMyNDcwNzAzMTI1LCJ5Ijo2MjUuMjgxMjV9XQ==\" marker-end=\"url(#mermaid-1772138370922_flowchart-v2-pointEnd)\"></path><path d=\"M274.924,551.281L263.239,557.448C251.553,563.615,228.183,575.948,209.159,587.87C190.135,599.792,175.457,611.302,168.118,617.058L160.78,622.813\" id=\"L_AG_SIG_0\" class=\"edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link\" style=\";\" data-edge=\"true\" data-et=\"edge\" data-id=\"L_AG_SIG_0\" data-points=\"W3sieCI6Mjc0LjkyMzcwNjA1NDY4NzUsInkiOjU1MS4yODEyNX0seyJ4IjoyMDQuODEyNSwieSI6NTg4LjI4MTI1fSx7IngiOjE1Ny42MzIwODAwNzgxMjUsInkiOjYyNS4yODEyNX1d\" marker-end=\"url(#mermaid-1772138370922_flowchart-v2-pointEnd)\"></path><path d=\"M344.718,551.281L348.973,557.448C353.228,563.615,361.739,575.948,365.995,587.615C370.25,599.281,370.25,610.281,370.25,615.781L370.25,621.281\" id=\"L_AG_REJ_0\" class=\"edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link\" style=\";\" data-edge=\"true\" data-et=\"edge\" data-id=\"L_AG_REJ_0\" data-points=\"W3sieCI6MzQ0LjcxNzY1MTM2NzE4NzUsInkiOjU1MS4yODEyNX0seyJ4IjozNzAuMjUsInkiOjU4OC4yODEyNX0seyJ4IjozNzAuMjUsInkiOjYyNS4yODEyNX1d\" marker-end=\"url(#mermaid-1772138370922_flowchart-v2-pointEnd)\"></path><path d=\"M123.203,679.281L123.203,683.448C123.203,687.615,123.203,695.948,123.203,703.615C123.203,711.281,123.203,718.281,123.203,721.781L123.203,725.281\" id=\"L_SIG_BC_0\" class=\"edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link\" style=\";\" data-edge=\"true\" data-et=\"edge\" data-id=\"L_SIG_BC_0\" data-points=\"W3sieCI6MTIzLjIwMzEyNSwieSI6Njc5LjI4MTI1fSx7IngiOjEyMy4yMDMxMjUsInkiOjcwNC4yODEyNX0seyJ4IjoxMjMuMjAzMTI1LCJ5Ijo3MjkuMjgxMjV9XQ==\" marker-end=\"url(#mermaid-1772138370922_flowchart-v2-pointEnd)\"></path><path d=\"M123.203,783.281L123.203,787.448C123.203,791.615,123.203,799.948,123.203,807.615C123.203,815.281,123.203,822.281,123.203,825.781L123.203,829.281\" id=\"L_BC_CONF_0\" class=\"edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link\" style=\";\" data-edge=\"true\" data-et=\"edge\" data-id=\"L_BC_CONF_0\" data-points=\"W3sieCI6MTIzLjIwMzEyNSwieSI6NzgzLjI4MTI1fSx7IngiOjEyMy4yMDMxMjUsInkiOjgwOC4yODEyNX0seyJ4IjoxMjMuMjAzMTI1LCJ5Ijo4MzMuMjgxMjV9XQ==\" marker-end=\"url(#mermaid-1772138370922_flowchart-v2-pointEnd)\"></path></g><g class=\"edgeLabels\"><g class=\"edgeLabel\"><g class=\"label\" data-id=\"L_TX_PC_0\" transform=\"translate(0, 0)\"><foreignObject width=\"0\" height=\"0\"><div xmlns=\"http://www.w3.org/1999/xhtml\" class=\"labelBkg\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"edgeLabel\"></span></div></foreignObject></g></g><g class=\"edgeLabel\"><g class=\"label\" data-id=\"L_PC_AP_0\" transform=\"translate(0, 0)\"><foreignObject width=\"0\" height=\"0\"><div xmlns=\"http://www.w3.org/1999/xhtml\" class=\"labelBkg\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"edgeLabel\"></span></div></foreignObject></g></g><g class=\"edgeLabel\" transform=\"translate(326.0859375, 460.28125)\"><g class=\"label\" data-id=\"L_AP_AG_0\" transform=\"translate(-12.78125, -12)\"><foreignObject width=\"25.5625\" height=\"24\"><div xmlns=\"http://www.w3.org/1999/xhtml\" class=\"labelBkg\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"edgeLabel\"><p>Yes</p></span></div></foreignObject></g></g><g class=\"edgeLabel\" transform=\"translate(95.046875, 524.28125)\"><g class=\"label\" data-id=\"L_AP_SIG_0\" transform=\"translate(-10.8359375, -12)\"><foreignObject width=\"21.671875\" height=\"24\"><div xmlns=\"http://www.w3.org/1999/xhtml\" class=\"labelBkg\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"edgeLabel\"><p>No</p></span></div></foreignObject></g></g><g class=\"edgeLabel\" transform=\"translate(204.8125, 588.28125)\"><g class=\"label\" data-id=\"L_AG_SIG_0\" transform=\"translate(-36.3125, -12)\"><foreignObject width=\"72.625\" height=\"24\"><div xmlns=\"http://www.w3.org/1999/xhtml\" class=\"labelBkg\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"edgeLabel\"><p>Approved</p></span></div></foreignObject></g></g><g class=\"edgeLabel\" transform=\"translate(370.25, 588.28125)\"><g class=\"label\" data-id=\"L_AG_REJ_0\" transform=\"translate(-32.015625, -12)\"><foreignObject width=\"64.03125\" height=\"24\"><div xmlns=\"http://www.w3.org/1999/xhtml\" class=\"labelBkg\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"edgeLabel\"><p>Rejected</p></span></div></foreignObject></g></g><g class=\"edgeLabel\"><g class=\"label\" data-id=\"L_SIG_BC_0\" transform=\"translate(0, 0)\"><foreignObject width=\"0\" height=\"0\"><div xmlns=\"http://www.w3.org/1999/xhtml\" class=\"labelBkg\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"edgeLabel\"></span></div></foreignObject></g></g><g class=\"edgeLabel\"><g class=\"label\" data-id=\"L_BC_CONF_0\" transform=\"translate(0, 0)\"><foreignObject width=\"0\" height=\"0\"><div xmlns=\"http://www.w3.org/1999/xhtml\" class=\"labelBkg\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"edgeLabel\"></span></div></foreignObject></g></g></g><g class=\"nodes\"><g class=\"node default\" id=\"flowchart-TX-0\" transform=\"translate(244.4765625, 35)\"><rect class=\"basic label-container\" style=\"\" x=\"-105.2734375\" y=\"-27\" width=\"210.546875\" height=\"54\"></rect><g class=\"label\" style=\"\" transform=\"translate(-75.2734375, -12)\"><rect></rect><foreignObject width=\"150.546875\" height=\"24\"><div xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"nodeLabel\"><p>Transaction Created</p></span></div></foreignObject></g></g><g class=\"node default\" id=\"flowchart-PC-1\" transform=\"translate(244.4765625, 139)\"><rect class=\"basic label-container\" style=\"\" x=\"-76.0546875\" y=\"-27\" width=\"152.109375\" height=\"54\"></rect><g class=\"label\" style=\"\" transform=\"translate(-46.0546875, -12)\"><rect></rect><foreignObject width=\"92.109375\" height=\"24\"><div xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"nodeLabel\"><p>Policy Check</p></span></div></foreignObject></g></g><g class=\"node default\" id=\"flowchart-AP-3\" transform=\"translate(244.4765625, 319.640625)\"><polygon points=\"103.640625,0 207.28125,-103.640625 103.640625,-207.28125 0,-103.640625\" class=\"label-container\" transform=\"translate(-103.140625, 103.640625)\"></polygon><g class=\"label\" style=\"\" transform=\"translate(-76.640625, -12)\"><rect></rect><foreignObject width=\"153.28125\" height=\"24\"><div xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"nodeLabel\"><p>Approvals Required?</p></span></div></foreignObject></g></g><g class=\"node default\" id=\"flowchart-AG-5\" transform=\"translate(326.0859375, 524.28125)\"><rect class=\"basic label-container\" style=\"\" x=\"-117.3828125\" y=\"-27\" width=\"234.765625\" height=\"54\"></rect><g class=\"label\" style=\"\" transform=\"translate(-87.3828125, -12)\"><rect></rect><foreignObject width=\"174.765625\" height=\"24\"><div xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"nodeLabel\"><p>Approval Group Review</p></span></div></foreignObject></g></g><g class=\"node default\" id=\"flowchart-SIG-7\" transform=\"translate(123.203125, 652.28125)\"><rect class=\"basic label-container\" style=\"\" x=\"-84.75\" y=\"-27\" width=\"169.5\" height=\"54\"></rect><g class=\"label\" style=\"\" transform=\"translate(-54.75, -12)\"><rect></rect><foreignObject width=\"109.5\" height=\"24\"><div xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"nodeLabel\"><p>MPC Signature</p></span></div></foreignObject></g></g><g class=\"node default\" id=\"flowchart-REJ-11\" transform=\"translate(370.25, 652.28125)\"><rect class=\"basic label-container\" style=\"\" x=\"-107.796875\" y=\"-27\" width=\"215.59375\" height=\"54\"></rect><g class=\"label\" style=\"\" transform=\"translate(-77.796875, -12)\"><rect></rect><foreignObject width=\"155.59375\" height=\"24\"><div xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"nodeLabel\"><p>Transaction Rejected</p></span></div></foreignObject></g></g><g class=\"node default\" id=\"flowchart-BC-13\" transform=\"translate(123.203125, 756.28125)\"><rect class=\"basic label-container\" style=\"\" x=\"-115.203125\" y=\"-27\" width=\"230.40625\" height=\"54\"></rect><g class=\"label\" style=\"\" transform=\"translate(-85.203125, -12)\"><rect></rect><foreignObject width=\"170.40625\" height=\"24\"><div xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"nodeLabel\"><p>Blockchain Submission</p></span></div></foreignObject></g></g><g class=\"node default\" id=\"flowchart-CONF-15\" transform=\"translate(123.203125, 860.28125)\"><rect class=\"basic label-container\" style=\"\" x=\"-69.53125\" y=\"-27\" width=\"139.0625\" height=\"54\"></rect><g class=\"label\" style=\"\" transform=\"translate(-39.53125, -12)\"><rect></rect><foreignObject width=\"79.0625\" height=\"24\"><div xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"nodeLabel\"><p>Confirmed</p></span></div></foreignObject></g></g></g></g></g></svg></div>"},"children":["flowchart TD\n    TX[Transaction Created] --> PC[Policy Check]\n    PC --> AP{Approvals Required?}\n    AP -->|Yes| AG[Approval Group Review]\n    AP -->|No| SIG\n    AG -->|Approved| SIG[MPC Signature]\n    AG -->|Rejected| REJ[Transaction Rejected]\n    SIG --> BC[Blockchain Submission]\n    BC --> CONF[Confirmed]\n"]},{"$$mdtype":"Tag","name":"ol","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Policies"]}," define what transactions are allowed (amounts, destinations, frequency)"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Approvals"]}," ensure human oversight before execution"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["MPC quorums"]}," cryptographically sign approved transactions"]}]}]},"headings":[{"value":"Signing & approvals overview","id":"signing--approvals-overview","depth":1},{"value":"MPC quorums","id":"mpc-quorums","depth":2},{"value":"Approvals","id":"approvals","depth":2},{"value":"How these controls work together","id":"how-these-controls-work-together","depth":2}],"frontmatter":{"title":"Signing & approvals overview","seo":{"title":"Signing & approvals overview"}},"lastModified":"2026-02-27T16:34:32.000Z","pagePropGetterError":{"message":"","name":""}},"slug":"/products/wallet/user-interface/security-controls/security-controls-overview","userData":{"isAuthenticated":false,"teams":["anonymous"]},"isPublic":true}