To reproduces: 1. `cargo ceno keygen --out-vk vk.bin` 2. `cargo ceno keygen --out-vk vk2.bin` => vk.bin & vk2.bin are a bit different on the file size ### background It was found from https://github.com/scroll-tech/ceno/pull/1054 - [ ] serialized more meta info into vk to carry over information from `keygen` -> e.g. field = babybear/goldilocks, public io size, ... - [ ] skip pk/vk generation in prove phase - [ ] fixed expression serialization to be canonical