Re: [Cfrg] I-D Action: draft-irtf-cfrg-voprf-04.txt

Armando Faz <armfazh@cloudflare.com> Tue, 14 July 2020 19:13 UTC

Return-Path: <armfazh@cloudflare.com>
X-Original-To: cfrg@ietfa.amsl.com
Delivered-To: cfrg@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 9EC7F3A08FC for <cfrg@ietfa.amsl.com>; Tue, 14 Jul 2020 12:13:58 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.099
X-Spam-Level:
X-Spam-Status: No, score=-2.099 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, HTML_MESSAGE=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=cloudflare.com
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id EgtJIeZ8YOYa for <cfrg@ietfa.amsl.com>; Tue, 14 Jul 2020 12:13:57 -0700 (PDT)
Received: from mail-lf1-x129.google.com (mail-lf1-x129.google.com [IPv6:2a00:1450:4864:20::129]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 32BBD3A08D6 for <cfrg@ietf.org>; Tue, 14 Jul 2020 12:13:57 -0700 (PDT)
Received: by mail-lf1-x129.google.com with SMTP id k17so13015534lfg.3 for <cfrg@ietf.org>; Tue, 14 Jul 2020 12:13:56 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cloudflare.com; s=google; h=mime-version:from:date:message-id:subject:to; bh=3WSdwisWO074sZQlgFvFuZjq0CXdZNDjBk+vfpl6kJc=; b=qurJx4oa5SXzei7H3s2O1u3bdmZoZJW6VHGlHEEIoUXqzE6szmmyE2hN3YFbqhC7Ri WjPFP+5t8E/gS6zUWDIZ0r0xqfqI/Sk2VEpioE1Y97uMKrde99cHdbGNLztyxzwjy1uT 924s8GwVMNPn8ntjFdhc0KPO7sS4XwTX0O3oE=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=3WSdwisWO074sZQlgFvFuZjq0CXdZNDjBk+vfpl6kJc=; b=P8OM/rt3WDcVk3P4CJSqzifY8mo/MgcamybOPRXzbY+R3RNUVfL6b7/3y8bxoY+6r4 OuAKC5sACOoNqq6a7NwYYlfxK3DD+1OWAIlDAmqdprQK0+mGHQdbbbPkelAQWyup7E6h ZsRJ/fkJRJs9d6TDGCDNrmi41CPU4baZSoXgq1oXL8ROy3E26VaEQdZyUXsr19G7d2pZ gTSEXIjimYyo42mGW4wtYKzvpFSQaNIhF5xS+fQOJNVpo4ukydMOn0O/OFtTzaFlrfVe BuQR7NPcO3wyASeq2uhGnQH4Xvz76wiBC4k42Y6vgQZzE1rjX9OlzjBKMLKPy/CWitrX NkNQ==
X-Gm-Message-State: AOAM5336MYLti0DNcBVVQojTcp5PPywvW5rhWJVyEaqGnLys+6bvPMrt mHJV8EJr/sukyzq8x594/c6CXMkgK5lVJyCfEW+ZDH/jcw7Kow==
X-Google-Smtp-Source: ABdhPJxRKPkuoJfKmZPu0hM2NS9ojt7to35z2Gd/APcdjxFCGEPPfDyGNmIvOl2b4nZlsDU7rZWzmLWm1Lx5sUXxCNc=
X-Received: by 2002:a05:6512:691:: with SMTP id t17mr2844061lfe.44.1594754034656; Tue, 14 Jul 2020 12:13:54 -0700 (PDT)
MIME-Version: 1.0
From: Armando Faz <armfazh@cloudflare.com>
Date: Tue, 14 Jul 2020 12:13:43 -0700
Message-ID: <CABZxKYk2g=b+hK--YiSKoWtqoGZ4n0ohQu5y4D3Z02_uc23TCQ@mail.gmail.com>
To: cfrg@ietf.org
Content-Type: multipart/alternative; boundary="000000000000bd995505aa6b9b3a"
Archived-At: <https://mailarchive.ietf.org/arch/msg/cfrg/dt8TUtTD-JVgVxjpEL9lz5wUTb8>
Subject: Re: [Cfrg] I-D Action: draft-irtf-cfrg-voprf-04.txt
X-BeenThere: cfrg@irtf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Crypto Forum Research Group <cfrg.irtf.org>
List-Unsubscribe: <https://www.irtf.org/mailman/options/cfrg>, <mailto:cfrg-request@irtf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/cfrg/>
List-Post: <mailto:cfrg@irtf.org>
List-Help: <mailto:cfrg-request@irtf.org?subject=help>
List-Subscribe: <https://www.irtf.org/mailman/listinfo/cfrg>, <mailto:cfrg-request@irtf.org?subject=subscribe>
X-List-Received-Date: Tue, 14 Jul 2020 19:13:59 -0000

Dear authors of voprf draft,

The following is an optimization for `ComputeComposites` function when
executed at the server-side. The savings reduce by half the number of
scalar multiplications (group exponentiations).

The function `ComputeComposites` calculates

     M = Σ c_i M_i  and  Z = Σ c_i Z_i

such that Z_i = x M_i for all 0 <= i < m, where x is the server's key, and
m is the number of elements.
The cost of this function is:  2m ScMult + 2(m-1) Add.

However, the calculation of Z can also be performed as:

    M = Σ c_i M_i   and   Z = x M

under the assumption that x is known. This is why the optimization applies
only at the server-side. The cost of this evaluation is now:  (m+1) ScMult
+ (m-1) Add.

Best,
-- 
Armando Faz
Cloudflare Inc.