Reformat section "Recommendations" to conform to code style

Add subsections for each recommendation type, fix section IDs and
corresponding heading links, and change line lengths to conform to code
style.
This commit is contained in:
inference 2024-02-06 01:21:39 +00:00
parent 0e1376d52a
commit e690a54498
Signed by: inference
SSH Key Fingerprint: SHA256:FtEVfx1CmTKMy40VwZvF4k+3TC+QhCWy+EmPRg50Nnc

View File

@ -1,7 +1,7 @@
<!DOCTYPE html>
<!-- Inferencium - Website - About -->
<!-- Version: 8.1.0-alpha.9 -->
<!-- Version: 8.1.0-alpha.10 -->
<!-- Copyright 2022 Jake Winters -->
<!-- SPDX-License-Identifier: BSD-3-Clause -->
@ -367,10 +367,13 @@
</section>
<section id="recommendations">
<h2><a href="#recommendations">Recommendations</a></h2>
<h3 id="recommendations-hardware"><a href="#recommendations-hardware">Hardware</a></h3>
<h4 id="recommendations-hardware-smartphone"><a href="#recommendations-hardware-smartphone">Smartphone</a></h4>
<section id="recommendations-hardware">
<h3><a href="#recommendations-hardware">Hardware</a></h3>
<section id="recommendations-hardware-smartphone">
<h4><a href="#recommendations-hardware-smartphone">Smartphone</a></h4>
<div style="overflow-x:auto;">
<table>
<thead>
<tr>
<th id="hardware-smartphone-type">Type</th>
<th id="hardware-smartphone">Hardware</th>
@ -378,6 +381,8 @@
<th id="hardware-smartphone-source_model">Source model<br/>
(License)</th>
</tr>
</thead>
<tbody>
<tr>
<th id="hardware-smartphone-smartphone">Smartphone</th>
<th id ="google-pixel" headers="hardware hardware-smartphone-smartphone">
@ -386,14 +391,16 @@
</th>
<td class="desc" headers="hardware-description google-pixel">
<h5>Security/Privacy</h5>
<p>Google Pixel devices are the best Android
devices available on the market for
<p>Google Pixel devices are the best
Android devices available on the market
for
<a href="https://security.googleblog.com/2021/10/pixel-6-setting-new-standard-for-mobile.html">security and privacy</a>.</p>
<p>They allow locking the bootloader with a
<p>They allow locking the bootloader
with a
<a href="https://android.googlesource.com/platform/external/avb/+/master/README.md#pixel-2-and-later">custom Android Verified Boot (AVB) key</a>
in order to preserve security and privacy
features when installing a custom operating
system, such as
in order to preserve security and
privacy features when installing a
custom operating system, such as
<a href="https://source.android.com/docs/security/features/verifiedboot/">verified boot</a>
which verifies that the OS has not been
corrupted or tampered with, and
@ -407,63 +414,69 @@
(Titan M2, improving on the previous
generation
<a href="https://security.googleblog.com/2018/10/building-titan-better-security-through.html">Titan M</a>)
which is extremely resistant to both remote
and physical attacks due to being completely
isolated from the rest of the system,
including the operating system. Titan M2
ensures that the device cannot be remotely
compromised by requiring the side buttons of
the device to be physically pressed for some
sensitive operations. Titan M2 also takes
the role of
which is extremely resistant to both
remote and physical attacks due to being
completely isolated from the rest of the
system, including the operating system.
Titan M2 ensures that the device cannot
be remotely compromised by requiring the
side buttons of the device to be
physically pressed for some sensitive
operations. Titan M2 also takes the role
of
<a href="https://source.android.com/docs/security/best-practices/hardware#strongbox-keymaster">Android StrongBox Keymaster</a>,
a
<a href="https://source.android.com/docs/security/features/keystore">hardware-backed Keystore</a>
containing sensitive user keys which are
unavailable to the OS or apps running on it
without authorisation from Titan M2 itself.
unavailable to the OS or apps running on
it without authorisation from Titan M2
itself.
<a href="https://android-developers.googleblog.com/2018/05/insider-attack-resistance.html">Insider attack resistance</a>
ensures that Titan M2 firmware can be
flashed only if the user PIN/password is
already known, making it impossible to
backdoor the device without already knowing
these secrets.</p>
<p>Google Pixel device kernels are compiled
with
backdoor the device without already
knowing these secrets.</p>
<p>Google Pixel device kernels are
compiled with
<a href="https://android-developers.googleblog.com/2018/10/control-flow-integrity-in-android-kernel.html">forward-edge control-flow integrity</a>
and
<a href="https://security.googleblog.com/2019/10/protecting-against-code-reuse-in-linux_30.html">backward-edge control-flow integrity</a>
to prevent code reuse attacks against the
kernel. MAC address randomisation is
to prevent code reuse attacks against
the kernel. MAC address randomisation is
<a href="https://android-developers.googleblog.com/2017/04/changes-to-device-identifiers-in.html">implemented well, along with minimal probe requests and randomised initial sequence numbers</a>.</p>
<p>Google releases
<a href="https://source.android.com/docs/security/bulletin/pixel/">guaranteed monthly security updates</a>,
ensuring Google Pixel devices are up-to-date
and quickly protected against security
vulnerabilities.</p>
<p>Pixel 6-series and 7-series devices are a
large improvement over the already very
secure and private previous generation Pixel
devices. They replace ARM-based Titan M with
RISC-V-based Titan M2, reducing trust by
removing ARM from the equation. Titan M2 is
more resiliant to attacks than Titan M, and
ensuring Google Pixel devices are
up-to-date and quickly protected against
security vulnerabilities.</p>
<p>Pixel 6-series and 7-series devices
are a large improvement over the already
very secure and private previous
generation Pixel devices. They replace
ARM-based Titan M with RISC-V-based
Titan M2, reducing trust by removing ARM
from the equation. Titan M2 is more
resiliant to attacks than Titan M, and
is
<a href="https://www.tuv-nederland.nl/assets/files/cerfiticaten/2022/09/nscib-cc-22-0228971-cert-final.pdf">AVA_VAN.5 certified</a>,
the highest level of vulnerability
assessment. Google's in-house Tensor
System-on-Chip includes Tensor Security
Core, further improving device security.</p>
Core, further improving device
security.</p>
<p>Pixel 8-series includes Armv9's
<a href="https://community.arm.com/arm-community-blogs/b/architectures-and-processors-blog/posts/enhanced-security-through-mte">Memory Tagging Extension</a>,
which dramatically increases device security
by eliminating up to 95% of all security
issues caused by memory-unsafety.</p>
which dramatically increases device
security by eliminating up to 95% of all
security issues caused by
memory-unsafety.</p>
<h5>Support</h5>
<p>Pixel 5a is supported for a
<a href="https://support.google.com/nexus/answer/4457705#zippy=%2Cpixel-a-g-pixel-pixel-a-g-pixel-a-pixel-xl-pixel">minimum of 3 years from launch</a>.</p>
<p>Pixel 6-series, Pixel 7-series, Pixel
Fold, and Pixel Tablet are supported for a
Fold, and Pixel Tablet are supported for
a
<a href="https://support.google.com/nexus/answer/4457705#zippy=%2Cpixel-a-pixel-pixel-pro-pixel-a-pixel-pixel-pro-pixel-fold">minimum of 5 years from launch</a>.</p>
<p>Pixel 8-series is supported for a
<a href="https://support.google.com/nexus/answer/4457705#zippy=%2Cpixel-pro">minimum of 7 years from launch</a>.</p>
@ -471,12 +484,18 @@
<td headers="hardware-smartphone-source_model google-pixel">
</td>
</tr>
</tbody>
</table>
</div>
<h3 id="recommendations-software"><a href="#recommendations-software">Software</a></h3>
<h4 id="recommendations-software-desktop"><a href="#recommendations-software-desktop">Desktop</a></h4>
</section>
</section>
<section id="recommendations-software">
<h3><a href="#recommendations-software">Software</a></h3>
<section id="recommendations-software-desktop">
<h4><a href="#recommendations-software-desktop">Desktop</a></h4>
<div style="overflow-x:auto;">
<table>
<thead>
<tr>
<th id="software-desktop-type">Type</th>
<th id="software-desktop">Software</th>
@ -484,6 +503,8 @@
<th id="software-desktop-source_model">Source model<br/>
(License)</th>
</tr>
</thead>
<tbody>
<tr>
<th id="software-desktop-os">Operating system</th>
<th id="gentoo_linux" headers="software-desktop software-desktop-os">
@ -493,24 +514,27 @@
<td class="desc" headers="software-description gentoo_linux">
<p><a href="https://www.gentoo.org/">Gentoo Linux</a>
is a highly modular, source-based, Linux-based
operating system which allows vast customisation to
tailor the operating system to suit your specific
needs. There are many advantages to such an
operating system, with the most notable being the
ability to optimise the software for security,
privacy, performance, or power usage; however, there
are effectively unlimited other use cases, or a
combination of multiple use cases.</p>
<p>I have focused on security hardening and privacy
hardening, placing performance below those aspects,
although my system is still very performant. Some of
the hardening I apply includes
operating system which allows vast customisation
to tailor the operating system to suit your
specific needs. There are many advantages to
such an operating system, with the most notable
being the ability to optimise the software for
security, privacy, performance, or power usage;
however, there are effectively unlimited other
use cases, or a combination of multiple use
cases.</p>
<p>I have focused on security hardening and
privacy hardening, placing performance below
those aspects, although my system is still very
performant. Some of the hardening I apply
includes
<a href="https://en.wikipedia.org/wiki/Buffer_overflow_protection">stack protection</a>,
<a href="https://en.wikipedia.org/wiki/Integer_overflow">signed integer overflow trapping</a>,
and GrapheneOS'
<a href="https://github.com/GrapheneOS/hardened_malloc/">hardened_malloc</a>
memory allocator.</p>
<p>You can find my Gentoo Linux configurations in my
<p>You can find my Gentoo Linux configurations
in my
<a href="https://src.inferencium.net/Inferencium/cfg/">configuration respository</a>.</p>
</td>
<td headers="software-desktop-source_model gentoo_linux">
@ -542,11 +566,15 @@
(BSD-3-Clause)
</td>
</tr>
</tbody>
</table>
</div>
<h4 id="recommendations-software-smartphone"><a href="#recommendations-software-smartphone">Smartphone</a></h4>
</section>
<section id="recommendations-software-smartphone">
<h4><a href="#recommendations-software-smartphone">Smartphone</a></h4>
<div style="overflow-x:auto;">
<table>
<thead>
<tr>
<th id="software-smartphone-type">Type</th>
<th id="software-smartphone">Software</th>
@ -554,6 +582,8 @@
<th id="software-smartphone-source_model">Source model<br/>
(License)</th>
</tr>
</thead>
<tbody>
<tr>
<th id="software-smartphone-os">Operating system</th>
<th id="grapheneos" headers="software-smartphone software-smartphone-os">
@ -563,15 +593,15 @@
<td class="desc" headers="software-smartphone-description grapheneos">
<p><a href="https://grapheneos.org/">GrapheneOS</a>
is a security-hardened, privacy-hardened,
secure-by-default, Android-based operating system
which implements extensive, systemic security and
privacy hardening to the Android Open Source Project
used as its base codebase. Its hardening includes
closing gaps for apps to access sensitive system
information, a secure app spawning feature which
avoids sharing address space layout and other
secrets AOSP's default Zygote app spawning model
would share,
secure-by-default, Android-based operating
system which implements extensive, systemic
security and privacy hardening to the Android
Open Source Project used as its base codebase.
Its hardening includes closing gaps for apps to
access sensitive system information, a secure
app spawning feature which avoids sharing
address space layout and other secrets AOSP's
default Zygote app spawning model would share,
<a href="https://github.com/GrapheneOS/kernel_gs-gs101/">hardened kernel</a>,
hardened memory allocator
(<a href="https://github.com/GrapheneOS/hardened_malloc/">hardened_malloc</a>)
@ -581,14 +611,14 @@
<a href="https://github.com/GrapheneOS/platform_system_sepolicy/">stricter SELinux policies</a>,
and local and remote hardware-backed attestation
(<a href="https://attestation.app/about/">Auditor</a>)
to ensure the OS has not been corrupted or tampered
with.</p>
to ensure the OS has not been corrupted or
tampered with.</p>
<p>GrapheneOS only supports
<a href="https://grapheneos.org/faq#device-support">high security and well-supported devices</a>
which receive full support from their manufacturers,
including firmware updates, long support lifecycles,
secure hardware, and overall high security
practices.</p>
which receive full support from their
manufacturers, including firmware updates, long
support lifecycles, secure hardware, and overall
high security practices.</p>
<p>For an extensive list of features GrapheneOS
provides, visit its
<a href="https://grapheneos.org/features/">official features list</a>
@ -606,19 +636,21 @@
Vanadium
</th>
<td class="desc" headers="software-smartphone-description vanadium">
<p>Vanadium is a security-hardened, privacy-hardened
Chromium-based web browser which utilises
GrapheneOS' operating system hardening to implement
stronger defenses to the already very secure
Chromium web browser. Its hardening alongside
Chromium's base security features includes
<p>Vanadium is a security-hardened,
privacy-hardened Chromium-based web browser
which utilises GrapheneOS' operating system
hardening to implement stronger defenses to the
already very secure Chromium web browser. Its
hardening alongside Chromium's base security
features includes
<a href="https://github.com/GrapheneOS/Vanadium/blob/13/patches/0081-Implement-UI-for-JIT-site-settings.patch">disabling JavaScript just-in-time (JIT) compilation by default</a>,
<a href="https://github.com/GrapheneOS/Vanadium/blob/13/patches/0051-stub-out-the-battery-status-API.patch">stubbing out the battery status API to prevent abuse of it</a>,
and
<a href="https://github.com/GrapheneOS/Vanadium/blob/13/patches/0084-Toggle-for-navigating-external-URL-in-incognito.patch">always-on Incognito mode as an option</a>.</p>
<p>Vanadium's source code, including its Chromium
patch-set, can be found in its
<a href="https://github.com/GrapheneOS/Vanadium/">official repository</a>.</p></td>
<a href="https://github.com/GrapheneOS/Vanadium/">official repository</a>.</p>
</td>
<td headers="software-smartphone-source_model vanadium">
Open-source<br/>
(GPL-2.0-only)
@ -634,7 +666,8 @@
<p><a href="https://molly.im/">Molly</a>
is a security-hardened, privacy-hardened
<a href="https://signal.org/">Signal</a>
client which hardens Signal by using a variety of
client which hardens Signal by using a variety
of
<a href="https://github.com/mollyim/mollyim-android#features">unique features</a>,
allowing
<a href="https://github.com/mollyim/mollyim-android/wiki/Data-Encryption-At-Rest">locking the database when not in use</a>,
@ -645,12 +678,14 @@
<p>Molly is available in
<a href="https://github.com/mollyim/mollyim-android#free-and-open-source">2 flavours</a>:
<ul>
<li>Molly, which includes the same
proprietary Google code as Signal to
support more features.</li>
<li>Molly-FOSS, which removes the
proprietary Google code to provide
an entirely open-source client.</li>
<li>Molly, which includes the
same proprietary Google code as
Signal to support more
features.</li>
<li>Molly-FOSS, which removes
the proprietary Google code to
provide an entirely open-source
client.</li>
</ul>
</p>
</td>
@ -668,22 +703,26 @@
<p><a href="https://conversations.im/">Conversations</a>
is a well-designed Android
<a href="https://xmpp.org/">XMPP</a>
client which serves as the de facto XMPP reference
client and has great usability.</p>
client which serves as the de facto XMPP
reference client and has great usability.</p>
</td>
<td headers="software-smartphone-source_model conversations">
Open-source<br/>
(GPL-3.0-only)
</td>
</tr>
</tbody>
</table>
</div>
</section>
</section>
<section id="recommendations-music">
<h3><a href="#recommendations-music">Music</a></h3>
<p>For a curated list of music I enjoy, visit my
<p>For a curated list of music I enjoy,
visit my
<a href="music.xhtml">music page</a>.</p>
</section>
</section>
<section id="gnulinux_or_linux">
<h2><a href="#gnulinux_or_linux">Is it GNU/Linux or Just Linux?</a></h2>
<p>It's just Linux. GNU is unrelated to Linux, which is a kernel developed by