Netflix пуска TLS пачове за ядрото на FreeBSD

Компания Netflix предложи за тестване на изпълнението на TLS (KTLS) на ниво ядро ​​на FreeBSD, което позволява значително увеличаване на производителността на криптиране за TCP сокети. Поддържа ускоряване на криптиране на предадени данни с помощта на протоколи TLS 1.0 и 1.2, изпратени до сокета с помощта на функциите write, aio_write и sendfile.

Обменът на ключове на ниво ядро ​​не се поддържа и връзката трябва първо да бъде установена и договорена в потребителското пространство. За прехвърляне към ядрото на сесийния ключ, получен по време на процеса на договаряне на връзката за сокети, е добавена опцията TCP_TXTLS_ENABLE, след активирането на която всички данни, изпратени до сокета, ще бъдат капсулирани в TLS рамки с помощта на посочения ключ. За да изпращате служебни съобщения, например за уговаряне на връзка, трябва да използвате функцията sendmsg с тип запис TLS_SET_RECORD_TYPE.

Поддържат се два основни метода за криптиране на TLS рамки: софтуер и ifnet (използвайки хардуерно ускорение на мрежови карти). Изборът на метод се извършва с помощта на
опции за сокет TCP_TXTLS_MODE. Софтуерният метод ви позволява да свържете различни бекендове за криптиране. Като пример е публикуван бекендът ktls_ocf.ko с поддръжка за AES-GCM, реализиран на базата на рамката OpenCrypto. Предлагат се няколко sysctl за управление в клона kern.ipc.tls.*. При изграждане на ядрото поддръжката на TLS е активирана чрез опцията KERN_TLS.

Източник: opennet.ru

Добавяне на нов коментар