Skip to content

Commit deed0fa

Browse files
committed
vault backup: 2025-09-24 16:53:28
1 parent 7aecb85 commit deed0fa

10 files changed

Lines changed: 105 additions & 17 deletions

.obsidian/workspace.json

Lines changed: 47 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1058,7 +1058,7 @@
10581058
}
10591059
},
10601060
{
1061-
"id": "538d9184d74fcc50",
1061+
"id": "c9528963b3bae468",
10621062
"type": "leaf",
10631063
"state": {
10641064
"type": "markdown",
@@ -1071,9 +1071,39 @@
10711071
"icon": "lucide-file",
10721072
"title": "The Sabarimala Case"
10731073
}
1074+
},
1075+
{
1076+
"id": "97076a5ecb3556ac",
1077+
"type": "leaf",
1078+
"state": {
1079+
"type": "markdown",
1080+
"state": {
1081+
"file": "Disk Encryption Theory.md",
1082+
"mode": "source",
1083+
"source": false,
1084+
"backlinks": false
1085+
},
1086+
"icon": "lucide-file",
1087+
"title": "Disk Encryption Theory"
1088+
}
1089+
},
1090+
{
1091+
"id": "e9491c6f5e3bb017",
1092+
"type": "leaf",
1093+
"state": {
1094+
"type": "markdown",
1095+
"state": {
1096+
"file": "Loop Devices.md",
1097+
"mode": "source",
1098+
"source": false,
1099+
"backlinks": false
1100+
},
1101+
"icon": "lucide-file",
1102+
"title": "Loop Devices"
1103+
}
10741104
}
10751105
],
1076-
"currentTab": 70
1106+
"currentTab": 71
10771107
}
10781108
],
10791109
"direction": "vertical"
@@ -1137,7 +1167,7 @@
11371167
}
11381168
}
11391169
],
1140-
"currentTab": 3
1170+
"currentTab": 1
11411171
}
11421172
],
11431173
"direction": "horizontal",
@@ -1259,7 +1289,7 @@
12591289
}
12601290
}
12611291
],
1262-
"currentTab": 7
1292+
"currentTab": 5
12631293
}
12641294
],
12651295
"direction": "horizontal",
@@ -1287,8 +1317,20 @@
12871317
"webpage-html-export:Export as HTML": false
12881318
}
12891319
},
1290-
"active": "538d9184d74fcc50",
1320+
"active": "97076a5ecb3556ac",
12911321
"lastOpenFiles": [
1322+
"Magic Numbers (in Linux).md",
1323+
"Disk Encryption Theory.md",
1324+
"Loop Devices.md",
1325+
"Block Devices.md",
1326+
"The Sabarimala Case.md",
1327+
"01. Personal/Daily Notes/Entry of 24th Sep, 2025.md",
1328+
"New Areas of Study.md",
1329+
"06. Collected Knowledge/xAndroid Boot Internals.md",
1330+
"Trusted Execution Environment.md",
1331+
"06. Collected Knowledge/Android Partitions.md",
1332+
"How to downgrade Samsung Binaries.md",
1333+
"01. Personal/Daily Notes/Entry of 23rd Sep, 2025.md",
12921334
"Anti-theists (many) are Anti-Civilization-ists too.md",
12931335
"Hindu Books.md",
12941336
"Trying to Consolidate Hinduism 1.md",
@@ -1300,21 +1342,9 @@
13001342
"The lousiness of those who criticize communism.md",
13011343
"Jyothish has `Mathematical Intelligence`.md",
13021344
"My inclination to join Judah-ism (redacted).md",
1303-
"The Sabarimala Case.md",
1304-
"New Areas of Study.md",
1305-
"01. Personal/Daily Notes/Entry of 23rd Sep, 2025.md",
13061345
"The Ultimate Reality cannot be expressed by Words.md",
13071346
"History of Christianity.md",
13081347
"Christian Church Terminology.md",
1309-
"01. Personal/Daily Notes/Entry of 22nd Sep, 2025.md",
1310-
"Conflicts in Translation (Rough Title).md",
1311-
"01. Personal/Project Ideas/Personal Text Editor.md",
1312-
"Tamil Veda.md",
1313-
"App Analogy of My Theology.md",
1314-
"Moment of Inertia.md",
1315-
"On atheismindia.md",
1316-
"Study of Reality.md",
1317-
"What is `living`.md",
13181348
"02. To Share/Project Resources",
13191349
"_images/Tamil Calligraphy Workshop Pamphlet Side B.png",
13201350
"_images/Tamil Calligraphy Workshop Pamphlet Side A.png",

01. Personal/Daily Notes/Entry of 24th Sep, 2025.md

Whitespace-only changes.

06. Collected Knowledge/xAndroid Boot Internals.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -352,6 +352,7 @@ A problem with USB Mass Storage was that, it would expose the device at the bloc
352352
- Disables DM-Verity and ForceEncrypt
353353
- Disable Verity in vbmeta.img
354354
- `fastboot --disable-verification --disable-verity flash vbmeta vbmeta.img`
355+
- Or, as I've learned, flashing a blank vbmeta.img is another solution
355356
- Factory Reset Protection (FRP)
356357
- It is used to prevent others from using your device after factory resetting it
357358
- You can disable it by wiping the FRP partition

Block Devices.md

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
# Physically
2+
3+
A block device, physically simply means a device that stores data in blocks or allocation units.
4+
# Software
5+
6+
In software, by block device, we would be referring to the drivers for parsing block devices.
7+
## In Linux
8+
9+
In Linux, you can only mount block devices.
10+
11+
### About reading block devices directly
12+
13+
I wrote in [[loop devices]] that you can only mount block devices, and loop devices are block devices created for disk images.
14+
15+
But someone asked a query about mounting a block device as a file, so that he doesn't have to make a disk image with `dd` for a recovery utility to read from it.
16+
17+
In this case, usually, you would be able to `cat` a block device to read the contents, and `dd` does pretty much that. But the block device descriptor file itself is not the same as the block device.
18+
19+
If you do `stat` on a block device, you will see that it has a size of `0` bytes, and it will be called a "block special file" as opposed to a "regular file" with a size.
20+
21+
#rough #advaita-analogy The above line gave me an analogy - we say Nirguna Brahman is without any utility - literally Nir-Guna. And I used to have analogies for why that isn't a bad thing. In this example, similarly, a block device has `0` file size. But if you `cat` a block device, you will get a lot of data. Because while a block device is empty in size, it is what allows you to read the physical block device.

Disk Encryption Theory.md

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
There are block ciphers (which encrypt by blocks) and stream ciphers (which encrypt bit-by-bit).
2+
3+
My Samsung (R) Galaxy M10 (SM-M105F / m10lte) used an MMC storage, and it used FDE with AES-XTS by default (It shows `aes-xts-disk` in its crypto footer).
4+
5+
There is a Stack Overflow question ([Question 49335046: Android 4.4 FDE (Scrypt Footer)][https://stackoverflow.com/question/49335046]), where a user took the 16 KB crypto footer from his encrypted `userdata` partition, from his Samsung Galaxy S4 Mini running Android 4.4.4.
6+
7+
He was learning about FDE, and though Android 4.4.4 does not have FDE (EDIT: I was wrong, see next paragraph), it has Scrypt. He also found that there is very less documentation on it, and he found that the 16 KB crypto footer started with the [[Magic Numbers (in Linux)|magic number]] `0xC5B1B5D0`.
8+
9+
Actually, my Galaxy M10 also has the same magic number, so I wonder if it is related, but it's more likely to have FDE. Oh, turns out Samsung introduced FDE in Android 4.4.4 as opt-in, and made it default from Android 7.0.
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
See [How to Downgrade Android Version in Samsung Devices if Device is in Higher Binery | XDA Forums](https://xdaforums.com/t/how-to-downgrade-android-version-in-samsung-devices-if-device-is-in-higher-binery.4561665/)
2+
3+

Loop Devices.md

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
Actually, UNIX-like systems can only mount block devices. You do not really mount files.
2+
3+
> [!NOTE]
4+
> As for why they are called loop devices - that's something unsettled. In UNIX Stack Exchange, user schily said that he created the feature first on SunOS 4.0, which he called `fbk` (file emulates block device); and he complains that Linux seems to use a wrong name for that feature.
5+
>
6+
> According to others, loop is short for "loopback" - and some say it was chosen to show how the block devices are looped back. I don't know what it means. Solaris 8 introduced `lofi` (loopback file) which worked similarly, and BSD introduced them under the name `vnd` (`vnode` disk).
7+
8+
So `losetup` can be used to create a loop device as `/dev/loopN` based on a disk image. More precisely, a block device is any device in `/dev`. A loop device is a block device for a disk image file.
9+
10+
And only loop devices are mounted using `mount`. When you use `mount` on a disk image, thought it seems direct, it actually runs `losetup` under the hood. In fact, the option `-o loop` does exactly that.
11+
12+
If the disk image contains many partitions, you cannot mount it as a single file system. You you have to inspect the partition table, using a utility like `fdisk` or `gdisk`, and then create loop devices for the specific offsets of the image, and mount them.
13+
14+
`kpartx` from `util-linux` used to do that automatically, and now `losetup` has an option that does that as well.
15+

Magic Numbers (in Linux).md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
I'm referring to these in Linux, not numerology.
2+
3+
They are numbers that somehow identify certain features. Have to learn more about them.

Trusted Execution Environment.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
2+
Implementations:
3+
4+
- ARM TrustZone
5+
- Qualcomm Trusted / Secure Execution Environment (QTEE / QSEE)
6+
- Samsung Knox

Untitled.md

Whitespace-only changes.

0 commit comments

Comments
 (0)