From mboxrd@z Thu Jan 1 00:00:00 1970 Delivery-date: Mon, 01 Sep 2025 16:15:17 -0700 Received: from mail-oa1-f63.google.com ([209.85.160.63]) by mail.fairlystable.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.94.2) (envelope-from ) id 1utDk5-00021o-2h for bitcoindev@gnusha.org; Mon, 01 Sep 2025 16:15:17 -0700 Received: by mail-oa1-f63.google.com with SMTP id 586e51a60fabf-30cce8f9e59sf5338019fac.1 for ; Mon, 01 Sep 2025 16:15:16 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlegroups.com; s=20230601; t=1756768511; x=1757373311; darn=gnusha.org; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :list-id:mailing-list:precedence:reply-to:x-original-sender :mime-version:subject:references:in-reply-to:message-id:to:from:date :from:to:cc:subject:date:message-id:reply-to; bh=/UJFkt1kNWM2wTvebDAFzt0I4fm7Ftxxs1hS/Ftx4rI=; b=h+GbAEQKERwV+Ag4SfwojWxPgZUV/Sql2F/5g9VFP1bVx86fCp/q69yZ13aNY0beDZ c6U5DPqxMdDGQ1ZCtghiX6kitCNWYqWsYbH1Wg/mJkxNNh3TYUY9sQXBVsgbL4fmkiHP 0uxVlyDaJTf+fIAsIUwK2ufCkF7iowkeHUj408UDtoweDG/LEalp10ZaZkOrrKzLl9b3 gyycBmfJPnVWlo4JqiM/YR1YJk/1I3U620lwkhkYmUhKkFZbds8X+113Kb5TH8M3cpnJ iWCglPyXG6RxDU8ZCrkyH6DrjJWbQCQoV9W3aJJe4uLioLZ1rVWktPKq409H50ewmC8Q 1EdQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1756768511; x=1757373311; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :list-id:mailing-list:precedence:reply-to:x-original-sender :mime-version:subject:references:in-reply-to:message-id:to:from:date :x-beenthere:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=/UJFkt1kNWM2wTvebDAFzt0I4fm7Ftxxs1hS/Ftx4rI=; b=Q9FWueilbxcI2xl1SqhUGWYB+R4niETIm/otuc3m/IFgbXIYUK5Fy7PB+FrDeEclVJ MwjbE18flj/KzACKnDbSqU7dbBs1S9Khn7kXYRb5/RJdMnjLRBrsxP+hVAlK+pcP38im CE6zJ3FV+fQ0wC86QJe1e0rKVxaCRAliH8JnHPZENHCY5zLODw/GPPSBCKuFobG35XCq nJB2SRqYZVO2OCNIRSGkD967Jdz1y7EUDmecQ1VczcgrGdcevmg0z5AyWGM5ou4WRDkT RIokNpye8CWbnORfne5fuVMgwAUGERmXwrtq2YBheSQgB9KZoDRWPmo2aNyzkBt35H3Y oXaQ== X-Forwarded-Encrypted: i=1; AJvYcCVCTIRiXWTibCm/7xA8uBv/BdWAvdYVmlZgckUCXL1fHQydq3QLh3+f4hT3zCHla0VhbsEajyG6ovtC@gnusha.org X-Gm-Message-State: AOJu0YzWc8mqL2Ly3VK5Olq/37d7um8zLJfdFLWor3UOoEVsskI3WKXr W26SxpBMHOBQTKBTGdKMBDvW+htHa6zzjLV2KCYyMS4DlL2uEu+h7UF7 X-Google-Smtp-Source: AGHT+IGr6wuVlSCqc0zy3H8fA8swhZqvN+HZGtHsVVYbChSyUnZPpuMAjOsgxGyxGvTg+vPa/1XBHg== X-Received: by 2002:a05:6870:a913:b0:315:7456:1b2a with SMTP id 586e51a60fabf-319633483ddmr3409662fac.24.1756768510838; Mon, 01 Sep 2025 16:15:10 -0700 (PDT) X-BeenThere: bitcoindev@googlegroups.com; h=AZMbMZfSyzmUWHf5euvSfmfVByhtHhkCwApP4RuiyrWVa7SCIw== Received: by 2002:a05:6870:e3c5:b0:30b:b2fd:9588 with SMTP id 586e51a60fabf-315962e3776ls1864138fac.2.-pod-prod-03-us; Mon, 01 Sep 2025 16:15:07 -0700 (PDT) X-Received: by 2002:a05:6808:f89:b0:437:75ea:6c6c with SMTP id 5614622812f47-437f7dc465bmr3573444b6e.47.1756768507633; Mon, 01 Sep 2025 16:15:07 -0700 (PDT) Received: by 2002:a05:690c:998f:b0:723:969e:b18b with SMTP id 00721157ae682-723969ebc7ems7b3; Mon, 1 Sep 2025 11:37:39 -0700 (PDT) X-Received: by 2002:a05:690c:688b:b0:71a:195b:707e with SMTP id 00721157ae682-7227635cd0amr113987267b3.1.1756751858275; Mon, 01 Sep 2025 11:37:38 -0700 (PDT) Date: Mon, 1 Sep 2025 11:37:37 -0700 (PDT) From: "'Ben Westgate' via Bitcoin Development Mailing List" To: Bitcoin Development Mailing List Message-Id: In-Reply-To: <8a0d48f9-bc15-492f-8b81-14dac4729a5cn@googlegroups.com> References: <774faeb9-6c6b-4545-8071-56ec03e78cd0n@googlegroups.com> <8a0d48f9-bc15-492f-8b81-14dac4729a5cn@googlegroups.com> Subject: [bitcoindev] Re: [BIP Proposal] Add BIP-0093 (Codex32) as application to BIP-0085 MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="----=_Part_205160_120551579.1756751857727" X-Original-Sender: BenWestgate@Protonmail.com X-Original-From: Ben Westgate Reply-To: Ben Westgate Precedence: list Mailing-list: list bitcoindev@googlegroups.com; contact bitcoindev+owners@googlegroups.com List-ID: X-Google-Group-Id: 786775582512 List-Post: , List-Help: , List-Archive: , List-Unsubscribe: , X-Spam-Score: -1.0 (-) ------=_Part_205160_120551579.1756751857727 Content-Type: multipart/alternative; boundary="----=_Part_205161_1715538440.1756751857727" ------=_Part_205161_1715538440.1756751857727 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Hi Javier, Thank you for your feedback.=20 I added pseudocode for the character value selection. I added a column and= =20 row to the n table to clarify the t=3D=3D0 constraint on n, removed the not= es=20 and in the unshared secret section made the normative statement: 'When thre= shold=20 =3D=3D "0", n MUST be *1* and the output is a codex32 secret.' I=E2=80=99ve updated the PR with these changes and would appreciate your re= view. Commit:=20 https://github.com/BenWestgate/bips/commit/fa6e9788bf04d271792ed4ea89a112d1= 2284ef02 Best regards, Ben Westgate On Monday, September 1, 2025 at 6:34:39=E2=80=AFAM UTC-5 Javier Mateos wrot= e: > Hi Ben, > > Thank you for your proposal to integrate BIP-0093 (codex32) as an=20 > application within BIP-0085 > > Reviewing the specification, I believe I see two areas where we could=20 > improve clarity for implementers: > > 1) The DRNG=E2=86=925-bit extraction process could benefit from explicit= =20 > pseudocode to avoid implementation variations > 2) The rule 'threshold =3D=3D 0 implies n =3D=3D 1' currently appears as = a note=20 > but could be clearer as a normative requirement" > > Best Regards, > Javier Mateos > > El domingo, 31 de agosto de 2025 a las 19:29:46 UTC-3, Ben Westgate=20 > escribi=C3=B3: > >> Hello bitcoin-dev, >> >> I=E2=80=99m Ben Westgate, a contributor interested in deterministic wall= et=20 >> backups and seed management. >> >> Per BIP-0002, I propose listing *BIP-0093 (codex32)*=20 >> as an= =20 >> application of >> *BIP-0085 (Deterministic Entropy from BIP32 Keychains)=20 >> *,=20 >> similar to the existing BIP39 application. This allows wallets to derive= =20 >> codex32 backups from BIP-0032 master keys. >> >> *Summary*=20 >> >> -=20 >> =20 >> Application number: 93' >> - Derivation path:=20 >> m/83696968'/93'/{hrp}'/{threshold}'/{n}'/{byte_length}'/{id0}'/{id1}'= /{id2}'/{id3}'/{index}'=20 >> =20 >> Codex32, defined in BIP-93, is a human-readable encoding with=20 >> checksumming and share indexing designed for SSS backups of BIP-0032 see= ds.=20 >> This PR proposes a deterministic way to generate codex32 strings using= =20 >> BIP-85. >> >> *Rationale*=20 >> >> -=20 >> =20 >> Mirrors the existing BIP-85 application for BIP-39. >> -=20 >> =20 >> Codex32 offers error correction, hand verification, identifiers, and= =20 >> secret sharing features compared to BIP-39. >> -=20 >> =20 >> Adds a standardized way for wallets to generate codex32 backups from= =20 >> BIP-85-derived entropy >> -=20 >> =20 >> Test vectors and reference implementation are linked to in the PR. >> =20 >> *Risks and alternatives*=20 >> >> -=20 >> =20 >> Wallet adoption of codex32 is still limited, though a draft PR #32652= =20 >> =20 >> for importing codex32 strings to Bitcoin Core has support. >> - Codex32 implementers could use the BIP-85 dice application, but=20 >> defining a direct application improves interoperability. >> >> PR:=20 >> https://github.com/bitcoin/bips/compare/master...BenWestgate:bips:codex3= 2=20 >> >> >> Feedback is welcome. >> Best regards, >> Ben Westgate > > --=20 You received this message because you are subscribed to the Google Groups "= Bitcoin Development Mailing List" group. To unsubscribe from this group and stop receiving emails from it, send an e= mail to bitcoindev+unsubscribe@googlegroups.com. To view this discussion visit https://groups.google.com/d/msgid/bitcoindev/= dc8e0b5f-24dc-471d-89e4-4b4b2effcdc0n%40googlegroups.com. ------=_Part_205161_1715538440.1756751857727 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable

Hi Javier,

Thank you for your feedbac= k.

I added pseudocode = for the character value selection. I added a column and row to the n table = to clarify the t=3D=3D0 constraint on n, removed the notes and in the unsha= red secret section made the normative statement: 'When threshold =3D= =3D "0", n MUST be 1 and the output is a codex32= secret.'

I=E2=80=99ve = updated the PR with these changes and would appreciate your review.

Commit: https://github.com/Ben= Westgate/bips/commit/fa6e9788bf04d271792ed4ea89a112d12284ef02

Best regards, Ben Westgate



On Monday, September 1, 2025 at 6:34:39=E2=80=AFAM UTC-5= Javier Mateos wrote:
Hi Ben,

Thank you for your proposal to integrate BIP-0093 (= codex32) as an application within BIP-0085

Reviewing the specificati= on, =C2=A0I believe I see two areas where we could improve clarity for impl= ementers:

1) The DRNG=E2=86=925-bit extraction process could benefit= from explicit pseudocode to avoid implementation variations
2) The rule= 'threshold =3D=3D 0 implies n =3D=3D 1' currently appears as a not= e but could be clearer as a normative requirement"

Best Regards= ,
Javier Mateos

El domingo, 31 de agosto de 2025 a las 19:29:46 UTC-3, Ben= Westgate escribi=C3=B3:

