Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:90260 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 24438 invoked from network); 7 Jan 2016 16:11:11 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 7 Jan 2016 16:11:11 -0000 Authentication-Results: pb1.pair.com header.from=scott@paragonie.com; sender-id=unknown Authentication-Results: pb1.pair.com smtp.mail=scott@paragonie.com; spf=permerror; sender-id=unknown Received-SPF: error (pb1.pair.com: domain paragonie.com from 209.85.215.54 cause and error) X-PHP-List-Original-Sender: scott@paragonie.com X-Host-Fingerprint: 209.85.215.54 mail-lf0-f54.google.com Received: from [209.85.215.54] ([209.85.215.54:33258] helo=mail-lf0-f54.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id DA/70-21405-E1E8E865 for ; Thu, 07 Jan 2016 11:11:10 -0500 Received: by mail-lf0-f54.google.com with SMTP id m198so11363606lfm.0 for ; Thu, 07 Jan 2016 08:11:10 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=paragonie-com.20150623.gappssmtp.com; s=20150623; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=UIuk1fMKwYKjzaIfcPo/pRjkNE8gYd2Qy1WXjvNQ1Qw=; b=ebvmwnMVrJOhtuahSfvdSg0mVvevhRkiKD5hdllBP7CasAxu5atDCo6FMIuuWaKW7r y0Rb2k7434HLTlCv85W9UkBOL77ZRbHFe7+dsNsqbY12F8Uy1E0lRP7YKQyMzN7UiKF1 X6SrqsI6afWufrHLfSgQKEC3cHqPnB0XB80LqVXHBtI1cyu+qKlM85MOZFup7v7xkV42 Ygrr2WeHCmpobhPwrV205q7oIO1OwI3m3tgxX55QPGGIZ3LzdmxGNwc9QSZLcQiOxKBB JIaUcK7aVHlRVARCrK2AvurlI7J2fpOGYh5ScVKQFcgD6ZsSTnS3XTo59uPaBxzKbNBC sm2g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:date :message-id:subject:from:to:cc:content-type; bh=UIuk1fMKwYKjzaIfcPo/pRjkNE8gYd2Qy1WXjvNQ1Qw=; b=giVETF5maqYGzdTsYbB9lBuV6Jkp91+rSLSJ10t6Dk/OvwJtiAHFcLCCne5I5h2YRF 9bE8KIv6OzFZyKyt17F7OAS0uhaCB47nxlngoQUG9pXH4n3g8wIYssWzDfJw2smuZ6d/ PTk0dws3oWcaTdzMrU+E9voacZVKH3yb9j24CDwArAYMm1MpfPAQt9rd5s+zVKlcYk8s 3skfjc2SDhTLTyZdT4e+iJx9/m8zPTF4oh9qjqWHUFKYKkdVw+mRenK5455XpEwV+vok zVbciNU0KT2gBOgvs/BQnOG+abAAtzgWn8BDZfM5MTdlXa2dy09pgHAyVmcXFN3hfYry KFUw== X-Gm-Message-State: ALoCoQnsAk8prUVCyblA+gzRwh00o+b+PZWGer6lMngjB58gK2QEG1W7pTG5JfwexOeT37DL1rnrlPXkOVzKH9V/8HRb/au6Dg== MIME-Version: 1.0 X-Received: by 10.25.91.139 with SMTP id p133mr17904748lfb.108.1452183066326; Thu, 07 Jan 2016 08:11:06 -0800 (PST) Received: by 10.114.160.13 with HTTP; Thu, 7 Jan 2016 08:11:06 -0800 (PST) In-Reply-To: References: Date: Thu, 7 Jan 2016 11:11:06 -0500 Message-ID: To: Pierre Joye Cc: PHP Internals Content-Type: text/plain; charset=UTF-8 Subject: Re: [PHP-DEV] [RFC] Libsodium From: scott@paragonie.com (Scott Arciszewski) On Thu, Jan 7, 2016 at 10:51 AM, Pierre Joye wrote: > HI Scott, > > On Thu, Jan 7, 2016 at 8:26 PM, Scott Arciszewski wrote: >> Hi everyone, >> >> I've updated the RFC to make libsodium a core PHP extension in 7.1, to >> include references to the online documentation. >> >> https://wiki.php.net/rfc/libsodium >> >> All new functions and classes would exist in the Sodium namespace. e.g. >> >> $ciphertext = \Sodium\crypto_box($message, $nonce, $keypair); > > As much as I like libsodium, yet another extension with yet another > library in the core sounds like a risk to me, long term. I would > rather prefer to focus on a larger effort to provide the necessary > features in the most easiest way using new APIs or existing > extensions, as you mentioned already in previous discussions and in > this mail. That's why I won't be in favor of bundling this one. > >> This is part of an overall effort to improve PHP's cryptography; up >> next will be the pluggable crypto API that supports multiple backends >> (with a scope limited to openssl and libsodium at the time of release) >> but always provide conservative defaults. Then I'd like to look at >> deprecating ext/mcrypt back to PECL and add more hash functions to >> ext/hash. > > This is definitely the way. Thanks for your great work :) > > Cheers, > Pierre Hi Pierre, > As much as I like libsodium, yet another extension with yet another > library in the core sounds like a risk to me, long term. I would > rather prefer to focus on a larger effort to provide the necessary > features in the most easiest way using new APIs or existing > extensions, as you mentioned already in previous discussions and in > this mail. That's why I won't be in favor of bundling this one. Even if we axe mcrypt and in with a net-gain of 0 extensions, you'd see it as a risk? ---------------- Let me state this clearly: I'm personally not going to bother pushing for a pluggable crypto API if the only option is to use OpenSSL and all its legacy cruft. I especially don't have lukewarm feelings towards RSA or ECDSA, which are your only real options with it. I feel that it simply would not be a worthwhile use of my time to do so. If Internals decides "no libsodium" but "yes pluggable crypto API", you'll have to find someone else to spearhead it. And I've said everything that needs to be said about mcrypt when I said, "Kill it with fire!" Now that we have random_bytes() there is nothing redeemable about it. Scott Arciszewski Chief Development Officer Paragon Initiative Enterprises