summaryrefslogtreecommitdiff
path: root/a2/86848c31f8f1cc1292d57e75577ffc6549c6fd
blob: b0e489a49f8a17c645e783912e48128682555d3e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
Delivery-date: Sun, 23 Feb 2025 12:06:29 -0800
Received: from mail-oi1-f192.google.com ([209.85.167.192])
	by mail.fairlystable.org with esmtps  (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
	(Exim 4.94.2)
	(envelope-from <bitcoindev+bncBDZPZFXW2IMRBPH75W6QMGQEEINRBTY@googlegroups.com>)
	id 1tmIFA-0004gI-Kh
	for bitcoindev@gnusha.org; Sun, 23 Feb 2025 12:06:29 -0800
Received: by mail-oi1-f192.google.com with SMTP id 5614622812f47-3f419ef1f77sf555063b6e.2
        for <bitcoindev@gnusha.org>; Sun, 23 Feb 2025 12:06:28 -0800 (PST)
ARC-Seal: i=2; a=rsa-sha256; t=1740341183; cv=pass;
        d=google.com; s=arc-20240605;
        b=hYLREmuO5wbC7JPopZyhbG+Z/27iN/L1oOahZJ3H9CcrMFps73Evg3Fc5qKRsRFIGo
         wliICCmVqQcMEqC3KLWxL5OBgDyTY8vZBcW/vN/GRIqLxT8KSyDdEzDclrR/EPZOUO6f
         eZWwnLRRPmykaZ7VPm2I/5GiWj3cA1VYvYzWlXlw9ZtZuDk1W+gLZ7quWkxkTonjjl+6
         TxPd2f90+4rci7xgWS13+H2BoQSPV//P3WOohU2BfB5ndrhqQJJpTftoqFwx9o3OG1kB
         cVkvGSMIY8BL2mdOu1mrX3BUN+hktSwP70V0y6wkyjp3uwGsMGLtbURH0M52G2BaJtbd
         qNCg==
ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605;
        h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post
         :list-id:mailing-list:precedence:cc:to:subject:message-id:date:from
         :in-reply-to:references:mime-version:sender:dkim-signature
         :dkim-signature;
        bh=fO6xSLeufbbWuCr1VZ4xFFnbvcgsGgXWbxlh0i2R2a8=;
        fh=ei86kXboXpV6Qzr8OlvwAJ8Q7fVc1uxaABfKsfIc8bU=;
        b=RECwW9TlXeQ4l6Q8cmr+16+Kthk+4j3Fm2AY36lXMS0hmmuOv02tcX46MuPcR9uw/a
         8f1QPpWFDYIaACswOB5Jg5vIdVXgBo70DLdIPLBs9+Y4M3byf81CBHMOOEmo7YjPVipT
         GgYPyZI2xbBf90ED/5UdL/YHxLyFUn/uzdh5PkVBKjZ/hYUqI0BkPMBcjWexD+Xp3qOW
         pAcxRV0B9eqH4B00j4rgbLCbnZ6npjZ1XpJjVWCPHEUBkcmYIealAt0rjuX4qPz/gITq
         5KI/YNITVstgfK/2BTdZSb3l9KSiawPgsy0YRKzgNY/vZ5l0lA9z4nV2RCh9r1O/Jey+
         T9Fg==;
        darn=gnusha.org
ARC-Authentication-Results: i=2; gmr-mx.google.com;
       dkim=pass header.i=@gmail.com header.s=20230601 header.b=ievbfsG9;
       spf=pass (google.com: domain of martin.habovstiak@gmail.com designates 2607:f8b0:4864:20::92c as permitted sender) smtp.mailfrom=martin.habovstiak@gmail.com;
       dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com;
       dara=pass header.i=@googlegroups.com
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=googlegroups.com; s=20230601; t=1740341182; x=1740945982; darn=gnusha.org;
        h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post
         :list-id:mailing-list:precedence:x-original-authentication-results
         :x-original-sender:cc:to:subject:message-id:date:from:in-reply-to
         :references:mime-version:sender:from:to:cc:subject:date:message-id
         :reply-to;
        bh=fO6xSLeufbbWuCr1VZ4xFFnbvcgsGgXWbxlh0i2R2a8=;
        b=VwACSRG7hRFMK3v+kgku7jYY9LlDEpLRxSBB3/kYAxQGp5U9oUK2RkrqNcu6KZqhe5
         FHHcUDxK5JxkmXd6+tFAJ1N11c8Lb3eU6+JFYHEWQ7oh5yr88PDjrvbari9KRyHKlMI6
         6t9U+LB7mFrVae1HbVXq8CPQ23GhtK1TPdqaDIdNXXpahoLMA7Ww0uKYX6jxDfhig3r6
         iG7RswH8Kqqr6IbAxgRibj/iM8vZiCdd4mRYTWnt09Io/ANJZRAKPcnijboRXRhAnFdF
         ms2wPVtnpVY+7VZh7CVtX7m9oyzkwCEb+ryDnvr4S4ijb4YG97c6bDWpGXZ5Q67d2Jhc
         439A==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1740341182; x=1740945982; darn=gnusha.org;
        h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post
         :list-id:mailing-list:precedence:x-original-authentication-results
         :x-original-sender:cc:to:subject:message-id:date:from:in-reply-to
         :references:mime-version:from:to:cc:subject:date:message-id:reply-to;
        bh=fO6xSLeufbbWuCr1VZ4xFFnbvcgsGgXWbxlh0i2R2a8=;
        b=mmUojMoBAd9Nd4LY26UKDGVHVMt7CK3q1pLbS0R3GtMKCvYyXuuq4QX545Bqt0rEtB
         heAYv1YX0SbBrodJv3i5GtGypdlogeVJauW+5qokBLJAOLAkoxifsHyhpY6G8ALgC/rs
         fPRbpKtpWRzeObB+ZXBTTqqVCYh3rENXcJ3T8hOF7AeUrna5PL/ExgukDni1mYQqVOSU
         eDMGRchK7b22MIJ1MEKr7h5aNzhGy0TrU9dIn4KB+Lw6bboKl4syBJbOsrX53qSqJZ0K
         hrZfgx0laUVuehuSdVUpkivgOGhKf9wiMHrFM8cnBn8AQESZWPe1JpgK+V3f2/jlPaET
         rfqw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1740341183; x=1740945983;
        h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post
         :list-id:mailing-list:precedence:x-original-authentication-results
         :x-original-sender:cc:to:subject:message-id:date:from:in-reply-to
         :references:mime-version:x-beenthere:x-gm-message-state:sender:from
         :to:cc:subject:date:message-id:reply-to;
        bh=fO6xSLeufbbWuCr1VZ4xFFnbvcgsGgXWbxlh0i2R2a8=;
        b=kJxC02ev0FtOCbESusW9aFgtFzAcrNYTBRJMBh3JdJCoq+tsRXiJH04FGJCQK0AmTb
         6ZkH3VdeUeeK/flCwi1dGyB2DWBB99bularp5J0EOiVSnl3hXV/ZVlZiSL5JhyloBZ+D
         98XqmeBl5bxTDBJY99nxsu2Cue1h+UFUnpvB0Kz43ERvEc8XzPlLa7ShKyhvX0SCr/rR
         fbM79gmTWh/HIlhsNnge+r1kJJMpO7iCJBZVYYPRKwovN4ltB8BeO122moAXlSmfc7ns
         t17ILbpVX+Wupptgo/krUNcpjCuiDYBdFaALhCE1zAFcNFUqhZ3feZznUCt7R9P74zmk
         3AjA==
Sender: bitcoindev@googlegroups.com
X-Forwarded-Encrypted: i=2; AJvYcCV4M4ex36P7rTdzCbWAnRYZewaKaeTvyIjSAVgPZ1peLdi/t5B95Qi+2bUHrgBDbrZ1q7o8c2tqCvYN@gnusha.org
X-Gm-Message-State: AOJu0YxdoX5B12cNI0h9HzyS5eIgso2KyCg3QPpMZ3pfrCPe69Q/UId9
	/VfySMW6plvaRd8uE6l9iZuvX8YC8JC7/7VFbNFNooaEE5C30lFa
X-Google-Smtp-Source: AGHT+IGTgZt+A2+kOkZqUL9enHaep5qWeGgshdfBrzglMiqMkR5AM1lzCphebXp2ea8imo7XRwxJ8A==
X-Received: by 2002:a05:6871:6c08:b0:29e:43da:f5da with SMTP id 586e51a60fabf-2bd50f32ff9mr2973272fac.9.1740341182677;
        Sun, 23 Feb 2025 12:06:22 -0800 (PST)
X-BeenThere: bitcoindev@googlegroups.com; h=Adn5yVEuluEnRb1qsdKpsLFg5wFhX4LjVEaqyNvEEIwoSxc3LQ==
Received: by 2002:a05:6870:548e:b0:2a0:1e92:8674 with SMTP id
 586e51a60fabf-2bd2f9e0f98ls2219255fac.1.-pod-prod-08-us; Sun, 23 Feb 2025
 12:06:19 -0800 (PST)
X-Received: by 2002:a05:6808:10c7:b0:3f4:9e6:fdc with SMTP id 5614622812f47-3f4247c4d9bmr9133495b6e.39.1740341179905;
        Sun, 23 Feb 2025 12:06:19 -0800 (PST)
Received: by 2002:a05:6808:a81:b0:3eb:56db:3adc with SMTP id 5614622812f47-3f3e0dfbd17msb6e;
        Sun, 16 Feb 2025 00:50:20 -0800 (PST)
X-Received: by 2002:a17:90b:4a49:b0:2ee:45fd:34f2 with SMTP id 98e67ed59e1d1-2fc40d14dc9mr8458611a91.6.1739695818692;
        Sun, 16 Feb 2025 00:50:18 -0800 (PST)
ARC-Seal: i=1; a=rsa-sha256; t=1739695818; cv=none;
        d=google.com; s=arc-20240605;
        b=P3e8OEDw39yYph824OtOnvSj0OyUbOlXG3MhplGAkx3jaNPAQhugp0wVQjX6HSm2i4
         gTK+THy2WqchZMzZ2vsHWENEikSAqfHg2SbTjZNslabYFTHfhQs0r+QXVvCMHkXMJd0I
         iSYOGPdclF1J3+LcaZLAr5VJh1xhG7WcPPOy19FPufD7yOdRXnkGPGjAChgXXooi46Qb
         vE9nuTcSKXGz8Xm87f5FURtSM6a04lEHvHoGViX6IBNfBAR/FYyMfQpdhtOnPMv5Pfjk
         y/R07M4ocuAz7cZk+Pa+FhlCdTLax+AYoegNN3syyDJeEpOCD52kdlhfxwuiKqtFNVLV
         rnuw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605;
        h=cc:to:subject:message-id:date:from:in-reply-to:references
         :mime-version:dkim-signature;
        bh=6u036dJh4F7aHE2ZK78DZlFRkRUZf5hJ+sLIdegPIEs=;
        fh=jvBL4VWC+eU9mZ6TcrQ3Z+k8+9TvBWH+cxO1XulRaDU=;
        b=dwtkL9/YHZNH7b5KZO1VGV6NzXM9Sa6KiP6678dyvO0uAk/kvxapSxR4pPnescb4w1
         W5Saj9KWq+Tuv+ltvm7bD9rS4bVVcExNkynNkH7Qotk7yVgUSZMNy4S2zsUON76A/dTG
         9b0L9Lba1qXyot4EU/XZpAnbcXO7kP05PztmJS/JYGMAavH0rWSZFS2cs1y6HxnXykVo
         hVvqIoRin8IX4nBOLhWnAdFHPOLLYWkgHzp+EMkibRc0DTTnDS6P5zCSLjKe28gthHqE
         gf3SjfHgTpmTp9p+oQAwk2hlGQANjdNr82H5jXmklUBUVBxV1eTtbYVmFJQnQO+fQdia
         E9TA==;
        dara=google.com
ARC-Authentication-Results: i=1; gmr-mx.google.com;
       dkim=pass header.i=@gmail.com header.s=20230601 header.b=ievbfsG9;
       spf=pass (google.com: domain of martin.habovstiak@gmail.com designates 2607:f8b0:4864:20::92c as permitted sender) smtp.mailfrom=martin.habovstiak@gmail.com;
       dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com;
       dara=pass header.i=@googlegroups.com
Received: from mail-ua1-x92c.google.com (mail-ua1-x92c.google.com. [2607:f8b0:4864:20::92c])
        by gmr-mx.google.com with ESMTPS id 98e67ed59e1d1-2faa5cee208si822460a91.1.2025.02.16.00.50.18
        for <bitcoindev@googlegroups.com>
        (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
        Sun, 16 Feb 2025 00:50:18 -0800 (PST)
Received-SPF: pass (google.com: domain of martin.habovstiak@gmail.com designates 2607:f8b0:4864:20::92c as permitted sender) client-ip=2607:f8b0:4864:20::92c;
Received: by mail-ua1-x92c.google.com with SMTP id a1e0cc1a2514c-86714f41f5bso1069834241.3
        for <bitcoindev@googlegroups.com>; Sun, 16 Feb 2025 00:50:18 -0800 (PST)
X-Gm-Gg: ASbGncsvvy2+ZoQTav+4twT3iHr9Nk+cNKXopnCrv4DIBuM5O0utXt1lZA2wdf7ioPw
	zDVXl8MVHbimnuAYoe6UqxbALUFOoaYa+17Es0ET6QEK3ov3KdHvLj219EochavWd+9TGwq/C
X-Received: by 2002:a05:6102:509f:b0:4bc:18aa:51b1 with SMTP id
 ada2fe7eead31-4bd3fd51f63mr2339112137.21.1739695817475; Sun, 16 Feb 2025
 00:50:17 -0800 (PST)
MIME-Version: 1.0
References: <94ac8f66-1627-4526-bb34-095361a30fb4n@googlegroups.com>
In-Reply-To: <94ac8f66-1627-4526-bb34-095361a30fb4n@googlegroups.com>
From: =?UTF-8?Q?Martin_Habov=C5=A1tiak?= <martin.habovstiak@gmail.com>
Date: Sun, 16 Feb 2025 09:50:08 +0100
X-Gm-Features: AWEUYZk_iY5D7HyH1FeoUj2b0VtEKFdx-OrP_izchJgqiK-I7RDfKXTsIpoQbHI
Message-ID: <CALkkCJZWoChE_njE876zB57ptc6BdTRUb=RqXU-uJ8bKEy_exg@mail.gmail.com>
Subject: Re: [bitcoindev] Announcing Bitcoin BOSD: Standardized Withdrawal
 Output Specification for L2s
To: Jose Storopoli <jose@storopoli.io>
Cc: Bitcoin Development Mailing List <bitcoindev@googlegroups.com>
Content-Type: multipart/alternative; boundary="00000000000037cea3062e3e7fee"
X-Original-Sender: martin.habovstiak@gmail.com
X-Original-Authentication-Results: gmr-mx.google.com;       dkim=pass
 header.i=@gmail.com header.s=20230601 header.b=ievbfsG9;       spf=pass
 (google.com: domain of martin.habovstiak@gmail.com designates
 2607:f8b0:4864:20::92c as permitted sender) smtp.mailfrom=martin.habovstiak@gmail.com;
       dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com;
       dara=pass header.i=@googlegroups.com
Precedence: list
Mailing-list: list bitcoindev@googlegroups.com; contact bitcoindev+owners@googlegroups.com
List-ID: <bitcoindev.googlegroups.com>
X-Google-Group-Id: 786775582512
List-Post: <https://groups.google.com/group/bitcoindev/post>, <mailto:bitcoindev@googlegroups.com>
List-Help: <https://groups.google.com/support/>, <mailto:bitcoindev+help@googlegroups.com>
List-Archive: <https://groups.google.com/group/bitcoindev
List-Subscribe: <https://groups.google.com/group/bitcoindev/subscribe>, <mailto:bitcoindev+subscribe@googlegroups.com>
List-Unsubscribe: <mailto:googlegroups-manage+786775582512+unsubscribe@googlegroups.com>,
 <https://groups.google.com/group/bitcoindev/subscribe>
X-Spam-Score: -0.5 (/)

--00000000000037cea3062e3e7fee
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

Hi,

good idea and a nice crate! You'll hear from me soon regarding the Rust
side on your issue tracker.

Maybe you should reconsider the name. It's too similar to BSOD and myabe
you haerd taht if fisrt and lsat lteter in a wrod are the smae yuor brian
can dcedoe tehm anwyay. :)

Good luck!

Martin

D=C5=88a so 15. 2. 2025, 13:02 Jose Storopoli <jose@storopoli.io> nap=C3=AD=
sal(a):

>
> Dear Bitcoin Dev Community,
>
> I am excited to introduce Bitcoin BOSD (Bitcoin Output Script Descriptor)=
,
> a new specification and open source Rust implementation to simplify
> relay-safe (standardness-guarantee) on-chain withdrawals for Bitcoin Laye=
r
> 2 solutions.
>
> Key Features:
> - Standardness-by-construction for withdrawal outputs
> - Eliminates ad-hoc standardness rule implementations in L2s
> - Compact representation
>
> Problem Solved:
> L2 operators currently risk being unable to process withdrawals if users
> request non-standard transactions (e.g., oversized OP_RETURN). BOSD ensur=
es
> outputs are correct-by-construction according to Bitcoin network's
> standardness rules, abstracting away complex validation logic.
>
> Available on crates.io <https://crates.io/crates/bitcoin-bosd>
>
> Get Involved:
> Detailed Specification and Motivation/Rationale: SPECIFICATION.md
> <https://github.com/alpenlabs/bitcoin-bosd/blob/main/SPECIFICATION.md>
> Repository: github.com/alpenlabs/bitcoin-bosd
> Feedback welcome via GitHub Issues and Discussion; or the mailing list.
>
> This work emerged from practical challenges faced by myself and Trey Del
> Bonis (GitHub @delbonis) at Alpen Labs, while building validation logic f=
or
> processing L2 withdrawals on-chain for Strata: a Bitcoin-native BitVM-bas=
ed
> bridge to a ZK-rollup. We believe standardization in this domain will
> benefit the entire ecosystem by reducing fragmentation and improving
> interoperability.
> The specification is has a CC0 public domain license, and the Rust
> implementation is MIT/Apache-2.0 double licensed.
>
> The structure of a BOSD consists of:
>
> - 1-byte tag representing a type ID.
> - Arbitrary-length cryptographic payload (although practically bounded to
> like
>   80 bytes).
>
> Here's a table for the supported outputs. Also note that we can trivially
> extend it by adding more prefixes using the type it byte.
>
> ```
> | Type | Payload Length(s) | Payload Interpretation | Spend Type    |
> Mainnet Address Prefix |
> | ---- | ----------------- | ---------------------- | ------------- |
> ---------------------- |
> | 0    | ..=3D80             | `OP_RETURN` payload    | (N/A)         |
> (N/A)                  |
> | 1    | 20                | pubkey hash            | P2PKH         |
> `1...`                 |
> | 2    | 20                | script hash            | P2SH          |
> `3...`                 |
> | 3    | 20, 32            | SegWit v0 hash         | P2WPKH, P2WSH |
> `bc1q...`              |
> | 4    | 32                | SegWit v1 public key   | P2TR          |
> `bc1p...`              |
> ```
>
> Since we strived for compact representation both in-memory and also
> over-the-wire, BOSD does not support checksums or any native error
> correction.
>
> PS: Technically Strata is not a defect L2, since it is a 1-of-N
> trust-minimized bridge, and not a fully trustless bridge.
>
> --
> 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
> email to bitcoindev+unsubscribe@googlegroups.com.
> To view this discussion visit
> https://groups.google.com/d/msgid/bitcoindev/94ac8f66-1627-4526-bb34-0953=
61a30fb4n%40googlegroups.com
> <https://groups.google.com/d/msgid/bitcoindev/94ac8f66-1627-4526-bb34-095=
361a30fb4n%40googlegroups.com?utm_medium=3Demail&utm_source=3Dfooter>
> .
>

--=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/=
CALkkCJZWoChE_njE876zB57ptc6BdTRUb%3DRqXU-uJ8bKEy_exg%40mail.gmail.com.

--00000000000037cea3062e3e7fee
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"auto">Hi,<div dir=3D"auto"><br></div><div dir=3D"auto">good ide=
a and a nice crate! You&#39;ll hear from me soon regarding the Rust side on=
 your issue tracker.</div><div dir=3D"auto"><br></div><div dir=3D"auto">May=
be you should reconsider the name. It&#39;s too similar to BSOD and myabe y=
ou haerd taht if fisrt and lsat lteter in a wrod are the smae yuor brian ca=
n dcedoe tehm anwyay. :)</div><div dir=3D"auto"><br></div><div dir=3D"auto"=
>Good luck!</div><div dir=3D"auto"><br></div><div dir=3D"auto">Martin</div>=
</div><br><div class=3D"gmail_quote gmail_quote_container"><div dir=3D"ltr"=
 class=3D"gmail_attr">D=C5=88a so 15. 2. 2025, 13:02 Jose Storopoli &lt;<a =
