From owner-freebsd-security@freebsd.org Sun Oct 29 16:32:55 2017 Return-Path: Delivered-To: freebsd-security@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id BE0C3E46241; Sun, 29 Oct 2017 16:32:55 +0000 (UTC) (envelope-from sjg@juniper.net) Received: from NAM02-SN1-obe.outbound.protection.outlook.com (mail-sn1nam02on0104.outbound.protection.outlook.com [104.47.36.104]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (Client CN "mail.protection.outlook.com", Issuer "Microsoft IT SSL SHA2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4A65383D50; Sun, 29 Oct 2017 16:32:54 +0000 (UTC) (envelope-from sjg@juniper.net) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=juniper.net; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=CzDh1clqxHoUZ9hYUWmhxj3MAg1XOBuapGYdsOQC0po=; b=D7DcmpAN+MNU1spcqjpRQSyWAmfO3/QMfmwcGLMrwkaU6Qlly7gclY4dP3A2sH+5mId7x6JNgaEO+nsVY3tYi1wyCnWbb/XSmfL0Ge+xxsFFioDBSz5Nx9zbrEkQaMvQw77+q5cZgioI7VzkKA0dSZjDqjVdcbHZrOGo0UJciWc= Received: from DM5PR05CA0053.namprd05.prod.outlook.com (10.174.188.170) by MWHPR05MB3613.namprd05.prod.outlook.com (10.174.251.11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.197.4; Sun, 29 Oct 2017 16:32:52 +0000 Received: from DM3NAM05FT038.eop-nam05.prod.protection.outlook.com (2a01:111:f400:7e51::200) by DM5PR05CA0053.outlook.office365.com (2603:10b6:4:39::42) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.197.4 via Frontend Transport; Sun, 29 Oct 2017 16:32:52 +0000 Authentication-Results: spf=softfail (sender IP is 66.129.239.12) smtp.mailfrom=juniper.net; freebsd.org; dkim=none (message not signed) header.d=none;freebsd.org; dmarc=fail action=none header.from=juniper.net; Received-SPF: SoftFail (protection.outlook.com: domain of transitioning juniper.net discourages use of 66.129.239.12 as permitted sender) Received: from p-emfe01a-sac.jnpr.net (66.129.239.12) by DM3NAM05FT038.mail.protection.outlook.com (10.152.98.151) with Microsoft SMTP Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P256) id 15.20.197.9 via Frontend Transport; Sun, 29 Oct 2017 16:32:51 +0000 Received: from p-mailhub01.juniper.net (10.47.226.20) by p-emfe01a-sac.jnpr.net (172.24.192.21) with Microsoft SMTP Server (TLS) id 14.3.123.3; Sun, 29 Oct 2017 09:32:44 -0700 Received: from kaos.jnpr.net (kaos.jnpr.net [172.21.30.60]) by p-mailhub01.juniper.net (8.14.4/8.11.3) with ESMTP id v9TGWh4b021885; Sun, 29 Oct 2017 09:32:43 -0700 (envelope-from sjg@juniper.net) Received: from kaos.jnpr.net (localhost [127.0.0.1]) by kaos.jnpr.net (Postfix) with ESMTP id 89C53385567; Sun, 29 Oct 2017 09:32:43 -0700 (PDT) To: Eric McCorkle CC: , Poul-Henning Kamp , "freebsd-security@freebsd.org security" , Benjamin Kaduk , Ben Laurie , "freebsd-hackers@freebsd.org" , "freebsd-arch@freebsd.org" , Subject: Re: Crypto overhaul In-Reply-To: <61210249-105c-974c-1dae-1837e5969054@metricspace.net> References: <13959.1509132270@critter.freebsd.dk> <20171028022557.GE96685@kduck.kaduk.org> <23376.1509177812@critter.freebsd.dk> <20171028123132.GF96685@kduck.kaduk.org> <24228.1509196559@critter.freebsd.dk> <28039.1509260726@critter.freebsd.dk> <61210249-105c-974c-1dae-1837e5969054@metricspace.net> Comments: In-reply-to: Eric McCorkle message dated "Sun, 29 Oct 2017 11:17:58 -0400." From: "Simon J. Gerraty" X-Mailer: MH-E 8.6; nmh 1.6; GNU Emacs 25.2.1 MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-ID: <95043.1509294763.1@kaos.jnpr.net> Date: Sun, 29 Oct 2017 09:32:43 -0700 Message-ID: <95044.1509294763@kaos.jnpr.net> X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-HT: Tenant X-Forefront-Antispam-Report: CIP:66.129.239.12; IPV:NLI; CTRY:US; EFV:NLI; SFV:NSPM; SFS:(10019020)(6009001)(346002)(376002)(2980300002)(199003)(24454002)(189002)(69596002)(39060400002)(107886003)(47776003)(2950100002)(305945005)(4326008)(221733001)(6916009)(356003)(6266002)(6246003)(50466002)(9686003)(68736007)(55016002)(7696004)(2906002)(5660300001)(77096006)(7116003)(229853002)(53936002)(97756001)(8676002)(54906003)(8936002)(316002)(46406003)(7126002)(76176999)(23726003)(16586007)(2810700001)(50986999)(105596002)(81156014)(81166006)(53416004)(97876018)(189998001)(106466001)(76506005)(50226002)(478600001)(117636001)(97736004)(3480700004)(86362001)(93886005)(42262002); DIR:OUT; SFP:1102; SCL:1; SRVR:MWHPR05MB3613; H:p-emfe01a-sac.jnpr.net; FPR:; SPF:SoftFail; PTR:InfoDomainNonexistent; A:1; MX:1; LANG:en; X-Microsoft-Exchange-Diagnostics: 1; DM3NAM05FT038; 1:BmGzebx+tizseAkHeIUGxoAM0qcDGcBNsP0dVSHjW5KkdAQKkM2nquWsDn0NXv1tg85I7aG/nKbYrHr55A+Ollsk/Fjxup/v4xxCbPcAQXBPfa7wWWEebH4JoNdVxpcU X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: b3a3bb25-7021-4aaa-e928-08d51eeab339 X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001)(4534020)(4602075)(2017052603199); SRVR:MWHPR05MB3613; X-Microsoft-Exchange-Diagnostics: 1; MWHPR05MB3613; 3:bLgK3bY0Shy1Q/Hv2FK1t9xbCh/b+ttzpHj+NhFT7Yn02y8ojIngZ13LXCGLvyGOXwj72YwlTE1PvYYj4HX1gO/noz2U87ApukbhsC+0mzh0HDTZWsxPyjGyN4udnddLA0B89avgdGYLQoBTybM+FwMawPYpBkWekjTTPBAbTH42O9LADPyomOe9YXosCKvzd3YeL/HSMUBPLcqrCrM7FAslbUopLfu8te+FTFoBoDrF5BZtxZmW19Snc8yRBls2VI97wM4ZyAbsp4XXL+HPjCBH2hfFl4EWLNfSaf+jZGVSiLl+wOhwTl6KlMxCzVgzW/6eeQ/gNRSyCugEXVVoSxeOxxlvJ6RPPilAOXQ4QD8=; 25:2R5Pb5Jo9W3vsog9iH7gbfWorcUPPbHMjtUsFLtQai6mo9zr7HW5UJ5otTTxTt55HDLwHiDaQA2D3OxHCBMi7hqELIg2/yTGepAI/ra/8BUVYwfc3iZm2maKz8dWMtqGFKhLX/omD69t2J6r+a7nfcnjfT0RpUI69wo+JsUxy/rifdFeqJYa/HUbwf4eyzxFlXhPJzUQsgJUL394iTZ6IM6gF2Hg3ZDWxRqAiwKudHE6djRswtMgC149XApow5Rj60724BhRDdcL37kvCohkFezsKDpTvls8Iv9XsdoHyYZfhv2Cl18WIWJEF2PuMPC7hZHEKnnN2oKNX25gH7Qxyw== X-MS-TrafficTypeDiagnostic: MWHPR05MB3613: X-Microsoft-Exchange-Diagnostics: 1; MWHPR05MB3613; 31:wm2gF+if/HESKjQCwHUx2Je7xDBuMh0CGBmoqQ2oEirHDi1c+48oAdN2tShfdNLQzCrNofqi7e9WLZ9pEsTjcntkYxJYb1z3X3iSuBGeVI68wHZmCFQqFrnbk9JXjGi+MKhz0uYfnZQ/pQLKxhxNL4Qx0mKRUrQVNWyGO73QuwtgP88HsomsNspN++rPSIsJ7U296M7FXKEeGnyGfq7JxPxU2UNAay/62AUGm4xmrmg=; 20:++bdJFmfX7xZp7hW1j2a/Quntk6FENa0En+4r/f65xkl5P2YYYyQgbRG1vrb1e/B9w6wpSV0PLd7ZcIfuJVbTdPLMtF96ED4Ccyke3hOrUi9F9OlD/xYiTmNyDiAfW3hCahrC1mXIo+fb+I1OihycTyr80xo+Ey3FytH+ikLCBOiEAVN+Nhiq29LOfAz2BnM5bNSXFi7aQMugZEMQjx4iOIuMiqjc81SGWDv75AWMuon4MSaTOIk13wTmd+xC08Whf/f9rL61J0Qvt0ml//jj4lBzAodn8HfNnCQheFzMDCXBegQWmosFuhB477iiQ9Q+OIiCUr1IurfqN0V4vNOnfAbYyI+Wqe5DSWdLxSmeV09HBiktMzJAjMjJxrUmZfSgeaSSpG941x8ym4QlcK5pDt1/UN8GAWVPqAPgc/fmpLe29d7KJmnqteVh/sVmqyGZjDTSBU0eOeKki9JJ3xUev/6BMEu0m3ECJL2gRwywR5lh9fm/UpLu3TmPA2og8i9 X-Exchange-Antispam-Report-Test: UriScan:; X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6040450)(2401047)(8121501046)(5005006)(3002001)(93006095)(93003095)(3231020)(10201501046)(100000703101)(100105400095)(6055026)(6041248)(20161123560025)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123555025)(20161123564025)(20161123558100)(20161123562025)(6072148)(201708071742011)(100000704101)(100105200095)(100000705101)(100105500095); SRVR:MWHPR05MB3613; BCL:0; PCL:0; RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095); SRVR:MWHPR05MB3613; X-Microsoft-Exchange-Diagnostics: 1; MWHPR05MB3613; 4:uMOiNQsnJluh2Re5B6oAxIZRBuHYj6qENT0fgc1zMLz10rGIOj007CDYXwum8HIj5zA+cytVGDoaTwvjpubDK6hNUlYUMqdrSCUYANBdb3sJOaLOB0xTm7nk4UHTuo5mxyWBOEv14lFL+1CFPtSdnKP5g39pql7x+DFzFdy1CVz1n+MoyOXuU+P6GiUTkYNUmZvqb7CH+zRzcEikExV+x9tRYA3xbjGtNz/IMsUqhGh6oklqRsRf5AzaTFp9dBRGDlnVUiF6vywLpuCd93U/wQ== X-Forefront-PRVS: 0475418F50 X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; MWHPR05MB3613; 23:yCpu+/LqPxjKLASkkkfQyloL41PBjBlKaEJjRrpMI?= =?us-ascii?Q?saCXbMo5Ypd1RpmkqhPTT0pPiqryj2J3JKqVUSDj3rZJKeSe4sh/O9BkUTez?= =?us-ascii?Q?Wju196Zf8fv4O5pUR6xt3yAEJZbnIL26eyqPD7a8P+puYH6zypprtIZSxutn?= =?us-ascii?Q?73g7z+xSGi999JIJUxordVQ3SI73jTvkcj5gCceSc79g9/6N4n+pFzZlAsjv?= =?us-ascii?Q?pViIPXLoc7gPDk3GicShVDAI9lpDiIyCvn/ReaHy5UXAdJ7YZ4Py1tMfzeh1?= =?us-ascii?Q?loOCIny69lsCQX7v8Fbcaa0L9mF1T0j3d0h2Ihtq6TkBBSTbxcpfI0pfb7Gz?= =?us-ascii?Q?a6Z446KyWMwRvhjPfsNZesYZCxCvuDOwzXQEB2JBS7/lbzgFMMYtEdfkIiHT?= =?us-ascii?Q?W3yc4r+FyywR53lhhGR66kqB9NSmYxsf+uXpRMPZ3Yj4ciopZnL7NJxSl0n2?= =?us-ascii?Q?MDJokJ6MNsnnftNPqv8jmFeL7+DvQn56lE/mcCI6xWxjFs2Gk0ggdLBbFKOT?= =?us-ascii?Q?0PJrr+0BKI4CqqOrXSAgPR/BvNEETp0DZVcezjYc3ag+rSN25RTFmywqkMzF?= =?us-ascii?Q?vce1pobcc2DA/cMWH57+CM/zMbHpOlhN7bqkbHxQcKfqafBcalJsVUYwZ9Xa?= =?us-ascii?Q?xfm6NVusgybrYjm6uF5tb0f+eig7d+N1ic01L9rWtCOl3YB6s+zqYoTqXIY5?= =?us-ascii?Q?3hr6KNVibdrKkCpZT3lz8OT60Ky+q3nml+R39mxbucTnA2ISkPnOeNtwB4kj?= =?us-ascii?Q?sOpXPnWb44LpVY/ml/MoUV5b1nKbvHNCOZtJPLDNoYWxUM6Yk1UkRMM8sEVJ?= =?us-ascii?Q?tIj1k+0aOenxW9UpUdsmsr5F77NgQXfC7R0uBd6gdLyKMSLu/YG54Fv4dYtE?= =?us-ascii?Q?/S/rEK+HG4OxUIMoa9MefL/6PMA4Vf8BUnkRBIBnsyn4NrzRRBt/0itp0tiX?= =?us-ascii?Q?zr/HXV+RMVbdHe2lo5mLkJZStIGKqY+5WerD7WbVcYIBugWCECvrNmmASLgE?= =?us-ascii?Q?kSXkz/GNov5TngDKO3jnWMcjRQL8H8W3Ypa7Rv5UjslFVrIR/7veR+7C2CUU?= =?us-ascii?Q?Wsjg7FNeJO+x4fu+Ba5je5YfEubeOMsYa8LzTyFMIswabIJMbAR17WP3lPBP?= =?us-ascii?Q?k9PzKW9Ltwf3Z8X7QfNkduJe2dfXhObsT1qV09b/8BVEEZ/TFVzZzCrH8Y5o?= =?us-ascii?Q?kNmQaBtTdz6KYJXraT5qfNmcyQyUvTrHEzcxMn4G8WbGGuH0D/wWGInSc72Z?= =?us-ascii?Q?jFe/G0NFY9UvHGBJ3YGS39S/HdibSBjOq5oyuQFsd750V7D/urA2vUPVnlfY?= =?us-ascii?Q?TE+ob63WvmaCbooBFea2pZ28wBq4A8yYm3N9lNUKgx7?= X-Microsoft-Exchange-Diagnostics: 1; MWHPR05MB3613; 6:eEHU3pjfCt7i6ArWSmL8OXvD24uOJ/SNM+ujZmFjuQMrsvs8bTzExu94Kwvu6N9PKKqFI3p2Z27JYYILVdSXPuo5N0oUzjT600w8P4+jU7g1N9hzk9bgeh+Gc9MaJWrfeCMcEFOUv0wCqWHdjAKIskmB53S+OouECtSB4NX67ayIHeWIF1aszffB71HS5RAn/TUbwEbeMguSNyfz/jA7T9sY17NCS4djW+4BbmKCn7G9tAW3FOV5vC9XTy10gFZMepUwFifNxuYTI7k1Vr0/azYT2XKjp2GemOk4eRQFMTNxHE7fyXJExw7Gpf12rbXdlhPt/f10kDCmaGX8va/8dVW1ZLMWyq0eqo/neDwGZY4=; 5:dLz/hTJ/rTR4iF3Fnsbdw1SkYWIGaxp4sotHPbniD7pFTig9iMqbdk79DEPxtd5E69Y8J98yB/AuTXfy7/IgklRdtKvX853M+YPgfATzo04HQu6XGSTqN6CQM++ZfxfSOjuP9DpxE1wPnkeeSqE/C8qXkD1ycBuZOtFjaDqqMPA=; 24:gcjPSsI4fkdMikhRUzntLi3d5mmfyvfM2esZafz0KaQGSU8WYdi+nd0QSnbgXZfVQZlH0XqpgfTxbV2/zBZLRZ8BzCYd9AhfMj7NwRr/vz0=; 7:oaLcwtnT9773JR4cUa39WOVAC6CVfZJONndCmL9Sz6NTeYQToJrAf7FJb6hX7b/hbSzl+PfzwrNMxieCiEUVysByLL9HWZObHiFrJbnRl5YcWH55q4DCVR4ZSBfa+LQlNR+uNxtNWdR3AutImcANAXKs32IxJrHL6/1AtrmVUA4XQGfnYGXdzlbwjv87eIL6joXpbcLtDCN94mlU/5sVlryFEw/d8as3LC2p1qr1Desxw9MG3K/P66hDWypbCLDm SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: juniper.net X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Oct 2017 16:32:51.5103 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: b3a3bb25-7021-4aaa-e928-08d51eeab339 X-MS-Exchange-CrossTenant-Id: bea78b3c-4cdb-4130-854a-1d193232e5f4 X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=bea78b3c-4cdb-4130-854a-1d193232e5f4; Ip=[66.129.239.12]; Helo=[p-emfe01a-sac.jnpr.net] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: MWHPR05MB3613 X-Mailman-Approved-At: Sun, 29 Oct 2017 17:17:44 +0000 X-BeenThere: freebsd-security@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "Security issues \[members-only posting\]" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 29 Oct 2017 16:32:55 -0000 Eric McCorkle wrote: > Overall, I think LibreSSL is the best option, though there needs to be > some investigation into how easily it can be used for kernel and > boot-loader purposes. Things like libsodium are too narrow in their > focus, and BearSSL is too new. Our userland veriexec binary uses a libverify which is mostly just OpenSSL (originally structured that way for export reasons ;-) is 3.6M - at least 90% of that is just OpenSSL. I tried paring that library down to just the bits needed for loader. But had to give up at 3M. Which was when I encounterd BearSSL. Out of the box, it could verify our ECDSA cert chains as well as various RSA ones which was a pleasant surprise. libbearssl is < 1M and my loader is 347K with verifcation vs 237K without, so the entire verifcation implementation is only 110K --sjg