Netflix FreeBSD ядросы үшін TLS енгізу патчтарын жариялады

Netflix компаниясы ұсынды TCP ұяшықтары үшін шифрлау өнімділігін айтарлықтай арттыруға мүмкіндік беретін TLS (KTLS) FreeBSD ядро ​​деңгейіндегі іске асырылуын сынау үшін. Жазу, aio_write және sendfile функцияларын пайдаланып ұяшыққа жіберілген TLS 1.0 және 1.2 хаттамалары арқылы жіберілетін деректерді шифрлауды жеделдетуді қолдайды.

Ядро деңгейіндегі кілт алмасуға қолдау көрсетілмейді және қосылым алдымен пайдаланушы кеңістігінде орнатылып, келісілуі керек. Розеткаларға қосылу туралы келіссөздер процесінде алынған сеанс кілтін ядроға тасымалдау үшін TCP_TXTLS_ENABLE опциясы қосылды, ол белсендірілгеннен кейін ұяшыққа жіберілген барлық деректер көрсетілген кілт арқылы TLS кадрларына инкапсуляцияланады. Қызметтік хабарларды жіберу үшін, мысалы, қосылымды келісу үшін, TLS_SET_RECORD_TYPE жазба түрімен sendmsg функциясын пайдалану керек.

TLS кадрларын шифрлаудың екі негізгі әдісіне қолдау көрсетіледі: бағдарламалық қамтамасыз ету және ifnet (желілік карталардың аппараттық жеделдетуін пайдалану). Әдісті таңдау арқылы жүзеге асырылады
розетка опциялары TCP_TXTLS_MODE. Бағдарламалық құрал әдісі шифрлау үшін әртүрлі серверлерді қосуға мүмкіндік береді. Мысал ретінде OpenCrypto негізіне негізделген AES-GCM қолдауы бар ktls_ocf.ko сервері жарияланды. kern.ipc.tls.* тармағында басқару үшін бірнеше жүйе ұсынылады. Ядро құру кезінде TLS қолдауы KERN_TLS опциясы арқылы қосылады.

Ақпарат көзі: opennet.ru

пікір қалдыру