href=3D"mailto:jose@storopoli.io">jose@storopoli.io</a>&gt; nap=C3=ADsal(a)=
:<br></div><blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;bor=
der-left:1px #ccc solid;padding-left:1ex"><br>Dear Bitcoin Dev Community, <=
br><br>I am excited to introduce Bitcoin BOSD (Bitcoin Output Script Descri=
ptor), a new specification and open source Rust implementation to simplify =
relay-safe (standardness-guarantee) on-chain withdrawals for Bitcoin Layer =
2 solutions.<br><br>Key Features:<div>- Standardness-by-construction for wi=
thdrawal outputs <br>- Eliminates ad-hoc standardness rule implementations =
in L2s <br>- Compact representation<br><br>Problem Solved:<br>L2 operators =
currently risk being unable to process withdrawals if users request non-sta=
ndard transactions (e.g., oversized OP_RETURN). BOSD ensures outputs are co=
rrect-by-construction according to Bitcoin network&#39;s standardness rules=
, abstracting away complex validation logic.<br><br>Available on <a href=3D=
"https://crates.io/crates/bitcoin-bosd" target=3D"_blank" rel=3D"noreferrer=
">crates.io</a><br><br>Get Involved:</div><div>Detailed Specification and M=
otivation/Rationale: <a href=3D"https://github.com/alpenlabs/bitcoin-bosd/b=
lob/main/SPECIFICATION.md" target=3D"_blank" rel=3D"noreferrer">SPECIFICATI=
ON.md</a><br>Repository: <a href=3D"https://github.com/alpenlabs/bitcoin-bo=
sd" target=3D"_blank" rel=3D"noreferrer">github.com/alpenlabs/bitcoin-bosd<=
/a><br>Feedback welcome via GitHub Issues and Discussion; or the mailing li=
st.=C2=A0<br><br>This work emerged from practical challenges faced by mysel=
f and Trey Del Bonis (GitHub @delbonis) at Alpen Labs, while building valid=
ation logic for processing L2 withdrawals on-chain for Strata: a Bitcoin-na=
tive BitVM-based bridge to a ZK-rollup. We believe standardization in this =
domain will benefit the entire ecosystem by reducing fragmentation and impr=
oving interoperability.</div><div>The specification is has a CC0 public dom=
ain license, and the Rust implementation is MIT/Apache-2.0 double licensed.=
</div><div><br></div><div>The structure of a BOSD consists of:<br><br>- 1-b=
yte tag representing a type ID.<br>- Arbitrary-length cryptographic payload=
 (although practically bounded to like<br>=C2=A0 80 bytes).<br></div><div><=
