Bitcoin Forum
September 05, 2026, 09:44:34 AM *
News: Latest Bitcoin Core release: 31.1 [Torrent]
 
   Home   Help Search Login Register More  
Pages: « 1 2 [3]  All
  Print  
Author Topic: How do we define "airgap" around here?  (Read 651 times)
goldkingcoiner
Legendary
*
Offline

Activity: 2898
Merit: 3109


HoDL


View Profile WWW
September 04, 2026, 08:47:26 AM
 #41

Depending on how old the laptop is, and how much you used it, you might find data destroying viruses, bugs and faulty hardware/software could lead to a complete destruction of any Bitcoin data that you save on it.
That's what shred is for Smiley
This does not work reliably on SSDs, it works only for HDDs.

Usually it comes down to the TRIM implementation of SSD. But since there's no easy/quick way to know it works properly, people sometimes recommend to fully fill the disk with random data or use drive-level encryption (as prevention).

I was also just going off of the less techy perspective of airgap that can be attributed to the majority of Bitcoiners (I would think). I doubt they will go that far as to use shred. But LoyceV is right, making backups is without a doubt, very important. Since OP brought up the subject of preferring to use old computers, I am also talking about the physical parts. Every backup will eventually age. Meaning degradation of the disk, physically, through age and temperature and etc...

Perhaps it would be wise to make backups of your Bitcoin device every n amount of years with new devices? Old computers do seem convenient for the short term though.

ABCbits
Legendary
*
Offline

Activity: 3724
Merit: 10356



View Profile
September 04, 2026, 08:51:07 AM
Merited by vapourminer (1)
 #42

people sometimes recommend to fully fill the disk with random data
That's exactly what shred does.

