From f51498ce058f9ddc403b83368e092137e9b611e0 Mon Sep 17 00:00:00 2001 From: Pamphile Roy <23188539+tupui@users.noreply.github.com> Date: Fri, 3 Jan 2025 16:32:34 +0100 Subject: [PATCH 01/13] Add Shamir Secret Sharing to SEP-0005 --- ecosystem/sep-0005.md | 59 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 59 insertions(+) diff --git a/ecosystem/sep-0005.md b/ecosystem/sep-0005.md index 0a505e0f7..be5a82010 100644 --- a/ecosystem/sep-0005.md +++ b/ecosystem/sep-0005.md @@ -48,6 +48,15 @@ mnemonic code. We strongly recommend using 24 word mnemonic (256 bits of entropy). +### Sharing Mnemonic Codes + +Shamir Secret Sharing (SSS) method, as described in +[SLIP-0039](https://github.com/satoshilabs/slips/blob/master/slip-0039.md) should be used as a way to split a +mnemonic code into multiple parts. + +BIP-0039 seed should be used to derive the multiparts menomonic. The parts are non-deterministic and any derivation +leads to the same set of keys. + ## Rationale `BIP`s and `SLIP`s are industry standards used by a majority of cryptocurrencies and software/hardware wallets. @@ -96,6 +105,16 @@ m/44'/148'/8' GDJTCF62UUYSAFAVIXHPRBR4AUZV6NYJR75INVDXLLRZLZQ62S44443R SCD5OSHUU m/44'/148'/9' GBTVYYDIYWGUQUTKX6ZMLGSZGMTESJYJKJWAATGZGITA25ZB6T5REF44 SCJGVMJ66WAUHQHNLMWDFGY2E72QKSI3XGSBYV6BANDFUFE7VY4XNXXR ``` +Shamir Secret Sharing shares (non-deterministic): + +``` +hazard morning academic acid acne sunlight year axle squeeze numerous swimming vocal aluminum plains friendly erode emission manager emperor sled steady club prisoner object penalty parcel stilt victim junction custody tadpole hour traffic roster yield losing evening fraction fawn deal symbolic lamp dilemma declare tackle racism hanger increase impulse lilac cards step paper firm software spider quiet fumes remember + +hazard morning academic agency acne numerous clock wireless galaxy symbolic zero alien lips eyebrow secret legal steady deny mama charity thumb museum jury mixed froth resident hesitate critical organize emphasis texture manual rumor fortune staff alive ticket museum theater legs idle receiver extend gray aspect thunder olympic decorate drug senior large darkness tendency arcade adapt romp dismiss solution enlarge + +hazard morning academic always acne forecast traffic ecology tadpole knit obesity extend answer diagnose ivory buyer grumpy moment shame moisture painting crisis agree main exchange woman activity estimate process wolf raisin curly repair overall aspect emphasis aquatic primary downtown blessing owner type wavy nuclear greatest junction length voter typical busy swing identify champion mansion ruin worthy roster endorse genuine +``` + ### Test 2 Mnemonic (15 words): @@ -131,6 +150,16 @@ m/44'/148'/8' GD3KWA24OIM7V3MZKDAVSLN3NBHGKVURNJ72ZCTAJSDTF7RIGFXPW5FQ SBDNHDDIC m/44'/148'/9' GB3C6RRQB3V7EPDXEDJCMTS45LVDLSZQ46PTIGKZUY37DXXEOAKJIWSV SDHRG2J34MGDAYHMOVKVJC6LX2QZMCTIKRO5I4JQ6BJQ36KVL6QUTT72 ``` +Shamir Secret Sharing shares (non-deterministic): + +``` +cargo crush academic acid acid username smart freshman sweater echo cargo testify capture intimate champion trouble fangs decrease focus national ivory glasses ajar burden library therapy nervous soul freshman building capture segment ordinary phantom debut ambition chubby math unfair painting dryer wrist platform public class duckling hanger remove kernel threaten space float syndrome injury smirk testify angel glen health + +cargo crush academic agency acne unfold plunge home blanket flavor fridge always focus lobe entrance elder paid diagnose hesitate realize midst soul retreat olympic research alive secret imply blue column trust process unkind zero random magazine webcam meaning academic burning writing package capture clay hobo clay boundary frost fangs density hormone wildlife dramatic crunch rumor prune slow slice wisdom + +cargo crush academic always acquire phantom realize laser findings alive crowd image method wireless testify drink snake fiscal learn mobile puny holy grill spider verdict erode losing bishop shaft artist vexed eyebrow join judicial making ancient march that nail failure pants failure scroll nuclear romantic gesture desire voter crisis ceiling ancestor numb acrobat segment safari location black express academic' +``` + ### Test 3 Mnemonic (24 words): @@ -166,6 +195,16 @@ m/44'/148'/8' GDHX4LU6YBSXGYTR7SX2P4ZYZSN24VXNJBVAFOB2GEBKNN3I54IYSRM4 SCGMC5AHA m/44'/148'/9' GDXOY6HXPIDT2QD352CH7VWX257PHVFR72COWQ74QE3TEV4PK2KCKZX7 SCPA5OX4EYINOPAUEQCPY6TJMYICUS5M7TVXYKWXR3G5ZRAJXY3C37GF ``` +Shamir Secret Sharing shares (non-deterministic): + +``` +artist survive academic acid acquire username lily rainbow observe guitar diagnose identify literary include lend luck saver cause become testify domain regret numerous edge amount pancake class bracelet belong beam gums mortgage liquid depend believe envy miracle album award liquid duckling enemy cover prisoner welcome violence born research hour pregnant elite guilt work wrap exercise express favorite emperor decent + +artist survive academic agency acid cargo guard platform galaxy briefing crisis climate clinic wildlife domestic darkness weapon security shadow western juice adorn voting pile rocky mixed obtain class blanket width estate scholar source society manual subject spew grief ancestor pupal engage envy says adorn permit lunar modify repair kidney retailer safari hormone lunch finger papa chest cargo cylinder warn + +artist survive academic always acne energy verdict march amazing lunch campus building tackle glen terminal extra receiver twin advocate believe replace perfect therapy ancient ladybug prepare verdict wavy busy prepare orange dining corner verdict mayor priority capture scholar racism program single deny friendly identify emerald blanket prisoner recover estate temple echo graduate boundary primary legal beyond intimate leader charity +``` + ### Test 4 Mnemonic (24 words + BIP 39 passphrase): @@ -203,6 +242,16 @@ m/44'/148'/8' GDS5I7L7LWFUVSYVAOHXJET2565MGGHJ4VHGVJXIKVKNO5D4JWXIZ3XU SAIZA26BU m/44'/148'/9' GBOSMFQYKWFDHJWCMCZSMGUMWCZOM4KFMXXS64INDHVCJ2A2JAABCYRR SDXDYPDNRMGOF25AWYYKPHFAD3M54IT7LCLG7RWTGR3TS32A4HTUXNOS ``` +Shamir Secret Sharing shares (non-deterministic): + +``` +desert omit academic acid acne jacket shrimp upstairs view resident various emission oral length numerous task fraction peasant faint machine literary angel gravity reunion column sack welfare arcade engage flip dryer symbolic debut amazing safari ceiling usual shelter robin scramble work cubic lift deadline square romp corner orbit dilemma fragment transfer teacher trouble repair lips human gray liquid python + +desert omit academic agency academic scroll pancake dough year thunder woman raisin garden privacy herald theater greatest dilemma curly living union voice home alien pupal fiscal realize mortgage adorn havoc unkind petition diet short piece easel decrease junction fact fatal pitch equation remove knife cowboy laden artist install priority example adequate program genuine alive penalty meaning learn cover born + +desert omit academic always acquire heat robin photo theater home exceed ceramic laundry rapids income temple coastal main recover facility fatal ordinary glance evoke boring loud salon wits slap disease costume headset dream maiden relate capital hawk security safari cowboy flame main tofu erode depart require glen armed breathe bedroom crunch rich toxic royal science tricycle intimate tracks screw +``` + ### Test 5 Mnemonic (12 words - entropy bytes: `00000000000000000000000000000000`): @@ -238,6 +287,16 @@ m/44'/148'/8' GABTYCZJMCP55SS6I46SR76IHETZDLG4L37MLZRZKQDGBLS5RMP65TSX SC6N6GYQ2 m/44'/148'/9' GAKFARYSPI33KUJE7HYLT47DCX2PFWJ77W3LZMRBPSGPGYPMSDBE7W7X SALJ5LPBTXCFML2CQ7ORP7WJNJOZSVBVRQAAODMVHMUF4P4XXFZB7MKY ``` +Shamir Secret Sharing shares (non-deterministic): + +``` +single fawn academic acid academic invasion lungs luxury thumb pile paid remove upstairs regret beam roster overall epidemic emission alarm hamster miracle density ladybug auction velvet debris bulb quick kernel often best endless coal toxic saver withdraw rhythm ancestor lobe toxic stay lungs again shaft speak mailman divorce hormone tidy floral mayor hybrid blanket ending that devote elevator airport + +single fawn academic agency acid dish paper ruler impact scene avoid recall bedroom likely grumpy grant adorn level pupal galaxy glad flexible mobile dish biology loan exchange award rescue knife lend debut image presence aviation peaceful museum spark papa edge jewelry leaves squeeze tolerate destroy headset single dramatic category firm join spark firm density sprinkle founder paper finance phrase + +single fawn academic always acne ultimate kernel suitable speak anatomy aviation permit cowboy pickup execute smear revenue style brother radar laundry hormone rumor verify domestic bundle surface upgrade payroll capital anatomy solution corner formal nail liquid costume amazing excuse shame romp airport clay emission craft smell alarm devote vegan lobe pink desktop drift deliver square spend plunge software domestic +``` + ## Reference Implementation - Console HD wallet: https://github.com/stellar/go/tree/master/tools/stellar-hd-wallet From c4102fb6359b126646b108ac33ad48ca301cd462 Mon Sep 17 00:00:00 2001 From: Pamphile Roy <23188539+tupui@users.noreply.github.com> Date: Fri, 3 Jan 2025 17:47:27 +0100 Subject: [PATCH 02/13] Missing date change and threshold for shares --- ecosystem/sep-0005.md | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/ecosystem/sep-0005.md b/ecosystem/sep-0005.md index be5a82010..d93d53c50 100644 --- a/ecosystem/sep-0005.md +++ b/ecosystem/sep-0005.md @@ -6,7 +6,7 @@ Title: Key Derivation Methods for Stellar Keys Author: SDF Status: Final Created: 2017-11-09 -Updated: 2020-06-16 +Updated: 2025-01-03 ``` ## Simple Summary @@ -105,7 +105,7 @@ m/44'/148'/8' GDJTCF62UUYSAFAVIXHPRBR4AUZV6NYJR75INVDXLLRZLZQ62S44443R SCD5OSHUU m/44'/148'/9' GBTVYYDIYWGUQUTKX6ZMLGSZGMTESJYJKJWAATGZGITA25ZB6T5REF44 SCJGVMJ66WAUHQHNLMWDFGY2E72QKSI3XGSBYV6BANDFUFE7VY4XNXXR ``` -Shamir Secret Sharing shares (non-deterministic): +Shamir Secret Sharing shares (non-deterministic), 2 out of 3 shares required: ``` hazard morning academic acid acne sunlight year axle squeeze numerous swimming vocal aluminum plains friendly erode emission manager emperor sled steady club prisoner object penalty parcel stilt victim junction custody tadpole hour traffic roster yield losing evening fraction fawn deal symbolic lamp dilemma declare tackle racism hanger increase impulse lilac cards step paper firm software spider quiet fumes remember @@ -150,7 +150,7 @@ m/44'/148'/8' GD3KWA24OIM7V3MZKDAVSLN3NBHGKVURNJ72ZCTAJSDTF7RIGFXPW5FQ SBDNHDDIC m/44'/148'/9' GB3C6RRQB3V7EPDXEDJCMTS45LVDLSZQ46PTIGKZUY37DXXEOAKJIWSV SDHRG2J34MGDAYHMOVKVJC6LX2QZMCTIKRO5I4JQ6BJQ36KVL6QUTT72 ``` -Shamir Secret Sharing shares (non-deterministic): +Shamir Secret Sharing shares (non-deterministic), 2 out of 3 shares required: ``` cargo crush academic acid acid username smart freshman sweater echo cargo testify capture intimate champion trouble fangs decrease focus national ivory glasses ajar burden library therapy nervous soul freshman building capture segment ordinary phantom debut ambition chubby math unfair painting dryer wrist platform public class duckling hanger remove kernel threaten space float syndrome injury smirk testify angel glen health @@ -195,7 +195,7 @@ m/44'/148'/8' GDHX4LU6YBSXGYTR7SX2P4ZYZSN24VXNJBVAFOB2GEBKNN3I54IYSRM4 SCGMC5AHA m/44'/148'/9' GDXOY6HXPIDT2QD352CH7VWX257PHVFR72COWQ74QE3TEV4PK2KCKZX7 SCPA5OX4EYINOPAUEQCPY6TJMYICUS5M7TVXYKWXR3G5ZRAJXY3C37GF ``` -Shamir Secret Sharing shares (non-deterministic): +Shamir Secret Sharing shares (non-deterministic), 2 out of 3 shares required: ``` artist survive academic acid acquire username lily rainbow observe guitar diagnose identify literary include lend luck saver cause become testify domain regret numerous edge amount pancake class bracelet belong beam gums mortgage liquid depend believe envy miracle album award liquid duckling enemy cover prisoner welcome violence born research hour pregnant elite guilt work wrap exercise express favorite emperor decent @@ -242,7 +242,7 @@ m/44'/148'/8' GDS5I7L7LWFUVSYVAOHXJET2565MGGHJ4VHGVJXIKVKNO5D4JWXIZ3XU SAIZA26BU m/44'/148'/9' GBOSMFQYKWFDHJWCMCZSMGUMWCZOM4KFMXXS64INDHVCJ2A2JAABCYRR SDXDYPDNRMGOF25AWYYKPHFAD3M54IT7LCLG7RWTGR3TS32A4HTUXNOS ``` -Shamir Secret Sharing shares (non-deterministic): +Shamir Secret Sharing shares (non-deterministic), 2 out of 3 shares required: ``` desert omit academic acid acne jacket shrimp upstairs view resident various emission oral length numerous task fraction peasant faint machine literary angel gravity reunion column sack welfare arcade engage flip dryer symbolic debut amazing safari ceiling usual shelter robin scramble work cubic lift deadline square romp corner orbit dilemma fragment transfer teacher trouble repair lips human gray liquid python @@ -287,7 +287,7 @@ m/44'/148'/8' GABTYCZJMCP55SS6I46SR76IHETZDLG4L37MLZRZKQDGBLS5RMP65TSX SC6N6GYQ2 m/44'/148'/9' GAKFARYSPI33KUJE7HYLT47DCX2PFWJ77W3LZMRBPSGPGYPMSDBE7W7X SALJ5LPBTXCFML2CQ7ORP7WJNJOZSVBVRQAAODMVHMUF4P4XXFZB7MKY ``` -Shamir Secret Sharing shares (non-deterministic): +Shamir Secret Sharing shares (non-deterministic), 2 out of 3 shares required: ``` single fawn academic acid academic invasion lungs luxury thumb pile paid remove upstairs regret beam roster overall epidemic emission alarm hamster miracle density ladybug auction velvet debris bulb quick kernel often best endless coal toxic saver withdraw rhythm ancestor lobe toxic stay lungs again shaft speak mailman divorce hormone tidy floral mayor hybrid blanket ending that devote elevator airport From 011b202c9204195a684d988f5791ddc4bf6208b0 Mon Sep 17 00:00:00 2001 From: Pamphile Roy <23188539+tupui@users.noreply.github.com> Date: Tue, 7 Jan 2025 23:52:19 +0100 Subject: [PATCH 03/13] Add groups --- ecosystem/sep-0005.md | 273 +++++++++++++++++++++++++++++++++++------- 1 file changed, 231 insertions(+), 42 deletions(-) diff --git a/ecosystem/sep-0005.md b/ecosystem/sep-0005.md index d93d53c50..dd8e3d42e 100644 --- a/ecosystem/sep-0005.md +++ b/ecosystem/sep-0005.md @@ -52,10 +52,13 @@ We strongly recommend using 24 word mnemonic (256 bits of entropy). Shamir Secret Sharing (SSS) method, as described in [SLIP-0039](https://github.com/satoshilabs/slips/blob/master/slip-0039.md) should be used as a way to split a -mnemonic code into multiple parts. +mnemonic code into multiple parts. SSS is a two-layer scheme: _G_ groups are split into _N_ distinct members. +_g_ ≤ _G_ groups are required to reconstruct the mnemonic. Each group being comprised of a specific threashold of +members 1 ≤ _T_ ≤ _N_. BIP-0039 seed should be used to derive the multiparts menomonic. The parts are non-deterministic and any derivation -leads to the same set of keys. +leads to the same set of keys. As recommended for single mnemonic codes, we recommend using 256 bits of +entropy. Which leads to 33 word mnemonic phrases. ## Rationale @@ -105,14 +108,51 @@ m/44'/148'/8' GDJTCF62UUYSAFAVIXHPRBR4AUZV6NYJR75INVDXLLRZLZQ62S44443R SCD5OSHUU m/44'/148'/9' GBTVYYDIYWGUQUTKX6ZMLGSZGMTESJYJKJWAATGZGITA25ZB6T5REF44 SCJGVMJ66WAUHQHNLMWDFGY2E72QKSI3XGSBYV6BANDFUFE7VY4XNXXR ``` -Shamir Secret Sharing shares (non-deterministic), 2 out of 3 shares required: - -``` -hazard morning academic acid acne sunlight year axle squeeze numerous swimming vocal aluminum plains friendly erode emission manager emperor sled steady club prisoner object penalty parcel stilt victim junction custody tadpole hour traffic roster yield losing evening fraction fawn deal symbolic lamp dilemma declare tackle racism hanger increase impulse lilac cards step paper firm software spider quiet fumes remember - -hazard morning academic agency acne numerous clock wireless galaxy symbolic zero alien lips eyebrow secret legal steady deny mama charity thumb museum jury mixed froth resident hesitate critical organize emphasis texture manual rumor fortune staff alive ticket museum theater legs idle receiver extend gray aspect thunder olympic decorate drug senior large darkness tendency arcade adapt romp dismiss solution enlarge - -hazard morning academic always acne forecast traffic ecology tadpole knit obesity extend answer diagnose ivory buyer grumpy moment shame moisture painting crisis agree main exchange woman activity estimate process wolf raisin curly repair overall aspect emphasis aquatic primary downtown blessing owner type wavy nuclear greatest junction length voter typical busy swing identify champion mansion ruin worthy roster endorse genuine +Shamir Secret Sharing shares (non-deterministic) - group threshold = 2; groups = [(2, 3), (1, 1), (2, 3)]: + +``` +[['raisin kidney acrobat leaf academic lend lizard likely owner much knit ' + 'sharp insect device garbage decorate mule wolf maiden pile surprise blue ' + 'sprinkle staff dive guilt elbow iris magazine ounce extend marathon easy ' + 'adapt robin holy tackle being ruler withdraw usual lecture romantic ' + 'resident spark easy dining agree slush race coding lunar duration viral ' + 'legs peasant soul disaster mobile', + 'raisin kidney acrobat lily acid idle divorce fact guilt sidewalk company ' + 'away hawk marvel teammate dramatic syndrome hesitate priest forget fangs ' + 'vexed soul tolerate laundry both cradle evoke march academic mandate salon ' + 'legal include lyrics dictate math cylinder making increase idle muscle ' + 'ceiling often anxiety trash ecology armed divorce mixed inherit episode ' + 'hearing campus grocery evaluate leader bedroom system', + 'raisin kidney acrobat lungs acquire general founder ting hanger elevator ' + 'hand resident evening else debris triumph album talent round burden story ' + 'stadium hospital vampire raisin minister desire losing likely pharmacy ' + 'endorse soldier strategy taught goat sunlight isolate hawk engage class ' + 'tricycle screw center knife jacket laden stilt born drug mild depict bulge ' + 'morning client expand describe axle company artwork'], + ['raisin kidney beard leader academic scroll result execute blanket alarm ' + 'screw dining ending teaspoon numerous terminal golden lying multiple fake ' + 'always angry disaster society steady primary season hairy spill welcome ' + 'seafood hybrid elbow shaped coastal grill style focus rival triumph living ' + 'hybrid execute evidence friendly angel shadow practice parcel birthday ' + 'smear platform duration cards herd privacy company sweater ticket'], + ['raisin kidney ceramic leaf acquire sprinkle cargo express vexed bishop ' + 'swimming system bundle juice thorn gather pacific lunch execute coastal ' + 'destroy width buyer together deliver teacher lips garlic petition program ' + 'husband peasant phantom lungs subject gravity silent gums burning chest ' + 'mailman radar ocean merit grasp galaxy kind domain building emphasis ' + 'species starting reaction lilac square midst agree disease garbage', + 'raisin kidney ceramic lily acne editor chemical indicate excuse speak ' + 'mortgage explain sugar tenant friar editor repeat stilt scandal blind wrap ' + 'remember regular album steady axle preach extend research jewelry screw ' + 'pile mental decrease losing timely hanger tendency improve ceramic herd ' + 'voice aircraft prospect thank true remind ocean science remind blue brother ' + 'crisis mental change debut triumph clogs reaction', + 'raisin kidney ceramic lungs academic wolf scene rich orbit verdict undergo ' + 'dryer lend clinic desktop perfect spray endless evening scared rich blind ' + 'tidy general wrap acne silent loan numerous alarm pregnant predator ' + 'valuable window improve payroll mother boring stick tidy frost founder ' + 'alive firefly idea founder vocal duke river retailer float eraser nail wine ' + 'magazine mother organize short dryer']] ``` ### Test 2 @@ -150,14 +190,52 @@ m/44'/148'/8' GD3KWA24OIM7V3MZKDAVSLN3NBHGKVURNJ72ZCTAJSDTF7RIGFXPW5FQ SBDNHDDIC m/44'/148'/9' GB3C6RRQB3V7EPDXEDJCMTS45LVDLSZQ46PTIGKZUY37DXXEOAKJIWSV SDHRG2J34MGDAYHMOVKVJC6LX2QZMCTIKRO5I4JQ6BJQ36KVL6QUTT72 ``` -Shamir Secret Sharing shares (non-deterministic), 2 out of 3 shares required: - -``` -cargo crush academic acid acid username smart freshman sweater echo cargo testify capture intimate champion trouble fangs decrease focus national ivory glasses ajar burden library therapy nervous soul freshman building capture segment ordinary phantom debut ambition chubby math unfair painting dryer wrist platform public class duckling hanger remove kernel threaten space float syndrome injury smirk testify angel glen health - -cargo crush academic agency acne unfold plunge home blanket flavor fridge always focus lobe entrance elder paid diagnose hesitate realize midst soul retreat olympic research alive secret imply blue column trust process unkind zero random magazine webcam meaning academic burning writing package capture clay hobo clay boundary frost fangs density hormone wildlife dramatic crunch rumor prune slow slice wisdom - -cargo crush academic always acquire phantom realize laser findings alive crowd image method wireless testify drink snake fiscal learn mobile puny holy grill spider verdict erode losing bishop shaft artist vexed eyebrow join judicial making ancient march that nail failure pants failure scroll nuclear romantic gesture desire voter crisis ceiling ancestor numb acrobat segment safari location black express academic' +Shamir Secret Sharing shares (non-deterministic) - group threshold = 2; groups = [(2, 3), (1, 1), (2, 3)]: + +``` +[['security buyer acrobat leaf academic predator amount miracle fiction ' + 'negative safari superior costume speak elite envy threaten garden being ' + 'source clinic pupal false taxi marvel emphasis endorse rebuild mineral ' + 'vitamins story lunar pink evening forecast premium random galaxy laser ' + 'dynamic include marathon general alive reunion phantom furl judicial ' + 'crucial single temple cylinder database airline upgrade counter dough ' + 'snapshot advocate', + 'security buyer acrobat lily academic kidney mansion skunk fraction diploma ' + 'disaster salary raspy omit profile liquid coding phantom satoshi various ' + 'mineral starting elevator slow orbit anatomy angry pecan involve maximum ' + 'idea space toxic material paid aircraft mansion observe strike alcohol ' + 'being timely subject morning headset chubby impact paper unfair radar ' + 'rebound package critical gross prune being parcel emission render', + 'security buyer acrobat lungs acid acquire retailer database escape satoshi ' + 'nail corner aviation episode dominant beam jewelry lunar provide spray ' + 'fiscal blanket idea western prevent survive smirk fake enemy hearing ' + 'negative unfair diagnose program general recover sharp starting demand ' + 'angry punish friar raspy tenant angry pregnant phrase ambition retreat ' + 'drink exclude anxiety coding screw ruin burning exercise losing pipeline'], + ['security buyer beard leader acne ladybug increase emission length burden ' + 'boundary scroll exhaust tolerate vitamins budget mama knife realize paper ' + 'general painting avoid phrase grant believe admit email exhaust jump ' + 'adequate resident elbow moisture style welfare install guard frozen ' + 'superior plunge maximum adapt change fantasy twice pile pickup pulse modern ' + 'fiscal usher punish fawn geology judicial devote legend yelp'], + ['security buyer ceramic leaf acid pumps cultural exclude salary level dance ' + 'western anatomy orange category ugly member toxic teacher clay silent ' + 'darkness much valid heat warmth laden ladybug organize privacy umbrella ' + 'manual employer decrease hospital remove tackle herd season parking axle ' + 'numb science rhythm elevator treat luxury transfer intend check realize ' + 'canyon slow expect work rescue iris oven epidemic', + 'security buyer ceramic lily academic endorse acquire promise glad cluster ' + 'hazard smith false scout diet curly equation soul pecan aluminum pipeline ' + 'maiden romp script beaver tension wealthy behavior laser cowboy square ' + 'cover adapt company center exchange genius divorce merit genuine pink ' + 'typical jump exchange pink artwork forbid view course alcohol metric crush ' + 'episode category rhythm stilt ting fitness national', + 'security buyer ceramic lungs acne forget standard award numb phrase permit ' + 'stadium robin elder artwork hospital briefing taught hand domestic artwork ' + 'gross mayor strategy muscle shame scandal teammate election senior document ' + 'ecology slap browser fatigue sprinkle require plains strike charity justice ' + 'capture plot tackle medal evil crazy species short hazard width dish ' + 'sunlight move silver dismiss execute elder branch']] ``` ### Test 3 @@ -195,14 +273,51 @@ m/44'/148'/8' GDHX4LU6YBSXGYTR7SX2P4ZYZSN24VXNJBVAFOB2GEBKNN3I54IYSRM4 SCGMC5AHA m/44'/148'/9' GDXOY6HXPIDT2QD352CH7VWX257PHVFR72COWQ74QE3TEV4PK2KCKZX7 SCPA5OX4EYINOPAUEQCPY6TJMYICUS5M7TVXYKWXR3G5ZRAJXY3C37GF ``` -Shamir Secret Sharing shares (non-deterministic), 2 out of 3 shares required: - -``` -artist survive academic acid acquire username lily rainbow observe guitar diagnose identify literary include lend luck saver cause become testify domain regret numerous edge amount pancake class bracelet belong beam gums mortgage liquid depend believe envy miracle album award liquid duckling enemy cover prisoner welcome violence born research hour pregnant elite guilt work wrap exercise express favorite emperor decent - -artist survive academic agency acid cargo guard platform galaxy briefing crisis climate clinic wildlife domestic darkness weapon security shadow western juice adorn voting pile rocky mixed obtain class blanket width estate scholar source society manual subject spew grief ancestor pupal engage envy says adorn permit lunar modify repair kidney retailer safari hormone lunch finger papa chest cargo cylinder warn - -artist survive academic always acne energy verdict march amazing lunch campus building tackle glen terminal extra receiver twin advocate believe replace perfect therapy ancient ladybug prepare verdict wavy busy prepare orange dining corner verdict mayor priority capture scholar racism program single deny friendly identify emerald blanket prisoner recover estate temple echo graduate boundary primary legal beyond intimate leader charity +Shamir Secret Sharing shares (non-deterministic) - group threshold = 2; groups = [(2, 3), (1, 1), (2, 3)]: + +``` +[['ancient vexed acrobat leaf academic lyrics grill desert aspect gray clay ' + 'bishop artist ruler gums bumpy oasis laundry romantic treat universe lizard ' + 'arcade froth civil educate webcam lecture transfer royal smart laundry sack ' + 'promise academic herd pickup bulge focus alpha wisdom modify problem yoga ' + 'desire decrease beard inform august pleasure pancake scatter have ceiling ' + 'photo subject desert plains inherit', + 'ancient vexed acrobat lily acne ceramic photo costume mixture crystal ' + 'hesitate package withdraw activity rapids desktop impulse ambition ugly ' + 'quarter shelter verdict friendly ambition knife species oral together sharp ' + 'package veteran coal gesture necklace hawk welcome pumps educate revenue ' + 'plunge raspy losing freshman dream change fridge exchange busy taught ' + 'inform expand loud coding library sprinkle suitable chest task favorite', + 'ancient vexed acrobat lungs acid raisin tofu aquatic curly object pile ' + 'salon vexed cultural scene salary failure wealthy plan friendly pajamas ' + 'herald careful voting paid artwork license always playoff blue bulge argue ' + 'orange pink industry legal mandate pipeline cause bulb guitar remember ' + 'eraser isolate carbon training recover civil sheriff laser syndrome lift ' + 'upgrade goat vocal stick disease object strike'], + ['ancient vexed beard leader acid patent location damage alto music mixture ' + 'tracks pancake video gasoline infant paces public dryer flea warn often ' + 'party true timber crucial trouble bulge meaning lungs shaft entrance race ' + 'findings quantity peanut prune wrap either arcade standard piece frequent ' + 'auction fancy photo crazy aluminum often enforce laser square involve arena ' + 'deadline episode remember soul painting'], + ['ancient vexed ceramic leaf acquire friendly therapy square modify cleanup ' + 'pajamas evening fishing round deal nail pants width segment shrimp maximum ' + 'emperor music either march moisture training gums charity ticket spider ' + 'often retreat blanket imply plan strike taught shelter taste timely ' + 'hesitate swimming either hobo venture dynamic paid guilt starting climate ' + 'sniff counter language umbrella dish finger should believe', + 'ancient vexed ceramic lily acquire aluminum parking language bulge surprise ' + 'glen float frost tofu single cage vintage garbage stilt warmth diagnose ' + 'pharmacy depend fraction watch endorse avoid infant dance unfold deadline ' + 'punish expect suitable jerky marvel jerky early lyrics mule trend funding ' + 'execute submit guard yelp elder sack mental nuclear soul clock corner that ' + 'diagnose elite recover priest being', + 'ancient vexed ceramic lungs acquire voting hunting rumor oasis spider club ' + 'hesitate echo luxury hanger educate angel swimming twin craft timber loud ' + 'humidity insect graduate dismiss company extra easel voting lift equation ' + 'educate temple science group lend diet warn evoke walnut geology epidemic ' + 'involve jewelry loud spend theory revenue check join laser course cradle ' + 'eraser enlarge sympathy spine body']] ``` ### Test 4 @@ -242,14 +357,51 @@ m/44'/148'/8' GDS5I7L7LWFUVSYVAOHXJET2565MGGHJ4VHGVJXIKVKNO5D4JWXIZ3XU SAIZA26BU m/44'/148'/9' GBOSMFQYKWFDHJWCMCZSMGUMWCZOM4KFMXXS64INDHVCJ2A2JAABCYRR SDXDYPDNRMGOF25AWYYKPHFAD3M54IT7LCLG7RWTGR3TS32A4HTUXNOS ``` -Shamir Secret Sharing shares (non-deterministic), 2 out of 3 shares required: - -``` -desert omit academic acid acne jacket shrimp upstairs view resident various emission oral length numerous task fraction peasant faint machine literary angel gravity reunion column sack welfare arcade engage flip dryer symbolic debut amazing safari ceiling usual shelter robin scramble work cubic lift deadline square romp corner orbit dilemma fragment transfer teacher trouble repair lips human gray liquid python - -desert omit academic agency academic scroll pancake dough year thunder woman raisin garden privacy herald theater greatest dilemma curly living union voice home alien pupal fiscal realize mortgage adorn havoc unkind petition diet short piece easel decrease junction fact fatal pitch equation remove knife cowboy laden artist install priority example adequate program genuine alive penalty meaning learn cover born - -desert omit academic always acquire heat robin photo theater home exceed ceramic laundry rapids income temple coastal main recover facility fatal ordinary glance evoke boring loud salon wits slap disease costume headset dream maiden relate capital hawk security safari cowboy flame main tofu erode depart require glen armed breathe bedroom crunch rich toxic royal science tricycle intimate tracks screw +Shamir Secret Sharing shares (non-deterministic) - group threshold = 2; groups = [(2, 3), (1, 1), (2, 3)]: + +``` +[['sled kidney acrobat leaf acne remove deploy strategy inherit jewelry evil ' + 'viral uncover friendly likely loud tofu enjoy club leaves race presence ' + 'fangs flash coastal adapt remind clock flame born training diminish lawsuit ' + 'always dwarf credit scandal season slush merit diagnose lips package ' + 'strategy work market replace axis forward garbage damage item pulse racism ' + 'speak argue yoga august clock', + 'sled kidney acrobat lily acid olympic club counter orange square intimate ' + 'slim wireless moment acrobat platform teacher raisin papa news unwrap ' + 'undergo mason warn impact fatal ajar alien cluster spend velvet criminal ' + 'exceed brave velvet domain modify spider formal lunch daisy fumes keyboard ' + 'tolerate fatigue laundry rebuild album wits talent theater gasoline glad ' + 'paper capacity craft sprinkle depict believe', + 'sled kidney acrobat lungs academic oven breathe knit retreat expand ' + 'necklace agree ruin peanut lobe omit trouble physics network quarter admit ' + 'elbow writing member marvel paper gasoline threaten random wealthy kitchen ' + 'sister bundle else rebuild simple harvest lunch firefly pants alarm destroy ' + 'transfer terminal render adequate acid withdraw august density perfect ' + 'maiden apart vanish garbage salary machine lunch romp'], + ['sled kidney beard leader academic main plastic yoga fraction wisdom screw ' + 'excuse idle space wolf yoga mixture ecology juice aircraft ocean orange ' + 'epidemic fangs carve voter recall welcome elevator midst filter golden ' + 'taught upstairs easel fishing fiction coding tolerate exercise pregnant ' + 'society aluminum saver yoga together adequate debris grill trial yield ' + 'roster capital presence primary false priest round echo'], + ['sled kidney ceramic leaf acne inmate purple lyrics envelope fishing ' + 'emission require climate grumpy percent bracelet arena friendly view ' + 'detailed evaluate lilac junk curious ticket script category cargo taxi ' + 'makeup slavery hanger champion glance sunlight slow frequent oven unusual ' + 'pink damage single regular froth ecology fitness exclude bundle custody ' + 'focus glance sniff increase venture eyebrow index blimp tricycle salon', + 'sled kidney ceramic lily acne promise skunk network necklace empty aluminum ' + 'harvest pistol plunge pile merchant duckling legal promise should move ' + 'system golden enforce sprinkle extend engage lizard oven source scout black ' + 'lips snake terminal traveler prize chubby calcium decision clay wildlife ' + 'piece unknown papa radar crystal craft explain skin improve game simple ' + 'veteran acquire society research learn prayer', + 'sled kidney ceramic lungs acquire science unusual havoc verify breathe kind ' + 'stilt coastal woman patrol brave guest machine failure exclude ultimate ' + 'float threaten laundry lift union galaxy credit buyer domain slavery ' + 'blanket husky home ambition alarm peanut luxury amuse nylon domain should ' + 'coding rhyme news warmth earth disease traveler increase elbow single ' + 'branch wealthy echo husband deny script moment']] ``` ### Test 5 @@ -287,14 +439,51 @@ m/44'/148'/8' GABTYCZJMCP55SS6I46SR76IHETZDLG4L37MLZRZKQDGBLS5RMP65TSX SC6N6GYQ2 m/44'/148'/9' GAKFARYSPI33KUJE7HYLT47DCX2PFWJ77W3LZMRBPSGPGYPMSDBE7W7X SALJ5LPBTXCFML2CQ7ORP7WJNJOZSVBVRQAAODMVHMUF4P4XXFZB7MKY ``` -Shamir Secret Sharing shares (non-deterministic), 2 out of 3 shares required: - -``` -single fawn academic acid academic invasion lungs luxury thumb pile paid remove upstairs regret beam roster overall epidemic emission alarm hamster miracle density ladybug auction velvet debris bulb quick kernel often best endless coal toxic saver withdraw rhythm ancestor lobe toxic stay lungs again shaft speak mailman divorce hormone tidy floral mayor hybrid blanket ending that devote elevator airport - -single fawn academic agency acid dish paper ruler impact scene avoid recall bedroom likely grumpy grant adorn level pupal galaxy glad flexible mobile dish biology loan exchange award rescue knife lend debut image presence aviation peaceful museum spark papa edge jewelry leaves squeeze tolerate destroy headset single dramatic category firm join spark firm density sprinkle founder paper finance phrase - -single fawn academic always acne ultimate kernel suitable speak anatomy aviation permit cowboy pickup execute smear revenue style brother radar laundry hormone rumor verify domestic bundle surface upgrade payroll capital anatomy solution corner formal nail liquid costume amazing excuse shame romp airport clay emission craft smell alarm devote vegan lobe pink desktop drift deliver square spend plunge software domestic +Shamir Secret Sharing shares (non-deterministic) - group threshold = 2; groups = [(2, 3), (1, 1), (2, 3)]: + +``` +[['object survive acrobat leaf acne ladybug view bundle smear museum radar ' + 'alcohol oasis improve frozen decent rainbow fridge sister mule entrance ' + 'believe angel goat rumor news hand render describe umbrella away lend ' + 'browser obesity teacher station woman prevent alpha champion yelp emission ' + 'chew island aspect pupal survive criminal voter station strike receiver ' + 'mild thunder soldier junction observe location emission', + 'object survive acrobat lily acquire bolt yoga random hazard advocate ' + 'champion romp yelp hazard employer eraser nervous greatest mule pregnant ' + 'golden genuine testify undergo wrote stilt gross smirk percent lily video ' + 'adequate episode award valuable criminal boring grumpy literary spew ' + 'cultural alto news withdraw arena pile jewelry fused round machine presence ' + 'rescue loud marathon voting epidemic animal worthy elite', + 'object survive acrobat lungs academic process vampire romp omit response ' + 'pacific mandate facility educate ivory elevator unkind easy hamster grasp ' + 'beam upgrade jury robin rocky broken grocery station avoid fatigue strike ' + 'lend remember surprise salt hazard decent extend quantity material easy ' + 'seafood victim pants angel viral multiple luck numb hospital likely problem ' + 'reward dining organize forward satoshi plot invasion'], + ['object survive beard leader acne oasis prevent capture various tadpole ' + 'ceiling slavery hamster emission fishing junior course raspy payroll sharp ' + 'grasp ting library arena forecast angel leader findings intend depict ' + 'burning plot loan inside drink engage simple tackle enjoy dive tactics ' + 'birthday romantic blessing paces cowboy spend capture fortune worthy stay ' + 'isolate mayor beam network eraser anatomy observe wealthy'], + ['object survive ceramic leaf acne typical body kind fancy large voice pink ' + 'pitch total superior retreat heat liquid painting trash violence regular ' + 'prospect evaluate harvest fangs story acquire program bumpy season cubic ' + 'duration argue again execute research papa counter fiscal climate dynamic ' + 'peasant thorn lift decision findings garlic uncover browser dismiss rapids ' + 'example primary alarm plastic rescue review multiple', + 'object survive ceramic lily acne carve flexible general package antenna ' + 'unknown therapy hush sister quarter auction exercise deliver process pickup ' + 'library debut deal privacy tendency extra rumor fragment hearing either ' + 'ting headset visitor float involve member traffic chest facility luxury ' + 'ugly ladle public humidity acrobat obtain lunch detect soul headset chew ' + 'beaver dress cubic paces video racism literary dominant', + 'object survive ceramic lungs acquire average crucial luck speak mule ' + 'sprinkle upgrade afraid stilt predator fused course umbrella carpet rebuild ' + 'bucket scene provide security grumpy dryer episode jewelry dramatic plunge ' + 'detect peasant random shrimp texture skin capacity slow judicial cricket ' + 'profile rival detect very orange artist expand anxiety modern warmth ' + 'profile lair pregnant profile clogs spark kind typical species']] ``` ## Reference Implementation From 04c4466e7322a941ad6d10ecaa80c72f353ee1f9 Mon Sep 17 00:00:00 2001 From: Pamphile Roy <23188539+tupui@users.noreply.github.com> Date: Thu, 9 Jan 2025 22:03:16 +0100 Subject: [PATCH 04/13] Use entropy instead of BIP-39 for SSS --- ecosystem/sep-0005.md | 354 +++++++++++++++++------------------------- 1 file changed, 139 insertions(+), 215 deletions(-) diff --git a/ecosystem/sep-0005.md b/ecosystem/sep-0005.md index dd8e3d42e..89e5c4330 100644 --- a/ecosystem/sep-0005.md +++ b/ecosystem/sep-0005.md @@ -54,11 +54,11 @@ Shamir Secret Sharing (SSS) method, as described in [SLIP-0039](https://github.com/satoshilabs/slips/blob/master/slip-0039.md) should be used as a way to split a mnemonic code into multiple parts. SSS is a two-layer scheme: _G_ groups are split into _N_ distinct members. _g_ ≤ _G_ groups are required to reconstruct the mnemonic. Each group being comprised of a specific threashold of -members 1 ≤ _T_ ≤ _N_. +members 1 ≤ _t_ ≤ _N_. -BIP-0039 seed should be used to derive the multiparts menomonic. The parts are non-deterministic and any derivation -leads to the same set of keys. As recommended for single mnemonic codes, we recommend using 256 bits of -entropy. Which leads to 33 word mnemonic phrases. +The entropy (which can be derived from a mnemonic code) should be used to derive the multiparts menomonic. +The parts are non-deterministic and any derivation leads to the same set of keys. As recommended for single +mnemonic codes, we recommend using 256 bits of entropy. Which leads to 33 word mnemonic phrases. ## Rationale @@ -81,6 +81,13 @@ Mnemonic (12 words): illness spike retreat truth genius clock brain pass fit cave bargain toe ``` +Entropy: + +``` +713a3ae074e60e56c6bd0557c4984af1 +``` + + BIP39 Seed: ``` @@ -111,48 +118,20 @@ m/44'/148'/9' GBTVYYDIYWGUQUTKX6ZMLGSZGMTESJYJKJWAATGZGITA25ZB6T5REF44 SCJGVMJ66 Shamir Secret Sharing shares (non-deterministic) - group threshold = 2; groups = [(2, 3), (1, 1), (2, 3)]: ``` -[['raisin kidney acrobat leaf academic lend lizard likely owner much knit ' - 'sharp insect device garbage decorate mule wolf maiden pile surprise blue ' - 'sprinkle staff dive guilt elbow iris magazine ounce extend marathon easy ' - 'adapt robin holy tackle being ruler withdraw usual lecture romantic ' - 'resident spark easy dining agree slush race coding lunar duration viral ' - 'legs peasant soul disaster mobile', - 'raisin kidney acrobat lily acid idle divorce fact guilt sidewalk company ' - 'away hawk marvel teammate dramatic syndrome hesitate priest forget fangs ' - 'vexed soul tolerate laundry both cradle evoke march academic mandate salon ' - 'legal include lyrics dictate math cylinder making increase idle muscle ' - 'ceiling often anxiety trash ecology armed divorce mixed inherit episode ' - 'hearing campus grocery evaluate leader bedroom system', - 'raisin kidney acrobat lungs acquire general founder ting hanger elevator ' - 'hand resident evening else debris triumph album talent round burden story ' - 'stadium hospital vampire raisin minister desire losing likely pharmacy ' - 'endorse soldier strategy taught goat sunlight isolate hawk engage class ' - 'tricycle screw center knife jacket laden stilt born drug mild depict bulge ' - 'morning client expand describe axle company artwork'], - ['raisin kidney beard leader academic scroll result execute blanket alarm ' - 'screw dining ending teaspoon numerous terminal golden lying multiple fake ' - 'always angry disaster society steady primary season hairy spill welcome ' - 'seafood hybrid elbow shaped coastal grill style focus rival triumph living ' - 'hybrid execute evidence friendly angel shadow practice parcel birthday ' - 'smear platform duration cards herd privacy company sweater ticket'], - ['raisin kidney ceramic leaf acquire sprinkle cargo express vexed bishop ' - 'swimming system bundle juice thorn gather pacific lunch execute coastal ' - 'destroy width buyer together deliver teacher lips garlic petition program ' - 'husband peasant phantom lungs subject gravity silent gums burning chest ' - 'mailman radar ocean merit grasp galaxy kind domain building emphasis ' - 'species starting reaction lilac square midst agree disease garbage', - 'raisin kidney ceramic lily acne editor chemical indicate excuse speak ' - 'mortgage explain sugar tenant friar editor repeat stilt scandal blind wrap ' - 'remember regular album steady axle preach extend research jewelry screw ' - 'pile mental decrease losing timely hanger tendency improve ceramic herd ' - 'voice aircraft prospect thank true remind ocean science remind blue brother ' - 'crisis mental change debut triumph clogs reaction', - 'raisin kidney ceramic lungs academic wolf scene rich orbit verdict undergo ' - 'dryer lend clinic desktop perfect spray endless evening scared rich blind ' - 'tidy general wrap acne silent loan numerous alarm pregnant predator ' - 'valuable window improve payroll mother boring stick tidy frost founder ' - 'alive firefly idea founder vocal duke river retailer float eraser nail wine ' - 'magazine mother organize short dryer']] +[['parking evoke acrobat leaf camera artwork trial unhappy welcome speak vocal ' + 'formal spend phrase raisin genre beaver custody change kind', + 'parking evoke acrobat lily bike clothes injury category boundary shaped ' + 'firefly order stadium scroll check herald estate desert cultural acrobat', + 'parking evoke acrobat lungs acne fortune retailer glasses pile toxic ' + 'rebound spray software gross package style grin pipeline work finger'], + ['parking evoke beard leader cradle alpha junction vintage adequate railroad ' + 'column ceiling view plunge learn intimate location invasion repair filter'], + ['parking evoke ceramic leaf credit perfect violence cleanup trip email ' + 'forward easy playoff slap parcel else center primary both smell', + 'parking evoke ceramic lily apart response nuclear frozen jump arcade fatal ' + 'jewelry segment ladybug pajamas junior distance subject away recall', + 'parking evoke ceramic lungs category music crunch ruin ancient spill coal ' + 'chubby volume prospect party corner soul likely afraid sharp']] ``` ### Test 2 @@ -163,6 +142,12 @@ Mnemonic (15 words): resource asthma orphan phone ice canvas fire useful arch jewel impose vague theory cushion top ``` +Entropy: + +``` +b781c27351c7024355cf7f0b0efdc7f85e046cf9 +``` + BIP39 Seed: ``` @@ -193,49 +178,27 @@ m/44'/148'/9' GB3C6RRQB3V7EPDXEDJCMTS45LVDLSZQ46PTIGKZUY37DXXEOAKJIWSV SDHRG2J34 Shamir Secret Sharing shares (non-deterministic) - group threshold = 2; groups = [(2, 3), (1, 1), (2, 3)]: ``` -[['security buyer acrobat leaf academic predator amount miracle fiction ' - 'negative safari superior costume speak elite envy threaten garden being ' - 'source clinic pupal false taxi marvel emphasis endorse rebuild mineral ' - 'vitamins story lunar pink evening forecast premium random galaxy laser ' - 'dynamic include marathon general alive reunion phantom furl judicial ' - 'crucial single temple cylinder database airline upgrade counter dough ' - 'snapshot advocate', - 'security buyer acrobat lily academic kidney mansion skunk fraction diploma ' - 'disaster salary raspy omit profile liquid coding phantom satoshi various ' - 'mineral starting elevator slow orbit anatomy angry pecan involve maximum ' - 'idea space toxic material paid aircraft mansion observe strike alcohol ' - 'being timely subject morning headset chubby impact paper unfair radar ' - 'rebound package critical gross prune being parcel emission render', - 'security buyer acrobat lungs acid acquire retailer database escape satoshi ' - 'nail corner aviation episode dominant beam jewelry lunar provide spray ' - 'fiscal blanket idea western prevent survive smirk fake enemy hearing ' - 'negative unfair diagnose program general recover sharp starting demand ' - 'angry punish friar raspy tenant angry pregnant phrase ambition retreat ' - 'drink exclude anxiety coding screw ruin burning exercise losing pipeline'], - ['security buyer beard leader acne ladybug increase emission length burden ' - 'boundary scroll exhaust tolerate vitamins budget mama knife realize paper ' - 'general painting avoid phrase grant believe admit email exhaust jump ' - 'adequate resident elbow moisture style welfare install guard frozen ' - 'superior plunge maximum adapt change fantasy twice pile pickup pulse modern ' - 'fiscal usher punish fawn geology judicial devote legend yelp'], - ['security buyer ceramic leaf acid pumps cultural exclude salary level dance ' - 'western anatomy orange category ugly member toxic teacher clay silent ' - 'darkness much valid heat warmth laden ladybug organize privacy umbrella ' - 'manual employer decrease hospital remove tackle herd season parking axle ' - 'numb science rhythm elevator treat luxury transfer intend check realize ' - 'canyon slow expect work rescue iris oven epidemic', - 'security buyer ceramic lily academic endorse acquire promise glad cluster ' - 'hazard smith false scout diet curly equation soul pecan aluminum pipeline ' - 'maiden romp script beaver tension wealthy behavior laser cowboy square ' - 'cover adapt company center exchange genius divorce merit genuine pink ' - 'typical jump exchange pink artwork forbid view course alcohol metric crush ' - 'episode category rhythm stilt ting fitness national', - 'security buyer ceramic lungs acne forget standard award numb phrase permit ' - 'stadium robin elder artwork hospital briefing taught hand domestic artwork ' - 'gross mayor strategy muscle shame scandal teammate election senior document ' - 'ecology slap browser fatigue sprinkle require plains strike charity justice ' - 'capture plot tackle medal evil crazy species short hazard width dish ' - 'sunlight move silver dismiss execute elder branch']] +[['party buyer acrobat leaf broken database scatter prevent voting glance ' + 'metric inmate clock harvest smug aide grownup observe tofu auction idle ' + 'scandal enemy', + 'party buyer acrobat lily check muscle vintage glance society greatest ' + 'retreat valid repair swimming tofu science dismiss amuse laser mansion ' + 'airport wealthy failure', + 'party buyer acrobat lungs human friar picture density resident again hairy ' + 'response academic afraid artist lunar superior research inform science item ' + 'arena python'], + ['party buyer beard leader organize eclipse airline exercise secret smell ' + 'headset champion minister satisfy furl losing arcade undergo cleanup lend ' + 'multiple paper flexible'], + ['party buyer ceramic leaf universe violence stay amount painting cultural ' + 'wolf elbow minister fiscal reaction lizard envelope unfair moment counter ' + 'disease rhyme leaves', + 'party buyer ceramic lily reward emphasis photo aluminum training magazine ' + 'veteran western spelling yield overall curly theater romp simple racism ' + 'paper animal punish', + 'party buyer ceramic lungs envelope moment destroy silent decent golden wits ' + 'ranked beam hairy volume fatal airport raspy document sniff educate worthy ' + 'phantom']] ``` ### Test 3 @@ -246,6 +209,12 @@ Mnemonic (24 words): bench hurt jump file august wise shallow faculty impulse spring exact slush thunder author capable act festival slice deposit sauce coconut afford frown better ``` +Entropy: + +``` +150df9e3ab10f3f8f1428d723a6539662e181ec8781355396cec5fc2ce08d760 +``` + BIP39 Seed: ``` @@ -276,48 +245,33 @@ m/44'/148'/9' GDXOY6HXPIDT2QD352CH7VWX257PHVFR72COWQ74QE3TEV4PK2KCKZX7 SCPA5OX4E Shamir Secret Sharing shares (non-deterministic) - group threshold = 2; groups = [(2, 3), (1, 1), (2, 3)]: ``` -[['ancient vexed acrobat leaf academic lyrics grill desert aspect gray clay ' - 'bishop artist ruler gums bumpy oasis laundry romantic treat universe lizard ' - 'arcade froth civil educate webcam lecture transfer royal smart laundry sack ' - 'promise academic herd pickup bulge focus alpha wisdom modify problem yoga ' - 'desire decrease beard inform august pleasure pancake scatter have ceiling ' - 'photo subject desert plains inherit', - 'ancient vexed acrobat lily acne ceramic photo costume mixture crystal ' - 'hesitate package withdraw activity rapids desktop impulse ambition ugly ' - 'quarter shelter verdict friendly ambition knife species oral together sharp ' - 'package veteran coal gesture necklace hawk welcome pumps educate revenue ' - 'plunge raspy losing freshman dream change fridge exchange busy taught ' - 'inform expand loud coding library sprinkle suitable chest task favorite', - 'ancient vexed acrobat lungs acid raisin tofu aquatic curly object pile ' - 'salon vexed cultural scene salary failure wealthy plan friendly pajamas ' - 'herald careful voting paid artwork license always playoff blue bulge argue ' - 'orange pink industry legal mandate pipeline cause bulb guitar remember ' - 'eraser isolate carbon training recover civil sheriff laser syndrome lift ' - 'upgrade goat vocal stick disease object strike'], - ['ancient vexed beard leader acid patent location damage alto music mixture ' - 'tracks pancake video gasoline infant paces public dryer flea warn often ' - 'party true timber crucial trouble bulge meaning lungs shaft entrance race ' - 'findings quantity peanut prune wrap either arcade standard piece frequent ' - 'auction fancy photo crazy aluminum often enforce laser square involve arena ' - 'deadline episode remember soul painting'], - ['ancient vexed ceramic leaf acquire friendly therapy square modify cleanup ' - 'pajamas evening fishing round deal nail pants width segment shrimp maximum ' - 'emperor music either march moisture training gums charity ticket spider ' - 'often retreat blanket imply plan strike taught shelter taste timely ' - 'hesitate swimming either hobo venture dynamic paid guilt starting climate ' - 'sniff counter language umbrella dish finger should believe', - 'ancient vexed ceramic lily acquire aluminum parking language bulge surprise ' - 'glen float frost tofu single cage vintage garbage stilt warmth diagnose ' - 'pharmacy depend fraction watch endorse avoid infant dance unfold deadline ' - 'punish expect suitable jerky marvel jerky early lyrics mule trend funding ' - 'execute submit guard yelp elder sack mental nuclear soul clock corner that ' - 'diagnose elite recover priest being', - 'ancient vexed ceramic lungs acquire voting hunting rumor oasis spider club ' - 'hesitate echo luxury hanger educate angel swimming twin craft timber loud ' - 'humidity insect graduate dismiss company extra easel voting lift equation ' - 'educate temple science group lend diet warn evoke walnut geology epidemic ' - 'involve jewelry loud spend theory revenue check join laser course cradle ' - 'eraser enlarge sympathy spine body']] +[['tactics thorn acrobat leaf aviation trend regular elbow desert leaf warn ' + 'chemical huge river pupal grumpy retreat grownup herd counter species ' + 'license buyer orbit wits bundle husband robin exotic chest debut deny dish', + 'tactics thorn acrobat lily average calcium yoga wisdom diploma usher furl ' + 'impulse dominant puny lunar profile slow loyalty practice uncover friendly ' + 'platform justice starting sled yelp satoshi heat rebuild royal junction ' + 'damage wavy', + 'tactics thorn acrobat lungs avoid empty diet document license column ' + 'process license season patrol stick nylon focus tenant wavy smell task ' + 'eyebrow space garlic dance mountain artwork capacity busy gather ambition ' + 'employer fused'], + ['tactics thorn beard leader aircraft energy desktop paid dive kitchen ' + 'marathon geology tactics seafood visual duration dough mountain oral nail ' + 'fact dominant decent warmth skin orange deploy artwork necklace material ' + 'jewelry guitar gums'], + ['tactics thorn ceramic leaf antenna spine nervous patent invasion wine ' + 'maximum recall shame observe daughter mobile ending numb railroad rocky ' + 'vampire editor drug idle seafood geology black wrist view bike course alarm ' + 'nail', + 'tactics thorn ceramic lily angry jewelry step coastal necklace force ' + 'meaning machine cleanup satisfy secret rescue starting kind humidity ' + 'forward party jerky garbage empty scroll usual march index gasoline playoff ' + 'talent knit calcium', + 'tactics thorn ceramic lungs amuse silver briefing pistol reject duke ' + 'maximum party provide true therapy promise gray blessing broken inside firm ' + 'invasion wavy broken screw else dynamic timber system cluster distance dive ' + 'genuine']] ``` ### Test 4 @@ -330,6 +284,12 @@ cable spray genius state float twenty onion head street palace net private metho p4ssphr4se ``` +Entropy: + +``` +1ffa5d83ea6593d666b350d6f3e652d598c3063ab51ed4c2e9d6a1d07c8545df +``` + BIP39 Seed: ``` @@ -360,48 +320,34 @@ m/44'/148'/9' GBOSMFQYKWFDHJWCMCZSMGUMWCZOM4KFMXXS64INDHVCJ2A2JAABCYRR SDXDYPDNR Shamir Secret Sharing shares (non-deterministic) - group threshold = 2; groups = [(2, 3), (1, 1), (2, 3)]: ``` -[['sled kidney acrobat leaf acne remove deploy strategy inherit jewelry evil ' - 'viral uncover friendly likely loud tofu enjoy club leaves race presence ' - 'fangs flash coastal adapt remind clock flame born training diminish lawsuit ' - 'always dwarf credit scandal season slush merit diagnose lips package ' - 'strategy work market replace axis forward garbage damage item pulse racism ' - 'speak argue yoga august clock', - 'sled kidney acrobat lily acid olympic club counter orange square intimate ' - 'slim wireless moment acrobat platform teacher raisin papa news unwrap ' - 'undergo mason warn impact fatal ajar alien cluster spend velvet criminal ' - 'exceed brave velvet domain modify spider formal lunch daisy fumes keyboard ' - 'tolerate fatigue laundry rebuild album wits talent theater gasoline glad ' - 'paper capacity craft sprinkle depict believe', - 'sled kidney acrobat lungs academic oven breathe knit retreat expand ' - 'necklace agree ruin peanut lobe omit trouble physics network quarter admit ' - 'elbow writing member marvel paper gasoline threaten random wealthy kitchen ' - 'sister bundle else rebuild simple harvest lunch firefly pants alarm destroy ' - 'transfer terminal render adequate acid withdraw august density perfect ' - 'maiden apart vanish garbage salary machine lunch romp'], - ['sled kidney beard leader academic main plastic yoga fraction wisdom screw ' - 'excuse idle space wolf yoga mixture ecology juice aircraft ocean orange ' - 'epidemic fangs carve voter recall welcome elevator midst filter golden ' - 'taught upstairs easel fishing fiction coding tolerate exercise pregnant ' - 'society aluminum saver yoga together adequate debris grill trial yield ' - 'roster capital presence primary false priest round echo'], - ['sled kidney ceramic leaf acne inmate purple lyrics envelope fishing ' - 'emission require climate grumpy percent bracelet arena friendly view ' - 'detailed evaluate lilac junk curious ticket script category cargo taxi ' - 'makeup slavery hanger champion glance sunlight slow frequent oven unusual ' - 'pink damage single regular froth ecology fitness exclude bundle custody ' - 'focus glance sniff increase venture eyebrow index blimp tricycle salon', - 'sled kidney ceramic lily acne promise skunk network necklace empty aluminum ' - 'harvest pistol plunge pile merchant duckling legal promise should move ' - 'system golden enforce sprinkle extend engage lizard oven source scout black ' - 'lips snake terminal traveler prize chubby calcium decision clay wildlife ' - 'piece unknown papa radar crystal craft explain skin improve game simple ' - 'veteran acquire society research learn prayer', - 'sled kidney ceramic lungs acquire science unusual havoc verify breathe kind ' - 'stilt coastal woman patrol brave guest machine failure exclude ultimate ' - 'float threaten laundry lift union galaxy credit buyer domain slavery ' - 'blanket husky home ambition alarm peanut luxury amuse nylon domain should ' - 'coding rhyme news warmth earth disease traveler increase elbow single ' - 'branch wealthy echo husband deny script moment']] +[['elevator fawn acrobat leaf august plot harvest welcome domestic junction ' + 'force marvel trash prune profile preach robin observe phantom moment energy ' + 'exercise argue category python swing miracle quiet ticket drove intimate ' + 'laundry intimate', + 'elevator fawn acrobat lily agree fake subject mayor darkness adorn market ' + 'resident picture elephant exhaust umbrella timber military rhythm walnut ' + 'prevent deny afraid advance envelope ounce scene clay beard valuable goat ' + 'freshman leaf', + 'elevator fawn acrobat lungs answer sugar become believe beaver skunk ' + 'undergo lying sprinkle soldier intimate exotic predator execute moisture ' + 'cause level decorate become august tracks observe duckling vexed review ' + 'percent execute lair dough'], + ['elevator fawn beard leader acrobat maiden general racism elite hush rich ' + 'paces have cleanup bracelet aunt violence making bracelet herald careful ' + 'fatal literary ivory hour home auction cowboy increase chew crucial hamster ' + 'miracle'], + ['elevator fawn ceramic leaf acid plan carve ultimate building paper brother ' + 'vampire edge lying energy grief location index multiple depart hour costume ' + 'radar observe crowd strategy duke perfect beard mouse craft marathon ' + 'explain', + 'elevator fawn ceramic lily angry always buyer forward elephant slice ' + 'charity loyalty miracle tadpole strike kitchen taught pecan havoc domestic ' + 'holy railroad hawk invasion flip slice vanish level glad level maiden elbow ' + 'umbrella', + 'elevator fawn ceramic lungs agree holiday browser twice anatomy wrote ' + 'hamster inform flash coding gasoline dragon evidence survive insect exact ' + 'guitar beaver best element sled usual reward unhappy ending replace ladybug ' + 'jump profile']] ``` ### Test 5 @@ -412,6 +358,12 @@ Mnemonic (12 words - entropy bytes: `00000000000000000000000000000000`): abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon about ``` +Entropy: + +``` +00000000000000000000000000000000 +``` + BIP39 Seed: ``` @@ -442,48 +394,20 @@ m/44'/148'/9' GAKFARYSPI33KUJE7HYLT47DCX2PFWJ77W3LZMRBPSGPGYPMSDBE7W7X SALJ5LPBT Shamir Secret Sharing shares (non-deterministic) - group threshold = 2; groups = [(2, 3), (1, 1), (2, 3)]: ``` -[['object survive acrobat leaf acne ladybug view bundle smear museum radar ' - 'alcohol oasis improve frozen decent rainbow fridge sister mule entrance ' - 'believe angel goat rumor news hand render describe umbrella away lend ' - 'browser obesity teacher station woman prevent alpha champion yelp emission ' - 'chew island aspect pupal survive criminal voter station strike receiver ' - 'mild thunder soldier junction observe location emission', - 'object survive acrobat lily acquire bolt yoga random hazard advocate ' - 'champion romp yelp hazard employer eraser nervous greatest mule pregnant ' - 'golden genuine testify undergo wrote stilt gross smirk percent lily video ' - 'adequate episode award valuable criminal boring grumpy literary spew ' - 'cultural alto news withdraw arena pile jewelry fused round machine presence ' - 'rescue loud marathon voting epidemic animal worthy elite', - 'object survive acrobat lungs academic process vampire romp omit response ' - 'pacific mandate facility educate ivory elevator unkind easy hamster grasp ' - 'beam upgrade jury robin rocky broken grocery station avoid fatigue strike ' - 'lend remember surprise salt hazard decent extend quantity material easy ' - 'seafood victim pants angel viral multiple luck numb hospital likely problem ' - 'reward dining organize forward satoshi plot invasion'], - ['object survive beard leader acne oasis prevent capture various tadpole ' - 'ceiling slavery hamster emission fishing junior course raspy payroll sharp ' - 'grasp ting library arena forecast angel leader findings intend depict ' - 'burning plot loan inside drink engage simple tackle enjoy dive tactics ' - 'birthday romantic blessing paces cowboy spend capture fortune worthy stay ' - 'isolate mayor beam network eraser anatomy observe wealthy'], - ['object survive ceramic leaf acne typical body kind fancy large voice pink ' - 'pitch total superior retreat heat liquid painting trash violence regular ' - 'prospect evaluate harvest fangs story acquire program bumpy season cubic ' - 'duration argue again execute research papa counter fiscal climate dynamic ' - 'peasant thorn lift decision findings garlic uncover browser dismiss rapids ' - 'example primary alarm plastic rescue review multiple', - 'object survive ceramic lily acne carve flexible general package antenna ' - 'unknown therapy hush sister quarter auction exercise deliver process pickup ' - 'library debut deal privacy tendency extra rumor fragment hearing either ' - 'ting headset visitor float involve member traffic chest facility luxury ' - 'ugly ladle public humidity acrobat obtain lunch detect soul headset chew ' - 'beaver dress cubic paces video racism literary dominant', - 'object survive ceramic lungs acquire average crucial luck speak mule ' - 'sprinkle upgrade afraid stilt predator fused course umbrella carpet rebuild ' - 'bucket scene provide security grumpy dryer episode jewelry dramatic plunge ' - 'detect peasant random shrimp texture skin capacity slow judicial cricket ' - 'profile rival detect very orange artist expand anxiety modern warmth ' - 'profile lair pregnant profile clogs spark kind typical species']] +[['talent fawn acrobat leaf beyond scene findings total survive ounce smell ' + 'finance bishop buyer render flip diagnose dish leaves impact', + 'talent fawn acrobat lily beyond percent wits surface kidney envelope order ' + 'emperor pancake receiver plan firefly hush resident screw club', + 'talent fawn acrobat lungs beyond agree already memory bulb cover adult ' + 'scout document failure video therapy jump obtain agency cards'], + ['talent fawn beard leader custody magazine fact laden award smirk velvet ' + 'exhaust miracle hamster sharp black mouse vintage syndrome finger'], + ['talent fawn ceramic leaf depict emission froth database smell smear exotic ' + 'island level estimate display favorite award river paces parcel', + 'talent fawn ceramic lily dining tolerate priest tendency humidity early ' + 'spend antenna episode spray mental grasp literary acrobat flavor grief', + 'talent fawn ceramic lungs downtown broken snake peanut aluminum desktop ' + 'large damage spine herd dramatic lizard bulge alpha election fatigue']] ``` ## Reference Implementation From 114afcebebd53358cbf9a78f98ca3ea4e70ad8ad Mon Sep 17 00:00:00 2001 From: Pamphile Roy <23188539+tupui@users.noreply.github.com> Date: Thu, 9 Jan 2025 22:05:01 +0100 Subject: [PATCH 05/13] Update ecosystem/sep-0005.md --- ecosystem/sep-0005.md | 1 - 1 file changed, 1 deletion(-) diff --git a/ecosystem/sep-0005.md b/ecosystem/sep-0005.md index 89e5c4330..20c447911 100644 --- a/ecosystem/sep-0005.md +++ b/ecosystem/sep-0005.md @@ -87,7 +87,6 @@ Entropy: 713a3ae074e60e56c6bd0557c4984af1 ``` - BIP39 Seed: ``` From ded10712fb29cab21b0cb6ae8e635bf67d1f7e6e Mon Sep 17 00:00:00 2001 From: Pamphile Roy <23188539+tupui@users.noreply.github.com> Date: Fri, 10 Jan 2025 18:36:56 +0100 Subject: [PATCH 06/13] Start with entropy and specify BIP39 for key --- ecosystem/sep-0005.md | 54 +++++++++++++++++++++---------------------- 1 file changed, 27 insertions(+), 27 deletions(-) diff --git a/ecosystem/sep-0005.md b/ecosystem/sep-0005.md index 20c447911..09d833974 100644 --- a/ecosystem/sep-0005.md +++ b/ecosystem/sep-0005.md @@ -75,16 +75,16 @@ use a single, primary account. ### Test 1 -Mnemonic (12 words): +Entropy: ``` -illness spike retreat truth genius clock brain pass fit cave bargain toe +713a3ae074e60e56c6bd0557c4984af1 ``` -Entropy: +Mnemonic (12 words): ``` -713a3ae074e60e56c6bd0557c4984af1 +illness spike retreat truth genius clock brain pass fit cave bargain toe ``` BIP39 Seed: @@ -93,7 +93,7 @@ BIP39 Seed: e4a5a632e70943ae7f07659df1332160937fad82587216a4c64315a0fb39497ee4a01f76ddab4cba68147977f3a147b6ad584c41808e8238a07f6cc4b582f186 ``` -`m/44'/148'` key: +`m/44'/148'` key (BIP39): ``` e0eec84fe165cd427cb7bc9b6cfdef0555aa1cb6f9043ff1fe986c3c8ddd22e3 @@ -135,16 +135,16 @@ Shamir Secret Sharing shares (non-deterministic) - group threshold = 2; groups = ### Test 2 -Mnemonic (15 words): +Entropy: ``` -resource asthma orphan phone ice canvas fire useful arch jewel impose vague theory cushion top +b781c27351c7024355cf7f0b0efdc7f85e046cf9 ``` -Entropy: +Mnemonic (15 words): ``` -b781c27351c7024355cf7f0b0efdc7f85e046cf9 +resource asthma orphan phone ice canvas fire useful arch jewel impose vague theory cushion top ``` BIP39 Seed: @@ -153,7 +153,7 @@ BIP39 Seed: 7b36d4e725b48695c3ffd2b4b317d5552cb157c1a26c46d36a05317f0d3053eb8b3b6496ba39ebd9312d10e3f9937b47a6790541e7c577da027a564862e92811 ``` -`m/44'/148'` key: +`m/44'/148'` key (BIP39): ``` 2e5d4e6b54a4b96c5e887c9ec92f619a3c134d8b1059dcef15c1a9b228ae3751 @@ -202,16 +202,16 @@ Shamir Secret Sharing shares (non-deterministic) - group threshold = 2; groups = ### Test 3 -Mnemonic (24 words): +Entropy: ``` -bench hurt jump file august wise shallow faculty impulse spring exact slush thunder author capable act festival slice deposit sauce coconut afford frown better +150df9e3ab10f3f8f1428d723a6539662e181ec8781355396cec5fc2ce08d760 ``` -Entropy: +Mnemonic (24 words): ``` -150df9e3ab10f3f8f1428d723a6539662e181ec8781355396cec5fc2ce08d760 +bench hurt jump file august wise shallow faculty impulse spring exact slush thunder author capable act festival slice deposit sauce coconut afford frown better ``` BIP39 Seed: @@ -220,7 +220,7 @@ BIP39 Seed: 937ae91f6ab6f12461d9936dfc1375ea5312d097f3f1eb6fed6a82fbe38c85824da8704389831482db0433e5f6c6c9700ff1946aa75ad8cc2654d6e40f567866 ``` -`m/44'/148'` key: +`m/44'/148'` key (BIP39): ``` df474e0dc2711089b89af6b089aceeb77e73120e9f895bd330a36fa952835ea8 @@ -275,18 +275,18 @@ Shamir Secret Sharing shares (non-deterministic) - group threshold = 2; groups = ### Test 4 -Mnemonic (24 words + BIP 39 passphrase): +Entropy: ``` -cable spray genius state float twenty onion head street palace net private method loan turn phrase state blanket interest dry amazing dress blast tube - -p4ssphr4se +1ffa5d83ea6593d666b350d6f3e652d598c3063ab51ed4c2e9d6a1d07c8545df ``` -Entropy: +Mnemonic (24 words + BIP 39 passphrase): ``` -1ffa5d83ea6593d666b350d6f3e652d598c3063ab51ed4c2e9d6a1d07c8545df +cable spray genius state float twenty onion head street palace net private method loan turn phrase state blanket interest dry amazing dress blast tube + +p4ssphr4se ``` BIP39 Seed: @@ -295,7 +295,7 @@ BIP39 Seed: d425d39998fb42ce4cf31425f0eaec2f0a68f47655ea030d6d26e70200d8ff8bd4326b4bdf562ea8640a1501ae93ccd0fd7992116da5dfa24900e570a742a489 ``` -`m/44'/148'` key: +`m/44'/148'` key (BIP39): ``` c83c61dc97d37832f0f20e258c3ba4040a258800fd14abaff124a4dee114b17e @@ -351,16 +351,16 @@ Shamir Secret Sharing shares (non-deterministic) - group threshold = 2; groups = ### Test 5 -Mnemonic (12 words - entropy bytes: `00000000000000000000000000000000`): +Entropy: ``` -abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon about +00000000000000000000000000000000 ``` -Entropy: +Mnemonic (12 words): ``` -00000000000000000000000000000000 +abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon about ``` BIP39 Seed: @@ -369,7 +369,7 @@ BIP39 Seed: 5eb00bbddcf069084889a8ab9155568165f5c453ccb85e70811aaed6f6da5fc19a5ac40b389cd370d086206dec8aa6c43daea6690f20ad3d8d48b2d2ce9e38e4 ``` -`m/44'/148'` key: +`m/44'/148'` key (BIP39): ``` 03df7921b4f789040e361d07d5e4eddad277c376350d7b5d585400a0ef18f2f5 From 69a4e3b4b5fc855dfef341ffaa45cd0deadbcdaf Mon Sep 17 00:00:00 2001 From: Pamphile Roy <23188539+tupui@users.noreply.github.com> Date: Fri, 10 Jan 2025 21:12:27 +0100 Subject: [PATCH 07/13] Differentiate BIP and SLIP 39 --- ecosystem/sep-0005.md | 337 ++++++++++++++++++++++++++---------------- 1 file changed, 207 insertions(+), 130 deletions(-) diff --git a/ecosystem/sep-0005.md b/ecosystem/sep-0005.md index 09d833974..391b994da 100644 --- a/ecosystem/sep-0005.md +++ b/ecosystem/sep-0005.md @@ -87,19 +87,19 @@ Mnemonic (12 words): illness spike retreat truth genius clock brain pass fit cave bargain toe ``` -BIP39 Seed: +BIP39 - Seed: ``` e4a5a632e70943ae7f07659df1332160937fad82587216a4c64315a0fb39497ee4a01f76ddab4cba68147977f3a147b6ad584c41808e8238a07f6cc4b582f186 ``` -`m/44'/148'` key (BIP39): +BIP39 - `m/44'/148'` key: ``` e0eec84fe165cd427cb7bc9b6cfdef0555aa1cb6f9043ff1fe986c3c8ddd22e3 ``` -Stellar keys: +BIP39 - Stellar keys: ``` m/44'/148'/0' GDRXE2BQUC3AZNPVFSCEZ76NJ3WWL25FYFK6RGZGIEKWE4SOOHSUJUJ6 SBGWSG6BTNCKCOB3DIFBGCVMUPQFYPA2G4O34RMTB343OYPXU5DJDVMN @@ -114,25 +114,41 @@ m/44'/148'/8' GDJTCF62UUYSAFAVIXHPRBR4AUZV6NYJR75INVDXLLRZLZQ62S44443R SCD5OSHUU m/44'/148'/9' GBTVYYDIYWGUQUTKX6ZMLGSZGMTESJYJKJWAATGZGITA25ZB6T5REF44 SCJGVMJ66WAUHQHNLMWDFGY2E72QKSI3XGSBYV6BANDFUFE7VY4XNXXR ``` -Shamir Secret Sharing shares (non-deterministic) - group threshold = 2; groups = [(2, 3), (1, 1), (2, 3)]: +SLIP39 - Shamir Secret Sharing shares (non-deterministic) - group threshold = 2; groups = [(2, 3), (1, 1), (2, 3)]: ``` -[['parking evoke acrobat leaf camera artwork trial unhappy welcome speak vocal ' - 'formal spend phrase raisin genre beaver custody change kind', - 'parking evoke acrobat lily bike clothes injury category boundary shaped ' - 'firefly order stadium scroll check herald estate desert cultural acrobat', - 'parking evoke acrobat lungs acne fortune retailer glasses pile toxic ' - 'rebound spray software gross package style grin pipeline work finger'], - ['parking evoke beard leader cradle alpha junction vintage adequate railroad ' - 'column ceiling view plunge learn intimate location invasion repair filter'], - ['parking evoke ceramic leaf credit perfect violence cleanup trip email ' - 'forward easy playoff slap parcel else center primary both smell', - 'parking evoke ceramic lily apart response nuclear frozen jump arcade fatal ' - 'jewelry segment ladybug pajamas junior distance subject away recall', - 'parking evoke ceramic lungs category music crunch ruin ancient spill coal ' - 'chubby volume prospect party corner soul likely afraid sharp']] +[['premium penalty acrobat leaf aquatic ivory simple mineral axle party slim ' + 'acrobat priest tackle engage ladybug snake literary debris enjoy', + 'premium penalty acrobat lily chest boundary order romp necklace echo detect ' + 'adorn blimp ecology guilt emission camera tofu force aircraft', + 'premium penalty acrobat lungs born phrase glad lend actress ladle drove ' + 'realize nylon wavy buyer pleasure mandate bumpy ugly sweater'], + ['premium penalty beard leader angry afraid airline easy alive slim music ' + 'painting submit boundary soul fact task valuable speak fancy'], + ['premium penalty ceramic leaf duke holy usual spider program midst penalty ' + 'upgrade very item radar improve romantic leaves pink multiple', + 'premium penalty ceramic lily admit mule decorate adorn club alcohol flash ' + 'acrobat standard stay deploy envy level august stilt ruler', + 'premium penalty ceramic lungs acrobat leader buyer item response penalty ' + 'crucial party wisdom civil rhythm piece elevator erode adequate acne']] ``` +SLIP39 - Stellar keys: + +``` +m/44'/148'/0' GC5RE2NMJU472NN66ENXZS4YK5I6CPYPE4JZ2BIMPWSD7IBRSKKH6QUB SC2E6KW4K4ZXT52KNAWKVPHYHAXQDEBRJW7FOUJUPOMGTKRSZXZH5VTO +m/44'/148'/1' GDMUEO4GKPBZMRS7R3766TC3AXZ7CTTVWJNFJI5MNACBWYF33EQM26FQ SCCGSSYNFUDLKMTBRH7BMGM7AMLBFX6MS4TBOABZT6T73SG7N5LYKMYY +m/44'/148'/2' GBM3QWZCEW4I3NMAQJBTSISDYP3L7HZXCHQ5J2KT4PRE5RBYNNCNLHIT SDJ7TN2DDCRCIX7DYUSBUW6CJIGTTCFXBMNO2IW6RYPLMCFF5X2YX62V +m/44'/148'/3' GDFLHV6UY2A2GFI4BQ4KEPZ5GGEILGF4U3ILQVL3ROXR46XW2E4EMSXJ SBCPEGJUE3AK66A4H7VLIU2W422MWQHA6QOSOELUYNZQMP7CTIQRFXT3 +m/44'/148'/4' GDSN6TWIAV256DBMVTKAC7WJ6TYP4IID44KIUNJHR6SRJ6O5O5QHBQFB SDCAR5B3UVAFUGBUW6VYXK47RYYCGPJ4QFC2ERCU4H5DP56IO22IZIU6 +m/44'/148'/5' GCYICO73QRKOJRAZ4GOAXMH7JDEX5OPBEYQNAQTW75YR6UUSZ7VET3FO SC326YSVFQCINTT46BTI6JSUNRNB55ZLSUD6K4Z67ZU7HNK226RAWZ37 +m/44'/148'/6' GBLDONQAXRAVYIDI7IMK6UGRU6ZA27DZDQEUBOCLTHQMFVAWFLZNDIV5 SAVQD5P52RQEGQ7XJPX5HONKJE34NRJMQQNXVGVDWPMIBMMP7U36Q4QH +m/44'/148'/7' GCSKWTJ4FIAAWA6FLNQJXXLTW6IUQZFMDTZGSJV55ETPL4LJLMASVBXF SADEZZTVW534ZQAH2F3IO574LD6QZCV3FDH6X755A74YQACY34ISEHSY +m/44'/148'/8' GCUM4SVCNRU3J3BWQAICS5O6EUEIGIUUZ476TPXOTTFPVAVKRBHLNSW4 SDJINTL2KKQ3GR4XFKZVODS23EY43HULAQHUAMY44BEQFWMBSN6B57RQ +m/44'/148'/9' GDI42ZQY3DIO2PQJKHAMYCQE526K6QMXQKKLZDBMA3TMJULNVYULGK47 SDMP7WPRX73IUOX4OANSWYO3QS5ZR45J27MLRTLUHX42W4FQQQNKKQIH +``` + + ### Test 2 Entropy: @@ -147,19 +163,19 @@ Mnemonic (15 words): resource asthma orphan phone ice canvas fire useful arch jewel impose vague theory cushion top ``` -BIP39 Seed: +BIP39 - Seed: ``` 7b36d4e725b48695c3ffd2b4b317d5552cb157c1a26c46d36a05317f0d3053eb8b3b6496ba39ebd9312d10e3f9937b47a6790541e7c577da027a564862e92811 ``` -`m/44'/148'` key (BIP39): +BIP39 - `m/44'/148'` key: ``` 2e5d4e6b54a4b96c5e887c9ec92f619a3c134d8b1059dcef15c1a9b228ae3751 ``` -Stellar keys: +BIP39 - Stellar keys: ``` m/44'/148'/0' GAVXVW5MCK7Q66RIBWZZKZEDQTRXWCZUP4DIIFXCCENGW2P6W4OA34RH SAKS7I2PNDBE5SJSUSU2XLJ7K5XJ3V3K4UDFAHMSBQYPOKE247VHAGDB @@ -174,30 +190,45 @@ m/44'/148'/8' GD3KWA24OIM7V3MZKDAVSLN3NBHGKVURNJ72ZCTAJSDTF7RIGFXPW5FQ SBDNHDDIC m/44'/148'/9' GB3C6RRQB3V7EPDXEDJCMTS45LVDLSZQ46PTIGKZUY37DXXEOAKJIWSV SDHRG2J34MGDAYHMOVKVJC6LX2QZMCTIKRO5I4JQ6BJQ36KVL6QUTT72 ``` -Shamir Secret Sharing shares (non-deterministic) - group threshold = 2; groups = [(2, 3), (1, 1), (2, 3)]: - -``` -[['party buyer acrobat leaf broken database scatter prevent voting glance ' - 'metric inmate clock harvest smug aide grownup observe tofu auction idle ' - 'scandal enemy', - 'party buyer acrobat lily check muscle vintage glance society greatest ' - 'retreat valid repair swimming tofu science dismiss amuse laser mansion ' - 'airport wealthy failure', - 'party buyer acrobat lungs human friar picture density resident again hairy ' - 'response academic afraid artist lunar superior research inform science item ' - 'arena python'], - ['party buyer beard leader organize eclipse airline exercise secret smell ' - 'headset champion minister satisfy furl losing arcade undergo cleanup lend ' - 'multiple paper flexible'], - ['party buyer ceramic leaf universe violence stay amount painting cultural ' - 'wolf elbow minister fiscal reaction lizard envelope unfair moment counter ' - 'disease rhyme leaves', - 'party buyer ceramic lily reward emphasis photo aluminum training magazine ' - 'veteran western spelling yield overall curly theater romp simple racism ' - 'paper animal punish', - 'party buyer ceramic lungs envelope moment destroy silent decent golden wits ' - 'ranked beam hairy volume fatal airport raspy document sniff educate worthy ' - 'phantom']] +SLIP39 - Shamir Secret Sharing shares (non-deterministic) - group threshold = 2; groups = [(2, 3), (1, 1), (2, 3)]: + +``` +[['scroll spew acrobat leaf length mayor cleanup visitor yoga response public ' + 'equation beard fortune simple coal prisoner easel guest race recall adapt ' + 'critical', + 'scroll spew acrobat lily regular herald ambition knit educate relate salt ' + 'dough morning dynamic else network large review usher legend package ' + 'penalty picture', + 'scroll spew acrobat lungs vitamins civil sweater ceiling nervous rapids ' + 'fiction trouble acne modern scout surprise both early walnut forbid wolf ' + 'garbage worthy'], + ['scroll spew beard leader grief move dive custody admit always vexed emerald ' + 'medical debris vanish dish glance payroll shadow building grocery fridge ' + 'visitor'], + ['scroll spew ceramic leaf lift expect reaction diminish dining cricket ' + 'enlarge daughter testify machine yield epidemic arena scene science ' + 'tendency flexible lyrics genre', + 'scroll spew ceramic lily petition twice cowboy symbolic river criminal ' + 'rescue best cards cultural curly debut spray that afraid aspect jewelry ' + 'pupal keyboard', + 'scroll spew ceramic lungs smith alcohol network golden dress endless prize ' + 'beam activity rumor formal wolf phantom mental walnut ivory material award ' + 'cubic']] +``` + +SLIP39 - Stellar keys: + +``` +m/44'/148'/0' GDSAWDY5G4WNVPSJKBZVGEWCYIJLJLEBRBPT7MC5SBNCIKVLXO3CZRPT SDJTZ2M7PEFR63MQNXSVYHP3XM34ECD2AT4BEHTCTXIUZSKGF7UDNYTR +m/44'/148'/1' GBLNTCU4JPLRTTY4EQN2QOHGZRMWYEZ23SNKQ5OD6RHG3GQJFMHKMTLM SCERLFXDSVXI63D2DN4I3JRRY2EP5R6FXBEEDNN3K3276UPZRTCKOROI +m/44'/148'/2' GDJ3ZAJPBQ6OKYPLBIFZUGTELLDEIML62XGW772WEDQOQ2IZCPCE6XD2 SCTJSPQKGU7MFAQIBL7G7BV53SJWCAGRYF3C2SOI6WN3XCN3TOYN5TMY +m/44'/148'/3' GAWWJ576FFDG2IMWDD7BSR3V6QNMLQ5BHMDVAWU5IFVGDGEEJ4IL3MSP SCU3ITBZGPEOTCUULFIY5BQOR7IIW5V7WAGHWXWMRR62PDXLDP3FOPMV +m/44'/148'/4' GD7OQMNXI2VDXUHKV4N3PU3YQ4LAXI6G37CGWLSGLYA5KDP2XZKHF4TT SBBVQUN7B3OQZ4UKSN6SZ4PSE2YFCKED3NTAYFLWX7PNOCKQG64W6F3W +m/44'/148'/5' GCREIV2Y5YAV5A6KVYQU7G2OJFB3NBYCZ7WXXUKNFXWGNE5VJWOPJLK6 SBDACZKVNXFX7DZY5ZHUXFJDS5L66XOT7DDCDP6WWEOVYEGZC5NGZ6OW +m/44'/148'/6' GBUHXUFGTZNM75MWWLBLQDV2OFAVJTF3BMX4BHMEMRYXWKDMTWBAFXNN SBQMLUR66CJ5XPBVYFTDDJFBQCUPU2YNL54AFZGPZMS3MLHKQHWIW3VX +m/44'/148'/7' GBNRZ557ACSQNIH7G5J2WCIEOEDDEBUQM3RKX544ZTJGJKLAWBYYKAH3 SBYDBB7QETKHNP4P6D42TUZR7Q7ZBBBNRDNAZQ5GA726EDYBEDLAG54M +m/44'/148'/8' GD6JMVP6LHKYJ5YMFEM4W64S3WZ44BLFZTSPUPGR5D7HJSFEYYTJC7IM SB5CETFULTKFS2VUD2QCQTFBPFEPMCD2T6HSFD3BKVRCXZ5RZBBGYA2W +m/44'/148'/9' GBSVOB7K4XDHQ4KVM2RNTIHRNIJNQJXZY7LJ7HPQNB6APGFNB7H43CBM SDNK47MOK6I6MIBO7BWNTGH27D3VFZFLCDC2VLLOZLLQQNMXLX66OZKW ``` ### Test 3 @@ -214,19 +245,19 @@ Mnemonic (24 words): bench hurt jump file august wise shallow faculty impulse spring exact slush thunder author capable act festival slice deposit sauce coconut afford frown better ``` -BIP39 Seed: +BIP39 - Seed: ``` 937ae91f6ab6f12461d9936dfc1375ea5312d097f3f1eb6fed6a82fbe38c85824da8704389831482db0433e5f6c6c9700ff1946aa75ad8cc2654d6e40f567866 ``` -`m/44'/148'` key (BIP39): +BIP39 - `m/44'/148'` key: ``` df474e0dc2711089b89af6b089aceeb77e73120e9f895bd330a36fa952835ea8 ``` -Stellar keys: +BIP39 - Stellar keys: ``` m/44'/148'/0' GC3MMSXBWHL6CPOAVERSJITX7BH76YU252WGLUOM5CJX3E7UCYZBTPJQ SAEWIVK3VLNEJ3WEJRZXQGDAS5NVG2BYSYDFRSH4GKVTS5RXNVED5AX7 @@ -241,36 +272,52 @@ m/44'/148'/8' GDHX4LU6YBSXGYTR7SX2P4ZYZSN24VXNJBVAFOB2GEBKNN3I54IYSRM4 SCGMC5AHA m/44'/148'/9' GDXOY6HXPIDT2QD352CH7VWX257PHVFR72COWQ74QE3TEV4PK2KCKZX7 SCPA5OX4EYINOPAUEQCPY6TJMYICUS5M7TVXYKWXR3G5ZRAJXY3C37GF ``` -Shamir Secret Sharing shares (non-deterministic) - group threshold = 2; groups = [(2, 3), (1, 1), (2, 3)]: - -``` -[['tactics thorn acrobat leaf aviation trend regular elbow desert leaf warn ' - 'chemical huge river pupal grumpy retreat grownup herd counter species ' - 'license buyer orbit wits bundle husband robin exotic chest debut deny dish', - 'tactics thorn acrobat lily average calcium yoga wisdom diploma usher furl ' - 'impulse dominant puny lunar profile slow loyalty practice uncover friendly ' - 'platform justice starting sled yelp satoshi heat rebuild royal junction ' - 'damage wavy', - 'tactics thorn acrobat lungs avoid empty diet document license column ' - 'process license season patrol stick nylon focus tenant wavy smell task ' - 'eyebrow space garlic dance mountain artwork capacity busy gather ambition ' - 'employer fused'], - ['tactics thorn beard leader aircraft energy desktop paid dive kitchen ' - 'marathon geology tactics seafood visual duration dough mountain oral nail ' - 'fact dominant decent warmth skin orange deploy artwork necklace material ' - 'jewelry guitar gums'], - ['tactics thorn ceramic leaf antenna spine nervous patent invasion wine ' - 'maximum recall shame observe daughter mobile ending numb railroad rocky ' - 'vampire editor drug idle seafood geology black wrist view bike course alarm ' - 'nail', - 'tactics thorn ceramic lily angry jewelry step coastal necklace force ' - 'meaning machine cleanup satisfy secret rescue starting kind humidity ' - 'forward party jerky garbage empty scroll usual march index gasoline playoff ' - 'talent knit calcium', - 'tactics thorn ceramic lungs amuse silver briefing pistol reject duke ' - 'maximum party provide true therapy promise gray blessing broken inside firm ' - 'invasion wavy broken screw else dynamic timber system cluster distance dive ' - 'genuine']] +SLIP39 - Shamir Secret Sharing shares (non-deterministic) - group threshold = 2; groups = [(2, 3), (1, 1), (2, 3)]: + +``` +[['easel thorn acrobat leaf aspect gravity fishing company drove dress actress ' + 'survive total screw meaning best petition elder hairy undergo should party ' + 'ultimate sled afraid justice upstairs guest browser fridge saver enforce ' + 'acid', + 'easel thorn acrobat lily adult trash beam category costume smear aluminum ' + 'rebuild permit switch extend relate laden axle airport force unhappy blue ' + 'flame angel aviation ambition penalty talent glen location dryer ruler ' + 'spend', + 'easel thorn acrobat lungs ajar rich sugar crunch pickup order beyond ' + 'geology speak username craft deadline race company pumps trouble deliver ' + 'market legend crucial rescue burning flea adorn excuse crazy mansion ' + 'physics friendly'], + ['easel thorn beard leader anatomy burning testify percent that knit firefly ' + 'vampire breathe finance heat salt mortgage museum eraser kitchen drink ' + 'hamster imply friar umbrella umbrella blanket military paces result mouse ' + 'epidemic thorn'], + ['easel thorn ceramic leaf auction replace earth survive body edge lilac ' + 'email verify detailed yelp regular entrance camera weapon educate desktop ' + 'window shaped example invasion laser taste wits vitamins knife prune idle ' + 'discuss', + 'easel thorn ceramic lily animal railroad vocal peaceful bucket alarm visual ' + 'earth episode true acrobat response together fantasy camera sugar holy fact ' + 'coastal darkness grownup vegan dwarf remember album leaves cage costume ' + 'pile', + 'easel thorn ceramic lungs aide physics rapids clothes pitch average ' + 'gasoline receiver company equip branch puny aide educate criminal cargo ' + 'coastal cover aspect medical tracks grasp alien involve both roster trouble ' + 'hybrid deny']] +``` + +SLIP39 - Stellar keys: + +``` +m/44'/148'/0' GDU4DGABAZWLFZGULPL5L6G3DTILN4CY2YECXJCPQ5POADE65K4A6CUY SDNYGARXVJLMWYUO22K4YAEPKJBHVESCA75WTOSABVTV2TYND2NSZSPM +m/44'/148'/1' GBGNGTVQWRVEAPXOH56RRWOPQ5VGKEXFSNGGCBZ6HQGHJPRGF7YUHUAX SAWSEVE5SZQB23Q5BLXPRMOKRH664IL623T4NWSXBVBVSWJGEUGVMZQA +m/44'/148'/2' GBNZVUS6FMXJW5SKPX5GHX7H72BFFI7DKQFWF6VE4MPOCWE42JJB355O SDI5MVQMXWAE3VCMQ6PW62NIOMIUX6R2MIDYHJXNYI563PY7VBW4VRFI +m/44'/148'/3' GAIKDCZXIVGBMDZYGOUQ6OVWEWVBJV5RVTT6EFKUFWKNFZYVB6MHCEFZ SAYJYKL7SUL3AMIDP52CGZRLNUSLA5ZSAFJ2LXSKOHJS4JIHY2SCMR6K +m/44'/148'/4' GAK7TNQVH6VA2UIWGHRWXDLZFF7HB5MUYVNAZSCXG4APJINABZLHRCW3 SBGYGIPNZAQ3G6AQFLO3BFA4YE6F67COJ7JRE3NHCYDR2G7EQP5UVCHF +m/44'/148'/5' GCSCLBOK73O655YK42EDETB6MRFPYK3STI2E627B3JPVP6XBLCFNFNOC SDXBOWH3D5Z4VG6RONU4GEG3JG4SEBHVNBVPQBZBCN4C5H4RIK3WSV3P +m/44'/148'/6' GCLDFZ47ZSJ3X2BJ56RGMLWTARMMM2O5EYGIREVOLRDB647BWBZEHFKK SDJ7HPXEBOM6TRNHHW7Z227QUTQJELGZCEMW2Z3EQSTPNP7TDA6KQ4U3 +m/44'/148'/7' GB23ZJUW5NIS5AAKCRGZADBU4BCJTOVWCU3CXRVKQYAMDSTA6YWCDCXS SDTHC4GZR3VJU2SJC2TQVI3WSZOXPJFVHJFZV2BK2KQHOQUHC56ZYPGX +m/44'/148'/8' GAPKRA2YYGLMAWMSOS5BDETLKDPARNETFQEZ2HUBJT4KPKGASHHD6WBV SC2NMPSN7MHJJX5MGVYFN5XXVNWSWY4OLT3CWNASFWLZ74LFBAS67CS6 +m/44'/148'/9' GCEJISZFNS4FQGAKGQAWOWM67WMFDI62FAO3477UCNUZVCRX7L3FV3RB SCBG6YQXH2ZIWEPLANXRG3OLAUEULA5FO6QTJLWX5VCENSZVCHFPCLEH ``` ### Test 4 @@ -289,19 +336,19 @@ cable spray genius state float twenty onion head street palace net private metho p4ssphr4se ``` -BIP39 Seed: +BIP39 - Seed: ``` d425d39998fb42ce4cf31425f0eaec2f0a68f47655ea030d6d26e70200d8ff8bd4326b4bdf562ea8640a1501ae93ccd0fd7992116da5dfa24900e570a742a489 ``` -`m/44'/148'` key (BIP39): +BIP39 - `m/44'/148'` key: ``` c83c61dc97d37832f0f20e258c3ba4040a258800fd14abaff124a4dee114b17e ``` -Stellar keys: +SLIP39 - Stellar keys: ``` m/44'/148'/0' GDAHPZ2NSYIIHZXM56Y36SBVTV5QKFIZGYMMBHOU53ETUSWTP62B63EQ SAFWTGXVS7ELMNCXELFWCFZOPMHUZ5LXNBGUVRCY3FHLFPXK4QPXYP2X @@ -316,37 +363,52 @@ m/44'/148'/8' GDS5I7L7LWFUVSYVAOHXJET2565MGGHJ4VHGVJXIKVKNO5D4JWXIZ3XU SAIZA26BU m/44'/148'/9' GBOSMFQYKWFDHJWCMCZSMGUMWCZOM4KFMXXS64INDHVCJ2A2JAABCYRR SDXDYPDNRMGOF25AWYYKPHFAD3M54IT7LCLG7RWTGR3TS32A4HTUXNOS ``` -Shamir Secret Sharing shares (non-deterministic) - group threshold = 2; groups = [(2, 3), (1, 1), (2, 3)]: - -``` -[['elevator fawn acrobat leaf august plot harvest welcome domestic junction ' - 'force marvel trash prune profile preach robin observe phantom moment energy ' - 'exercise argue category python swing miracle quiet ticket drove intimate ' - 'laundry intimate', - 'elevator fawn acrobat lily agree fake subject mayor darkness adorn market ' - 'resident picture elephant exhaust umbrella timber military rhythm walnut ' - 'prevent deny afraid advance envelope ounce scene clay beard valuable goat ' - 'freshman leaf', - 'elevator fawn acrobat lungs answer sugar become believe beaver skunk ' - 'undergo lying sprinkle soldier intimate exotic predator execute moisture ' - 'cause level decorate become august tracks observe duckling vexed review ' - 'percent execute lair dough'], - ['elevator fawn beard leader acrobat maiden general racism elite hush rich ' - 'paces have cleanup bracelet aunt violence making bracelet herald careful ' - 'fatal literary ivory hour home auction cowboy increase chew crucial hamster ' - 'miracle'], - ['elevator fawn ceramic leaf acid plan carve ultimate building paper brother ' - 'vampire edge lying energy grief location index multiple depart hour costume ' - 'radar observe crowd strategy duke perfect beard mouse craft marathon ' - 'explain', - 'elevator fawn ceramic lily angry always buyer forward elephant slice ' - 'charity loyalty miracle tadpole strike kitchen taught pecan havoc domestic ' - 'holy railroad hawk invasion flip slice vanish level glad level maiden elbow ' - 'umbrella', - 'elevator fawn ceramic lungs agree holiday browser twice anatomy wrote ' - 'hamster inform flash coding gasoline dragon evidence survive insect exact ' - 'guitar beaver best element sled usual reward unhappy ending replace ladybug ' - 'jump profile']] +SLIP39 - Shamir Secret Sharing shares (non-deterministic) - group threshold = 2; groups = [(2, 3), (1, 1), (2, 3)]: + +``` +[['stick omit acrobat leaf ancestor born lunar valid extra patrol museum ' + 'mortgage check flexible remove lawsuit laundry quick priority tenant cubic ' + 'express capacity domestic thank patrol density knit skunk sharp laden ' + 'raisin describe', + 'stick omit acrobat lily analysis cards depict mason dance angry emphasis ' + 'mayor ultimate dough shelter answer floral float undergo capital scholar ' + 'network very mother careful clock slap robin estimate lizard twin upstairs ' + 'hunting', + 'stick omit acrobat lungs argue agree vexed amuse retailer inform crucial ' + 'shaped capital breathe fluff museum deny class cultural bulb funding ' + 'charity submit glance replace hesitate station mild income extra tidy ' + 'obesity rocky'], + ['stick omit beard leader aviation flea resident smell organize ugly angel ' + 'violence laden voting upstairs river buyer holy software prospect pupal ' + 'gravity physics mailman square medal story treat prisoner unknown kind ' + 'famous space'], + ['stick omit ceramic leaf ajar bulb puny cradle blimp daughter filter raspy ' + 'filter humidity calcium charity western climate slap evoke apart hearing ' + 'mountain morning premium salon subject privacy rival epidemic river expect ' + 'increase', + 'stick omit ceramic lily aquatic repeat pacific news platform capacity ' + 'finance problem amount amuse privacy evil improve dismiss railroad survive ' + 'gather diploma rich change reject breathe activity lily warmth either slush ' + 'dominant depart', + 'stick omit ceramic lungs alive survive undergo climate kind slice findings ' + 'loyalty wits climate goat mule wildlife talent easel acid scandal bike ' + 'satoshi moisture listen intend involve wrist likely flip process raisin ' + 'bundle']] +``` + +SLIP39 - Stellar keys: + +``` +m/44'/148'/0' GCLBBT6RFBL6GKWCOEPH5RWNBNZNXSDM6WBYQP3QYV5NP6HS3GW2NVRT SAECCVRPXZANUW6YTDHEEKBWGHJYH6NTPHNN3PZY2VYHWCAYVVOKSURO +m/44'/148'/1' GBHS4EKPUFUNI42ZRSBYW3OOFOYFH3XMZRQAGUCU33LTL7OB22BT6AJG SBVFGV3H3Q4RVQWNMHGI27BFO4Z62G4H5I4LRLRXE24SC4JFBSLVGS3V +m/44'/148'/2' GBKMTZUVOLVW4LU5CF3KJNFHGJFF5OXLVXLXGHNSNLLD5XYSAJSZPMQJ SB3R54O465R5FWHGHAQTGXJNLI5KB2EMBX3NS3STKVSAJHLE2IPHVJ7Z +m/44'/148'/3' GDROOKCCNLALPNKI7P4GLW2I4YH7XKIRQOQ2RRZYOW2YV7MFWBIPWHSF SBJIIA77QPPVLJYXGTR4KPXMAQE7VXEXPWDSCFXMV7FUQDLJQ636T5RN +m/44'/148'/4' GBA2BUMVATRU45CF4XBFFURD732TOJ6LYI52GP7UKAKD7CU6B3DTOHNU SB567ZOD3RJXDQJ5E7V7UKCOPRCRKOS5ETZNNWBZ2R52ZHORS4YPZ5YA +m/44'/148'/5' GCORJHF42MCI5GZMN2TJEM5TG6VKKHRVT3EIHE2VWGAAU6PLL7H6XMVL SCQVNOR7ABTKG3OALN5MCEX7NYB5UGCIUTCZU722MWFDPBLGRCFZISXK +m/44'/148'/6' GD326LUPOSLBZTAJ7HW6DFUNJKTQIVAKWF4NMPR7OFT5Z7KRIRFETSSU SATL53TIN6MEYCJJUOCZNEWTI4PLVU3RJTDURGVNWBNLBAZCOE5WM72N +m/44'/148'/7' GDZ2QUEZR2P7GD5YIFHC5KR2UWZQZPM7QGUJD6B7GM6PQZSK5LAOMQMM SDPPPFNANXCLC2LBSX2UZ5Y6IHLHKJIPONEAHREGEOIBQFUOCVCLFLY7 +m/44'/148'/8' GCM7GLBSXJ6COKOFXKYKO25JAK2CHPFGGXY45D2ZSQB6IOMUWZOGIGED SDBJKWYKJ4HK66WQFDJ6N5S6N5NH5EHYVTXHLIER55TKBW6W4IYYVLUK +m/44'/148'/9' GADNSELTTAUNBAEXXNKEHZYBM6HMUDJFP57VYZGUF6BDR7NNO6UJJYHO SD2H6SC7GNA6JQYPDE6KKQHB6Q3VNHVK2CLKFFLM6TGKPY3EHGRM6DS5 ``` ### Test 5 @@ -363,19 +425,19 @@ Mnemonic (12 words): abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon about ``` -BIP39 Seed: +BIP39 - Seed: ``` 5eb00bbddcf069084889a8ab9155568165f5c453ccb85e70811aaed6f6da5fc19a5ac40b389cd370d086206dec8aa6c43daea6690f20ad3d8d48b2d2ce9e38e4 ``` -`m/44'/148'` key (BIP39): +BIP39 - `m/44'/148'` key: ``` 03df7921b4f789040e361d07d5e4eddad277c376350d7b5d585400a0ef18f2f5 ``` -Stellar keys: +BIP39 - Stellar keys: ``` m/44'/148'/0' GB3JDWCQJCWMJ3IILWIGDTQJJC5567PGVEVXSCVPEQOTDN64VJBDQBYX SBUV3MRWKNS6AYKZ6E6MOUVF2OYMON3MIUASWL3JLY5E3ISDJFELYBRZ @@ -390,23 +452,38 @@ m/44'/148'/8' GABTYCZJMCP55SS6I46SR76IHETZDLG4L37MLZRZKQDGBLS5RMP65TSX SC6N6GYQ2 m/44'/148'/9' GAKFARYSPI33KUJE7HYLT47DCX2PFWJ77W3LZMRBPSGPGYPMSDBE7W7X SALJ5LPBTXCFML2CQ7ORP7WJNJOZSVBVRQAAODMVHMUF4P4XXFZB7MKY ``` -Shamir Secret Sharing shares (non-deterministic) - group threshold = 2; groups = [(2, 3), (1, 1), (2, 3)]: +SLIP39 - Shamir Secret Sharing shares (non-deterministic) - group threshold = 2; groups = [(2, 3), (1, 1), (2, 3)]: + +``` +[['edge vexed acrobat leaf breathe black math aspect pumps oral receiver have ' + 'result island various weapon cover husband welcome endless', + 'edge vexed acrobat lily ajar camera railroad cinema gross taught prayer ' + 'liquid length blue length estimate amazing cover smart grief', + 'edge vexed acrobat lungs check album moisture emphasis system grant testify ' + 'physics endorse raisin ladybug oral cubic sunlight very ladybug'], + ['edge vexed beard leader duke advocate loyalty equation wireless radar slice ' + 'express pistol grocery style devote glasses airline example perfect'], + ['edge vexed ceramic leaf angry bulge cradle angel senior watch reward agency ' + 'destroy prune race usual wrist hospital retreat desktop', + 'edge vexed ceramic lily ancestor pregnant library earth escape junior ' + 'makeup kidney flexible beaver volume surface writing fangs smug loud', + 'edge vexed ceramic lungs answer hesitate black snapshot slap tracks staff ' + 'finger hamster traveler formal aircraft duration patrol merit lyrics']] +``` + +SLIP39 - Stellar keys: ``` -[['talent fawn acrobat leaf beyond scene findings total survive ounce smell ' - 'finance bishop buyer render flip diagnose dish leaves impact', - 'talent fawn acrobat lily beyond percent wits surface kidney envelope order ' - 'emperor pancake receiver plan firefly hush resident screw club', - 'talent fawn acrobat lungs beyond agree already memory bulb cover adult ' - 'scout document failure video therapy jump obtain agency cards'], - ['talent fawn beard leader custody magazine fact laden award smirk velvet ' - 'exhaust miracle hamster sharp black mouse vintage syndrome finger'], - ['talent fawn ceramic leaf depict emission froth database smell smear exotic ' - 'island level estimate display favorite award river paces parcel', - 'talent fawn ceramic lily dining tolerate priest tendency humidity early ' - 'spend antenna episode spray mental grasp literary acrobat flavor grief', - 'talent fawn ceramic lungs downtown broken snake peanut aluminum desktop ' - 'large damage spine herd dramatic lizard bulge alpha election fatigue']] +m/44'/148'/0' GA5D465BLRTA3U7UOVBFC4B7NBKISL62OSMOEERDAQUDOOHZLAZAFVCM SDVUPCYZPUFIGHDMPWKUVRZV6C72CRX7DT3UKK75C5SHM3IIMMUMJJ4L +m/44'/148'/1' GABB36PFFIJXOJTORX7IJBM3ECNDYUN35ZIE4SOXADDIXADPKVRSGDB7 SBVVZWVIP5FL5XRB6DK6MN567SZ4CHJNXCPYWCEWOMMJ5DHAM5HC4B3I +m/44'/148'/2' GB4YPCN7MXUDYHFPQW5FRPUX6AYEXG6LQO537L2367PTQPYQ3VMLPETZ SCIUU473TFAMPA2INXHIHLGMTSBNQ3BRXGETOGWMOKYDWNFE5LARKN7X +m/44'/148'/3' GDX2EUQQQBTFRZZUGWECF5UMXRAHQ5KWVGW6U7HKEKXAQHBH4T4MQJAG SB24IVJVT34UAR337BQLJ4IIGOFJ7EODATKOWI2NMUL74XZITMVLPJZ5 +m/44'/148'/4' GDJQHGSVRBFLDXMCN6LPF23SVJHYNZIOH2XC4RQYI2CTY4YFM4VD4QB5 SB6ALSO7TDROHXLQYEE6HLMDPK5QK7YTRRO6OLQYHOBLPAHO7QGCCR2T +m/44'/148'/5' GAW6PQVK22D4HMYVU3QEO4LMR4736QBQ2MTWCBOAIINP6IKXN4IYY4BW SDXTH6HSOMCEHJBPYTV5VZGLVSLVIKCCD3BKAUSX35EVRLNNLAT527QP +m/44'/148'/6' GDURBDQZ73EAAQ3ZGXS2A6X3VJJDXV7PFMBTS3DKIROBE7UETXUCTWI6 SAILOQQI4INX77ZYBAMSHAIVZRIHQX47Q7GQ4RDQ7XW4YI4B7ZWWXCGU +m/44'/148'/7' GD37CHASVMM3VKFGK7WGG3KSNST3Z2Y4Y5HJODXAUPN7C5V4DI64QA5R SCXCCWLX43UDGKDOFMO3UXDOXUFJ3KVHXXUEX2RRULI55PFUQZJ72YEP +m/44'/148'/8' GAG6Z3FYOGWIB5D5MFG5XDKWYH63PBZTAQHIQQWKQNBETWXMQ7LC7AJZ SB777RSMY5AJUKDDQRTNHWKSYQS75XZIOYICIPLE5R6NZ2VONS7V5LTI +m/44'/148'/9' GBAMYLBYFYUBJ6N7HZFFFWJ5U7H2BJDH7UFOCQU2XDQPKGCIEK5PATFK SAXMTDP4GFC7PCQZNPXMGYEMO4SWPUQRBSGE5R2WYWTCW3QJAKYHZA6F ``` ## Reference Implementation From e0a8e5e6a3b7393feba8be24a8b04be77ee5a031 Mon Sep 17 00:00:00 2001 From: Pamphile Roy <23188539+tupui@users.noreply.github.com> Date: Fri, 10 Jan 2025 21:13:04 +0100 Subject: [PATCH 08/13] Typo --- ecosystem/sep-0005.md | 1 - 1 file changed, 1 deletion(-) diff --git a/ecosystem/sep-0005.md b/ecosystem/sep-0005.md index 391b994da..6b8a6cb99 100644 --- a/ecosystem/sep-0005.md +++ b/ecosystem/sep-0005.md @@ -148,7 +148,6 @@ m/44'/148'/8' GCUM4SVCNRU3J3BWQAICS5O6EUEIGIUUZ476TPXOTTFPVAVKRBHLNSW4 SDJINTL2K m/44'/148'/9' GDI42ZQY3DIO2PQJKHAMYCQE526K6QMXQKKLZDBMA3TMJULNVYULGK47 SDMP7WPRX73IUOX4OANSWYO3QS5ZR45J27MLRTLUHX42W4FQQQNKKQIH ``` - ### Test 2 Entropy: From 008860d91cf2c366c1db92a7c5d55d7ce38bf3a8 Mon Sep 17 00:00:00 2001 From: Tupui <23188539+tupui@users.noreply.github.com> Date: Wed, 15 Jan 2025 02:01:41 +0100 Subject: [PATCH 09/13] Move SSS to new SEP-0046 --- ecosystem/sep-0005.md | 285 +++---------------------------------- ecosystem/sep-0046.md | 322 ++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 341 insertions(+), 266 deletions(-) create mode 100644 ecosystem/sep-0046.md diff --git a/ecosystem/sep-0005.md b/ecosystem/sep-0005.md index 6b8a6cb99..e2d5ed4ec 100644 --- a/ecosystem/sep-0005.md +++ b/ecosystem/sep-0005.md @@ -6,7 +6,7 @@ Title: Key Derivation Methods for Stellar Keys Author: SDF Status: Final Created: 2017-11-09 -Updated: 2025-01-03 +Updated: 2020-06-16 ``` ## Simple Summary @@ -48,18 +48,6 @@ mnemonic code. We strongly recommend using 24 word mnemonic (256 bits of entropy). -### Sharing Mnemonic Codes - -Shamir Secret Sharing (SSS) method, as described in -[SLIP-0039](https://github.com/satoshilabs/slips/blob/master/slip-0039.md) should be used as a way to split a -mnemonic code into multiple parts. SSS is a two-layer scheme: _G_ groups are split into _N_ distinct members. -_g_ ≤ _G_ groups are required to reconstruct the mnemonic. Each group being comprised of a specific threashold of -members 1 ≤ _t_ ≤ _N_. - -The entropy (which can be derived from a mnemonic code) should be used to derive the multiparts menomonic. -The parts are non-deterministic and any derivation leads to the same set of keys. As recommended for single -mnemonic codes, we recommend using 256 bits of entropy. Which leads to 33 word mnemonic phrases. - ## Rationale `BIP`s and `SLIP`s are industry standards used by a majority of cryptocurrencies and software/hardware wallets. @@ -75,31 +63,25 @@ use a single, primary account. ### Test 1 -Entropy: - -``` -713a3ae074e60e56c6bd0557c4984af1 -``` - Mnemonic (12 words): ``` illness spike retreat truth genius clock brain pass fit cave bargain toe ``` -BIP39 - Seed: +BIP39 Seed: ``` e4a5a632e70943ae7f07659df1332160937fad82587216a4c64315a0fb39497ee4a01f76ddab4cba68147977f3a147b6ad584c41808e8238a07f6cc4b582f186 ``` -BIP39 - `m/44'/148'` key: +`m/44'/148'` key: ``` e0eec84fe165cd427cb7bc9b6cfdef0555aa1cb6f9043ff1fe986c3c8ddd22e3 ``` -BIP39 - Stellar keys: +Stellar keys: ``` m/44'/148'/0' GDRXE2BQUC3AZNPVFSCEZ76NJ3WWL25FYFK6RGZGIEKWE4SOOHSUJUJ6 SBGWSG6BTNCKCOB3DIFBGCVMUPQFYPA2G4O34RMTB343OYPXU5DJDVMN @@ -114,67 +96,27 @@ m/44'/148'/8' GDJTCF62UUYSAFAVIXHPRBR4AUZV6NYJR75INVDXLLRZLZQ62S44443R SCD5OSHUU m/44'/148'/9' GBTVYYDIYWGUQUTKX6ZMLGSZGMTESJYJKJWAATGZGITA25ZB6T5REF44 SCJGVMJ66WAUHQHNLMWDFGY2E72QKSI3XGSBYV6BANDFUFE7VY4XNXXR ``` -SLIP39 - Shamir Secret Sharing shares (non-deterministic) - group threshold = 2; groups = [(2, 3), (1, 1), (2, 3)]: - -``` -[['premium penalty acrobat leaf aquatic ivory simple mineral axle party slim ' - 'acrobat priest tackle engage ladybug snake literary debris enjoy', - 'premium penalty acrobat lily chest boundary order romp necklace echo detect ' - 'adorn blimp ecology guilt emission camera tofu force aircraft', - 'premium penalty acrobat lungs born phrase glad lend actress ladle drove ' - 'realize nylon wavy buyer pleasure mandate bumpy ugly sweater'], - ['premium penalty beard leader angry afraid airline easy alive slim music ' - 'painting submit boundary soul fact task valuable speak fancy'], - ['premium penalty ceramic leaf duke holy usual spider program midst penalty ' - 'upgrade very item radar improve romantic leaves pink multiple', - 'premium penalty ceramic lily admit mule decorate adorn club alcohol flash ' - 'acrobat standard stay deploy envy level august stilt ruler', - 'premium penalty ceramic lungs acrobat leader buyer item response penalty ' - 'crucial party wisdom civil rhythm piece elevator erode adequate acne']] -``` - -SLIP39 - Stellar keys: - -``` -m/44'/148'/0' GC5RE2NMJU472NN66ENXZS4YK5I6CPYPE4JZ2BIMPWSD7IBRSKKH6QUB SC2E6KW4K4ZXT52KNAWKVPHYHAXQDEBRJW7FOUJUPOMGTKRSZXZH5VTO -m/44'/148'/1' GDMUEO4GKPBZMRS7R3766TC3AXZ7CTTVWJNFJI5MNACBWYF33EQM26FQ SCCGSSYNFUDLKMTBRH7BMGM7AMLBFX6MS4TBOABZT6T73SG7N5LYKMYY -m/44'/148'/2' GBM3QWZCEW4I3NMAQJBTSISDYP3L7HZXCHQ5J2KT4PRE5RBYNNCNLHIT SDJ7TN2DDCRCIX7DYUSBUW6CJIGTTCFXBMNO2IW6RYPLMCFF5X2YX62V -m/44'/148'/3' GDFLHV6UY2A2GFI4BQ4KEPZ5GGEILGF4U3ILQVL3ROXR46XW2E4EMSXJ SBCPEGJUE3AK66A4H7VLIU2W422MWQHA6QOSOELUYNZQMP7CTIQRFXT3 -m/44'/148'/4' GDSN6TWIAV256DBMVTKAC7WJ6TYP4IID44KIUNJHR6SRJ6O5O5QHBQFB SDCAR5B3UVAFUGBUW6VYXK47RYYCGPJ4QFC2ERCU4H5DP56IO22IZIU6 -m/44'/148'/5' GCYICO73QRKOJRAZ4GOAXMH7JDEX5OPBEYQNAQTW75YR6UUSZ7VET3FO SC326YSVFQCINTT46BTI6JSUNRNB55ZLSUD6K4Z67ZU7HNK226RAWZ37 -m/44'/148'/6' GBLDONQAXRAVYIDI7IMK6UGRU6ZA27DZDQEUBOCLTHQMFVAWFLZNDIV5 SAVQD5P52RQEGQ7XJPX5HONKJE34NRJMQQNXVGVDWPMIBMMP7U36Q4QH -m/44'/148'/7' GCSKWTJ4FIAAWA6FLNQJXXLTW6IUQZFMDTZGSJV55ETPL4LJLMASVBXF SADEZZTVW534ZQAH2F3IO574LD6QZCV3FDH6X755A74YQACY34ISEHSY -m/44'/148'/8' GCUM4SVCNRU3J3BWQAICS5O6EUEIGIUUZ476TPXOTTFPVAVKRBHLNSW4 SDJINTL2KKQ3GR4XFKZVODS23EY43HULAQHUAMY44BEQFWMBSN6B57RQ -m/44'/148'/9' GDI42ZQY3DIO2PQJKHAMYCQE526K6QMXQKKLZDBMA3TMJULNVYULGK47 SDMP7WPRX73IUOX4OANSWYO3QS5ZR45J27MLRTLUHX42W4FQQQNKKQIH -``` - ### Test 2 -Entropy: - -``` -b781c27351c7024355cf7f0b0efdc7f85e046cf9 -``` - Mnemonic (15 words): ``` resource asthma orphan phone ice canvas fire useful arch jewel impose vague theory cushion top ``` -BIP39 - Seed: +BIP39 Seed: ``` 7b36d4e725b48695c3ffd2b4b317d5552cb157c1a26c46d36a05317f0d3053eb8b3b6496ba39ebd9312d10e3f9937b47a6790541e7c577da027a564862e92811 ``` -BIP39 - `m/44'/148'` key: +`m/44'/148'` key: ``` 2e5d4e6b54a4b96c5e887c9ec92f619a3c134d8b1059dcef15c1a9b228ae3751 ``` -BIP39 - Stellar keys: +Stellar keys: ``` m/44'/148'/0' GAVXVW5MCK7Q66RIBWZZKZEDQTRXWCZUP4DIIFXCCENGW2P6W4OA34RH SAKS7I2PNDBE5SJSUSU2XLJ7K5XJ3V3K4UDFAHMSBQYPOKE247VHAGDB @@ -189,74 +131,27 @@ m/44'/148'/8' GD3KWA24OIM7V3MZKDAVSLN3NBHGKVURNJ72ZCTAJSDTF7RIGFXPW5FQ SBDNHDDIC m/44'/148'/9' GB3C6RRQB3V7EPDXEDJCMTS45LVDLSZQ46PTIGKZUY37DXXEOAKJIWSV SDHRG2J34MGDAYHMOVKVJC6LX2QZMCTIKRO5I4JQ6BJQ36KVL6QUTT72 ``` -SLIP39 - Shamir Secret Sharing shares (non-deterministic) - group threshold = 2; groups = [(2, 3), (1, 1), (2, 3)]: - -``` -[['scroll spew acrobat leaf length mayor cleanup visitor yoga response public ' - 'equation beard fortune simple coal prisoner easel guest race recall adapt ' - 'critical', - 'scroll spew acrobat lily regular herald ambition knit educate relate salt ' - 'dough morning dynamic else network large review usher legend package ' - 'penalty picture', - 'scroll spew acrobat lungs vitamins civil sweater ceiling nervous rapids ' - 'fiction trouble acne modern scout surprise both early walnut forbid wolf ' - 'garbage worthy'], - ['scroll spew beard leader grief move dive custody admit always vexed emerald ' - 'medical debris vanish dish glance payroll shadow building grocery fridge ' - 'visitor'], - ['scroll spew ceramic leaf lift expect reaction diminish dining cricket ' - 'enlarge daughter testify machine yield epidemic arena scene science ' - 'tendency flexible lyrics genre', - 'scroll spew ceramic lily petition twice cowboy symbolic river criminal ' - 'rescue best cards cultural curly debut spray that afraid aspect jewelry ' - 'pupal keyboard', - 'scroll spew ceramic lungs smith alcohol network golden dress endless prize ' - 'beam activity rumor formal wolf phantom mental walnut ivory material award ' - 'cubic']] -``` - -SLIP39 - Stellar keys: - -``` -m/44'/148'/0' GDSAWDY5G4WNVPSJKBZVGEWCYIJLJLEBRBPT7MC5SBNCIKVLXO3CZRPT SDJTZ2M7PEFR63MQNXSVYHP3XM34ECD2AT4BEHTCTXIUZSKGF7UDNYTR -m/44'/148'/1' GBLNTCU4JPLRTTY4EQN2QOHGZRMWYEZ23SNKQ5OD6RHG3GQJFMHKMTLM SCERLFXDSVXI63D2DN4I3JRRY2EP5R6FXBEEDNN3K3276UPZRTCKOROI -m/44'/148'/2' GDJ3ZAJPBQ6OKYPLBIFZUGTELLDEIML62XGW772WEDQOQ2IZCPCE6XD2 SCTJSPQKGU7MFAQIBL7G7BV53SJWCAGRYF3C2SOI6WN3XCN3TOYN5TMY -m/44'/148'/3' GAWWJ576FFDG2IMWDD7BSR3V6QNMLQ5BHMDVAWU5IFVGDGEEJ4IL3MSP SCU3ITBZGPEOTCUULFIY5BQOR7IIW5V7WAGHWXWMRR62PDXLDP3FOPMV -m/44'/148'/4' GD7OQMNXI2VDXUHKV4N3PU3YQ4LAXI6G37CGWLSGLYA5KDP2XZKHF4TT SBBVQUN7B3OQZ4UKSN6SZ4PSE2YFCKED3NTAYFLWX7PNOCKQG64W6F3W -m/44'/148'/5' GCREIV2Y5YAV5A6KVYQU7G2OJFB3NBYCZ7WXXUKNFXWGNE5VJWOPJLK6 SBDACZKVNXFX7DZY5ZHUXFJDS5L66XOT7DDCDP6WWEOVYEGZC5NGZ6OW -m/44'/148'/6' GBUHXUFGTZNM75MWWLBLQDV2OFAVJTF3BMX4BHMEMRYXWKDMTWBAFXNN SBQMLUR66CJ5XPBVYFTDDJFBQCUPU2YNL54AFZGPZMS3MLHKQHWIW3VX -m/44'/148'/7' GBNRZ557ACSQNIH7G5J2WCIEOEDDEBUQM3RKX544ZTJGJKLAWBYYKAH3 SBYDBB7QETKHNP4P6D42TUZR7Q7ZBBBNRDNAZQ5GA726EDYBEDLAG54M -m/44'/148'/8' GD6JMVP6LHKYJ5YMFEM4W64S3WZ44BLFZTSPUPGR5D7HJSFEYYTJC7IM SB5CETFULTKFS2VUD2QCQTFBPFEPMCD2T6HSFD3BKVRCXZ5RZBBGYA2W -m/44'/148'/9' GBSVOB7K4XDHQ4KVM2RNTIHRNIJNQJXZY7LJ7HPQNB6APGFNB7H43CBM SDNK47MOK6I6MIBO7BWNTGH27D3VFZFLCDC2VLLOZLLQQNMXLX66OZKW -``` - ### Test 3 -Entropy: - -``` -150df9e3ab10f3f8f1428d723a6539662e181ec8781355396cec5fc2ce08d760 -``` - Mnemonic (24 words): ``` bench hurt jump file august wise shallow faculty impulse spring exact slush thunder author capable act festival slice deposit sauce coconut afford frown better ``` -BIP39 - Seed: +BIP39 Seed: ``` 937ae91f6ab6f12461d9936dfc1375ea5312d097f3f1eb6fed6a82fbe38c85824da8704389831482db0433e5f6c6c9700ff1946aa75ad8cc2654d6e40f567866 ``` -BIP39 - `m/44'/148'` key: +`m/44'/148'` key: ``` df474e0dc2711089b89af6b089aceeb77e73120e9f895bd330a36fa952835ea8 ``` -BIP39 - Stellar keys: +Stellar keys: ``` m/44'/148'/0' GC3MMSXBWHL6CPOAVERSJITX7BH76YU252WGLUOM5CJX3E7UCYZBTPJQ SAEWIVK3VLNEJ3WEJRZXQGDAS5NVG2BYSYDFRSH4GKVTS5RXNVED5AX7 @@ -271,62 +166,8 @@ m/44'/148'/8' GDHX4LU6YBSXGYTR7SX2P4ZYZSN24VXNJBVAFOB2GEBKNN3I54IYSRM4 SCGMC5AHA m/44'/148'/9' GDXOY6HXPIDT2QD352CH7VWX257PHVFR72COWQ74QE3TEV4PK2KCKZX7 SCPA5OX4EYINOPAUEQCPY6TJMYICUS5M7TVXYKWXR3G5ZRAJXY3C37GF ``` -SLIP39 - Shamir Secret Sharing shares (non-deterministic) - group threshold = 2; groups = [(2, 3), (1, 1), (2, 3)]: - -``` -[['easel thorn acrobat leaf aspect gravity fishing company drove dress actress ' - 'survive total screw meaning best petition elder hairy undergo should party ' - 'ultimate sled afraid justice upstairs guest browser fridge saver enforce ' - 'acid', - 'easel thorn acrobat lily adult trash beam category costume smear aluminum ' - 'rebuild permit switch extend relate laden axle airport force unhappy blue ' - 'flame angel aviation ambition penalty talent glen location dryer ruler ' - 'spend', - 'easel thorn acrobat lungs ajar rich sugar crunch pickup order beyond ' - 'geology speak username craft deadline race company pumps trouble deliver ' - 'market legend crucial rescue burning flea adorn excuse crazy mansion ' - 'physics friendly'], - ['easel thorn beard leader anatomy burning testify percent that knit firefly ' - 'vampire breathe finance heat salt mortgage museum eraser kitchen drink ' - 'hamster imply friar umbrella umbrella blanket military paces result mouse ' - 'epidemic thorn'], - ['easel thorn ceramic leaf auction replace earth survive body edge lilac ' - 'email verify detailed yelp regular entrance camera weapon educate desktop ' - 'window shaped example invasion laser taste wits vitamins knife prune idle ' - 'discuss', - 'easel thorn ceramic lily animal railroad vocal peaceful bucket alarm visual ' - 'earth episode true acrobat response together fantasy camera sugar holy fact ' - 'coastal darkness grownup vegan dwarf remember album leaves cage costume ' - 'pile', - 'easel thorn ceramic lungs aide physics rapids clothes pitch average ' - 'gasoline receiver company equip branch puny aide educate criminal cargo ' - 'coastal cover aspect medical tracks grasp alien involve both roster trouble ' - 'hybrid deny']] -``` - -SLIP39 - Stellar keys: - -``` -m/44'/148'/0' GDU4DGABAZWLFZGULPL5L6G3DTILN4CY2YECXJCPQ5POADE65K4A6CUY SDNYGARXVJLMWYUO22K4YAEPKJBHVESCA75WTOSABVTV2TYND2NSZSPM -m/44'/148'/1' GBGNGTVQWRVEAPXOH56RRWOPQ5VGKEXFSNGGCBZ6HQGHJPRGF7YUHUAX SAWSEVE5SZQB23Q5BLXPRMOKRH664IL623T4NWSXBVBVSWJGEUGVMZQA -m/44'/148'/2' GBNZVUS6FMXJW5SKPX5GHX7H72BFFI7DKQFWF6VE4MPOCWE42JJB355O SDI5MVQMXWAE3VCMQ6PW62NIOMIUX6R2MIDYHJXNYI563PY7VBW4VRFI -m/44'/148'/3' GAIKDCZXIVGBMDZYGOUQ6OVWEWVBJV5RVTT6EFKUFWKNFZYVB6MHCEFZ SAYJYKL7SUL3AMIDP52CGZRLNUSLA5ZSAFJ2LXSKOHJS4JIHY2SCMR6K -m/44'/148'/4' GAK7TNQVH6VA2UIWGHRWXDLZFF7HB5MUYVNAZSCXG4APJINABZLHRCW3 SBGYGIPNZAQ3G6AQFLO3BFA4YE6F67COJ7JRE3NHCYDR2G7EQP5UVCHF -m/44'/148'/5' GCSCLBOK73O655YK42EDETB6MRFPYK3STI2E627B3JPVP6XBLCFNFNOC SDXBOWH3D5Z4VG6RONU4GEG3JG4SEBHVNBVPQBZBCN4C5H4RIK3WSV3P -m/44'/148'/6' GCLDFZ47ZSJ3X2BJ56RGMLWTARMMM2O5EYGIREVOLRDB647BWBZEHFKK SDJ7HPXEBOM6TRNHHW7Z227QUTQJELGZCEMW2Z3EQSTPNP7TDA6KQ4U3 -m/44'/148'/7' GB23ZJUW5NIS5AAKCRGZADBU4BCJTOVWCU3CXRVKQYAMDSTA6YWCDCXS SDTHC4GZR3VJU2SJC2TQVI3WSZOXPJFVHJFZV2BK2KQHOQUHC56ZYPGX -m/44'/148'/8' GAPKRA2YYGLMAWMSOS5BDETLKDPARNETFQEZ2HUBJT4KPKGASHHD6WBV SC2NMPSN7MHJJX5MGVYFN5XXVNWSWY4OLT3CWNASFWLZ74LFBAS67CS6 -m/44'/148'/9' GCEJISZFNS4FQGAKGQAWOWM67WMFDI62FAO3477UCNUZVCRX7L3FV3RB SCBG6YQXH2ZIWEPLANXRG3OLAUEULA5FO6QTJLWX5VCENSZVCHFPCLEH -``` - ### Test 4 -Entropy: - -``` -1ffa5d83ea6593d666b350d6f3e652d598c3063ab51ed4c2e9d6a1d07c8545df -``` - Mnemonic (24 words + BIP 39 passphrase): ``` @@ -335,19 +176,19 @@ cable spray genius state float twenty onion head street palace net private metho p4ssphr4se ``` -BIP39 - Seed: +BIP39 Seed: ``` d425d39998fb42ce4cf31425f0eaec2f0a68f47655ea030d6d26e70200d8ff8bd4326b4bdf562ea8640a1501ae93ccd0fd7992116da5dfa24900e570a742a489 ``` -BIP39 - `m/44'/148'` key: +`m/44'/148'` key: ``` c83c61dc97d37832f0f20e258c3ba4040a258800fd14abaff124a4dee114b17e ``` -SLIP39 - Stellar keys: +Stellar keys: ``` m/44'/148'/0' GDAHPZ2NSYIIHZXM56Y36SBVTV5QKFIZGYMMBHOU53ETUSWTP62B63EQ SAFWTGXVS7ELMNCXELFWCFZOPMHUZ5LXNBGUVRCY3FHLFPXK4QPXYP2X @@ -362,81 +203,27 @@ m/44'/148'/8' GDS5I7L7LWFUVSYVAOHXJET2565MGGHJ4VHGVJXIKVKNO5D4JWXIZ3XU SAIZA26BU m/44'/148'/9' GBOSMFQYKWFDHJWCMCZSMGUMWCZOM4KFMXXS64INDHVCJ2A2JAABCYRR SDXDYPDNRMGOF25AWYYKPHFAD3M54IT7LCLG7RWTGR3TS32A4HTUXNOS ``` -SLIP39 - Shamir Secret Sharing shares (non-deterministic) - group threshold = 2; groups = [(2, 3), (1, 1), (2, 3)]: - -``` -[['stick omit acrobat leaf ancestor born lunar valid extra patrol museum ' - 'mortgage check flexible remove lawsuit laundry quick priority tenant cubic ' - 'express capacity domestic thank patrol density knit skunk sharp laden ' - 'raisin describe', - 'stick omit acrobat lily analysis cards depict mason dance angry emphasis ' - 'mayor ultimate dough shelter answer floral float undergo capital scholar ' - 'network very mother careful clock slap robin estimate lizard twin upstairs ' - 'hunting', - 'stick omit acrobat lungs argue agree vexed amuse retailer inform crucial ' - 'shaped capital breathe fluff museum deny class cultural bulb funding ' - 'charity submit glance replace hesitate station mild income extra tidy ' - 'obesity rocky'], - ['stick omit beard leader aviation flea resident smell organize ugly angel ' - 'violence laden voting upstairs river buyer holy software prospect pupal ' - 'gravity physics mailman square medal story treat prisoner unknown kind ' - 'famous space'], - ['stick omit ceramic leaf ajar bulb puny cradle blimp daughter filter raspy ' - 'filter humidity calcium charity western climate slap evoke apart hearing ' - 'mountain morning premium salon subject privacy rival epidemic river expect ' - 'increase', - 'stick omit ceramic lily aquatic repeat pacific news platform capacity ' - 'finance problem amount amuse privacy evil improve dismiss railroad survive ' - 'gather diploma rich change reject breathe activity lily warmth either slush ' - 'dominant depart', - 'stick omit ceramic lungs alive survive undergo climate kind slice findings ' - 'loyalty wits climate goat mule wildlife talent easel acid scandal bike ' - 'satoshi moisture listen intend involve wrist likely flip process raisin ' - 'bundle']] -``` - -SLIP39 - Stellar keys: - -``` -m/44'/148'/0' GCLBBT6RFBL6GKWCOEPH5RWNBNZNXSDM6WBYQP3QYV5NP6HS3GW2NVRT SAECCVRPXZANUW6YTDHEEKBWGHJYH6NTPHNN3PZY2VYHWCAYVVOKSURO -m/44'/148'/1' GBHS4EKPUFUNI42ZRSBYW3OOFOYFH3XMZRQAGUCU33LTL7OB22BT6AJG SBVFGV3H3Q4RVQWNMHGI27BFO4Z62G4H5I4LRLRXE24SC4JFBSLVGS3V -m/44'/148'/2' GBKMTZUVOLVW4LU5CF3KJNFHGJFF5OXLVXLXGHNSNLLD5XYSAJSZPMQJ SB3R54O465R5FWHGHAQTGXJNLI5KB2EMBX3NS3STKVSAJHLE2IPHVJ7Z -m/44'/148'/3' GDROOKCCNLALPNKI7P4GLW2I4YH7XKIRQOQ2RRZYOW2YV7MFWBIPWHSF SBJIIA77QPPVLJYXGTR4KPXMAQE7VXEXPWDSCFXMV7FUQDLJQ636T5RN -m/44'/148'/4' GBA2BUMVATRU45CF4XBFFURD732TOJ6LYI52GP7UKAKD7CU6B3DTOHNU SB567ZOD3RJXDQJ5E7V7UKCOPRCRKOS5ETZNNWBZ2R52ZHORS4YPZ5YA -m/44'/148'/5' GCORJHF42MCI5GZMN2TJEM5TG6VKKHRVT3EIHE2VWGAAU6PLL7H6XMVL SCQVNOR7ABTKG3OALN5MCEX7NYB5UGCIUTCZU722MWFDPBLGRCFZISXK -m/44'/148'/6' GD326LUPOSLBZTAJ7HW6DFUNJKTQIVAKWF4NMPR7OFT5Z7KRIRFETSSU SATL53TIN6MEYCJJUOCZNEWTI4PLVU3RJTDURGVNWBNLBAZCOE5WM72N -m/44'/148'/7' GDZ2QUEZR2P7GD5YIFHC5KR2UWZQZPM7QGUJD6B7GM6PQZSK5LAOMQMM SDPPPFNANXCLC2LBSX2UZ5Y6IHLHKJIPONEAHREGEOIBQFUOCVCLFLY7 -m/44'/148'/8' GCM7GLBSXJ6COKOFXKYKO25JAK2CHPFGGXY45D2ZSQB6IOMUWZOGIGED SDBJKWYKJ4HK66WQFDJ6N5S6N5NH5EHYVTXHLIER55TKBW6W4IYYVLUK -m/44'/148'/9' GADNSELTTAUNBAEXXNKEHZYBM6HMUDJFP57VYZGUF6BDR7NNO6UJJYHO SD2H6SC7GNA6JQYPDE6KKQHB6Q3VNHVK2CLKFFLM6TGKPY3EHGRM6DS5 -``` - ### Test 5 -Entropy: - -``` -00000000000000000000000000000000 -``` - -Mnemonic (12 words): +Mnemonic (12 words - entropy bytes: `00000000000000000000000000000000`): ``` abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon about ``` -BIP39 - Seed: +BIP39 Seed: ``` 5eb00bbddcf069084889a8ab9155568165f5c453ccb85e70811aaed6f6da5fc19a5ac40b389cd370d086206dec8aa6c43daea6690f20ad3d8d48b2d2ce9e38e4 ``` -BIP39 - `m/44'/148'` key: +`m/44'/148'` key: ``` 03df7921b4f789040e361d07d5e4eddad277c376350d7b5d585400a0ef18f2f5 ``` -BIP39 - Stellar keys: +Stellar keys: ``` m/44'/148'/0' GB3JDWCQJCWMJ3IILWIGDTQJJC5567PGVEVXSCVPEQOTDN64VJBDQBYX SBUV3MRWKNS6AYKZ6E6MOUVF2OYMON3MIUASWL3JLY5E3ISDJFELYBRZ @@ -451,40 +238,6 @@ m/44'/148'/8' GABTYCZJMCP55SS6I46SR76IHETZDLG4L37MLZRZKQDGBLS5RMP65TSX SC6N6GYQ2 m/44'/148'/9' GAKFARYSPI33KUJE7HYLT47DCX2PFWJ77W3LZMRBPSGPGYPMSDBE7W7X SALJ5LPBTXCFML2CQ7ORP7WJNJOZSVBVRQAAODMVHMUF4P4XXFZB7MKY ``` -SLIP39 - Shamir Secret Sharing shares (non-deterministic) - group threshold = 2; groups = [(2, 3), (1, 1), (2, 3)]: - -``` -[['edge vexed acrobat leaf breathe black math aspect pumps oral receiver have ' - 'result island various weapon cover husband welcome endless', - 'edge vexed acrobat lily ajar camera railroad cinema gross taught prayer ' - 'liquid length blue length estimate amazing cover smart grief', - 'edge vexed acrobat lungs check album moisture emphasis system grant testify ' - 'physics endorse raisin ladybug oral cubic sunlight very ladybug'], - ['edge vexed beard leader duke advocate loyalty equation wireless radar slice ' - 'express pistol grocery style devote glasses airline example perfect'], - ['edge vexed ceramic leaf angry bulge cradle angel senior watch reward agency ' - 'destroy prune race usual wrist hospital retreat desktop', - 'edge vexed ceramic lily ancestor pregnant library earth escape junior ' - 'makeup kidney flexible beaver volume surface writing fangs smug loud', - 'edge vexed ceramic lungs answer hesitate black snapshot slap tracks staff ' - 'finger hamster traveler formal aircraft duration patrol merit lyrics']] -``` - -SLIP39 - Stellar keys: - -``` -m/44'/148'/0' GA5D465BLRTA3U7UOVBFC4B7NBKISL62OSMOEERDAQUDOOHZLAZAFVCM SDVUPCYZPUFIGHDMPWKUVRZV6C72CRX7DT3UKK75C5SHM3IIMMUMJJ4L -m/44'/148'/1' GABB36PFFIJXOJTORX7IJBM3ECNDYUN35ZIE4SOXADDIXADPKVRSGDB7 SBVVZWVIP5FL5XRB6DK6MN567SZ4CHJNXCPYWCEWOMMJ5DHAM5HC4B3I -m/44'/148'/2' GB4YPCN7MXUDYHFPQW5FRPUX6AYEXG6LQO537L2367PTQPYQ3VMLPETZ SCIUU473TFAMPA2INXHIHLGMTSBNQ3BRXGETOGWMOKYDWNFE5LARKN7X -m/44'/148'/3' GDX2EUQQQBTFRZZUGWECF5UMXRAHQ5KWVGW6U7HKEKXAQHBH4T4MQJAG SB24IVJVT34UAR337BQLJ4IIGOFJ7EODATKOWI2NMUL74XZITMVLPJZ5 -m/44'/148'/4' GDJQHGSVRBFLDXMCN6LPF23SVJHYNZIOH2XC4RQYI2CTY4YFM4VD4QB5 SB6ALSO7TDROHXLQYEE6HLMDPK5QK7YTRRO6OLQYHOBLPAHO7QGCCR2T -m/44'/148'/5' GAW6PQVK22D4HMYVU3QEO4LMR4736QBQ2MTWCBOAIINP6IKXN4IYY4BW SDXTH6HSOMCEHJBPYTV5VZGLVSLVIKCCD3BKAUSX35EVRLNNLAT527QP -m/44'/148'/6' GDURBDQZ73EAAQ3ZGXS2A6X3VJJDXV7PFMBTS3DKIROBE7UETXUCTWI6 SAILOQQI4INX77ZYBAMSHAIVZRIHQX47Q7GQ4RDQ7XW4YI4B7ZWWXCGU -m/44'/148'/7' GD37CHASVMM3VKFGK7WGG3KSNST3Z2Y4Y5HJODXAUPN7C5V4DI64QA5R SCXCCWLX43UDGKDOFMO3UXDOXUFJ3KVHXXUEX2RRULI55PFUQZJ72YEP -m/44'/148'/8' GAG6Z3FYOGWIB5D5MFG5XDKWYH63PBZTAQHIQQWKQNBETWXMQ7LC7AJZ SB777RSMY5AJUKDDQRTNHWKSYQS75XZIOYICIPLE5R6NZ2VONS7V5LTI -m/44'/148'/9' GBAMYLBYFYUBJ6N7HZFFFWJ5U7H2BJDH7UFOCQU2XDQPKGCIEK5PATFK SAXMTDP4GFC7PCQZNPXMGYEMO4SWPUQRBSGE5R2WYWTCW3QJAKYHZA6F -``` - ## Reference Implementation - Console HD wallet: https://github.com/stellar/go/tree/master/tools/stellar-hd-wallet @@ -495,7 +248,7 @@ m/44'/148'/9' GBAMYLBYFYUBJ6N7HZFFFWJ5U7H2BJDH7UFOCQU2XDQPKGCIEK5PATFK SAXMTDP4G - Rust: https://github.com/ahalabs/rs-sep5 - Node package: https://github.com/chatch/stellar-hd-wallet - Python Stellar SDK: https://github.com/StellarCN/py-stellar-base (See - [README 1.2](https://github.com/StellarCN/py-stellar-base/blob/master/README.md)) + [README 1.2](https://github.com/StellarCN/py-stellar-base/blob/main/README.rst)) - .NET Standard 2.0 SDK: https://github.com/elucidsoft/dotnetstandard-stellar-hd-wallet - iOS and macOS SDK: https://github.com/Soneso/stellar-ios-mac-sdk#12-deterministic-generation - Flutter SDK: https://github.com/Soneso/stellar_flutter_sdk (See @@ -505,4 +258,4 @@ m/44'/148'/9' GBAMYLBYFYUBJ6N7HZFFFWJ5U7H2BJDH7UFOCQU2XDQPKGCIEK5PATFK SAXMTDP4G ## Acknowledgements -Many thanks for @lenondupe for implementing Ledger app and @zulucrypto for starting a discussion about key derivation. +Many thanks for @lenondupe for implementing Ledger app and @zulucrypto for starting a discussion about key derivation. \ No newline at end of file diff --git a/ecosystem/sep-0046.md b/ecosystem/sep-0046.md new file mode 100644 index 000000000..44bd3a54f --- /dev/null +++ b/ecosystem/sep-0046.md @@ -0,0 +1,322 @@ +## Preamble + +``` +SEP: 0046 +Title: Key Sharing Method for Stellar Keys +Authors: Pamphile Roy <@tupui> +Track: Standard +Status: Draft +Created: 2025-01-15 +Updated: 2025-01-15 +Version 0.1.0 +Discussion: TBA +``` + +## Simple Summary + +This proposal describe a method to share Stellar Keys. The interface is an extension of the [SEP-5]. + +## Motivation + +Smart wallets are becoming ubiquitous. Most wallet leverage a mnemonic codes which users are +asked to safely store offline. This poses some operational security concerns and brings the need for +a standard to store secrets offline in a secure and resilient manner. + +Such method should have the following attributes: + +- allow to split a secret in shares, +- guarantee that the secret can only be de cyphered using a given number of shares, +- allow the use of an additional passphrase to further protect the secret. + +While similar in some ways, multi-signature is a different concept and has to be considered +separately and should be viewed as complementary. + +Adopting a standard methodology should significantly improve self-custodian setups' security +giving user more peace of mind. + +## Specification + +Shamir Secret Sharing (SSS) method, as described in +[SLIP-0039](https://github.com/satoshilabs/slips/blob/master/slip-0039.md) should be used as a way to split a +mnemonic code into multiple parts. SSS is a two-layer scheme: _G_ groups are split into _N_ distinct members. +_g_ ≤ _G_ groups are required to reconstruct the mnemonic. Each group being comprised of a specific threashold of +members 1 ≤ _t_ ≤ _N_. + +The entropy (which can be derived from a mnemonic code) should be used to derive the multiparts menomonic. +The parts are non-deterministic and any derivation leads to the same set of keys. As recommended for single +mnemonic codes, we recommend using 256 bits of entropy. Which leads to 33 word mnemonic phrases. + +While BIP-0039 can be derived from the entropy, it is not compatible with +SLIP-0039 as noted in the standard. This means that BIP-0039 derived addresses +are different from SLIP-0039 derived addresses. + +## Design Rationale + +`SLIP-39` is an industry standard and is being implemented in some hardware wallets. + +Alternatives considered include: + +- XOR method, +- Using a passphrase only, +- Splitting the mnemonic codes in shares, +- Multiple backups. + +## Test Cases + +These test cases use the same entropy as used for [SEP-5]. + +### Test 1 + +Entropy: + +``` +713a3ae074e60e56c6bd0557c4984af1 +``` + +SLIP39 - Shamir Secret Sharing shares (non-deterministic) - group threshold = 2; groups = [(2, 3), (1, 1), (2, 3)]: + +``` +[['premium penalty acrobat leaf aquatic ivory simple mineral axle party slim ' + 'acrobat priest tackle engage ladybug snake literary debris enjoy', + 'premium penalty acrobat lily chest boundary order romp necklace echo detect ' + 'adorn blimp ecology guilt emission camera tofu force aircraft', + 'premium penalty acrobat lungs born phrase glad lend actress ladle drove ' + 'realize nylon wavy buyer pleasure mandate bumpy ugly sweater'], + ['premium penalty beard leader angry afraid airline easy alive slim music ' + 'painting submit boundary soul fact task valuable speak fancy'], + ['premium penalty ceramic leaf duke holy usual spider program midst penalty ' + 'upgrade very item radar improve romantic leaves pink multiple', + 'premium penalty ceramic lily admit mule decorate adorn club alcohol flash ' + 'acrobat standard stay deploy envy level august stilt ruler', + 'premium penalty ceramic lungs acrobat leader buyer item response penalty ' + 'crucial party wisdom civil rhythm piece elevator erode adequate acne']] +``` + +SLIP39 - Stellar keys: + +``` +m/44'/148'/0' GC5RE2NMJU472NN66ENXZS4YK5I6CPYPE4JZ2BIMPWSD7IBRSKKH6QUB SC2E6KW4K4ZXT52KNAWKVPHYHAXQDEBRJW7FOUJUPOMGTKRSZXZH5VTO +m/44'/148'/1' GDMUEO4GKPBZMRS7R3766TC3AXZ7CTTVWJNFJI5MNACBWYF33EQM26FQ SCCGSSYNFUDLKMTBRH7BMGM7AMLBFX6MS4TBOABZT6T73SG7N5LYKMYY +m/44'/148'/2' GBM3QWZCEW4I3NMAQJBTSISDYP3L7HZXCHQ5J2KT4PRE5RBYNNCNLHIT SDJ7TN2DDCRCIX7DYUSBUW6CJIGTTCFXBMNO2IW6RYPLMCFF5X2YX62V +m/44'/148'/3' GDFLHV6UY2A2GFI4BQ4KEPZ5GGEILGF4U3ILQVL3ROXR46XW2E4EMSXJ SBCPEGJUE3AK66A4H7VLIU2W422MWQHA6QOSOELUYNZQMP7CTIQRFXT3 +m/44'/148'/4' GDSN6TWIAV256DBMVTKAC7WJ6TYP4IID44KIUNJHR6SRJ6O5O5QHBQFB SDCAR5B3UVAFUGBUW6VYXK47RYYCGPJ4QFC2ERCU4H5DP56IO22IZIU6 +m/44'/148'/5' GCYICO73QRKOJRAZ4GOAXMH7JDEX5OPBEYQNAQTW75YR6UUSZ7VET3FO SC326YSVFQCINTT46BTI6JSUNRNB55ZLSUD6K4Z67ZU7HNK226RAWZ37 +m/44'/148'/6' GBLDONQAXRAVYIDI7IMK6UGRU6ZA27DZDQEUBOCLTHQMFVAWFLZNDIV5 SAVQD5P52RQEGQ7XJPX5HONKJE34NRJMQQNXVGVDWPMIBMMP7U36Q4QH +m/44'/148'/7' GCSKWTJ4FIAAWA6FLNQJXXLTW6IUQZFMDTZGSJV55ETPL4LJLMASVBXF SADEZZTVW534ZQAH2F3IO574LD6QZCV3FDH6X755A74YQACY34ISEHSY +m/44'/148'/8' GCUM4SVCNRU3J3BWQAICS5O6EUEIGIUUZ476TPXOTTFPVAVKRBHLNSW4 SDJINTL2KKQ3GR4XFKZVODS23EY43HULAQHUAMY44BEQFWMBSN6B57RQ +m/44'/148'/9' GDI42ZQY3DIO2PQJKHAMYCQE526K6QMXQKKLZDBMA3TMJULNVYULGK47 SDMP7WPRX73IUOX4OANSWYO3QS5ZR45J27MLRTLUHX42W4FQQQNKKQIH +``` + +### Test 2 + +Entropy: + +``` +b781c27351c7024355cf7f0b0efdc7f85e046cf9 +``` + +SLIP39 - Shamir Secret Sharing shares (non-deterministic) - group threshold = 2; groups = [(2, 3), (1, 1), (2, 3)]: + +``` +[['scroll spew acrobat leaf length mayor cleanup visitor yoga response public ' + 'equation beard fortune simple coal prisoner easel guest race recall adapt ' + 'critical', + 'scroll spew acrobat lily regular herald ambition knit educate relate salt ' + 'dough morning dynamic else network large review usher legend package ' + 'penalty picture', + 'scroll spew acrobat lungs vitamins civil sweater ceiling nervous rapids ' + 'fiction trouble acne modern scout surprise both early walnut forbid wolf ' + 'garbage worthy'], + ['scroll spew beard leader grief move dive custody admit always vexed emerald ' + 'medical debris vanish dish glance payroll shadow building grocery fridge ' + 'visitor'], + ['scroll spew ceramic leaf lift expect reaction diminish dining cricket ' + 'enlarge daughter testify machine yield epidemic arena scene science ' + 'tendency flexible lyrics genre', + 'scroll spew ceramic lily petition twice cowboy symbolic river criminal ' + 'rescue best cards cultural curly debut spray that afraid aspect jewelry ' + 'pupal keyboard', + 'scroll spew ceramic lungs smith alcohol network golden dress endless prize ' + 'beam activity rumor formal wolf phantom mental walnut ivory material award ' + 'cubic']] +``` + +SLIP39 - Stellar keys: + +``` +m/44'/148'/0' GDSAWDY5G4WNVPSJKBZVGEWCYIJLJLEBRBPT7MC5SBNCIKVLXO3CZRPT SDJTZ2M7PEFR63MQNXSVYHP3XM34ECD2AT4BEHTCTXIUZSKGF7UDNYTR +m/44'/148'/1' GBLNTCU4JPLRTTY4EQN2QOHGZRMWYEZ23SNKQ5OD6RHG3GQJFMHKMTLM SCERLFXDSVXI63D2DN4I3JRRY2EP5R6FXBEEDNN3K3276UPZRTCKOROI +m/44'/148'/2' GDJ3ZAJPBQ6OKYPLBIFZUGTELLDEIML62XGW772WEDQOQ2IZCPCE6XD2 SCTJSPQKGU7MFAQIBL7G7BV53SJWCAGRYF3C2SOI6WN3XCN3TOYN5TMY +m/44'/148'/3' GAWWJ576FFDG2IMWDD7BSR3V6QNMLQ5BHMDVAWU5IFVGDGEEJ4IL3MSP SCU3ITBZGPEOTCUULFIY5BQOR7IIW5V7WAGHWXWMRR62PDXLDP3FOPMV +m/44'/148'/4' GD7OQMNXI2VDXUHKV4N3PU3YQ4LAXI6G37CGWLSGLYA5KDP2XZKHF4TT SBBVQUN7B3OQZ4UKSN6SZ4PSE2YFCKED3NTAYFLWX7PNOCKQG64W6F3W +m/44'/148'/5' GCREIV2Y5YAV5A6KVYQU7G2OJFB3NBYCZ7WXXUKNFXWGNE5VJWOPJLK6 SBDACZKVNXFX7DZY5ZHUXFJDS5L66XOT7DDCDP6WWEOVYEGZC5NGZ6OW +m/44'/148'/6' GBUHXUFGTZNM75MWWLBLQDV2OFAVJTF3BMX4BHMEMRYXWKDMTWBAFXNN SBQMLUR66CJ5XPBVYFTDDJFBQCUPU2YNL54AFZGPZMS3MLHKQHWIW3VX +m/44'/148'/7' GBNRZ557ACSQNIH7G5J2WCIEOEDDEBUQM3RKX544ZTJGJKLAWBYYKAH3 SBYDBB7QETKHNP4P6D42TUZR7Q7ZBBBNRDNAZQ5GA726EDYBEDLAG54M +m/44'/148'/8' GD6JMVP6LHKYJ5YMFEM4W64S3WZ44BLFZTSPUPGR5D7HJSFEYYTJC7IM SB5CETFULTKFS2VUD2QCQTFBPFEPMCD2T6HSFD3BKVRCXZ5RZBBGYA2W +m/44'/148'/9' GBSVOB7K4XDHQ4KVM2RNTIHRNIJNQJXZY7LJ7HPQNB6APGFNB7H43CBM SDNK47MOK6I6MIBO7BWNTGH27D3VFZFLCDC2VLLOZLLQQNMXLX66OZKW +``` + +### Test 3 + +Entropy: + +``` +150df9e3ab10f3f8f1428d723a6539662e181ec8781355396cec5fc2ce08d760 +``` + +SLIP39 - Shamir Secret Sharing shares (non-deterministic) - group threshold = 2; groups = [(2, 3), (1, 1), (2, 3)]: + +``` +[['easel thorn acrobat leaf aspect gravity fishing company drove dress actress ' + 'survive total screw meaning best petition elder hairy undergo should party ' + 'ultimate sled afraid justice upstairs guest browser fridge saver enforce ' + 'acid', + 'easel thorn acrobat lily adult trash beam category costume smear aluminum ' + 'rebuild permit switch extend relate laden axle airport force unhappy blue ' + 'flame angel aviation ambition penalty talent glen location dryer ruler ' + 'spend', + 'easel thorn acrobat lungs ajar rich sugar crunch pickup order beyond ' + 'geology speak username craft deadline race company pumps trouble deliver ' + 'market legend crucial rescue burning flea adorn excuse crazy mansion ' + 'physics friendly'], + ['easel thorn beard leader anatomy burning testify percent that knit firefly ' + 'vampire breathe finance heat salt mortgage museum eraser kitchen drink ' + 'hamster imply friar umbrella umbrella blanket military paces result mouse ' + 'epidemic thorn'], + ['easel thorn ceramic leaf auction replace earth survive body edge lilac ' + 'email verify detailed yelp regular entrance camera weapon educate desktop ' + 'window shaped example invasion laser taste wits vitamins knife prune idle ' + 'discuss', + 'easel thorn ceramic lily animal railroad vocal peaceful bucket alarm visual ' + 'earth episode true acrobat response together fantasy camera sugar holy fact ' + 'coastal darkness grownup vegan dwarf remember album leaves cage costume ' + 'pile', + 'easel thorn ceramic lungs aide physics rapids clothes pitch average ' + 'gasoline receiver company equip branch puny aide educate criminal cargo ' + 'coastal cover aspect medical tracks grasp alien involve both roster trouble ' + 'hybrid deny']] +``` + +SLIP39 - Stellar keys: + +``` +m/44'/148'/0' GDU4DGABAZWLFZGULPL5L6G3DTILN4CY2YECXJCPQ5POADE65K4A6CUY SDNYGARXVJLMWYUO22K4YAEPKJBHVESCA75WTOSABVTV2TYND2NSZSPM +m/44'/148'/1' GBGNGTVQWRVEAPXOH56RRWOPQ5VGKEXFSNGGCBZ6HQGHJPRGF7YUHUAX SAWSEVE5SZQB23Q5BLXPRMOKRH664IL623T4NWSXBVBVSWJGEUGVMZQA +m/44'/148'/2' GBNZVUS6FMXJW5SKPX5GHX7H72BFFI7DKQFWF6VE4MPOCWE42JJB355O SDI5MVQMXWAE3VCMQ6PW62NIOMIUX6R2MIDYHJXNYI563PY7VBW4VRFI +m/44'/148'/3' GAIKDCZXIVGBMDZYGOUQ6OVWEWVBJV5RVTT6EFKUFWKNFZYVB6MHCEFZ SAYJYKL7SUL3AMIDP52CGZRLNUSLA5ZSAFJ2LXSKOHJS4JIHY2SCMR6K +m/44'/148'/4' GAK7TNQVH6VA2UIWGHRWXDLZFF7HB5MUYVNAZSCXG4APJINABZLHRCW3 SBGYGIPNZAQ3G6AQFLO3BFA4YE6F67COJ7JRE3NHCYDR2G7EQP5UVCHF +m/44'/148'/5' GCSCLBOK73O655YK42EDETB6MRFPYK3STI2E627B3JPVP6XBLCFNFNOC SDXBOWH3D5Z4VG6RONU4GEG3JG4SEBHVNBVPQBZBCN4C5H4RIK3WSV3P +m/44'/148'/6' GCLDFZ47ZSJ3X2BJ56RGMLWTARMMM2O5EYGIREVOLRDB647BWBZEHFKK SDJ7HPXEBOM6TRNHHW7Z227QUTQJELGZCEMW2Z3EQSTPNP7TDA6KQ4U3 +m/44'/148'/7' GB23ZJUW5NIS5AAKCRGZADBU4BCJTOVWCU3CXRVKQYAMDSTA6YWCDCXS SDTHC4GZR3VJU2SJC2TQVI3WSZOXPJFVHJFZV2BK2KQHOQUHC56ZYPGX +m/44'/148'/8' GAPKRA2YYGLMAWMSOS5BDETLKDPARNETFQEZ2HUBJT4KPKGASHHD6WBV SC2NMPSN7MHJJX5MGVYFN5XXVNWSWY4OLT3CWNASFWLZ74LFBAS67CS6 +m/44'/148'/9' GCEJISZFNS4FQGAKGQAWOWM67WMFDI62FAO3477UCNUZVCRX7L3FV3RB SCBG6YQXH2ZIWEPLANXRG3OLAUEULA5FO6QTJLWX5VCENSZVCHFPCLEH +``` + +### Test 4 + +Entropy: + +``` +1ffa5d83ea6593d666b350d6f3e652d598c3063ab51ed4c2e9d6a1d07c8545df +``` + +SLIP39 - Shamir Secret Sharing shares (non-deterministic) - group threshold = 2; groups = [(2, 3), (1, 1), (2, 3)]: + +``` +[['stick omit acrobat leaf ancestor born lunar valid extra patrol museum ' + 'mortgage check flexible remove lawsuit laundry quick priority tenant cubic ' + 'express capacity domestic thank patrol density knit skunk sharp laden ' + 'raisin describe', + 'stick omit acrobat lily analysis cards depict mason dance angry emphasis ' + 'mayor ultimate dough shelter answer floral float undergo capital scholar ' + 'network very mother careful clock slap robin estimate lizard twin upstairs ' + 'hunting', + 'stick omit acrobat lungs argue agree vexed amuse retailer inform crucial ' + 'shaped capital breathe fluff museum deny class cultural bulb funding ' + 'charity submit glance replace hesitate station mild income extra tidy ' + 'obesity rocky'], + ['stick omit beard leader aviation flea resident smell organize ugly angel ' + 'violence laden voting upstairs river buyer holy software prospect pupal ' + 'gravity physics mailman square medal story treat prisoner unknown kind ' + 'famous space'], + ['stick omit ceramic leaf ajar bulb puny cradle blimp daughter filter raspy ' + 'filter humidity calcium charity western climate slap evoke apart hearing ' + 'mountain morning premium salon subject privacy rival epidemic river expect ' + 'increase', + 'stick omit ceramic lily aquatic repeat pacific news platform capacity ' + 'finance problem amount amuse privacy evil improve dismiss railroad survive ' + 'gather diploma rich change reject breathe activity lily warmth either slush ' + 'dominant depart', + 'stick omit ceramic lungs alive survive undergo climate kind slice findings ' + 'loyalty wits climate goat mule wildlife talent easel acid scandal bike ' + 'satoshi moisture listen intend involve wrist likely flip process raisin ' + 'bundle']] +``` + +SLIP39 - Stellar keys: + +``` +m/44'/148'/0' GCLBBT6RFBL6GKWCOEPH5RWNBNZNXSDM6WBYQP3QYV5NP6HS3GW2NVRT SAECCVRPXZANUW6YTDHEEKBWGHJYH6NTPHNN3PZY2VYHWCAYVVOKSURO +m/44'/148'/1' GBHS4EKPUFUNI42ZRSBYW3OOFOYFH3XMZRQAGUCU33LTL7OB22BT6AJG SBVFGV3H3Q4RVQWNMHGI27BFO4Z62G4H5I4LRLRXE24SC4JFBSLVGS3V +m/44'/148'/2' GBKMTZUVOLVW4LU5CF3KJNFHGJFF5OXLVXLXGHNSNLLD5XYSAJSZPMQJ SB3R54O465R5FWHGHAQTGXJNLI5KB2EMBX3NS3STKVSAJHLE2IPHVJ7Z +m/44'/148'/3' GDROOKCCNLALPNKI7P4GLW2I4YH7XKIRQOQ2RRZYOW2YV7MFWBIPWHSF SBJIIA77QPPVLJYXGTR4KPXMAQE7VXEXPWDSCFXMV7FUQDLJQ636T5RN +m/44'/148'/4' GBA2BUMVATRU45CF4XBFFURD732TOJ6LYI52GP7UKAKD7CU6B3DTOHNU SB567ZOD3RJXDQJ5E7V7UKCOPRCRKOS5ETZNNWBZ2R52ZHORS4YPZ5YA +m/44'/148'/5' GCORJHF42MCI5GZMN2TJEM5TG6VKKHRVT3EIHE2VWGAAU6PLL7H6XMVL SCQVNOR7ABTKG3OALN5MCEX7NYB5UGCIUTCZU722MWFDPBLGRCFZISXK +m/44'/148'/6' GD326LUPOSLBZTAJ7HW6DFUNJKTQIVAKWF4NMPR7OFT5Z7KRIRFETSSU SATL53TIN6MEYCJJUOCZNEWTI4PLVU3RJTDURGVNWBNLBAZCOE5WM72N +m/44'/148'/7' GDZ2QUEZR2P7GD5YIFHC5KR2UWZQZPM7QGUJD6B7GM6PQZSK5LAOMQMM SDPPPFNANXCLC2LBSX2UZ5Y6IHLHKJIPONEAHREGEOIBQFUOCVCLFLY7 +m/44'/148'/8' GCM7GLBSXJ6COKOFXKYKO25JAK2CHPFGGXY45D2ZSQB6IOMUWZOGIGED SDBJKWYKJ4HK66WQFDJ6N5S6N5NH5EHYVTXHLIER55TKBW6W4IYYVLUK +m/44'/148'/9' GADNSELTTAUNBAEXXNKEHZYBM6HMUDJFP57VYZGUF6BDR7NNO6UJJYHO SD2H6SC7GNA6JQYPDE6KKQHB6Q3VNHVK2CLKFFLM6TGKPY3EHGRM6DS5 +``` + +### Test 5 + +Entropy: + +``` +00000000000000000000000000000000 +``` + +SLIP39 - Shamir Secret Sharing shares (non-deterministic) - group threshold = 2; groups = [(2, 3), (1, 1), (2, 3)]: + +``` +[['edge vexed acrobat leaf breathe black math aspect pumps oral receiver have ' + 'result island various weapon cover husband welcome endless', + 'edge vexed acrobat lily ajar camera railroad cinema gross taught prayer ' + 'liquid length blue length estimate amazing cover smart grief', + 'edge vexed acrobat lungs check album moisture emphasis system grant testify ' + 'physics endorse raisin ladybug oral cubic sunlight very ladybug'], + ['edge vexed beard leader duke advocate loyalty equation wireless radar slice ' + 'express pistol grocery style devote glasses airline example perfect'], + ['edge vexed ceramic leaf angry bulge cradle angel senior watch reward agency ' + 'destroy prune race usual wrist hospital retreat desktop', + 'edge vexed ceramic lily ancestor pregnant library earth escape junior ' + 'makeup kidney flexible beaver volume surface writing fangs smug loud', + 'edge vexed ceramic lungs answer hesitate black snapshot slap tracks staff ' + 'finger hamster traveler formal aircraft duration patrol merit lyrics']] +``` + +SLIP39 - Stellar keys: + +``` +m/44'/148'/0' GA5D465BLRTA3U7UOVBFC4B7NBKISL62OSMOEERDAQUDOOHZLAZAFVCM SDVUPCYZPUFIGHDMPWKUVRZV6C72CRX7DT3UKK75C5SHM3IIMMUMJJ4L +m/44'/148'/1' GABB36PFFIJXOJTORX7IJBM3ECNDYUN35ZIE4SOXADDIXADPKVRSGDB7 SBVVZWVIP5FL5XRB6DK6MN567SZ4CHJNXCPYWCEWOMMJ5DHAM5HC4B3I +m/44'/148'/2' GB4YPCN7MXUDYHFPQW5FRPUX6AYEXG6LQO537L2367PTQPYQ3VMLPETZ SCIUU473TFAMPA2INXHIHLGMTSBNQ3BRXGETOGWMOKYDWNFE5LARKN7X +m/44'/148'/3' GDX2EUQQQBTFRZZUGWECF5UMXRAHQ5KWVGW6U7HKEKXAQHBH4T4MQJAG SB24IVJVT34UAR337BQLJ4IIGOFJ7EODATKOWI2NMUL74XZITMVLPJZ5 +m/44'/148'/4' GDJQHGSVRBFLDXMCN6LPF23SVJHYNZIOH2XC4RQYI2CTY4YFM4VD4QB5 SB6ALSO7TDROHXLQYEE6HLMDPK5QK7YTRRO6OLQYHOBLPAHO7QGCCR2T +m/44'/148'/5' GAW6PQVK22D4HMYVU3QEO4LMR4736QBQ2MTWCBOAIINP6IKXN4IYY4BW SDXTH6HSOMCEHJBPYTV5VZGLVSLVIKCCD3BKAUSX35EVRLNNLAT527QP +m/44'/148'/6' GDURBDQZ73EAAQ3ZGXS2A6X3VJJDXV7PFMBTS3DKIROBE7UETXUCTWI6 SAILOQQI4INX77ZYBAMSHAIVZRIHQX47Q7GQ4RDQ7XW4YI4B7ZWWXCGU +m/44'/148'/7' GD37CHASVMM3VKFGK7WGG3KSNST3Z2Y4Y5HJODXAUPN7C5V4DI64QA5R SCXCCWLX43UDGKDOFMO3UXDOXUFJ3KVHXXUEX2RRULI55PFUQZJ72YEP +m/44'/148'/8' GAG6Z3FYOGWIB5D5MFG5XDKWYH63PBZTAQHIQQWKQNBETWXMQ7LC7AJZ SB777RSMY5AJUKDDQRTNHWKSYQS75XZIOYICIPLE5R6NZ2VONS7V5LTI +m/44'/148'/9' GBAMYLBYFYUBJ6N7HZFFFWJ5U7H2BJDH7UFOCQU2XDQPKGCIEK5PATFK SAXMTDP4GFC7PCQZNPXMGYEMO4SWPUQRBSGE5R2WYWTCW3QJAKYHZA6F +``` + +## Changelog + +- `v0.1.0` - Initial draft. + +## Implementations + +- Python Stellar SDK: https://github.com/StellarCN/py-stellar-base (from version 12.1) + +[SEP-5]: sep-0005.md +[Rust soroban-sdk]: https://github.com/stellar/rs-soroban-sdk From c3ddd0abf4f918709cb473234ac2205dcdfcffa8 Mon Sep 17 00:00:00 2001 From: Pamphile Roy <23188539+tupui@users.noreply.github.com> Date: Wed, 15 Jan 2025 02:07:15 +0100 Subject: [PATCH 10/13] Update ecosystem/sep-0046.md --- ecosystem/sep-0046.md | 1 - 1 file changed, 1 deletion(-) diff --git a/ecosystem/sep-0046.md b/ecosystem/sep-0046.md index 44bd3a54f..ec8badb9e 100644 --- a/ecosystem/sep-0046.md +++ b/ecosystem/sep-0046.md @@ -319,4 +319,3 @@ m/44'/148'/9' GBAMYLBYFYUBJ6N7HZFFFWJ5U7H2BJDH7UFOCQU2XDQPKGCIEK5PATFK SAXMTDP4G - Python Stellar SDK: https://github.com/StellarCN/py-stellar-base (from version 12.1) [SEP-5]: sep-0005.md -[Rust soroban-sdk]: https://github.com/stellar/rs-soroban-sdk From c5f0da17fae62c8bcf0cfecef681276509f06f90 Mon Sep 17 00:00:00 2001 From: Tupui <23188539+tupui@users.noreply.github.com> Date: Wed, 15 Jan 2025 02:23:59 +0100 Subject: [PATCH 11/13] Small typo --- ecosystem/sep-0046.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ecosystem/sep-0046.md b/ecosystem/sep-0046.md index ec8badb9e..ec07ed10d 100644 --- a/ecosystem/sep-0046.md +++ b/ecosystem/sep-0046.md @@ -25,7 +25,7 @@ a standard to store secrets offline in a secure and resilient manner. Such method should have the following attributes: - allow to split a secret in shares, -- guarantee that the secret can only be de cyphered using a given number of shares, +- guarantee that the secret can only be deciphered using a given number of shares, - allow the use of an additional passphrase to further protect the secret. While similar in some ways, multi-signature is a different concept and has to be considered From b5496294a1d8d5e042bf08bf4dfcc16b4f869f90 Mon Sep 17 00:00:00 2001 From: Pamphile Roy <23188539+tupui@users.noreply.github.com> Date: Thu, 16 Jan 2025 13:02:29 +0100 Subject: [PATCH 12/13] Apply suggestions from code review Co-authored-by: Jun Luo <4catcode@gmail.com> --- ecosystem/sep-0046.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ecosystem/sep-0046.md b/ecosystem/sep-0046.md index ec07ed10d..e004dd19b 100644 --- a/ecosystem/sep-0046.md +++ b/ecosystem/sep-0046.md @@ -3,7 +3,7 @@ ``` SEP: 0046 Title: Key Sharing Method for Stellar Keys -Authors: Pamphile Roy <@tupui> +Authors: Pamphile Roy <@tupui>, Jun Luo <@overcat> Track: Standard Status: Draft Created: 2025-01-15 @@ -14,7 +14,7 @@ Discussion: TBA ## Simple Summary -This proposal describe a method to share Stellar Keys. The interface is an extension of the [SEP-5]. +This proposal describes a standard method for splitting and sharing mnemonic codes using Shamir's Secret Sharing scheme as defined in [SLIP-0039](https://github.com/satoshilabs/slips/blob/master/slip-0039.md). This extends [SEP-5] by providing a secure way to distribute Stellar key custody among multiple parties. ## Motivation From 47a92b8db129edbe69ae8765f39fee6e054a8d76 Mon Sep 17 00:00:00 2001 From: Tupui <23188539+tupui@users.noreply.github.com> Date: Fri, 24 Jan 2025 21:09:03 +0100 Subject: [PATCH 13/13] Rephrase rationale section --- ecosystem/sep-0046.md | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/ecosystem/sep-0046.md b/ecosystem/sep-0046.md index e004dd19b..5179c6943 100644 --- a/ecosystem/sep-0046.md +++ b/ecosystem/sep-0046.md @@ -52,14 +52,13 @@ are different from SLIP-0039 derived addresses. ## Design Rationale -`SLIP-39` is an industry standard and is being implemented in some hardware wallets. +`SLIP-39` was chosen as the base standard because of: -Alternatives considered include: - -- XOR method, -- Using a passphrase only, -- Splitting the mnemonic codes in shares, -- Multiple backups. +1. Industry adoption and testing, +2. Hardware wallet support, +3. Individual shares do not reveal anything about the whole secret, +4. Can be used as part of a backup strategy, +5. Advanced custodial setup with groups having their own thresholds. ## Test Cases