Received: by 2002:a05:6a10:f347:0:0:0:0 with SMTP id d7csp1729728pxu; Tue, 24 Nov 2020 07:35:29 -0800 (PST) X-Google-Smtp-Source: ABdhPJzx3Bf5G7l1k2KTyZ6jmV87PNxA0WZgJbOszxNkezOiIjw5CavxINeO7rycCvWDacoQuC1S X-Received: by 2002:a17:906:af0a:: with SMTP id lx10mr4858278ejb.75.1606232129147; Tue, 24 Nov 2020 07:35:29 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1606232129; cv=none; d=google.com; s=arc-20160816; b=b/u0b5XNOPwhNgtjnLME65dbN5d1tFiHnw0OlF6yCJA1yVzl7bhPz9PcRmg2HHL3+V wEzX06F7LR1ELCubyE4BO46cAo8REmkMTZZOLH87OHMKUa/qJ2M6NkwAQsNvitNbqveP zXlSF0wt3nYW0uM6vAE/+8HHx1n1mZ4gPLnOpDTauqp3y0mfRLraTbc+pBEv2Xvl98mm lsKS2sJimUDU4sj64kwXQSSM5lBaRlsCJ7d7Q3nj7YfuY6AI8UvbleozCFF2MW4OCsfE pawt/D6aLxsZbkQjwhIbRgq/1K0Fjt2N4pXaZEUNWPIHAYW5+JzupB/Kt37kJkyY1Vzs HrIw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:references:in-reply-to:message-id:date:subject :cc:to:from:dkim-signature:dkim-filter; bh=43blkpEZcMhBA0C5mrBLTUYF9AXfA2GKSCKJPP+ks7o=; b=hpTKcfQdArOZ+jUZpLtuntPlH30vhjyjRi93uNM/0pI01wpCy2R3qs4gWf08arGacY WNFxoOFD/h/dfjQX1kY42OvSUwdWkpgahL/yiurQQ96WLrrZT3CKBkyjehhbp7IVgAWk +3QTamHr6sZfDDKPuaDpaKWuMI2BmFrIMvyhpPFIYLo9JHvITMGeYGvZTxkoMXyvN5qM E7Offe7caZGCar+mYlKS3+PiEwTWkU0iwDlv3/kXXXr9EP2egbajWStt+EqoNKk3m+j4 Gja0WH/VIdVuv9S4uMNjkp/tMnlYGwN21yjd+gnirvUp8PYaNB20/fqAh6wVovqNBWuj /RzQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@novek.ru header.s=mail header.b=OiMJ8Cnb; spf=pass (google.com: domain of linux-crypto-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-crypto-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id t20si8414499ejo.117.2020.11.24.07.35.02; Tue, 24 Nov 2020 07:35:29 -0800 (PST) Received-SPF: pass (google.com: domain of linux-crypto-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@novek.ru header.s=mail header.b=OiMJ8Cnb; spf=pass (google.com: domain of linux-crypto-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-crypto-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1730900AbgKXPdI (ORCPT + 99 others); Tue, 24 Nov 2020 10:33:08 -0500 Received: from novek.ru ([213.148.174.62]:47468 "EHLO novek.ru" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2388503AbgKXPdI (ORCPT ); Tue, 24 Nov 2020 10:33:08 -0500 Received: from nat1.ooonet.ru (gw.zelenaya.net [91.207.137.40]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by novek.ru (Postfix) with ESMTPSA id 610CB5030C6; Tue, 24 Nov 2020 18:25:30 +0300 (MSK) DKIM-Filter: OpenDKIM Filter v2.11.0 novek.ru 610CB5030C6 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=novek.ru; s=mail; t=1606231531; bh=Bv+hdH7fjyTLoJNNDryt7IIuhMR66vzunJw2y57lQdk=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=OiMJ8CnbKkMDoEv74Wq96NFHvrraa4oBJLtDgr0OE09Z7I+ShfCnr6dPMQKkqOBGo tK1cTN/2qzUPOpwc1mzXjq7Og96GyKDhwstCrQ/zV/zVJonw+SoMnbe/mjhZnhOzuE ekIZRGh9ag3uMVIJ0916Yq2FE6ZhL7IOaHfCR3C8= From: Vadim Fedorenko To: Jakub Kicinski , Boris Pismenny , Aviad Yehezkel Cc: Vadim Fedorenko , netdev@vger.kernel.org, linux-crypto@vger.kernel.org Subject: [net-next v2 2/5] net/tls: add CHACHA20-POLY1305 specific defines and structures Date: Tue, 24 Nov 2020 18:24:47 +0300 Message-Id: <1606231490-653-3-git-send-email-vfedorenko@novek.ru> X-Mailer: git-send-email 1.8.3.1 In-Reply-To: <1606231490-653-1-git-send-email-vfedorenko@novek.ru> References: <1606231490-653-1-git-send-email-vfedorenko@novek.ru> X-Spam-Status: No, score=0.0 required=5.0 tests=UNPARSEABLE_RELAY autolearn=ham autolearn_force=no version=3.4.1 X-Spam-Checker-Version: SpamAssassin 3.4.1 (2015-04-28) on gate.novek.ru Precedence: bulk List-ID: X-Mailing-List: linux-crypto@vger.kernel.org To provide support for ChaCha-Poly cipher we need to define specific constants and structures. Signed-off-by: Vadim Fedorenko --- include/net/tls.h | 1 + include/uapi/linux/tls.h | 15 +++++++++++++++ 2 files changed, 16 insertions(+) diff --git a/include/net/tls.h b/include/net/tls.h index d04ce73..e4e9c2a 100644 --- a/include/net/tls.h +++ b/include/net/tls.h @@ -211,6 +211,7 @@ struct cipher_context { union { struct tls12_crypto_info_aes_gcm_128 aes_gcm_128; struct tls12_crypto_info_aes_gcm_256 aes_gcm_256; + struct tls12_crypto_info_chacha20_poly1305 chacha20_poly1305; }; }; diff --git a/include/uapi/linux/tls.h b/include/uapi/linux/tls.h index bcd2869..0d54bae 100644 --- a/include/uapi/linux/tls.h +++ b/include/uapi/linux/tls.h @@ -77,6 +77,13 @@ #define TLS_CIPHER_AES_CCM_128_TAG_SIZE 16 #define TLS_CIPHER_AES_CCM_128_REC_SEQ_SIZE 8 +#define TLS_CIPHER_CHACHA20_POLY1305 54 +#define TLS_CIPHER_CHACHA20_POLY1305_IV_SIZE 12 +#define TLS_CIPHER_CHACHA20_POLY1305_KEY_SIZE 32 +#define TLS_CIPHER_CHACHA20_POLY1305_SALT_SIZE 0 +#define TLS_CIPHER_CHACHA20_POLY1305_TAG_SIZE 16 +#define TLS_CIPHER_CHACHA20_POLY1305_REC_SEQ_SIZE 8 + #define TLS_SET_RECORD_TYPE 1 #define TLS_GET_RECORD_TYPE 2 @@ -109,6 +116,14 @@ struct tls12_crypto_info_aes_ccm_128 { unsigned char rec_seq[TLS_CIPHER_AES_CCM_128_REC_SEQ_SIZE]; }; +struct tls12_crypto_info_chacha20_poly1305 { + struct tls_crypto_info info; + unsigned char iv[TLS_CIPHER_CHACHA20_POLY1305_IV_SIZE]; + unsigned char key[TLS_CIPHER_CHACHA20_POLY1305_KEY_SIZE]; + unsigned char salt[TLS_CIPHER_CHACHA20_POLY1305_SALT_SIZE]; + unsigned char rec_seq[TLS_CIPHER_CHACHA20_POLY1305_REC_SEQ_SIZE]; +}; + enum { TLS_INFO_UNSPEC, TLS_INFO_VERSION, -- 1.8.3.1