I, John Doe, declare this my digital assets inheritance plan. Upon my passing, my digital assets shall be distributed according to the following terms.
50% of the total estate will be released immediately to Jane Smith (Custodian) for the ongoing care, education, and well-being of my children: Alice Doe, Bob Doe, and Charlie Doe.
Guidelines for use: Funds are to be used exclusively for the children's housing, education, healthcare, and general support. Annual transparency reports required.
Each child receives equal shares of the remaining 50% with the following milestones:
| Milestone | Alice Doe | Bob Doe | Charlie Doe |
|---|---|---|---|
| Monthly recurring allowance | 1% of share | 1% of share | 1% of share |
| Age 18 lump sum | 10% | 10% | 10% |
| Age 22 lump sum | 15% | 15% | 15% |
| Age 30 final release | Remaining 25% | Remaining 25% | Remaining 25% |
Below is a simplified sample Solidity smart contract that implements multi-sig triggering, custodian lump sum, and child vesting logic. This is for demonstration purposes only.
Contract Name: dTrustInheritance
Purpose: Manage inheritance distribution with vesting and multi-sig safeguards.
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;
contract dTrustInheritance {
address public grantor = 0xGrantorAddress;
address public custodian = 0xJaneSmith;
address[] public children = [0xAliceDoe, 0xBobDoe, 0xCharlieDoe];
mapping(address => uint256) public childShares;
uint256 public totalEstate = 1000 ether; // Demo value
bool public triggered = false;
uint256 public requiredSignatures = 2;
// Multi-sig, DMS, vesting...
function triggerDistribution() external {
// Logic for multi-sig check
triggered = true;
// Transfer 50% to custodian
}
function releaseMonthly(address child) external {
// Monthly logic
}
function releaseMilestone(address child, uint8 age) external {
// Age check and release
}
// Revocation, updates, etc.
}