Releases: ProjectZKM/Ziren
Releases · ProjectZKM/Ziren
Release list
Release v1.2.7: fix bugs from Dilligence
What's Changed
- fix(keccak): constrain keccak sponge initial state by @felicityin in #517
- fix(boolean-garble): require first gate by @felicityin in #518
- refactor: remove boolean circuit garble precompile. by @VanhGer in #520
- fix: issues found by Diligence by @felicityin in #519
- Pre release v1.2.7 by @eigmax in #521
Full Changelog: v1.2.6...v1.2.7
Release v1.2.6
What's Changed
- ci: run mdbook on git runner by @felicityin in #495
- fix: mul chip trace ffi by @felicityin in #496
- fix: correct modulus comment in U256Field by @Fallengirl in #432
- fix: skip deferred proof verification when proof_stream is empty by @blake-pro in #498
- feat(go-runtime): support non-byte slices by @felicityin in #512
- feat(go-runtime): add proof verification syscalls by @felicityin in #513
- Pre release v1.2.6 by @eigmax in #515
Full Changelog: v1.2.5...v1.2.6
Release v1.2.5
77 commits ahead of main. Highlights grouped by theme:
Soundness fixes (the largest theme)
- Syscall AIR hardening — bidirectional constraints, refactor of syscall AIR, fix is_linux_syscall unconstrained bug,
link x_coordinate to point, add result_lo/result_hi to global message, lookups between core and precompiles for
args/results, fix half-word packed args in GPU code, unit tests + docs (many commits, merged from
fix/syscall-air-soundness-bugs) - fix: missing assert_bool for is_nor in BitwiseChip (#448)
- fix: remove duplicate assert_bool in ShiftRightChip (#451)
- fix(core): correct carry array size in Add5Operation (#462)
- fix(curves): correct nb_scalar_bits in WeierstrassParameters (#463)
- fix: ins ror_val out of range (#477)
- fix: division trace-gen panic on INT_MIN (#483)
- fix: public verifier API panics on malformed inputs (#467)
- feat(soundness): Picus backend (#442) — formal verification backend
Features
- feat: add keeper (#443)
- feat: trace FFI (#491)
- feat: patch go runtime time syscall (#487)
- feat: Groth16 VK unaffected by Ziren upgrades (#481) + ZKM_IMM_WRAP_VK public-input verification & bundled historical
part_stark_vks (#490) - feat: add version tag for dvsnark artifacts (#468)
- feat: add mips tests (#482)
- feat: add shapes / re-gen shapes (#484, #485) + fix build-shapes OOM, shapes with 100 geth blocks
Performance / optimizations
Refactors / chores
- refactor: extract common attribute parsing in derive macros (#472)
- bump: toolchain rustc 1.91 (#469)
- VK updates for v1.2.5, historical VK additions, padding-row fix, clippy/lint/format
- docs(lt): fix SLT/SLTU typos (#465)
- Shankara pre-release additions (#475, #478)
Main themes: syscall/precompile soundness overhaul, Groth16 VK stability across upgrades, Picus formal-verification
backend, and circuit perf optimizations.
v1.2.4
What's Changed
- chore: fix typos by @Snezhkko in #376
- docs: fix grammatical issues by @lisenokdonbassenok in #377
- chore: fix typos in comments by @MozirDmitriy in #379
- docs: sync Opcode enum with implementation by @lisenokdonbassenok in #380
- chore: remove unused import from hash_to_field by @kurahin in #381
- fix: panic prone code by @felicityin in #375
- chore: optimize the deps in sdk by @SuccinctPaul in #344
- fix: fuzzing test by @eigmax in #385
- docs: update audit by @eigmax in #386
- build: add sysroot include path for bindgen by @blake-pro in #388
- fix: handle boundary conditions for ext and ins by @blake-pro in #389
- fix: deps for gpu by @felicityin in #390
- Fix typo in error message by @maradini77 in #383
- feat: add check ciphertext precompile by @VanhGer in #373
- fix: correct stateless prove_core doc reference by @ANtutov in #392
- fix(sdk): remove unnecessary clone in zkm_dump by @Snezhkko in #393
- fix(zkvm): remove dead hash_input allocation in verify syscall by @yyhrnk in #395
- docs: clarify Shape::new constructor comment by @sashass1315 in #394
- docs: correct septic curve documentation comments by @VolodymyrBg in #396
- feat: add dvsnark feature by @VanhGer in #399
- cargo clippy & remove dead code by @VanhGer in #401
- docs: align fp and bls hook error docs with ExecutionError by @phrwlk in #403
- fix: correct AffinePoint::to_le_bytes doc comment by @radik878 in #402
- fix: avoid extra allocation in ZKMPublicValues::raw by @phrwlk in #397
- docs: sync precompiles snippet with zkvm lib by @sashass1315 in #398
- fix: clarify Poseidon2 AIR memory-only comments by @MozirDmitriy in #404
- docs: sync optimizations guide with prover docs by @Snezhkko in #412
- perf: avoid heap allocation in g1_to_bytes by @Galoretka in #409
- chore(primitives): deprecate Buffer::head by @SashaMalysehko in #411
- Revert "chore(primitives): deprecate Buffer::head" by @eigmax in #413
- docs: fix BaseAluInstr doc comment by @Bashmunta in #414
- chore: update vks by @felicityin in #415
- Feat: add TestGroth16Main by @VanhGer in #419
- fix: correct CompAluEvent constructor documentation by @Snezhkko in #420
- fix: correct permutation constraint count comment by @Galoretka in #417
- fix(sdk): correct install_circuit_artifacts documentation by @sashass1315 in #416
- fix: correct bn254 fp and fp2 chip comments by @Forostovec in #408
- chore: update sdk logs by @eigmax in #424
- fix: correct case reference in weierstrass_add_assign by @aso20455 in #425
- fix: avoid cloning proof_stream entry in verify syscall by @VolodymyrBg in #405
- fix(executor): remove incorrect sign extension for J/JAL target address by @reallesee in #427
- refactor(zkm-lib): eliminate redundant clones by @zeroprooff in #422
- fix(memory): use MAX_MEMORY in heap limit panic by @yyhrnk in #428
- fix: incomplete SubAssign for SepticExtension by @aso20455 in #433
- chore: release v1.2.4 by @eigmax in #391
New Contributors
- @lisenokdonbassenok made their first contribution in #377
- @kurahin made their first contribution in #381
- @SuccinctPaul made their first contribution in #344
- @yyhrnk made their first contribution in #395
- @SashaMalysehko made their first contribution in #411
- @reallesee made their first contribution in #427
Full Changelog: v1.2.3...v1.2.4
v1.2.3
What's Changed
- feat: prevent read/write registers by memory instructions by @weilzkm in #337
- Fix maintain concerns by @weilzkm in #351
- docs: typo in function name by @hawkadrian in #348
- add aligned check for memory instructions by @weilzkm in #367
- docs: fix typos and grammar errors by @cmende in #368
- fix(bytes): correct operand names in byte chip comments by @ANtutov in #369
- fix(cuda): correct Drop log type and cleanup_container doc grammar by @GarmashAlex in #370
- docs: sync Supported Crates with actual patches by @phrwlk in #371
- fix syswrite panic when receive invalid utf-8 data by @weilzkm in #366
- Pre release v1.2.3 by @eigmax in #365
- docs(verifier): replace non-existent vkey CLI with SDK example by @radik878 in #374
- chore: expand glob import in recursion machine by @cmende in #372
New Contributors
- @hawkadrian made their first contribution in #348
- @ANtutov made their first contribution in #369
- @phrwlk made their first contribution in #371
Full Changelog: v1.2.2...v1.2.3
v1.2.2
What's Changed
- Fix Documentation Typos by @cmende in #330
- Fix typos in code comments and documentation by @sashaodessa in #331
- feat: gpu docker sdk by @felicityin in #332
- docs: fix typo by @maradini77 in #333
- fix review problem by @weilzkm in #328
- fix unsinged_mem_val for lwl/lwr, opt cols in MemoryInstructionsColumns by @weilzkm in #327
- docs: fix duplicate comm in
ByteRecord::add_byte_lookup_events_from_mapsby @famouswizard in #310 - add nop sys for munmap(4091) by @weilzkm in #336
- feat: modified multiset hash by @felicityin in #335
- chore: edited broken discord link by @Olexandr88 in #338
- chore: remove deadcode and fix grammar by @VanhGer in #339
- Moved "Independent Evaluations" and "Use Cases" pages to "Introduction" in Docs by @aliceliu7 in #312
- feat: split misc chip & increase shard size by @eigmax in #340
- Revert "Moved "Independent Evaluations" and "Use Cases" pages to "Introduction" in Docs " by @eigmax in #342
- docs: fix typos by @avorylli in #341
- docs: fixed dead link by @cypherpepe in #346
- chore: generate shapes for reth and geth by @felicityin in #345
- Opt: reduce MemoryInstructionsColumns (#343) by @eigmax in #347
- chore: optimize emulation by @eigmax in #352
- feat: adapt the cpu chip for gpu by @felicityin in #354
- chore: fix typos in code comments by @Fibonacci747 in #349
- chore: fix reference in comment by @Forostovec in #350
- update multiset hashing description by @fulian89 in #361
- Fix typos in comments and error messages by @cmende in #360
- chore: fix typos by @Bashmunta in #359
- chore: fix reference in comments by @VolodymyrBg in #358
- chore: fix typos by @Snezhkko in #355
- chore: new shapes and new vks by @felicityin in #363
- add jump/branch to 0 check in executor by @weilzkm in #357
- chore: fix error message by @radik878 in #362
New Contributors
- @cmende made their first contribution in #330
- @sashaodessa made their first contribution in #331
- @maradini77 made their first contribution in #333
- @famouswizard made their first contribution in #310
- @avorylli made their first contribution in #341
- @Fibonacci747 made their first contribution in #349
- @Forostovec made their first contribution in #350
- @Bashmunta made their first contribution in #359
- @Snezhkko made their first contribution in #355
- @radik878 made their first contribution in #362
Full Changelog: v1.2.1...v1.2.2
v1.2.1
What's Changed
- fix: upgrade alloy to 1.0 by @eigmax in #313
- Fix go runtime by @weilzkm in #316
- feat: add keccak256 precompile and function to go-runtime by @gballet in #318
- chore: Use workspace tracing-subscriber in core/executor by @JoshMa-mq in #317
- Add check for next_next_pc by @weilzkm in #320
- Add docs for memory layout of guest program by @weilzkm in #322
- fix format problem in mips_vm.md by @weilzkm in #323
- Fix typos across multiple files by @JoshMa-mq in #325
- feat: adapt to gpu by @felicityin in #319
- feat: add single node for network prover by @VanhGer in #282
- chore: disable sys feature by @felicityin in #329
New Contributors
- @gballet made their first contribution in #318
- @JoshMa-mq made their first contribution in #317
Full Changelog: v1.2.0...v1.2.1
v1.2.0
What's Changed
- Remove unused std::vec import in RSA example by @aso20455 in #293
- update groth16 public values test by @blake-pro in #299
- Added "Proof Aggregation" to docs by @aliceliu7 in #302
- Added 'Independent Evaluations' section to docs by @aliceliu7 in #308
- Fix typos and improve comments in core executor & machine docs by @sashass1315 in #300
- docs: fix typos and wording by @mdqst in #305
- feat: add support for go program by @weilzkm in #254
New Contributors
- @aso20455 made their first contribution in #293
- @sashass1315 made their first contribution in #300
Full Changelog: v1.1.4...v1.2.0
v1.1.4
What's Changed
- repr usize by @ple1n in #277
- fix: bump rust toolchain by @eigmax in #278
- cargo-prove conflicts with SP1 by @ple1n in #279
- feat: add new function
verify_proof()for stark verifier. by @felicityin in #280 - feat: support madd/msub and add bitcoin guest by @eigmax in #286
- fix: correct typos in comments by @GarmashAlex in #281
- Get zkm-build CC env from OS env var instead by @weilzkm in #288
- update vk 1.1.4 by @weilzkm in #289
- chore: update deps of examples by @felicityin in #291
- update docs and initial sp by @weilzkm in #292
- docs: fix typos in developer documentation by @Galoretka in #290
- fix vk map by @blake-pro in #294
- set default VERIFY_VK true by @blake-pro in #295
- Added verifier section to docs by @aliceliu7 in #296
- update vks by @blake-pro in #297
New Contributors
- @ple1n made their first contribution in #277
- @GarmashAlex made their first contribution in #281
- @Galoretka made their first contribution in #290
Full Changelog: v1.1.2...v1.1.4
v1.1.2
What's Changed
- feat: use the network prover with an elf id by @felicityin in #240
- feat: add maximum prover number field. by @VanhGer in #241
- style: refactor interface prove_with_cycles into a generic interface by @felicityin in #242
- style: prove_with_cycles() interface must return cycles by @felicityin in #243
- docs: fix dead link in continuation.md by @youyyytrok in #245
- feat: add embeded allocator in zkvm by @weilzkm in #247
- chore: update polling interval unit in sdk by @felicityin in #248
- fix: vulnerable deps by @eigmax in #249
- fix max page count by @weilzkm in #251
- Update comments and docs for control flow instructions by @weilzkm in #257
- fix: multiple typos of different importance by @crStiv in #256
- Poseidon2 precompile by @blake-pro in #255
- update poseidon2 docs by @blake-pro in #258
- docs: changed link for contributor icon by @Olexandr88 in #259
- Added docs "Prover Architecture" section by @aliceliu7 in #260
- fix: correct typos in core executor and machine modules by @VolodymyrBg in #268
- feat: add no-std stark verifier by @felicityin in #262
- feat: update groth16 vk and plonk vk by @felicityin in #270
- fix: test_core_proof_bytes_unimplemented() by @felicityin in #273
- Docs Additions by @aliceliu7 in #272
- docs: correct typos in uint256 and weierstrass precompile comments by @MozirDmitriy in #271
New Contributors
- @youyyytrok made their first contribution in #245
- @crStiv made their first contribution in #256
- @Olexandr88 made their first contribution in #259
- @VolodymyrBg made their first contribution in #268
- @MozirDmitriy made their first contribution in #271
Full Changelog: v1.1.1...v1.1.2