Skip to main content

Crypto Team Update

· 2 min read
Iñigo Querejeta Azurmendi
Cardano Lead Cryptography Engineer

High level summary​

The open fronts that the crypto team is working on are:

  • cardano-base: New KES structure finally merged. Included additional tests to BLS, and including test vectors created with zkcrypto's library.
  • KES agent: Reaching state of MVP. Rewriting KES agent networking code to use the Snockets abstraction.
  • Sidechains: Started implementing ECC chip of JubJub over BLS12-381.

Low level summary​

cardano-base​

  • #255 finally merged 🎉
  • Additional tests for BLS bindings #384
  • Open PR for including test vectors created with zkscrypto's library, PR#397

KES agent​

  • Introducing the SignKeyWithPeriodKES wrapper type, which bundles a KES key with its corresponding KES period PR#389.
  • Introducing the DirectSerialise API into cardano-base, which allows us to write mlocked memory directly to a file descriptor, without going through intermediate encodings stored on the GHC heap (which is a no-no due to secure forgetting requirements) #317.
  • Figuring out how to generalize the KES, DSIGN, and mlocking code in cardano-base such that it can run in IOSim
  • Rewriting KES agent networking code to use the Snockets abstraction, which gives us a platform-independent sockets layer (i.e., it will also work on Windows), and also allows us to run networked code in IOSim for testing purposes
  • Refactor MonadSodium into MonadMLock PR#388.

Sidechains​

  • Started working on ECC chip for JubJub over BLS (problems still with the multiplication constraint)
  • Use macros used by PSE library to try and merge our fork of halo2curves into PSE's repo

Goedel Team Update

· One min read
James Chapman
Head of Formal Methods

The team works on applied research and consulting in formal methods that is directly applicable to evidence based engineering in Core Tech and beyond.

High level summary​

The team is working on porting an existing formalisation of Ouroboros Praos to a newer foundation.

Details​

Network Team Update

· 3 min read
Marcin Szamotulski
Network Team Lead

High level summary​

The networking team has released the following packages to Hackage:

We published an announcement blog post. We made progress also on another blog post which will describes the design of the P2P networking layer.

After moving ouroboros-consensus to its own repository, we made ouroboros-network compatible with GHC 9.4 and 9.6.

We made cardano-client library independent of ouroboros-consensus-diffusion.

We prepared release of network packages for cardano-node-8.0.

Detailed log​

Ouroboros-Network​

IO-Sim​

  • io-classes-1.0.0.0, and following up releases: 1.0.0.1 (ghc-9.6 support), 1.1.0.0 (documentation fix).
  • Fixed timeouts and delays in io-sim in a series of PRs: io-sim#81, io-sim#82, io-sim#86, io-sim#87.
  • Renamed a module: io-sim#88.
  • Fixed a failing registerDelayCancellable test: [io-sim#80].
  • Use GitHub merge queue in io-sim repository.
  • CI: download stylish-haskell: io-sim#83.

Typed Protocols​

Hydra Team Update

· 2 min read
Sebastian Nagel
Hydra Team Lead

High-level summary​

This week, the Hydra team held their Monthly review meeting and drafted the report which likely is published next week. They put the spec into the repository and website, addressed a user issue and fixed the TUI peer list. Furthermore, they updated dependencies, conducted a Twitter space on Auctions use cases, covered the rollback bug with tests and implemented a solution. Looking ahead, their goals for next week include releasing 0.10.0, implementing timed transactions support, writing a Query API ADR, and grooming work items like off-chain benchmarks.

What did the team achieve this week​

  • Held the Monthly review meeting and drafted the report (to be published next week)
  • Added the spec into the repository #693 and published on the website
  • Groom and addressed user issue #823
  • Covered the rollback bug with tests and implemented a solution (to be reviewed) #784
  • Fixed the TUI peer list
  • Updated dependencies to match cardano-node master
  • Conducted a twitter space on Auctions use cases

What are the goals of next week​

  • Release 0.10.0
  • Support timed transactions solution drafted and validated API with users
  • Write Query API ADR and groom a concrete step
  • Groom and solve PostTxOnChainFailed UX problem #832
  • Groom off-chain benchmarks idea #186 and turn it into a “feature”

Hydra Team Update

· 2 min read
Sebastian Nagel
Hydra Team Lead

High-level summary​

This week, the Hydra team worked on several fronts, including fixing state machine continuity on-chain, discussing voting project solutions, exploring adding Hydra support to kupo, and improving API navigation with a sidebar. The team also updated dependencies and fixed issues in their test suites. Moving forward, the team plans to hold the next monthly review meeting, address a user issue, prepare for the 0.10.0 release, and work on a dirt road fix for the rollbacks issue with proper test coverage.

What did the team achieve this week​

  • Fixed scripts to enforce state machine continuity on-chain #777.
  • Took part in a twitter space on “Scaling Cardano”.
  • Joined a CBIA meeting to discuss Cardano network protocols & how to specify them.
  • Discussed potential solutions of ensuring vote uniqueness in the voting project.
  • Updated dependencies to match cardano-node master to prepare for upcoming releases and hard-forks
  • Explored adding Hydra support to kupo, a lightweight Cardano chain indexer - some more work required.
  • Improved navigation of the API Reference with a sidebar, see unstable API version.
  • Fixed two things in our test suites (random port conflicts and an arithmetic underflow in smoke test)

What are the goals of next week​

  • Monthly review meeting (join via Discord or AddEvent) & report
  • Dirt road fix for rollbacks #784 properly covered by a test.
  • Groom and ideally address user issue #823.
  • Put the spec into the repo #693 and prepare release 0.10.0.