Hello bitcoin-dev,

I=E2=80=99m Ben Westgate, a contributor interested in deterministic wall= et backups and seed management.

Per BIP-0002, I propose listing BIP-00= 93 (codex32) as an application of
BIP-0085 (Deterministic Entropy from BIP3= 2 Keychains), similar to the existing BIP39 application. This = allows wallets to derive codex32 backups from BIP-0032 master keys.

Summary

  • Application number: 93'

  • Derivation path: m/83696968'/93'/{hrp}'/{threshold}'/= {n}'/{byte_length}'/{id0}'/{id1}'/{id2}'/{id3}'/{in= dex}'

Codex32, defined in BIP-93, is a human-re= adable encoding with checksumming and share indexing designed for SSS backu= ps of BIP-0032 seeds. This PR proposes a deterministic way to generate code= x32 strings using BIP-85.

Rationale

  • Mirrors the existing BIP-85 application for BIP-39.

  • Codex32 offers error correction, hand verification, identifiers, and sec= ret sharing features compared to BIP-39.

  • Adds a standardized way for wallets to generate codex32 backups from BIP= -85-derived entropy

  • Test vectors and reference implementation are linked to in the PR.

Risks and alternatives

  • Wallet adoption of codex32 is still limited, though a draft PR #32652 for importing codex32 = strings to Bitcoin Core has support.

  • Codex32 implementers could= use the BIP-85 dice application, but defining a direct application improve= s interoperability.

PR: https:/= /github.com/bitcoin/bips/compare/master...BenWestgate:bips:codex32

<= p>Feedback is welcome.

Best regards,
Ben Westgate
<= /blockquote>

--
You received this message because you are subscribed to the Google Groups &= quot;Bitcoin Development Mailing List" group.
To unsubscribe from this group and stop receiving emails from it, send an e= mail to bitcoind= ev+unsubscribe@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/bitcoind= ev/dc8e0b5f-24dc-471d-89e4-4b4b2effcdc0n%40googlegroups.com.
------=_Part_205161_1715538440.1756751857727-- ------=_Part_205160_120551579.1756751857727--