Skip to content

Initial support for verified CIMs - #2448

Merged
Amit Barve (ambarve) merged 1 commit into
microsoft:mainfrom
ambarve:verified_cim_support
Jul 9, 2025
Merged

Amit Barve (ambarve) merged 1 commit into
microsoft:mainfrom
ambarve:verified_cim_support

Conversation

@ambarve

Copy link
Copy Markdown
Contributor

Block CIMs can now provide integrity checking (via a hash/Merkel tree, similar to dm-verity on Linux). A block CIM written with integrity checking enabled is called a verified CIM. A verified CIM is written once and then sealed to prevent any further modifications. When such a CIM is sealed it returns a digest of its contents. Such a CIM can then be mounted by passing in this digest. Every read on that mounted volume will then be verified against this digest to ensure the integrity of the contents of that CIM.

@ambarve
Amit Barve (ambarve) force-pushed the verified_cim_support branch 2 times, most recently from de3af9f to 3b54c91 Compare June 3, 2025 14:48
@ambarve
Amit Barve (ambarve) marked this pull request as ready for review June 3, 2025 14:49
@ambarve
Amit Barve (ambarve) requested a review from a team as a code owner June 3, 2025 14:49
@ambarve
Amit Barve (ambarve) force-pushed the verified_cim_support branch 4 times, most recently from 7aed5d0 to dc7cf5c Compare June 9, 2025 20:36
Comment thread pkg/cimfs/mount_cim.go Outdated
Comment thread pkg/cimfs/mount_cim.go
Comment thread pkg/cimfs/cim_test.go
Comment thread pkg/cimfs/cim_writer_windows.go
@ambarve
Amit Barve (ambarve) force-pushed the verified_cim_support branch 2 times, most recently from a8ec08d to 79c25dd Compare June 19, 2025 15:44
@ambarve
Amit Barve (ambarve) force-pushed the verified_cim_support branch 2 times, most recently from 083a173 to f448408 Compare July 3, 2025 17:42
@ambarve
Amit Barve (ambarve) force-pushed the verified_cim_support branch 2 times, most recently from 4a293d0 to 4d8cf9e Compare July 8, 2025 20:45
Block CIMs can now provide integrity checking (via a hash/Merkel tree,
similar to dm-verity on Linux). A block CIM written with integrity checking enabled is
called a verified CIM. A verified CIM is written once and then sealed to prevent any
further modifications. When such a CIM is sealed it returns a digest of its contents. Such
a CIM can then be mounted by passing in this digest. Every read on that mounted volume
will then be verified against this digest to ensure the integrity of the contents of that CIM.

Signed-off-by: Amit Barve <ambarve@microsoft.com>
@ambarve
Amit Barve (ambarve) merged commit 84afbe3 into microsoft:main Jul 9, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants