Skip to content

Commit 3eeda9b

Browse files
committed
upgrade to org roam v2
1 parent 7fc55fe commit 3eeda9b

8 files changed

+32
-9
lines changed

org/20210311234743-identity_aware_proxy.org

+4-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,8 @@
1+
:PROPERTIES:
2+
:ID: 0e99f715-6ea9-47e2-98ab-f40ed0d37868
3+
:END:
14
#+title: identity-aware proxy
2-
#+roam_tags: proxy "zero trust"
5+
#+filetags: :proxy:zero_trust:
36

47
An identity-aware proxy is a reverse proxy which forwards normal payload and attaches the identity information to the backend servers.
58

org/20210312194030-sigma_bullets.org

+4-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,8 @@
1+
:PROPERTIES:
2+
:ID: 26a82b36-e049-470a-8f20-6b58cc7d2ba1
3+
:END:
14
#+title: sigma bullets
2-
#+roam_tags: "zero knowledge proofs"
5+
#+filetags: :zero_knowledge_proofs:
36
* Introduction
47
This document summarize how a zero-knowledge confidential transaction scheme works and how to implement it. A confidential transaction scheme is a transaction scheme with which the transaction value and the balance of the sender and receiver are encrypted. The zero-knowledge part means that outsider can effectively learn nothing about the values, although he can verify the transaction is not fabricated. The main references are [[https://eprint.iacr.org/2017/1066][Bulletproofs]] and [[https://eprint.iacr.org/2019/191][Zether]]. We use Zether to homomorphically encrypt the transaction value so that the we can directly add/subtract ciphertext of the encrypted balance which can then be decrypted into the correct balance after the transaction. We use bulletproofs to check the transaction value is valid, i.e. it is a non-negative number within the range \([0, 2^n)\), and after the transaction the sender must still have a non-negative balance. The vanilla bulletproofs do not apply to the scenario of zether as Elgamal commitments are not fully homomorphic. We need to tweak bulletproofs to support \(\Sigma\)-protocols, i.e. interactive proof of the values commited in Bulletproofs are truly the values involved in zether, whence we obtain a complete and sound proof of a confidential transaction.
58

org/20210312194409-quine_in_haskell.org

+3
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
1+
:PROPERTIES:
2+
:ID: 9bec89cb-c17e-44bd-a1b0-c368f7370f09
3+
:END:
14
#+title: quine in haskell
25

36
See [[https://blog.matthewbarber.io//2019/07/22/how-to-make-compressed-file-quines.html][How to make compressed file quines, step by step]]

org/20210312194530-kernel_development_with_nix.org

+4-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,8 @@
1+
:PROPERTIES:
2+
:ID: bc0d886b-d51f-4277-9c19-8f4c93c98c94
3+
:END:
14
#+title: kernel development with nix
2-
#+roam_tags: qemu "linux kernel" nix
5+
#+filetags: :qemu:linux_kernel:nix:
36

47
See also [[https://nixos.wiki/wiki/Kernel_Debugging_with_QEMU][Kernel Debugging with QEMU]].
58

org/20210510164540-self_hosted_infrastructure.org

+7-3
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,8 @@
1+
:PROPERTIES:
2+
:ID: 754d60ad-ca82-4f75-8aab-f80b674b4a79
3+
:END:
14
#+title: self-hosted infrastructure
2-
#+roam_tags: "incremental backup" docker nix ansible kubernetes "split horizon dns" "transparent proxy" "software-defined networking" "infrastructure as code" "cloud native" "load balancers" "overlay networks" "mesh networking"
5+
#+filetags: :incremental_backup:docker:nix:ansible:kubernetes:split_horizon_dns:transparent_proxy:software_defined_networking:infrastructure_as_code:cloud_native:load_balancers:overlay_networks:mesh_networking:
36

47
TLDR: I use [[https://tailscale.com/][tailscale]]/[[https://www.zerotier.com/][zerotier]] to establish a smallish mesh network. I use [[https://www.envoyproxy.io/][envoy]] as an edge router to forward L4 traffic.
58
I mainly provision and manage services with [[https://nixos.org/][nix]], [[https://www.docker.com/][docker]] and [[https://github.com/mozilla/sops][sops]]. When it is absolutely required, I use [[https://k3s.io/][k3s]] to deploy [[https://kubernetes.io/][Kubernetes]] services.
@@ -297,12 +300,12 @@ and the configuration is shared.
297300
*** Strength
298301
What I really like about authelia is its simplicity and easy integration with traefik.
299302
*** Future
300-
I want to use a [[https://cloud.google.com/beyondcorp][beyondcorp]] style [[file:20210311234743-identity_aware_proxy.org][identity-aware proxy]] with [[https://www.openpolicyagent.org/][open policy agent]] support some other day. The last time I checked [[https://www.pomerium.com/][pomerium]],
303+
I want to use a [[https://cloud.google.com/beyondcorp][beyondcorp]] style [[id:0e99f715-6ea9-47e2-98ab-f40ed0d37868][identity-aware proxy]] with [[https://www.openpolicyagent.org/][open policy agent]] support some other day. The last time I checked [[https://www.pomerium.com/][pomerium]],
301304
I found envoy was hard to pack and pomerium was too oidc-centric, most of all it did not support ldap or other local user database.
302305

303306
** SSO
304307
Authelia just landed [[https://github.com/authelia/authelia/issues/189][openid connect support]]. I haven't tried it yet. One more thing about authelia is that I currently use a single text file as account backend.
305-
I have set up [[https://www.openldap.org/][openldap]] on my machines, but I haven't tried it on authelia yet. I intend to use [[https://www.freeipa.org/page/Main_Page][freeipa]] instead, which is much more versatile.
308+
I have set up [[https://www.openldap.org/][openldap]] on my machines, but I haven't tried it on authelia yet. I intend to use [[https://www.freeipa.org/page/Main_Page][freeipa]] instead (tried container, systemd within the container didn't work), which is much more versatile.
306309

307310
** Intrusion Prevention
308311
Because of my distrust to other people's computer, I intentionally made my edge proxy to be as dumb as possible.
@@ -453,3 +456,4 @@ Nix is great. But it is hard for outside world to learn my nix configuration.
453456
** Federated Storage
454457
** Grand Unification
455458
** Personal Data Warehouse
459+
** Accounts (ldap)
+4-1
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,5 @@
1+
:PROPERTIES:
2+
:ID: 4948eeb8-df11-4f28-919d-d416a34e6109
3+
:END:
14
#+title: self-hosted services
2-
TODO. For now, See [[file:20210510164540-self_hosted_infrastructure.org][self-hosted infrastructure]].
5+
TODO. For now, See [[id:754d60ad-ca82-4f75-8aab-f80b674b4a79][self-hosted infrastructure]].

org/20210929003252-chrome_download_shelf.org

+4-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,8 @@
1+
:PROPERTIES:
2+
:ID: 14da66c8-feb8-49d1-8888-db76d1c7b8a8
3+
:END:
14
#+title: Chrome download shelf
2-
#+roam_tags: "chrome" "internals"
5+
#+filetags: :chrome:internals:
36
Chrome download shelf is the widget shown in the buttom when you initiate a new download. This document summarizes how the download shelf is implemented.
47
It is sketchy on the details. For more information, click on the source code or documentation links.
58

publish.el

+2-1
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,8 @@
4040
:init
4141
(setq org-roam-directory my/org-dir)
4242
(setq org-roam-db-location (expand-file-name "org-roam.db" my/org-dir))
43-
(org-roam-mode)
43+
(setq org-roam-v2-ack t)
44+
(org-roam-db-autosync-mode)
4445
(unless (file-exists-p org-id-locations-file)
4546
(let ((org-id-files (org-roam--list-files org-roam-directory))
4647
org-agenda-files)

0 commit comments

Comments
 (0)