]> info9.net Git - wiki.git/commitdiff
Merge remote-tracking branch 'refs/remotes/origin/master' master
authorTom Marble <tmarble@info9.net>
Mon, 17 Jul 2023 17:11:10 +0000 (12:11 -0500)
committerTom Marble <tmarble@info9.net>
Mon, 17 Jul 2023 17:11:10 +0000 (12:11 -0500)
12 files changed:
betrusted.mdwn [new file with mode: 0644]
identity.mdwn [new file with mode: 0644]
matrix.mdwn [new file with mode: 0644]
risc-v.mdwn [new file with mode: 0644]
rust.mdwn [new file with mode: 0644]
selenium.mdwn [new file with mode: 0644]
software.mdwn [new file with mode: 0644]
ssi.mdwn [new file with mode: 0644]
tmarble/posts/Betrusted_Software.mdwn [new file with mode: 0644]
tmarble/posts/a_minimal_matrix_cli_client.mdwn [new file with mode: 0644]
tmarble/posts/fossy_ssi.mdwn [new file with mode: 0644]
tmarble/posts/fossy_ssi/fossy_ssi.pdf [new file with mode: 0644]

diff --git a/betrusted.mdwn b/betrusted.mdwn
new file mode 100644 (file)
index 0000000..759202a
--- /dev/null
@@ -0,0 +1,4 @@
+[[!meta title="pages tagged betrusted"]]
+
+[[!inline pages="tagged(betrusted)" actions="no" archive="yes"
+feedshow=10]]
diff --git a/identity.mdwn b/identity.mdwn
new file mode 100644 (file)
index 0000000..2f28104
--- /dev/null
@@ -0,0 +1,4 @@
+[[!meta title="pages tagged identity"]]
+
+[[!inline pages="tagged(identity)" actions="no" archive="yes"
+feedshow=10]]
diff --git a/matrix.mdwn b/matrix.mdwn
new file mode 100644 (file)
index 0000000..5e0e8bb
--- /dev/null
@@ -0,0 +1,4 @@
+[[!meta title="pages tagged matrix"]]
+
+[[!inline pages="tagged(matrix)" actions="no" archive="yes"
+feedshow=10]]
diff --git a/risc-v.mdwn b/risc-v.mdwn
new file mode 100644 (file)
index 0000000..eb85eac
--- /dev/null
@@ -0,0 +1,4 @@
+[[!meta title="pages tagged risc-v"]]
+
+[[!inline pages="tagged(risc-v)" actions="no" archive="yes"
+feedshow=10]]
diff --git a/rust.mdwn b/rust.mdwn
new file mode 100644 (file)
index 0000000..6e12944
--- /dev/null
+++ b/rust.mdwn
@@ -0,0 +1,4 @@
+[[!meta title="pages tagged rust"]]
+
+[[!inline pages="tagged(rust)" actions="no" archive="yes"
+feedshow=10]]
diff --git a/selenium.mdwn b/selenium.mdwn
new file mode 100644 (file)
index 0000000..ab80295
--- /dev/null
@@ -0,0 +1,4 @@
+[[!meta title="pages tagged selenium"]]
+
+[[!inline pages="tagged(selenium)" actions="no" archive="yes"
+feedshow=10]]
diff --git a/software.mdwn b/software.mdwn
new file mode 100644 (file)
index 0000000..db05856
--- /dev/null
@@ -0,0 +1,4 @@
+[[!meta title="pages tagged software"]]
+
+[[!inline pages="tagged(software)" actions="no" archive="yes"
+feedshow=10]]
diff --git a/ssi.mdwn b/ssi.mdwn
new file mode 100644 (file)
index 0000000..d35b6f4
--- /dev/null
+++ b/ssi.mdwn
@@ -0,0 +1,4 @@
+[[!meta title="pages tagged ssi"]]
+
+[[!inline pages="tagged(ssi)" actions="no" archive="yes"
+feedshow=10]]
diff --git a/tmarble/posts/Betrusted_Software.mdwn b/tmarble/posts/Betrusted_Software.mdwn
new file mode 100644 (file)
index 0000000..00bc748
--- /dev/null
@@ -0,0 +1,56 @@
+# Betrusted Software
+
+I am thrilled to announce that I will be collaborating with
+[bunnie][bunnie] and [xobs][xobs] on the [betrusted][betrusted]
+project with a focus on software.
+
+Betrusted aims to provide a user verifiable, trustworthy device for
+secure communications. That's why the device is intentionally limited in
+functionality.
+
+<br/>
+<a href="https://betrusted.io/">
+<img width=264 height=229 src="http://info9.net/images/betrusted/keyboard-v4-azerty3.png" alt="Betrusted Azerty Keyboard"/>
+</a>
+<br/>
+
+This means that Betrusted is not a "smartphone": it can’t browse the web; it
+has no “app store”; it won’t hail rides for you; and it can’t help you
+navigate a city. However, it will be able to keep your private
+conversations private, give you a solid second factor for
+authentication, and perhaps provide a safe spot to store digital
+currency.
+
+Betrusted software is the application project companion for the
+Betrusted hardware device. Going beyond just end-to-end encryption the
+Betrusted project ensures that Human-Computer Interaction is also
+secure from key loggers and screen grabbers. The software will include
+an input method editor to facilitate entering text in both Latin
+(French Azerty keyboard layout shown above) and Asian languages as well as a
+graphics toolkit for the ultra low power display. This project will
+develop a secure messaging application on top of these input/output
+libraries while meeting the constraint that all software must fit in
+an extraordinarily small memory footprint (4 MiB RAM).
+
+Later today in Leipzig at the [36th Chaos Communication Congress][36c3]
+[bunnie][bunnie] will present
+[Open Source is Insufficient to Solve Trust Problems in Hardware][trust-hardware].
+
+Stay tuned for further updates on the Betrusted hardware, OS and
+software projects.
+
+The [Betrusted Software][betrusted-software] project is made possible with
+financial support  from [NLnet][nlnet] and the
+[NG10 Privacy & Trust Enhancing Technologies Fund][pet].
+
+
+[[!tag betrusted software risc-v matrix rust]]
+
+[bunnie]: https://fahrplan.events.ccc.de/congress/2019/Fahrplan/speakers/3155.html
+[xobs]: https://fahrplan.events.ccc.de/congress/2019/Fahrplan/speakers/4376.html
+[betrusted]: https://betrusted.io/
+[36c3]: https://www.ccc.de/en/updates/2019/36c3-in-leipzig
+[trust-hardware]: https://fahrplan.events.ccc.de/congress/2019/Fahrplan/events/10690.html
+[betrusted-software]: https://nlnet.nl/project/BetrustedSoftware/
+[nlnet]: https://nlnet.nl/
+[pet]: https://nlnet.nl/PET/
diff --git a/tmarble/posts/a_minimal_matrix_cli_client.mdwn b/tmarble/posts/a_minimal_matrix_cli_client.mdwn
new file mode 100644 (file)
index 0000000..f80b2e6
--- /dev/null
@@ -0,0 +1,97 @@
+# a minimal matrix cli client
+
+In [building the software][betrusted-initial] for Betrusted our goal is to
+start with a minimal [Matrix][matrix] client: specifically one built
+intentionally for the command line with no extras to
+keep the memory footprint as low as possible.
+
+This will prepare us for the secure client on the actual device we
+will be running in a highly constrained user interface environment,
+with application code written in Rust on top of the [Xous][xous]
+operating system.
+
+<br/>
+<a href="https://betrusted.io/">
+<img src="http://info9.net/images/betrusted/betrusted.gif" alt="Betrusted Simulation in renode"/>
+ <br/>
+<img src="http://info9.net/images/betrusted/keyboard-v4-azerty3-cropped.png" alt="Betrusted Azerty Keyboard"/>
+</a>
+<br/>
+
+_Shown: very early Betrusted simulation running in [renode][renode]_
+
+The rationale for choosing the Matrix protocol for the first chat
+application is that it: 1) is an open protocol, 2) supports federated
+(decentralized) organization, 3) has multiple, independent, open source
+implementations, and 4) supports multiple interoperability bridges.
+
+## Choosing a Matrix reference client
+
+Looking for inspiration from existing [Matrix clients][matrix-clients]
+we find Fractal is written in Rust, but is a very complex GUI application
+and it does not have encryption support. The Weechat client is actually
+a plugin for Weechat, is written in Python, and further from being
+a stand alone application. Gomucks is a more minimal client, but it
+is written in Go, has many "missing features", and fails to build.
+There are very old and unmaintained projects [matrix-cli][matrix-cli]
+and [matrixcli][matrixcli].
+
+A very promising, even if "work in progress", client is [ruma-client][ruma-client]
+as it is written in Rust and designed to be minimal. Another potential source
+of inspiration is [Matrix IRCd][matrix-ircd] as it is written in Rust
+and curated by the Matrix foundation. So stay tuned for the initial
+Betrusted Matrix command line client which will benefit from these
+prior works.
+
+## Web Content Accessibility Guidelines
+
+We are developing for an international and diverse set of users
+and want to take into consideration guidance established for the
+web from the [Web Content Accessibility Guidelines][wcag].
+
+However, Betrusted is very intentionally _not_ a web browser.
+In fact the display is very simple: 336 × 536 pixels, black-and-white,
+200 ppi resolution LCD.
+
+Here are things we will keep in mind while considering accessibility
+(based on the WCAG checks):
+
+* **Page Title** We can show "titles", but there will not be "windows", _per se_ Betrusted (at least initially) will not have a screen reader.
+* **Image Text Alternatives:** In the context of the chat application the first "images" to be used will be for emojis. We may provide an alternative, textual representation for these images, e.g. **:smiley:** for :)
+* **Text**
+   * **Headings**  Betrusted will not have heading structure (like a web browser)
+   * **Contrast ratio**  This is easy: Betrusted _only_ works at maximal contrast: black-and-white
+   * **Resize text** Betrusted should allow users to resize text (insomuch as rendering different font sizes does not consume memory exorbitantly)
+* **Interaction**
+   * **Keyboard access and visual focus** Betrusted (at least initially) will not have assistive technologies.
+   * **Forms, labels and errors** Following the guideline "Labels, keyboard access, clear instructions, and effective error handling are important for forms accessibility." is appropriate for Betrusted
+* **General**
+   * **Moving, Flashing or Blinking Content** For the chat application we do not expect blinking content.
+   * **Multimedia alternatives** For the chat application we do not expect multimedia (at least initially).
+   * **Basic Structure Check** The goal of "linearization of content" will likely not be an issue for Betrusted as the screen is so small it will be impractical to have more than one column in any given presentation.
+
+Thus evaluating Bestrusted for Accessibility will require certain
+adaptations.
+
+## Acknowledgment
+
+The [Betrusted Software][betrusted-software] project is made possible with
+financial support  from [NLnet][nlnet] and the
+[ING10 Privacy & Trust Enhancing Technologies Fund][pet].
+
+
+[[!tag betrusted software risc-v matrix rust]]
+
+[betrusted-initial]: http://info9.net/wiki/tmarble/posts/Betrusted_Software/
+[xous]: https://xobs.io/p/8e333298-72aa-4815-b3d8-2b7080578c2a/
+[matrix]: https://en.wikipedia.org/wiki/Matrix_(protocol)
+[matrix-clients]: https://matrix.org/clients/
+[matrix-cli]: https://github.com/koenw/matrix-cli
+[matrixcli]: https://github.com/saadnpq/matrixcli
+[ruma-client]: https://github.com/ruma/ruma-client
+[matrix-ircd]: https://github.com/matrix-org/matrix-ircd
+[renode]: https://renode.io/
+[wcag]: https://www.w3.org/WAI/test-evaluate/preliminary/
+[betrusted-software]: https://nlnet.nl/project/BetrustedSoftware/
+[nlnet]: https://nlnet.nl/
+[pet]: https://nlnet.nl/PET/
diff --git a/tmarble/posts/fossy_ssi.mdwn b/tmarble/posts/fossy_ssi.mdwn
new file mode 100644 (file)
index 0000000..739db59
--- /dev/null
@@ -0,0 +1,27 @@
+# fossy ssi
+
+Yesterday I had the pleasure of presenting my talk
+[Challenges in open, self-sovereign identity][ssi-fossy23] at [FOSSY][fossy23].
+
+It was great to see folks in person again and I'm grateful for the audience
+discussion and participation! There was a great deal of interest in
+how open hardware in the form of [Betrusted][betrusted] / [Precursor][precursor]
+might help users maintain their own private key material.
+
+I'll update this post with a link to the video once it becomes available.
+
+## acknowledgments
+
+I would like to thank Kaliya, Pamela Dingle and Christopher Allen for contributing
+ideas and links on the subject of identity.
+
+## links
+
+* Presentation as PDF: [[fossy_ssi.pdf|fossy_ssi.pdf]]
+
+[ssi-fossy23]: https://2023.fossy.us/schedule/presentation/117/
+[fossy23]: https://2023.fossy.us/
+[betrusted]: https://betrusted.io/
+[precursor]: https://precursor.dev/
+
+[[!tag security ssi identity]]
diff --git a/tmarble/posts/fossy_ssi/fossy_ssi.pdf b/tmarble/posts/fossy_ssi/fossy_ssi.pdf
new file mode 100644 (file)
index 0000000..448f5a7
Binary files /dev/null and b/tmarble/posts/fossy_ssi/fossy_ssi.pdf differ