website/about.html

669 lines
32 KiB
HTML
Raw Normal View History

2022-06-30 06:19:28 +01:00
<!DOCTYPE html>
<!-- Inferencium - Website - About -->
2023-04-13 22:35:34 +01:00
<!-- Copyright 2022 Jake Winters -->
<!-- SPDX-License-Identifier: BSD-3-Clause-Clear -->
2023-04-29 11:10:43 +01:00
<!-- Version: 4.3.0.83 -->
2022-06-30 06:19:28 +01:00
<html>
2023-04-13 22:44:23 +01:00
<head>
<title>Inferencium - About</title>
<link rel="stylesheet" href=inf.css>
<meta name="viewport" content="width=device-width, initial-scale=1">
</head>
2023-04-13 22:44:23 +01:00
<!-- Navigation bar. -->
<div class="sidebar">
<img src="asset/img/logo-inferencium-no_text.png"
width="110px" height="110px">
<a class="title">Inferencium</a><br>
<br>
<br>
<div><a href="about.html">About</a></div>
<div><a href="contact.html">Contact</a></div>
<div><a href="blog.html">Blog</a></div>
<div><a href="source.html">Source</a></div>
<div><a href="key.html">Key</a></div>
<div><a href="changelog.html">Changelog</a></div>
2023-04-13 22:44:23 +01:00
</div>
2023-04-13 22:44:23 +01:00
<body>
<h1>About</h1>
<br>
<br>
<br>
2023-03-09 07:43:33 +00:00
2023-04-13 22:44:23 +01:00
<!-- Table of contents. -->
<h2 id="toc"><a href="#toc" class="h2"
>Table of Contents<a/></h2>
<ul>
2023-04-13 22:44:23 +01:00
<li><a href="#about_me" class="body-link"
>About Me</a></li>
<li><a href="#licensing" class="body-link"
>Licensing</a></li>
<ul>
<li><a href="#licensing-preferred" class="body-link"
>Preferred</a></li>
<ul>
<li><a href="#licensing-preferred-code"
class="body-link"
2023-04-13 22:44:23 +01:00
>Code<a/></li>
<ul>
<li><a href="#licensing-bsd-3-
clause-clear"
2023-04-13 22:44:23 +01:00
class="body-link"
>BSD 3-Clause Clear License</a></li>
<li><a href="#licensing-mit"
class="body-link"
2023-04-13 22:44:23 +01:00
>MIT License</a></li>
<li><a href="#licensing-gpl-2.0"
class="body-link"
>GNU General Public License
v2.0</a></li>
2023-04-13 22:44:23 +01:00
</ul>
<li><a href="#licensing-preferred-non-code"
class="body-link"
2023-04-13 22:44:23 +01:00
>Non-code</a></li>
<ul>
<li><a href="#licensing-cc-by-
4.0" class="body-link"
>Creative Commons Attribution
4.0 International</a></li>
2023-04-13 22:44:23 +01:00
</ul>
</ul>
<li><a href="#licensing-other" class="body-link"
>Other</a></li>
<ul>
<li><a href="#licensing-other-code"
class="body-link"
2023-04-13 22:44:23 +01:00
>Code</a></li>
<ul>
<li><a href="#licensing-gpl-3.0"
class="body-link"
2023-04-13 22:44:23 +01:00
>GNU General Public License v3.0</a></li>
</ul>
<li><a href="#licensing-other-non-code"
class="body-link"
2023-04-13 22:44:23 +01:00
>Non-code</a></li>
<ul>
<li><a href="#licensing-cc-by-
nc-4.0" class="body-link"
>Creative Commons Attribution
Non Commercial 4.0
2023-04-13 22:44:23 +01:00
International</a></li>
</ul>
</ul>
</ul>
<li><a href="#recommendations" class="body-link"
>Recommendations</a></li>
<ul>
<li><a href="#hardware" class="body-link"
>Hardware</a></li>
<ul>
<li><a href="#hdw-smartphone" class="body-link"
>Smartphone</a></li>
</ul>
<li><a href="#software" class="body-link"
>Software</a></li>
<ul>
<li><a href="#sfw-desktop" class="body-link"
>Desktop</a></li>
<li><a href="#sfw-smartphone" class="body-link"
>Smartphone</a></li>
</ul>
<li><a href="#music" class="body-link"
>Music</a></li>
</ul>
</ul>
2023-04-13 22:44:23 +01:00
<br>
<br>
<br>
2023-03-09 07:43:33 +00:00
2023-04-16 23:04:13 +01:00
<!-- About me. -->
<h2 id="about_me"><a href="#about_me" class="h2"
>About Me</a></h2>
<p>I am Jake Winters, also known by my pseudonym "Inference", a cybersecurity researcher
based in United Kingdom.<br>
I am the founder, lead developer, and administrator, of Inferencium.<br>
All opinions are my own, and are not necessarily shared with projects or people I am
affiliated with.<br>
<br>
I write about my research and experience in cybersecurity and also physical security.
Most of my postings are security-related, but I occasionally post about other aspects of
my life.<br>
<br>
I am an open source advocate for the preservation and modifiability of source code. I
believe source code should be considered human knowledge as much as past knowledge and
teachings were; it is how modern humanity survives and runs.<br>
Source code being modifiable allows it to be adapted for use by anyone, whether to add
features, harden it for increased security and/or privacy, or provide accessibility for
disabled users.<br>
I am also a modular design advocate for the ability to securely and robustly make
changes to hardware and software without the entire system being affected.<br>
<br>
If you want to contact me for any reason, you can use my
<a href="https://inferencium.net/contact.html" class="body-link"
>contact methods</a>.<br>
<br>
I run the public Systems Hardening XMPP channel dedicated to systems security and
privacy hardening at <code>sys-hardening@muc.xmpp.inferencium.net</code>, and its
respective off-topic channel at
<code>sys-hardening-ot@muc.xmpp.inferencium.net</code>.</p>
<br>
<br>
<br>
2023-03-09 07:43:33 +00:00
<h2 id="licensing"><a href="#licensing" class="h2"
>Licensing</a></h2>
<p>Inferencium cares about upstreaming and sharing code, strongly preferring licenses which
have high license compatibility in order to permit sharing code with as many other projects
as possible; for this reason, permissive licenses are our preferred choice, while avoiding
copyleft licenses and other licenses which place restrictions on how our code may be used,
and prevent us from including important proprietary code, such as firmware, which can patch
security vulnerabilities, privacy issues, and stability issues. All Inferencium code is and
will be permissively licensed unless specific circumstances make it impractical or
infeasible to do so. Our goal is to share code which has the least amount of restrictions as
possible, to allow wider propagation of our code and allow more use cases and possibilities,
as well as ensuring proprietary code, whenever required, is permitted to be included.<br>
<br>
<a href="https://iso.org/standard/81870.html" class="body-link"
>ISO 5962:2021</a> is used for licensing, in the format
<code>SPDX-License-Identifier: &lt;license&gt;</code>; see the
<a href="https://spdx.org/licenses/" class="body-link"
>SPDX license list</a> for the full list of available licenses under this standard.</p>
<br>
<h3 id="licensing-preferred"><a href="#licensing-preferred" class="h3"
>Preferred</a></h3>
<h4 id="licensing-preferred-code"><a href="#licensing-preferred-code"
class="h4"
>Code</a></h4>
<h5 id="licensing-bsd-3-clause-clear">
<a href="#licensing-bsd-3-clause-clear" class="h5"
>BSD 3-Clause Clear License</a></h5>
<code>SPDX-License-Identifier: BSD-3-Clause-Clear</code>
<p>Type: Permissive</p>
<br>
<p><a href="https://spdx.org/licenses/BSD-3-Clause-
Clear.html" class="body-link"
>BSD 3-Clause Clear License</a> is a highly permissive
license which allows content licensed under it to be
used in any way, whether in source or binary form, and
allows sublicensing under a different license, with the
only restrictions being the original copyright notice
must be kept in order to attribute the original creator
of the licensed content, and the name of the project
and/or its contributors may not be used to endorse or
promote products derived from the original project.<br>
BSD 3-Clause Clear License is a derivative of
<a href="https://spdx.org/licenses/
BSD-3-Clause.html" class="body-link"
>BSD 3-Clause "New" or "Revised" License</a>, which adds
an explicit statement clarifying that patent rights are
not granted by the license alone, and must be granted
separately by the copyright and/or patent holder(s). We
prefer this license over the BSD 3-Clause "New" or
"Revised" License due to this explicit statement which
removes any possibility of debate and misunderstanding
in regards to patents applied to code using the BSD
3-Clause "New" or "Revised" License.</p>
<br>
<h5 id="licensing-mit"><a href="#licensing-mit" class="h5"
>MIT License</a></h5>
<code>SPDX-License-Identifier: MIT</code>
<p>Type: Permissive</p>
<br>
<p><a href="https://spdx.org/licenses/MIT.html"
class="body-link"
>MIT License</a> is a highly permissive license which
allows content licensed under it to be used in any way,
whether in source or binary form, and allows
sublicensing under a different license, with the only
restriction being the original copyright notice must be
kept in order to attribute the original creator of the
licensed content.<br>
Due to this license allowing the original project's name
and/or contributors to be used to endorse or promote
products derived from the original project, unless an
explicit statement is made alongside this license,
increasing complexity and deviating from the standard
license text, we prefer <a href="#licensing-bsd-3-
clause-clear" class="body-link"
>BSD 3-Clause Clear License</a>; however, MIT License is
a great choice when derivatives using the name of the
original project and/or its contributors is a non-issue.</p>
<br>
<h5 id="licensing-gpl-2.0"><a href="#licensing-gpl-2.0" class="h5"
>GNU General Public License v2.0</a></h5>
<code>SPDX-License-Identifier: GPL-2.0-only</code>
<p>Type: Copyleft</p>
<br>
<p><a href="https://spdx.org/licenses/GPL-2.0-
only.html" class="body-link"
>GNU General Public License v2.0</a> is a strong
copyleft license which restricts use of content licensed
under it by requiring all source code of the content to
be publicly available, making binary-only form and
inclusion of proprietary code impossible, requiring all
derivatives to be licensed under the same license
(allowing sublicensing under only newer GPL licenses if
<code>GPL-2.0-or-later</code> is specified in the SPDX-
License-Identifier), and requiring the original
copyright notice to be kept in order to attribute the
original creator of the licensed content.<br>
Due to the restrictive and invasive nature of this
license, it is avoided unless such restrictions would be
beneficial to Inferencium code; whenever this is the
case, the GNU General Public License v2.0 will be used,
rather than the more restrictive <a href="#licensing-gpl
-3.0" class="body-link"
>GNU General Public License v3.0</a>, and relicensing
derivatives under the GNU General Public License v3.0
will be disallowed.</p>
<br>
<h4 id="licensing-preferred-non-code"><a href="#licensing-preferred-non-
code" class="h4"
>Non-code</a></h4>
<h5 id="licensing-cc-by-4.0"><a href="#licensing-cc-by-4.0"
class="h5"
>Creative Commons Attribution 4.0 International</a></h5>
<code>SPDX-License-Identifier: CC-BY-4.0</code>
<p>Type: Permissive</p>
<br>
<p><a href="https://spdx.org/licenses/CC-BY-4.0.html"
class="body-link"
>Creative Commons Attribution 4.0 International</a> is a
highly permissive license which allows content licensed
under it to be used in any way, in any medium, with the
only restriction being the original copyright notice
must be kept in order to attribute the original creator
of the licensed content.</p>
<br>
<h3 id="licensing-other"><a href="#licensing-other" class="h2"
>Other</a></h3>
<h4 id="licensing-other-code"><a href="#licensing-other-code" class="h4"
>Code</a></h4>
<h5 id="licensing-gpl-3.0"><a href="#licensing-gpl-3.0"
class="h5"
>GNU General Public License v3.0</a></h5>
<code>SPDX-License-Identifier: GPL-3.0-only</code>
<p>Type: Copyleft</p>
<br>
<p><a href="https://spdx.org/licenses/GPL-3.0-only.html"
class="body-link"
>GNU General Public License v3.0</a> is a strong
copyleft license which restricts usage of content
licensed under it by requiring all source code of the
content to be publicly available, making binary-only
form and inclusion of proprietary code impossible,
requiring all derivatives to be licensed under the same
license (allowing sublicensing under only newer GPL
licenses if <code>GPL-3.0-or-later</code> is specified
in the SPDX-License-Identifier), requiring the content
to be made available only on systems which allow
modifying the content, such as systems with
unlocked/unlockable bootloaders and/or which are
unsigned by the OEM, and requiring the original
copyright notice to be kept in order to attribute the
original creator of the licensed content.<br>
Due to the restrictive and invasive nature of this
license, and the fact it requires code to be included
only on specific systems, further restricting usage of
Inferencium code, it is avoided completely.</p>
<br>
<h4 id="licensing-other-non-code"><a href="#licensing-other-non-code"
class="h4"
>Non-code</a></h4>
<h5 id="licensing-cc-by-nc-4.0"><a href="#licensing-cc-by-nc-
4.0" class="h5"
>Creative Commons Attribution Non Commerical 4.0
International</a></h5>
<code>SPDX-License-Identifier: CC-BY-NC-4.0</code>
<p>Type: Permissive non-commercial</p>
<br>
<p><a href="https://spdx.org/licenses/CC-BY-NC-4.0.html"
class="body-link"
>Creative Commons Attribution Non Commercial 4.0
International</a> is a permissive license which allows
content licensed under it to be used in any way, in any
medium, with the restrictions being commercial usage is
prohibited, and the original copyright notice must be
kept in order to attribute the original creator of the
licensed content.</br>
Due to the non-commercial restriction of this license
preventing Inferencium code from being used for any
purpose, specifically preventing commercial usage we do
not want to prevent, it is avoided completely.</p>
<br>
<br>
2023-03-15 17:18:58 +00:00
<h2 id="recommendations"><a href="#recommendations" class="h2"
>Recommendations</a></h2>
2023-03-10 06:39:55 +00:00
<br>
2023-03-09 03:34:34 +00:00
<!-- Hardware I recommend as production hardware. -->
<h3 id="hardware"><a href="#hardware" class="h3"
>Hardware</a></h3>
2023-03-10 06:39:55 +00:00
<br>
<h4 id="hdw-smartphone"><a href="#hdw-smartphone" class="h4"
>Smartphone</a></h4>
<div style="overflow-x:auto;">
<table>
<tr>
<td class="table-title">Type</td>
<td class="table-title">Hardware</td>
<td class="table-title">Description</td>
<td class="table-title">Source model<br>
<br>
(License - SPDX)</td>
</tr>
<tr>
<td class="table-main">Smartphone</td>
<td class="table-main"><img src="asset/img/google-pixel_6.png"
width="100px" height="100px"/><br>
<br>
Google Pixel</td>
<td>Google Pixel devices are the best Android devices available on the market for
<a class="body-link" href="https://security.googleblog.com/2021/10/
pixel-6-setting-new-standard-for-mobile.html"
2022-11-07 08:55:02 +00:00
>security and privacy</a>.<br>
2022-11-03 00:11:16 +00:00
<br>
They allow locking the bootloader with a
<a class="body-link" 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
<a class="body-link" 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
<a class="body-link" href="https://source.android.com/docs/security/features/
verifiedboot/verified-boot#rollback-protection"
>rollback protection</a> which prevents an adversary from rolling back the OS or
firmware version to a previous version with known security vulnerabilities.<br>
2022-11-03 00:11:16 +00:00
<br>
2022-11-03 05:24:14 +00:00
They also include a
<a class="body-link" href="https://developer.android.com/training/articles/
keystore#HardwareSecurityModule"
2022-11-07 08:55:02 +00:00
>hardware security module</a> (Titan M2, improving on the previous generation
<a class="body-link" 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
<a class="body-link" href="https://source.android.com/docs/security/best-practices/
hardware#strongbox-keymaster"
2022-11-07 08:55:02 +00:00
>Android StrongBox Keymaster</a>,
a <a class="body-link" href="https://source.android.com/docs/security/features/keystore"
2022-11-07 08:55:02 +00:00
>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.
<a class="body-link" 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.<br>
<br>
Google Pixel device kernels are compiled with
<a class="body-link" href="https://android-developers.googleblog.com/2018/10/
control-flow-integrity-in-android-kernel.html"
>forward-edge control-flow integrity</a> and
<a class="body-link" 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
<a class="body-link" 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>.<br>
<br>
Google releases
<a class="body-link" 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.<br>
<br>
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 class="body-link" 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
2022-10-31 00:25:44 +00:00
in-house Tensor SoC includes Tensor Security Core, further improving device security.<br>
<br>
Pixel 6-series and 7-series devices are supported for a
<a class="body-link" href="https://support.google.com/nexus/answer/
4457705#zippy=%2Cpixel-and-later"
>minimum of 5 years from launch</a>, an increase from previous generations'
<a class="body-link" href="https://support.google.com/nexus/answer/
4457705#zippy=%2Cpixel-xl-a-a-g-and-a-g"
>support lifecycles of 3 years</a>.</td>
</tr>
</table>
</div>
<br>
<br>
2023-03-09 03:34:34 +00:00
<!-- Software I recommend as production software. -->
<h3 id="software"><a href="#software" class="h3"
>Software</a></h3>
2023-03-10 06:39:55 +00:00
<br>
<h4 id="sfw-desktop"><a href="#sfw-desktop" class="h4"
>Desktop</a></h4>
<div style="overflow-x:auto;">
<table>
<tr>
<td class="table-title">Type</td>
<td class="table-title">Software</td>
<td class="table-title">Description</td>
<td class="table-title">Source model<br>
<br>
(License - SPDX)</td>
</tr>
<tr>
<td class="table-main">Operating system</td>
<td class="table-main"><img src="asset/img/logo-gentoo_linux.png"
width="100px" height="100px"/><br>
<br>
Gentoo Linux</td>
<td><a class="body-link" 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.<br>
<br>
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
2022-11-08 02:15:09 +00:00
apply includes
<a class="body-link" href="https://en.wikipedia.org/wiki/Buffer_overflow_protection"
2022-11-08 02:15:09 +00:00
>stack protection</a>,
<a class="body-link" href="https://en.wikipedia.org/wiki/Integer_overflow"
2022-11-08 02:15:09 +00:00
>signed integer overflow wrapping</a>, and GrapheneOS'
<a class="body-link" href="https://github.com/GrapheneOS/hardened_malloc/"
>hardened_malloc</a> memory allocator.<br>
<br>
You can find my personal Gentoo Linux configurations in my personal
<a class="body-link" href="https://git.inferencium.net/inference/cfg/"
2022-11-07 08:55:02 +00:00
>configuration respository</a>.</td>
<td class="table-main">Open source<br>
<br>
(GPL-2.0-only)</td>
</tr>
<tr>
<td class="table-main">Web browser</td>
<td class="table-main"><img src="asset/img/logo-chromium.png"
width="100px" height="100px"/><br>
<br>
Chromium</td>
<td><a class="body-link" href="https://chromium.org/"
>Chromium</a> is a highly secure web browser which is often ahead of other web browsers
in security aspects. It has a dedicated security team and a very impressive
<a class="body-link" href="https://www.chromium.org/Home/chromium-security/brag-sheet/"
2022-11-07 08:55:02 +00:00
>security brag sheet</a>.
Chromium's security features include a strong
<a class="body-link" href="https://code.google.com/p/chromium/wiki/LinuxSandboxing"
2022-11-07 08:55:02 +00:00
>multi-layer sandbox</a>,
strong <a class="body-link" href="https://www.chromium.org/Home/chromium-security/
site-isolation"
2022-11-07 08:55:02 +00:00
>site isolation</a>,
<a class="body-link" href="https://www.chromium.org/Home/chromium-security/
binding-integrity"
2022-11-07 08:55:02 +00:00
>Binding Integrity</a> memory hardening, and
<a class="body-link" href="https://www.chromium.org/developers/testing/
control-flow-integrity/"
2022-11-09 02:50:12 +00:00
>control-flow integrity (CFI)</a>.</td>
<td class="table-main">Open source<br>
<br>
(BSD-3-Clause)</td>
</tr>
</table>
</div>
2023-03-10 06:39:55 +00:00
<br>
<h4 id="sfw-smartphone"><a href="#sfw-smartphone" class="h4"
>Smartphone</a></h4>
<div style="overflow-x:auto;">
<table>
<tr>
2022-11-09 03:34:25 +00:00
<td class="table-title">Type</td>
<td class="table-title">Software</td>
<td class="table-title">Description</td>
<td class="table-title">Source model<br>
<br>
(License - SPDX)</td>
</tr>
<tr>
<td class="table-main">Operating system</td>
<td class="table-main"><img src="asset/img/logo-grapheneos.png"
width="100px" height="100px"/><br>
<br>
GrapheneOS</td>
<td><a class="body-link" href="https://grapheneos.org/"
2022-11-08 02:15:09 +00:00
>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,
<a class="body-link" href="https://github.com/GrapheneOS/kernel_gs-gs101/"
2022-11-07 08:55:02 +00:00
>hardened kernel</a>, hardened memory allocator
(<a class="body-link" href="https://github.com/GrapheneOS/hardened_malloc/"
2022-11-07 08:55:02 +00:00
>hardened_malloc</a>) to protect against common memory corruption vulnerabilties,
<a class="body-link" href="https://github.com/GrapheneOS/platform_bionic/"
2022-11-07 08:55:02 +00:00
>hardened Bionic standard C library</a>,
<a class="body-link" href="https://github.com/GrapheneOS/platform_system_sepolicy/"
2022-11-07 08:55:02 +00:00
>stricter SELinux policies</a>, and local and remote hardware-backed attestation
(<a class="body-link" href="https://attestation.app/about/"
2022-11-09 02:50:12 +00:00
>Auditor</a>) to ensure the OS has not been corrupted or tampered with.<br>
<br>
GrapheneOS only supports
<a class="body-link" 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.<br>
<br>
For an extensive list of features GrapheneOS provides, visit its
<a class="body-link" href="https://grapheneos.org/features/"
2022-11-09 02:50:12 +00:00
>official features list</a> which provides extensive documentation.</td>
<td class="table-main">Open source<br>
<br>
(MIT)</td>
</tr>
<tr>
<td class="table-main">Web browser</td>
<td class="table-main"><img src="asset/img/logo-vanadium.png"
width="100px" height="100px"/><br>
<br>
Vanadium</td>
<td>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 class="body-link" href="https://github.com/GrapheneOS/Vanadium/blob/13/patches/
0081-Implement-UI-for-JIT-site-settings.patch"
2022-11-08 02:15:09 +00:00
>disabling JavaScript just-in-time (JIT) compilation by default</a>,
<a class="body-link" href="https://github.com/GrapheneOS/Vanadium/blob/13/patches/
0051-stub-out-the-battery-status-API.patch"
2022-11-08 02:15:09 +00:00
>stubbing out the battery status API to prevent abuse of it</a>, and
<a class="body-link" href="https://github.com/GrapheneOS/Vanadium/blob/13/patches/
0084-Toggle-for-navigating-external-URL-in-incognito.patch"
2022-11-08 02:15:09 +00:00
>always-on Incognito mode as an option</a>.<br>
<br>
2022-11-03 00:11:16 +00:00
Vanadium's source code, including its Chromium patchset, can be found in its
<a class="body-link" href="https://github.com/GrapheneOS/Vanadium/"
2022-11-07 08:55:02 +00:00
>official repository</a>.</td>
<td class="table-main">Open source<br>
<br>
(GPL-2.0-only)</td>
2022-11-08 09:56:58 +00:00
</tr>
<tr>
<td class="table-main">Messenger</td>
<td class="table-main"><img src="asset/img/logo-molly.png"
width="100px" height="100px"><br>
2022-11-08 09:56:58 +00:00
<br>
Molly</td>
<td><a class="body-link" href="https://molly.im/"
2022-11-08 09:56:58 +00:00
>Molly</a> is a security-hardened, privacy-hardened
<a class="body-link" href="https://signal.org/"
2022-11-08 09:56:58 +00:00
>Signal</a> client which hardens Signal by using a variety of
<a class="body-link" href="https://github.com/mollyim/mollyim-android#features"
2022-11-09 02:46:46 +00:00
>unique features</a>, allowing
<a class="body-link" href="https://github.com/mollyim/mollyim-android/wiki/
Data-Encryption-At-Rest"
2022-11-08 09:56:58 +00:00
>locking the database when not in use</a>, and
<a class="body-link" href="https://github.com/mollyim/mollyim-android/blob/
a81ff7d120adc9d427be17239107343146bad704/app/src/main/java/org/thoughtcrime/securesms/
crypto/MasterSecretUtil.java#L91"
>utilising Android StrongBox</a> to protect user keys using the device's hardware
security module.<br>
2022-11-08 09:56:58 +00:00
<br>
Molly is available in
<a class="body-link" href="https://github.com/mollyim/
mollyim-android#free-and-open-source"
>2 flavours</a>:<br>
<ul>
<li>Molly, which includes the same proprietary Google code as Signal to support
more features.</li>
<br>
<li>Molly-FOSS, which removes the proprietary Google code to provide an
entirely open-source client.</li>
</ul></td>
<td class="table-main">Open source<br>
2022-11-08 09:56:58 +00:00
<br>
(GPL-3.0-only)</td>
2022-11-08 09:56:58 +00:00
</tr>
<tr>
<td class="table-main">Messenger</td>
<td class="table-main"><img src="asset/img/logo-conversations.png"
width="100px" height="100px"><br>
<br>
Conversations</td>
<td><a class="body-link" href="https://conversations.im/"
>Conversations</a> is a well-designed Android
<a class="body-link" href="https://xmpp.org/"
>XMPP</a> client which serves as the de facto XMPP reference client and has great
usability.</td>
<td class="table-main">Open source<br>
<br>
(GPL-3.0-only)</td>
</tr>
</table>
</div>
<br>
<br>
2023-04-10 19:51:28 +01:00
2023-04-29 11:09:59 +01:00
<h3 id="music"><a href="#music" class="h3"
>Music</a></h3>
<p>For a curated list of music I enjoy, visit my
<a href="music.html" class="body-link"
>music page</a>.</p>
<br>
<br>
<br>
2023-04-29 11:10:43 +01:00
</body>
2022-06-30 06:19:28 +01:00
</html>