or
or
By clicking below, you agree to our terms of service.
New to HackMD? Sign up
Syntax | Example | Reference | |
---|---|---|---|
# Header | Header | 基本排版 | |
- Unordered List |
|
||
1. Ordered List |
|
||
- [ ] Todo List |
|
||
> Blockquote | Blockquote |
||
**Bold font** | Bold font | ||
*Italics font* | Italics font | ||
~~Strikethrough~~ | |||
19^th^ | 19th | ||
H~2~O | H2O | ||
++Inserted text++ | Inserted text | ||
==Marked text== | Marked text | ||
[link text](https:// "title") | Link | ||
 | Image | ||
`Code` | Code |
在筆記中貼入程式碼 | |
```javascript var i = 0; ``` |
|
||
:smile: | ![]() |
Emoji list | |
{%youtube youtube_id %} | Externals | ||
$L^aT_eX$ | LaTeX | ||
:::info This is a alert area. ::: |
This is a alert area. |
On a scale of 0-10, how likely is it that you would recommend HackMD to your friends, family or business associates?
Please give us some advice and help us improve HackMD.
Do you want to remove this version name and description?
Syncing
xxxxxxxxxx
KERI Dev Focus Calls
Bi-Weekly Meeting Agenda and Minutes
Schedule: Every other Thursday opposite the KERI Educators call Time: 8:00 AM MST (Salt Lake) / 3:00 PM BST (London)
Quick Links
CESRide repo | Parside repo | IETF-CESR spec
Bi-weekly Zoom Meeting Link
CESR Roadmap | KERI + ACDC Roadmap
KERI Documentation
2023 Meetings
2023-05-18 #18
Agenda
self.store.get_latest_transaction_event(&vcid)?;
2023-05-11 #17
Zoom Link
Passcode: %Yz*1!7b
Agenda
Notes
Kevin: We passed what we originally intended to be in CESRide. They are not the primitives though they are how you use the primitives.
Jason: We could have code verifying KELs, TELs, and ACDCs in issues and then go through them in calls.
Kevin: general proposal is to repurpose this call. KERI dev call every week. KERI and ACDC spec calls more focused on standards work for now.
Moving CESR into a KERIide repo was not a lot of work, though was instructive. We need to get something done and released with KERIide, at least a 0.1.0.
Monorepo a good idea? We were finding it was difficult to get some of the things done across the barriers of the library. Advantages
Depends on your use case. You can change the way it builds so it builds less or more of the library depending on what you need.
KERIde is starting as a monorepo.
Wait until Jason has ported his work to KERide and then archive CESRide and put a big note on the top that the code has moved and is no longer supported.
The reason it was hard for some to write PRs for Parside without understanding the KERI code that used the parsing code it was really challenging for them.
Either do both sides of an integration or even a full stack integration to really understand how things connect together.
Graduated Disclosure is more of an application level concern.
Congratulations to Jason Colburne for finishing CESRide! This is a big accomplishment for the KERI and ACDC community.
2023-04-27 #16
Zoom Recording
Passcode: Bv8uG+!W
Agenda
Notes
Attendees: Kent Bull
Jason: Added code for Creder into issue 147. All that is needed right now is to port the KERIpy tests for this.
Jason: has written a bunch of parsing code. It was really simple, two files, so is all of the Parside code from DSR really necessary?
Signifide, parside, cesride distinction: Kevin: Visibility into the CESR package was changed. Changing to "pub crate" to expose things for usability in Signifide.
Jason: impetus for 0.6.0 is for the DSR folks and for Qui.
Kevin: If we get creder in there we can do 0.6.0. Creder really belongs in Signifide and Parside
Jason: Creder and Serder don't need to be in Cesride.
Signifide is to support signing at the edge. Minimally sufficient KERI
Creder and Serder are JSON structures at the moment.
Parser
Create a special topic call for discussing the Rust module diagram.
One of the most confusing thing about the events is the attachments because they are pure CESR. All the different types of attachments are different types of counters. There may be nested counters.
The hurdle to getting started was trying to understand what KERI was doing and why things were important.
Jason recommends starting with the parsing code. A message is only a Creder or a Serder. A Creder is an ACDC, a Serder is a KERI key event. keripy/src/keri/core/parsing.py:L974 (ish)
KERI is just a protocol for building and parsing messages.
2023-04-13 #15 - skipped, IIW prep
No recording for today since we cancelled the meeting.
Agenda
Notes
No notes for today as we cancelled the meeting. Thanks to Steven Milstein and Petteri Stenius for showing up.
2023-03-30 #14
Zoom recording
Passcode: S%iTLL5E
Agenda (Remember to record the meeting! – and delete this comment)
Meeting Minutes
The SECP256r1 work is very timely for GLEIF. "r1" is the curve that is in the HSMs For Apple Secure Enclave/Hardware Security Modules.
Vasily Suvorov mentioned he has a working CESR parser in Elixir. Possibly use https://github.com/rusterlium/rustler to bridge our work to his.
SECP256k1 was initially not using a randomized signature and now both k1 and r1 is using a randomized signature.
FFI status report and direction
Parside PR merge status
Maybe we made the wrong decision.
Closing issues!
Reference PRs for uniffi work
Over the next week with PRs from
code new to Jason
fn something(argument: impl Trait) { }
Ie: fn messagize(sadder: impl Sadder, …) { … }
You should use the & ampersand and pass the object, though the point is that things were hard to do with the "dyn" keyword.
"dyn" is for when you are combining traits in the abstract, not in the concrete.
2023-03-16 #13
Zoom Recording Link
Passcode: pNm=Ai55
Agenda
Notes
usage of the anyhow error handling library to provide easy idiomatic error handling without having to resort to boxed errors.
SECP256-r1
Zeroization PRs
b64_engine::URL_SAFE.encode_slice(&buffer, &mut b64_vec)
raw.zeroize();
is necessary as opposed toZeroizing::new(vec![...])
when the slice comes in through function arguments.data! macro to dat!
data
module exportable and consumable by library users.release is up to 0.3.0 now.
kever, test code, signing an event
Parside: Jason would like to see Parside taken care of and open PRs merged into something usable so we can parse CESR events and data.
FFI layer pause
Milestone on Primitive Implementations
Top-down architecture jaunt
2023-03-02 #12
There is no recording for this meeting. We forgot to hit the record button.
Agenda
Minutes
FFI Layer definition in the Terms Wiki
Parside Interface and pausing FFI development while we look at other options:
Doing a lot of work to avoid having the FFI have a larger impact on the API than it needs to.
Ran into issues with the UDL. Concessions we would be making to the API in CESR with UniFFI.
Wants to take a look at the Rust JNI
Kevin talked with Daniel Hardman out of band.
He is okay with the suggestion to pause and look at other options as we look forward
Kevin asking GLEIF to sponsor FFI option exploration.
What are the priorities of the languages being addressed?
Libsodium is deprecated in rust so we use other libraries.
Add note to CESRide README regarding cryptographic libraries used.
Saying these are the dependencies we use and the assumptions we make.
Swift Bridge may be used.
Signifide library:
one FFI implementation in one other high level language, likely Java.
Milestone nearly reached:
Versioning:
for candidate releases and things like that.
CESR Code Tables outside of a programming language:
It is a work in process: https://github.com/psteniusubi/cesr-decoder/tree/main/cesr-schema
2023-02-16 #11
Zoom Recording
Passcode: X2y.D3%^
Agenda:
Attendees
@kentbull
Notes
entries from a code table. This binding must be severed in order to
modularize the code table abstraction.
passed in that becomes a concrete codex entry.
One is with generics
Other is
2023-02-02 #10
Zoom recording link
Glossary items created
Feel free to push the edit button and amend / correct text
Agenda
2023-01-19 #9
Zoom Meeting Link
Passcode: +0cL#2DW
Agenda
Core API design for CESR.
CESR - The Future
Contributing to CESR
Rename Vote
Chat with Sam. Naming. How did he come to the names he did in KERIpy?
Notes
English Semantic Naming Conventions
CESR Future
The amount of cryptographic primitives to be added to CESR exceeds the amount of primitives currently in CESR. There is plenty of work to do in both KERIpy and CESRide/Parside.
Native CESR KERI Events Means new codes to support lists, config trait string as CESR and version string as CESR. Already have SN as Number and the seals as fixed field.
Native CESR ACDC field maps (so now we have CESR native equivalent of JSON, CBOR, or MGPK)
New CESR code for list of two tuples (which can represent an ordered dic, or json object, or field map etc).
CESR code for version string
CESR code for edge operators (ACDC Native CESR)
Refactor group codes to do pipelining fully, reorder group codes so that pipeline and generic codes are first (so they don’t change for different protocol tables) and then structure specific codes are appended on a first come first served basis
Add CESR codes for variable length assymmetric encrypted ciphers.
Add CESR primitives for symmetric encrypted salts, and private keys/seeds
Add CESR codes for variable length symmetric encrypted ciphers.
Add CESR code or codes for UDP header of UDP envelope of segment of CESR stream.
New Architecture
In order to keep the cognitive overhead low and to cleanly separate concerns two things are happening in the WebOfTrust Rust CESR implementation:
Contributing to CESR
Formal Vote on Name and Repositories
We did a voice vote with all community members on the call and were all in the affirmative for the following proposal:
New Repositories
CESRide Parside
2023-01-05 #8
Zoom Recording Link Passcode: Ny9r@cs1
Agenda
Notes
We could ask Sam Smith to come and do a review of CESR, the CESR For Muggles talk, for the CESR Rust implementation group.
Sam’s slides for CESR for First Year Wizards Is here:
We will ask Sam to talk next time.
Naming conventions - see docstrings in classes.
Could make a listing of existing classes and functions and their names.
2022 meetings
2022-12-22 – SKIP – Christmas Holiday
2022-12-08 #7
Zoom recording Link Passcode: @^f51KEa
Agenda
2022-11-24 – SKIP – Thanksgiving in the US - Holiday
2022-11-10 #6
Zoom Recording Link Passcode: UCw###a6
Questions Henk:
Agenda
2022-10-27 #5
Zoom Recording Link Passcode: e?$fP5fG
Attendees
Kent Bull Henk van Cann Trent Larson Stephen Milstein
Agenda
Meeting Notes
Henk: How do we deal with beginner questions in a friendly, productive way?
Trent: Since we are early enough we get to define the culture.
Henk: criteria for what is a (proper) KERI protocol implementation: MUST,SHOULD and COULD haves, first draft:
2022-10-13 #4
Zoom Recording Link Passcode: re?Eb5pf
Agenda
Attendees
Kent Bull Daniel Hardman Henk van Cann Edyta Pawlak Joseph Hunsaker Trent Larson Stephen Milstein
Minutes
Henk Update
Kent Update
Edyta update
signed_event_stream(s: &[u8]) -> nom::IResult<&[u8], Vec<SignedEventData>>
for the parsing loopLicensing
2022-09-29 #3
Zoom Recording Link Passcode: 8^54Sr&.
Agenda
Attendees
Joseph Hunsaker Kent Bull Steven Milstein Henk van Cann Trent Larson
Meeting Minutes
New Terms CESR related
2022-09-15 #2
Zoom Recording Link Passcode: J9Pc139?
Agenda
Attendees
Joseph Hunsaker Edyta Pawlak Kent Bull
Notes
Edyta - nothing to report. Joseph - nothing to report. Kent - Read vast majority of new Spec (Published: 25 August 2022)
Kent: I believe
Edyta: Text is much easier to develop with
Kent: Port one representation
Joseph: Looking for a way to make CESROX use-case agnostic, schema agnostic.
Edyta: The CESROX Readme provides a set of thoughts on making CESR use-case agnostic
Kent: Goal for next week: finish CESROX spec, first unit test going from R->T->B and back Joseph: Reading spec, research use-case agnosticism Edyta: Analyze changes from neo branch in keripy.
2022-09-01 #1
Zoom Recording Link Passcode: p4x@C@*^
Agenda
Attendees:
Notes
Articles Henk wrote about CESR:
First Steps
Design of CESROX - brainstorming
Licensing
Action Items