# 9 - Feature Derivation Paths
  DIP: 0009
  Title: Feature Derivation Paths
  Author(s): Samuel Westrich
  Special-Thanks:  
  Status: Proposed
  Type: Informational
  Created: 2019-03-12
  License: MIT License
## Table of Contents 1. [Abstract](#abstract) 1. [Motivation](#motivation) 1. [Prior Work](#prior-work) 1. [Feature Path Level](#feature-path-level) 1. [Copyright](#copyright) ## Abstract This DIP introduces reliable derivation paths for various coin-specific features. ## Motivation Currently there is much ambiguity between different coin paths, BIP43 tried to solve this with the ‘purpose’ hardened derivation. With BIP44 we saw derivation paths such as `44’/5’/0’` which addresses coin-specific derivation paths. However, these derivation paths had an account directly after the coin type which made it unusable for coin-specific features other than standard transactions. ## Prior work * [BIP-0043 - Purpose Field for Deterministic Wallets](https://github.com/bitcoin/bips/blob/master/bip-0043.mediawiki) * [BIP-0044 - Multi-Account Hierarchy for Deterministic Wallets](https://github.com/bitcoin/bips/blob/master/bip-0044.mediawiki) ## Feature path level We define the following minimum 3 levels in BIP32 path: `m / purpose' / coin_type' / feature' / *` An apostrophe in the path indicates that BIP32 hardened derivation is used. Each level has a special meaning, described in the sections below. ### Purpose Purpose is a constant set to `9'` (or 0x80000009) following the [BIP43 recommendation](https://github.com/bitcoin/bips/blob/master/bip-0043.mediawiki#purpose). It indicates that the subtree of this node is used according to this specification. Hardened derivation is used at this level. ### Coin type Coin type in this DIP is the same as defined by [BIP44](https://github.com/bitcoin/bips/blob/master/bip-0044.mediawiki#coin-type) (a constant, set for each cryptocoin). For example, Dash has a registered coin type of `5'` (or 0x80000005). This DIP is not a central directory for the registered coin types. Please visit the full list of registered coin types maintained by SatoshiLabs for any other coins: [SLIP-0044 : Registered coin types for BIP-0044](https://github.com/satoshilabs/slips/blob/master/slip-0044.md) Hardened derivation is used at this level. ### Feature This level splits the coin’s key space based on coin-specific features. For example, it may be desirable to maintain mixed funds in a path that is isolated from non-mixed funds. Other use cases could include using a specific path for identity or other non-financial keys. Hardened derivation is used at this level. Feature derivation paths may be defined based on future DIPs. A list of registered features can be found [here](dip-0009/assignments.md). ## Copyright Copyright (c) 2019 Dash Core Group, Inc. [Licensed under the MIT License](https://opensource.org/licenses/MIT)