Linux CIFS filesystem development
 help / color / mirror / Atom feed
* ksmbd: AES-GMAC signing support?
@ 2026-10-23 17:48 Michail Andreas Michalopoulos
  2026-10-23 18:24 ` Enzo Matsumiya
  0 siblings, 1 reply; 9+ messages in thread
From: Michail Andreas Michalopoulos @ 2026-10-23 17:48 UTC (permalink / raw)
  To: Namjae Jeon; +Cc: Tom Talpey, Sergey Senozhatsky, ChenXiaoSong, linux-cifs

Hi Namjae,

ksmbd currently negotiates HMAC-SHA256 and AES-CMAC for SMB 3.1.1
signing, but not AES-GMAC (SIGNING_ALG_AES_GMAC is defined in
fs/smb/common/smb2pdu.h but unused), which is what Windows 11 and
Server 2022 clients prefer when it is offered.

Would you be interested in patches adding it? Roughly:

 - accept AES-GMAC in the SMB2_SIGNING_CAPABILITIES negotiate context,
 - sign and verify with gcm(aes) over the message, using the nonce
   from MS-SMB2 3.1.4.1 (MessageId plus the request/response and
   CANCEL bits), and
 - keep HMAC-SHA256/AES-CMAC behaviour unchanged.

I would test it with smbtorture's signing tests and the ksmbd CI
tests, and check the existing signing paths against an older Windows
server I have access to.

I have exams until mid-November, so I would start on it after that,
and as it is a bigger change it may take a few weeks. If someone
needs it sooner, I'm happy to leave it to them.

Before I start: is anyone already working on this, or is there
anything you would like done differently?

Thanks,
Michalis

^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2026-10-25  3:16 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-10-23 17:48 ksmbd: AES-GMAC signing support? Michail Andreas Michalopoulos
2026-10-23 18:24 ` Enzo Matsumiya
2026-10-23 18:52   ` Tom Talpey
2026-10-23 22:36     ` mixalhs
2026-10-24  1:19       ` Namjae Jeon
2026-10-24 12:59         ` mixalhs
2026-10-24 16:14           ` mixalhs
2026-10-25  3:16             ` Namjae Jeon
2026-10-25  3:08           ` Namjae Jeon

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox