- Anonymous Retrospective Broadcasts
- If we don't assume a centralized party that can be trusted to verify information, what we're left with is not really a contact tracing application but a particular kind of messaging application, where users create tracks through space and time, and can retrospectively broadcast anonymous messages to users whose tracks were spatially nearby to theirs in a particular time range.
- This messaging system should be privacy-preserving, in the sense that:
- Server Privacy: An honest-but-curious server should not learn information about any user's space-time tracks;
- Locality Integrity: A user should not be able to broadcast messages to users who were not nearby to them;
- User Privacy:
- A passive adversary cannot not learn any information about a user's space-time track outside of the segments they have broadcast messages to. This means that users who do not broadcast reveal no information about their movements.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
impl<'a, 'b> Add<&'b CachedPoint> for &'a ExtendedPoint { | |
type Output = ExtendedPoint; | |
fn add(self, other: &'b CachedPoint) -> ExtendedPoint { | |
// The coefficients of an `ExtendedPoint` are reduced after | |
// every operation. If the `CachedPoint` was negated, its | |
// coefficients grow by one bit. So on input, `self` is | |
// bounded with `b < 0.007` and `other` is bounded with | |
// `b < 1.0`. | |
let mut tmp = self.0; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# v--- endianness issues here | |
bytestr_to_arr = lambda s:"[" + ", ".join(['0x'+b+a for a,b in zip(s[0::2], s[1::2])]) + "]" | |
ZZtobytestr = lambda x: "".join(ZZ(x).digits(16, '0123456789abcdef')) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
[536870912,434873] | |
[536870912,434902] | |
[536870912,434903] | |
[536870912,434904] | |
[536870912,434917] | |
[536870912,434936] | |
[536870912,434978] | |
[536870912,434993] | |
[536870912,435023] | |
[536870912,435040] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
encoding edffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f has order 4 | |
encoding edffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff has order 4 | |
encoding eeffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f has order 1 | |
encoding eeffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff has order 1 | |
encoding f0ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f has order 8p | |
encoding f0ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff has order 8p | |
encoding f1ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f has order 8p | |
encoding f1ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff has order 8p | |
encoding f2ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f has order 8p | |
encoding f2ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff has order 8p |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"annotations": { | |
"list": [ | |
{ | |
"builtIn": 1, | |
"datasource": "-- Grafana --", | |
"enable": true, | |
"hide": true, | |
"iconColor": "rgba(0, 211, 255, 1)", | |
"name": "Annotations & Alerts", |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
curl -s "https://api.github.com/orgs/THE_ORG_NAME/repos?per_page=200" | jq '.[].clone_url' | xargs -L1 git clone |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
2021-11-24T01:46:37.942537Z INFO get_all_crates: successfully cloned crate name="planner" completion=0.010308388299892945 | |
2021-11-24T01:46:37.942664Z INFO get_all_crates: starting clone name="wasm-bindgen-anyref-xform" repo="https://github.com/rustwasm/wasm-bindgen/tree/master/crates/anyref-xform" clone_path="/home/hdevalence/data/crates.io/repos/wa/sm/wasm-bindgen-anyref-xform" | |
2021-11-24T01:46:38.162363Z INFO get_all_crates: successfully cloned crate name="tinywinstr" completion=0.010325655281969817 | |
2021-11-24T01:46:38.162397Z INFO get_all_crates: starting clone name="keypath" repo="https://github.com/cmyr/keypath" clone_path="/home/hdevalence/data/crates.io/repos/ke/yp/keypath" | |
2021-11-24T01:46:38.211084Z INFO get_all_crates: successfully cloned crate name="frugalos_config" completion=0.01034292226404669 | |
2021-11-24T01:46:38.211251Z INFO get_all_crates: starting clone name="slack-blocks" repo="https://github.com/cakekindel/slack-block-kit-rs" clone_path="/home/hdevalence/data/crates.io/repos/sl/ac/sla |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
use std::path::PathBuf; | |
use futures::{stream::FuturesUnordered, StreamExt}; | |
use git2::Repository; | |
use serde::Serialize; | |
use structopt::StructOpt; | |
#[derive(Debug, StructOpt)] | |
#[structopt( | |
name = "get-all-crates", |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
~/c/p/penumbra (env-in-freshstart|✚1…) $ cargo run --release --bin pcli -- -n 127.0.0.1 wallet reset | |
Compiling pcli v0.1.0 (/Users/hdevalence/code/penumbra/penumbra/pcli) | |
Compiling penumbra-proto v0.1.0 (/Users/hdevalence/code/penumbra/penumbra/proto) | |
Compiling penumbra-crypto v0.1.0 (/Users/hdevalence/code/penumbra/penumbra/crypto) | |
Compiling penumbra-stake v0.1.0 (/Users/hdevalence/code/penumbra/penumbra/stake) | |
Compiling penumbra-chain v0.1.0 (/Users/hdevalence/code/penumbra/penumbra/chain) | |
Compiling penumbra-transaction v0.1.0 (/Users/hdevalence/code/penumbra/penumbra/transaction) | |
Compiling penumbra-wallet v0.1.0 (/Users/hdevalence/code/penumbra/penumbra/wallet) | |
Finished release [optimized] target(s) in 18.59s | |
Running `target/release/pcli -n 127.0.0.1 wallet reset` |