Avatar
Jean Do
f7849c6c90c4ffe3be8059bd899d85d3fd38c0bb79749f9e79653820351ad8f8
80% bug-fix, 19% new-bugs.

This is just a test

I think it's worth recording and timestamping the`whois` reports for these domains today. Many were updated -- within minutes or hours of each other. It feels like they're all controlled by the same decision maker. If you don't timestamp these as they are right now, will lose that this activity occurred in response to this post since someone can decide to update later in a less suspicious manner.

On Sunday, June 29th 2025, I built and verified the following images for SeedSigner release v0.8.6:

```

file: seedsigner_os.0.8.6.pi0.img

sha256: da32ce21f185404ccefd58e76e55ae7f1ac9fe2df2100bc7bbab3e03c5d71b6d

file: seedsigner_os.0.8.6.pi02w.img

sha256: d1669ad3aec6046dc43a673056a258e00c389ce23fa0ff754378cd0267516888

file: seedsigner_os.0.8.6.pi2.img

sha256: 029ecacc6ba45ae23cb953d7111cf98b0689f1eefb1cee101300acb10167b098

file: seedsigner_os.0.8.6.pi4.img

sha256: 47879ded57a91ecf46dbb44825699c53550bbf5aa6aa7c5b6519913a8863d157

```

Others have also verified binary reproducibility; you can too.

https://github.com/SeedSigner/seedsigner/releases/tag/0.8.6

~

Couldn't the same result be achieved -- over time with an option for opting-out, by doubling the -datacarriersize default with each future release?

It might leave the choice (at least the perception of choice) with the individual node runner.

It might offer the chance to learn over time that it is, or is not making things any worse.

It might not be so much different than node runners upgrading slowly.

It might not provoke node runners who are worried about this change to considering ditching bitcoin-core right now, many years before this merge would even make a difference (since many won't upgrade immediately).

If those file contents don't each hash to their name and they're not empty contents: Is it possible that there is some common "seed" that they were hashed with and you just need to find that seed? Or some common xor that is needed but not known that makes them appear "corrupted"? If they're not empty contents, I wouldn't ditch them just yet.

What does "corrupted" mean?

Does it really the case that those files' contents don't each hash to their name?

While github's SeedSigner/seedsigner-translations repo, a submodule of seedsigner, will be the target for pull-requests, the idea is to organize all translators and one validator per language within transifex. The validator for each language would then issue the pull request once translations are polished.

So all translations for untranslated strings, and suggestions for already-translated strings can be done exclusively in transifex.

Thank you in advance for taking a look. No matter how many times a single translator looks at a translation catalog, another translator can almost always easily identify improvements.

I'll let Ace/BitcoinPrecept know to look out for you.

OMG -- how kind! I cannot resist such an offer.

Hoping to have more eyes on the french translation of seedsigner v0.8.5 soon. Currently there is a natural francophone translating and validating at transifex -- and myself (qui parle le français comme une vache espagnole, "Mooo").

Latest screenshots are in my fork:

https://github.com/jdlcdl/seedsigner-screenshots/blob/v0.8.5%2Bfr/fr/README.md

Note that these screenshots are static, but the app on device is not. Where you see overruns in screenshots (text running past the right side of the screen) at least for the PageTitleLines and Buttons... that text will gently scroll back and forth on a seedsigner device so that all text is readable.

...while the project is:

https://github.com/SeedSigner/seedsigner/blob/dev/README.md

...and translators (and validators) organize per language at:

https://explore.transifex.com/seedsigner/

On resolution: "To learn about Miniscript in 2025"

By the end of last week: covered Liana's Expanding-Multisig wallets.

Notes for the P2WSH version:

https://gist.github.com/jdlcdl/d83a83ec7d47d98888a8647b636d567d

Notes for the P2TR version:

https://gist.github.com/jdlcdl/c38e1b80cd814e48e1d158a98cf704f6

On resolution "Learn about Miniscript in 2025"

Earlier this week: worked thru Liana's Simple Inheritance wallets.

Notes for the p2wsh version:

https://gist.github.com/jdlcdl/b0dea22a8a6caf0fd7c40b244357d8d2

Notes for the p2tr version:

https://gist.github.com/jdlcdl/b17c6b551839adb5b7b7d4ef9574e48e

Replying to Avatar Nick Klockenga

SeedSigner v0.8.5 has reproducible builds from source. This means sole trust in SeedSigner the person (or any other SeedSigner contributors) isn’t needed for the image that most people run on thier SeedSigner. This trust can be distributed through others attesting they to can produce the same image byte for byte.

If you have docker installed, a few hours of CPU cycles available, then you too can contribute and attest that all 4 device images built from source match the released binaries.

```

git clone --recursive https://github.com/SeedSigner/seedsigner-os.git

cd seedsigner-os

export DOCKER_DEFAULT_PLATFORM=linux/amd64

export RELEASE_TAG=0.8.5

git checkout $RELEASE_TAG

git submodule init

git submodule update

for device in pi0 pi02w pi2 pi4

do

SS_ARGS="--$device --app-branch=$RELEASE_TAG" docker compose up --force-recreate --build

done

cd images

shasum -a 256 seedsigner_os.0.8.5*

```

My personal attestation:

bcb901e27d309d85f086dc80b49b153d6b1caab2247eba2811731384d58f2f3e seedsigner_os.0.8.5.pi0.img

398d9bf9cda0858fe97c0788b353194c1c902335a858b7dbf5d7b213bda75d96 seedsigner_os.0.8.5.pi02w.img

1e93a82e62d4a1defbdc777a6762a813f4cb5c3ef9090da0bd07542dfd6f62bf seedsigner_os.0.8.5.pi2.img

d298ffad3c765e11e48873efc6d1c65e4230528fde4d5bd4701bb507acbf493c seedsigner_os.0.8.5.pi4.img

matching https://github.com/SeedSigner/seedsigner/releases/download/0.8.5/seedsigner.0.8.5.sha256.txt nostr:note1pv8saw5dt6chv93amaj4a5kp3x5ha5v2ycgnnhx32dgw3lp9hvks7q5s4q

SeedSigner v0.8.5, released on the evening of February 4th 2025, brings multi-language internationalization to the entire code-base with an initial localization in Spanish.

Since v0.7.0 SeedSigner has supported binary reproducibility which effectively obsoletes the need for verifying a signed release-manifest from somebody that most of us cannot know, because it enables anyone to rebuild the same release-image, byte-for-byte, directly from the open-source code repository.

I hereby attest that:

* I've been following the SeedSigner project since October 2022,

* I take great pride in helping out however I can as part of that team -- following and testing code changes as it evolves, exchanging ideas with the wonderful SeedSigner Community,

* and that I was able to reproduce ALL of the release images for v0.8.5, matching the sha256 hashes that Nick mentions in nostr event "nevent1qvzqqqqqqypzqxj6lwv69s9n5z9y52h0c9r2ec8fuak2pe9nuarj6dy3eqp4hta3qqsxu2zt9v9004u8ndn7ggxeem98u0fqrn372ku3c6v4u3dpst265ag8vykap" and also contained in the release-manifest "seedsigner.0.8.5.sha256.txt" signed by SeedSigner-the-man having rsa fingerprint ~ "4673 9B74 ... 0726 0119".

-jdlcdl

nostr:nevent1qvzqqqqqqypzqxj6lwv69s9n5z9y52h0c9r2ec8fuak2pe9nuarj6dy3eqp4hta3qqsxu2zt9v9004u8ndn7ggxeem98u0fqrn372ku3c6v4u3dpst265ag8vykap

Related to the gist shared above,

Following is a similar Liana Simple-Inheritance Taproot setup.

Same secrets, same pubkeys, same Miniscript within the descriptor,

but that's where the similarities end:

note: I have yet to fully understand the taproot script-path debugger session... this is a learning-in-progress exercise after all. Will get to it.

https://gist.github.com/jdlcdl/b17c6b551839adb5b7b7d4ef9574e48e

"All I have is my node, a stateless signer, and my secrets. How to...?"

I've been working on learning to "make do" with minimal tools:

* Bitcoin Core as a watch-only wallet (via cli and rpc),

* Stateless signers SeedSigner and Krux,

* SeedQReader, a QR-encoder/decoder, to cut-n-paste between my watch-only bitcoin-rpc sessions and a signing device.

Last week I got thru documenting single-sig and multisig Native Segwit wallets, including sections for:

* Secrets setup

* Extended Public Keys

* Output Descriptor

* Watch-Only Wallet setup

* Spending Funds (the important how-to steps)

* Evolution of a PSBT and

* Understanding Programmable Money (stepping thru `btcdeb` bitcoin script debugger)

This week I'm working on doing the same for default Liana Miniscript wallets.

Yesterday, I got thru Liana's Simple-Inheritance P2WSH setup.

https://gist.github.com/jdlcdl/b0dea22a8a6caf0fd7c40b244357d8d2

Today, I'm on schedule to finish similar for Taproot.

If I stay on track, I should have similar for Liana's Expanding-Multisig wallets, in P2WSH as well as Taproot, by the end of this week.

These works are part of my resolution: "to learn Miniscript in 2025".

I'll keep sharing small W's if and when they arrive.

Sharing another tiny W on the journey to:

Better understanding of Miniscript and bitcoin script in 2025

(via Bitcoin Core, SeedQReader, and signers Krux and SeedSigner).

This time, it's a 2-of-3 p2wsh (native segwit) multisig

I've added a section w/ kallewoof's `btcdeb` bitcoin script debugger.

It's great for learning bitcoin-script in baby-steps and will be invaluable when I finally get to spends for Miniscript.

https://gist.github.com/jdlcdl/7a853ab9ff0867b060b073f22432df3c

Just before the new year, I resolved to finally learning about Miniscript.

With limited wallet choices for doing so, it took me into a dive to see what could be accomplished with bitcoin-cli, a qr-code encoder/decoder for cut-n-paste, and a DIY air-gapped stateless signing device.

After getting through all that, realizing I'd bitten off more than I could chew, I thought I'd step back from the Miniscript dive to get more comfortable gluing the above tools together (this time in a python session) and performing simple signing operations -- learning as I go.

Yesterday's exploration: the simplest of necessities w/ limited tools.

https://gist.github.com/jdlcdl/e7b3c01384c83fb7c5518c0e053747f4

More to follow? I'll do my best to share "W"s if and when they emerge.

The above two commitments are part of a project I'm working on:

to repeat Rob Hamilton's `Miniscript` template known as "mint-005"

(aka: AnchorWatch's "Trident Vault")

... with a slight twist (block-heights instead of timestamps)

I've been keeping notes of this work-in-progress at the link below:

https://gist.github.com/jdlcdl/f719db259ceea821cde541d9754c1f56

Learning as I go, it feels great to have finally resolved to learning about Miniscript in 2025.

I may share more "W"s a they occur.