Page MenuHomeFreeBSD

Add support to the KTLS OCF module for AES-CBC MTE ciphersuites.
ClosedPublic

Authored by jhb on Oct 9 2020, 11:57 PM.
Tags
None
Referenced Files
F173028258: D26730.diff
Tue, Sep 22, 11:54 PM
Unknown Object (File)
Tue, Sep 15, 2:42 PM
Unknown Object (File)
Thu, Sep 10, 6:02 PM
Unknown Object (File)
Tue, Sep 8, 1:41 PM
Unknown Object (File)
Tue, Sep 8, 1:49 AM
Unknown Object (File)
Sat, Sep 5, 8:51 PM
Unknown Object (File)
Sat, Sep 5, 3:19 AM
Unknown Object (File)
Sat, Sep 5, 1:26 AM
Subscribers

Details

Summary

This is a simplistic approach which uses encrypts each TLS record in
two separate passes, one to generate the MAC, and a second to encrypt.
This supports TLS 1.0 connections with implicit IVs as well as TLS
1.1+ with explicit IVs.

Test Plan
  • tested with openssl s_time as the client against an openssl s_server

Diff Detail

Lint
Lint Skipped
Unit
Tests Skipped
Build Status
Buildable 34080
Build 31258: arc lint + arc unit

Event Timeline

jhb requested review of this revision.Oct 9 2020, 11:57 PM
jhb created this revision.

Awesome. Thank you!

sys/opencrypto/ktls_ocf.c
578

This looks outside the scope of this review, but I"m fine with it, and we need it.

This revision is now accepted and ready to land.Oct 10 2020, 12:53 AM
sys/opencrypto/ktls_ocf.c
578

It just renders weird in the web UI. This code is already present, but in the current source it is after the switch on the algorithm. I just had to move it into the GCM-specific case since the version checks are ciphersuite-specific.