hzrd149 on Nostr: A rough draft of a BUD-10 for multi-part uploads to blossom servers. not sure if this ...
A rough draft of a BUD-10 for multi-part uploads to blossom servers. not sure if this is a good idea so I'm looking for feedback
https://github.com/hzrd149/blossom/pull/67The biggest issue comes from the fact that blossom relies on the sha256 hash of the whole blob. so there isn't a way to verify that each uploaded chunk is part of a whole until the all the chunks are uploaded.
I think this issue can be mitigated slightly if the client includes `x` tags in the auth event for each chunk its uploading. so that the server can verify that each chunk was created by the client.
In the case of payments, I think it could be possible for the client to pay for each chunk. although this might require more requests or the server to define an x sats/bytes pricing.
Inspiration taken from
https://tus.io/Thanks to
fiatjaf (npub180c…h6w6) for making me aware of it
Published at
2025-04-19 15:27:26Event JSON
{
"id": "2ebbcdbd9a8212e470c69fd6d7788020c37e356c7f15e047c9356d2f8b372fab",
"pubkey": "266815e0c9210dfa324c6cba3573b14bee49da4209a9456f9484e5106cd408a5",
"created_at": 1745076446,
"kind": 1,
"tags": [
[
"p",
"3bf0c63fcb93463407af97a5e5ee64fa883d107ef9e558472c4eb9aaaefa459d"
],
[
"client",
"noStrudel",
"31990:266815e0c9210dfa324c6cba3573b14bee49da4209a9456f9484e5106cd408a5:1686066542546"
]
],
"content": "A rough draft of a BUD-10 for multi-part uploads to blossom servers. not sure if this is a good idea so I'm looking for feedback\nhttps://github.com/hzrd149/blossom/pull/67\n\nThe biggest issue comes from the fact that blossom relies on the sha256 hash of the whole blob. so there isn't a way to verify that each uploaded chunk is part of a whole until the all the chunks are uploaded.\n\nI think this issue can be mitigated slightly if the client includes `x` tags in the auth event for each chunk its uploading. so that the server can verify that each chunk was created by the client.\nIn the case of payments, I think it could be possible for the client to pay for each chunk. although this might require more requests or the server to define an x sats/bytes pricing.\n\nInspiration taken from https://tus.io/\nThanks to nostr:npub180cvv07tjdrrgpa0j7j7tmnyl2yr6yr7l8j4s3evf6u64th6gkwsyjh6w6 for making me aware of it",
"sig": "d3fb20ae88b7c0c822d5bec3b8542dd895543f127bba5de35884475a0ad07ecfc4a23c060e607a805b7ced3b0a091b7029acdcca6cc85af048bbdb1355c39242"
}