I forget shred also work on /dev/* directly. From what i've seen, using command such as dd if=/dev/urandom of=/dev/sda ... is more common.

Shredding individual files doesn't work on SSD due to wear leveling, but shredding the entire disk works fine: it fills the entire disk with random data (multiple times by default).

Even shredding or filling entire disk doesn't give 100% guarantee, due to feature called over-positioning (some people call it spare NAND flash/chip).

--snip--

I was just going off of the less techy perspective of airgap that can be attributed to the majority of Bitcoiners (I would think). I doubt they will go that far. And LoyceV is right, making backups is without a doubt important. But I am also talking about the physical parts. Every backup will eventually age. Meaning degradation of the disk, physically, through age and temperature and etc...

Perhaps it would be wise to make backups of your Bitcoin device every n amount of years with new devices?

Fair point. What i say is more related to prevent our data being recovered, rather than possible issue you mentioned earlier.

LoyceV
Legendary
*
Offline

Activity: 4158
Merit: 22616


Thick-Skinned Gang Leader and Golden Feather 2021


View Profile WWW
September 04, 2026, 08:56:06 AM
 #43

Even shredding or filling entire disk doesn't give 100% guarantee, due to feature called over-positioning (some people call it spare NAND flash/chip).
That's why I don't sell disks after using them, but when I get a second hand laptop, this isn't something I'm concerned about. What terrible virus is going to hide in spare disk storage and comes out when I'm running Linux?

¡uʍop ǝpᴉsdn pɐǝɥ ɹnoʎ ɥʇᴉʍ ʎuunɟ ʞool no⅄
rightscope
Newbie
*
Offline

Activity: 3
Merit: 0


View Profile
September 04, 2026, 11:35:16 AM
 #44

Built a computer ages ago for the company I work that only printed the same ten different documents for like a decade.
The computer never touched either the network or the internet because there is no LAN ports.

Now the computer has been given to me and I've done and offline installation of Linux and installed Bitcoin Core 31.1, everything seems to work great and obviously I cannot connect to any peers to get the first block since there is no LAN present in the machine.

Question: where can I get the first block and how can I "deliver" the first block to Bitcoin Core without any network or internet present? (I do not want to sync the blockchain on an online machine and later insert the complete blockchain into the machine in one take, I want to do this one block at the time from the very first block)

something like: $ bitcoin-cli --accept-new-block --ignore-not-connected --assume-good --trust-anyway --path-to-next-block="/media/small-device/block00001.dat"
Cricktor
Legendary
*
Offline

Activity: 1610
Merit: 4409



View Profile
September 04, 2026, 11:53:55 AM
Merited by LoyceV (4)
 #45

...
What exactly are you trying to achieve with this tedious procedure, if it were possible to feed Core one block at a time? I fail hard to see the point in this.

If your premise is to keep the device all the time offline, that's a valid point. But then I would provide verified blockchain data files from an online node which has done a proper IBD, which is not what you want, for whatever reasons.

I'm asking what makes your desired method any better than just copying block data files over?

A blknnnnn.dat file contains usually multiple blocks and not necessarily in order. For more details, see https://learnmeabitcoin.com/technical/block/blkdat/

rightscope
Newbie
*
Offline

Activity: 3
Merit: 0


View Profile
September 04, 2026, 01:12:42 PM
 #46

...
What exactly are you trying to achieve with this tedious procedure, if it were possible to feed Core one block at a time? I fail hard to see the point in this.

If your premise is to keep the device all the time offline, that's a valid point. But then I would provide verified blockchain data files from an online node which has done a proper IBD, which is not what you want, for whatever reasons.

I'm asking what makes your desired method any better than just copying block data files over?

A blknnnnn.dat file contains usually multiple blocks and not necessarily in order. For more details, see https://learnmeabitcoin.com/technical/block/blkdat/

If my goal was to keep an updated version of the blockchain on the offline machine I assume one of the easiest routes would be to simply transfer an updated version of the .bitcoin dir to the offline machine.
I feel the need to explain that there is no specific goal I want to reach with this exercise, I am just tinkering with the program because I like it and I want to see what happens when I feed it with the very first block manually and when I have studied that I want to manually feed it the second block and so on. Also I want to figure out if it is even possible to do this because I get the feeling that others have asked similar questions in this forum and they are all getting questions why they want to do it rather than if it is possible to do it. Somehow it would make sense that it could be done since there is a way for an online machine to get a block and process it which assumes the block would be processed even if the internet connection would break during the process?

Thank you for the link you provided, that link answered some of my questions.
LoyceV
Legendary
*
Offline

Activity: 4158
Merit: 22616


Thick-Skinned Gang Leader and Golden Feather 2021


View Profile WWW
September 04, 2026, 01:34:08 PM
 #47

If my goal was to keep an updated version of the blockchain on the offline machine I assume one of the easiest routes would be to simply transfer an updated version of the .bitcoin dir to the offline machine.
To stay a bit on-topic in this thread, it's good to realize you don't need the full blockchain on your airgapped system. The airgapped system is meant to keep your keys secure, the blockchain can be updated on an online watch-only wallet.

¡uʍop ǝpᴉsdn pɐǝɥ ɹnoʎ ɥʇᴉʍ ʎuunɟ ʞool no⅄
Cricktor
Legendary
*
Offline

Activity: 1610
Merit: 4409



View Profile
September 04, 2026, 03:59:56 PM
 #48

...
To my knowledge the Genesis block is hard-coded and every node knows about it from the start, because you can't fetch it trustlessly and verify it to be genuine.

...
Exactly. The cold/offline signing wallet doesn't need an up-to-date blockchain, it doesn't need it at all. It takes an unsigned transaction via PSBT, you verify all details of the to-be-signed transaction and if all is good, you sign it with the required private keys that are securely stored in this cold/offline wallet. You then export the signed transaction as PSBT and move it to the online watch-only wallet to broadcast it.

Cold/offline storage has to remain offline to avoid any potential malicious exposure. And repetition doesn't hurt: cold storage usually doesn't need blockchain data, be it old or current.

You can play this out with a Testnet coin wallet. There are still free faucets to get enough Testnet coins to practice such stuff.

rightscope
Newbie
*
Offline

Activity: 3
Merit: 0


View Profile
September 04, 2026, 06:48:15 PM
Last edit: September 04, 2026, 09:38:16 PM by Mitchell
 #49


To my knowledge the Genesis block is hard-coded and every node knows about it from the start, because you can't fetch it trustlessly and verify it to be genuine.

...

Say that I have synced til block 100 on the offline machine, how can I while the machine is still offline provide it with block 101?



If my goal was to keep an updated version of the blockchain on the offline machine I assume one of the easiest routes would be to simply transfer an updated version of the .bitcoin dir to the offline machine.
To stay a bit on-topic in this thread, it's good to realize you don't need the full blockchain on your airgapped system. The airgapped system is meant to keep your keys secure, the blockchain can be updated on an online watch-only wallet.

I am well aware, my question is not about what the minimum requirements are to maintain an air-gaped machine but how to manually provide an offline machine with block 101 if the machine is synced til block 100 if I wanted to.
LoyceV
Legendary
*
Offline

Activity: 4158
Merit: 22616


Thick-Skinned Gang Leader and Golden Feather 2021


View Profile WWW
Today at 06:47:44 AM
 #50

Say that I have synced til block 100 on the offline machine, how can I while the machine is still offline provide it with block 101?
That's not how it works. But if you really want it: connect it to a fully synced offline Bitcoin Core on your offline local network, set it to sync using addnode, and use invalidateblock to prevent it from syncing block 102:
Code:
invalidateblock "blockhash"

Permanently marks a block as invalid, as if it violated a consensus rule.

Arguments:
1. blockhash    (string, required) the hash of the block to mark as invalid (code -1)
But again, you shouldn't do this. If you want to continue this quest, you should open a new topic.

¡uʍop ǝpᴉsdn pɐǝɥ ɹnoʎ ɥʇᴉʍ ʎuunɟ ʞool no⅄
Pages: « 1 2 [3]  All
  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!