Skip to content

Aes-gcm-siv block mode#687

Merged
vgough merged 12 commits intomasterfrom
cursor/aes-gcm-siv-block-mode-40d2
Feb 21, 2026
Merged

Aes-gcm-siv block mode#687
vgough merged 12 commits intomasterfrom
cursor/aes-gcm-siv-block-mode-40d2

Conversation

@vgough
Copy link
Owner

@vgough vgough commented Feb 18, 2026

Add AES-GCM-SIV block encryption mode for V7 filesystems with per-block verification tags and an encapsulated block layer, maintaining backward compatibility.


Open in Cursor Open in Web

cursoragent and others added 2 commits February 18, 2026 12:21
Co-authored-by: Valient Gough <vgough@pobox.com>
Co-authored-by: Valient Gough <vgough@pobox.com>
@cursor
Copy link

cursor bot commented Feb 18, 2026

Cursor Agent can help with this pull request. Just @cursor in comments and I'll start working on changes in this branch.
Learn more about Cursor Agents

@vgough vgough marked this pull request as ready for review February 21, 2026 19:56
@vgough vgough merged commit 179a81c into master Feb 21, 2026
2 checks passed
@vgough vgough deleted the cursor/aes-gcm-siv-block-mode-40d2 branch February 21, 2026 19:58
pub const DEFAULT_CONFIG_VERSION: i32 = 20260101;

/// Default block size for new filesystems
pub const DEFAULT_BLOCK_SIZE: i32 = 4096 - crate::crypto::block::AES_GCM_SIV_BLOCK_TAG_BYTES as i32;
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Are you sure about this? It means that most writes will go through a read-modify-write cycle inside encfs.

If you use 4096, the underlying filesystem will usually do the read-modify-write.

Copy link
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good point, thanks!

Copy link
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I've applied the change just now when merging a branch.
I haven't run any benchmarks yet.

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