br></div><div>Here&#39;s a table for the supported outputs. Also note that =
we can trivially extend it by adding more prefixes using the type it byte.<=
/div><div><br></div><div>```</div><div>| Type | Payload Length(s) | Payload=
 Interpretation | Spend Type =C2=A0 =C2=A0| Mainnet Address Prefix |<br>| -=
--- | ----------------- | ---------------------- | ------------- | --------=
-------------- |<br>| 0 =C2=A0 =C2=A0| ..=3D80 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 | `OP_RETURN` payload =C2=A0 =C2=A0| (N/A) =C2=A0 =C2=A0 =C2=
=A0 =C2=A0 | (N/A) =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0|<br>| 1 =C2=A0 =C2=A0| 20 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0| pubkey hash =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0| P2PKH=
 =C2=A0 =C2=A0 =C2=A0 =C2=A0 | `1...` =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0 |<br>| 2 =C2=A0 =C2=A0| 20 =C2=A0 =C2=A0 =C2=A0 =C2=A0=
 =C2=A0 =C2=A0 =C2=A0 =C2=A0| script hash =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A0 =C2=A0| P2SH =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0| `3...` =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 |<br>| 3 =C2=A0 =C2=A0| 20, 32 =
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0| SegWit v0 hash =C2=A0 =C2=A0 =C2=
=A0 =C2=A0 | P2WPKH, P2WSH | `bc1q...` =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0|<br>| 4 =C2=A0 =C2=A0| 32 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0| SegWit v1 public key =C2=A0 | P2TR =C2=A0 =C2=A0 =C2=
=A0 =C2=A0 =C2=A0| `bc1p...` =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A0|<br></div><div>```</div><div><br></div><div>Since we strived for compac=
t representation both in-memory and also over-the-wire, BOSD does not suppo=
rt checksums or any native error correction.</div><div><br></div><div>PS: T=
echnically Strata is not a defect L2, since it is a 1-of-N trust-minimized =
bridge, and not a fully trustless bridge.</div>

