Bitcoin Forum
June 03, 2024, 04:54:37 PM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: Depending on orphan blocks - abuse of the protocol ?  (Read 174 times)
unsigned_long_long (OP)
Jr. Member
*
Offline Offline

Activity: 39
Merit: 6


View Profile
August 30, 2020, 08:57:44 PM
 #1

Suppose I'm writing an app that uses the Bitcoin blockchain to store small amounts of data - eg. hashes, I write a tx to a block and later that block becomes orphaned. Ok so the tx probably will get confirmed in the forked chain, either at the same height or later, or not - if there's a fee spike or the network just forgets the tx for some reason.

In any case, is it considered an abuse of the protocol to refer to the orphan block in my app? , so if I get 1 confirmation in a orphan block, is it safe to assume that block will be remembered by the network forever? Are there any official guarantees about the availability of orphan blocks, in bitcoind or other implementations, or are they prune-able and I should expect it to be pruned sooner or later?
gmaxwell
Moderator
Legendary
*
expert
Offline Offline

Activity: 4200
Merit: 8439



View Profile WWW
August 30, 2020, 09:55:15 PM
 #2

Stale blocks  (the correct term for what you want) are not generally accessible.
unsigned_long_long (OP)
Jr. Member
*
Offline Offline

Activity: 39
Merit: 6


View Profile
August 30, 2020, 10:17:15 PM
 #3

Stale blocks  (the correct term for what you want) are not generally accessible.

So no, ok cool. Thanks!
odolvlobo
Legendary
*
Offline Offline

Activity: 4340
Merit: 3258



View Profile
September 01, 2020, 06:05:00 AM
Merited by ABCbits (1)
 #4

In any case, is it considered an abuse of the protocol to refer to the orphan block in my app? , so if I get 1 confirmation in a orphan block, is it safe to assume that block will be remembered by the network forever? Are there any official guarantees about the availability of orphan blocks, in bitcoind or other implementations, or are they prune-able and I should expect it to be pruned sooner or later?

There is no guarantee that a node will see a block if it is not in the main chain because blocks are generally not propagated once they are determined to be stale.

Join an anti-signature campaign: Click ignore on the members of signature campaigns.
PGP Fingerprint: 6B6BC26599EC24EF7E29A405EAF050539D0B2925 Signing address: 13GAVJo8YaAuenj6keiEykwxWUZ7jMoSLt
unsigned_long_long (OP)
Jr. Member
*
Offline Offline

Activity: 39
Merit: 6


View Profile
September 03, 2020, 12:51:33 AM
 #5

In any case, is it considered an abuse of the protocol to refer to the orphan block in my app? , so if I get 1 confirmation in a orphan block, is it safe to assume that block will be remembered by the network forever? Are there any official guarantees about the availability of orphan blocks, in bitcoind or other implementations, or are they prune-able and I should expect it to be pruned sooner or later?

There is no guarantee that a node will see a block if it is not in the main chain because blocks are generally not propagated once they are determined to be stale.

Makes sense. I think some block explorers keep them, but probably just for data analysis purposes.
HeRetiK
Legendary
*
Offline Offline

Activity: 2954
Merit: 2093


Instant cryptocurrency exchange with own reserves!


View Profile
September 03, 2020, 12:34:47 PM
 #6

In any case, is it considered an abuse of the protocol to refer to the orphan block in my app? , so if I get 1 confirmation in a orphan block, is it safe to assume that block will be remembered by the network forever? Are there any official guarantees about the availability of orphan blocks, in bitcoind or other implementations, or are they prune-able and I should expect it to be pruned sooner or later?

There is no guarantee that a node will see a block if it is not in the main chain because blocks are generally not propagated once they are determined to be stale.

Makes sense. I think some block explorers keep them, but probably just for data analysis purposes.

Well, the ones that the nodes of those block explorers see. I'm not sure how many nodes your typical block explorers have running but some stale blocks are bound to be left unnoticed.

▄▄███████
▄███████████████▄
▄███████████████████▄
▄██████████▄██████████▄
▄██████████▄████████████▄
█████████████████████████
████████▄████████████████
█████████████████████████
▀███████████████████████▀
▀████████▐████████████▀
▀██████▐████████████▀
▀██████████████▀
███████▀▀
 
 INSTANT 
██████████████████████
████████▀░░░░▀████████
█████▀░▄█▀▀█▄░▀█████
██████░▄▀░░░░▀▄░██████
██████░█░░░░░░█░██████
██████▄░▀▄▄▄▄▀░▄██████
████▀░░░░░░░░░░░░▀████
███░░▄▄▄▄▄▄▄▄▄▄▄▄░░███
██▌░▐█░░░░░░░░░░█▌░▐██
██░░░█░░░░▄▄░░░░█░░░██
███▄░█▌░░▀██▀░░▐█░▄███
██████▌░░░░░░░░▐██████
██████████████████████
 
  NO KYC  OWN LIQUIDITY RESERVES  
 BTC 
 
 ETH 
 
 LTC 
 DOGE 
 
 TRX  
 
 BNB  
 TRC20 
 
 ERC20 
 
 BEP20 
 
   SWAP NOW   
Pages: [1]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!