<p></p>

-- <br>
You received this message because you are subscribed to the Google Groups &=
quot;Bitcoin Development Mailing List&quot; group.<br>
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to <a href=3D"mailto:bitcoindev+unsubscribe@googlegroups.com" target=
=3D"_blank" rel=3D"noreferrer">bitcoindev+unsubscribe@googlegroups.com</a>.=
<br>
To view this discussion visit <a href=3D"https://groups.google.com/d/msgid/=
bitcoindev/94ac8f66-1627-4526-bb34-095361a30fb4n%40googlegroups.com?utm_med=
ium=3Demail&amp;utm_source=3Dfooter" target=3D"_blank" rel=3D"noreferrer">h=
ttps://groups.google.com/d/msgid/bitcoindev/94ac8f66-1627-4526-bb34-095361a=
30fb4n%40googlegroups.com</a>.<br>
</blockquote></div>

<p></p>

-- <br />
You received this message because you are subscribed to the Google Groups &=
quot;Bitcoin Development Mailing List&quot; group.<br />
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to <a href=3D"mailto:bitcoindev+unsubscribe@googlegroups.com">bitcoind=
ev+unsubscribe@googlegroups.com</a>.<br />
To view this discussion visit <a href=3D"https://groups.google.com/d/msgid/=
bitcoindev/CALkkCJZWoChE_njE876zB57ptc6BdTRUb%3DRqXU-uJ8bKEy_exg%40mail.gma=
il.com?utm_medium=3Demail&utm_source=3Dfooter">https://groups.google.com/d/=
msgid/bitcoindev/CALkkCJZWoChE_njE876zB57ptc6BdTRUb%3DRqXU-uJ8bKEy_exg%40ma=
il.gmail.com</a>.<br />

--00000000000037cea3062e3e7fee--