Papers
Topics
Authors
Recent
Search
2000 character limit reached

Function-Hiding Inner-Product Techniques

Updated 12 July 2026
  • Function-hiding inner-product techniques are encryption methods that reveal only the inner product of two hidden vectors while protecting the individual inputs.
  • The approach employs pairing-based cryptography on the BLS12-381 curve, using optimized scalar multiplications and shared multi-pairing to achieve practical performance.
  • It balances constrained output ranges and memory demands with robust security, making it a viable primitive for privacy-preserving edge computing deployments.

Function-hiding inner-product techniques are a class of functional encryption methods in which decryption reveals only an inner product x,y\langle \boldsymbol{x}, \boldsymbol{y} \rangle while intending to hide both the encrypted vector y\boldsymbol{y} and the function vector x\boldsymbol{x}. In the pairing-based setting examined in "Privacy-Preserving Edge Computing from Pairing-Based Inner Product Functional Encryption" (Banerjee, 2 Apr 2025), the relevant technique is function-hiding inner product encryption (FHIPE), instantiated not through a new cryptographic construction but through an efficient implementation of the scheme of Kim et al. (SCN 2018) on the BLS12-381 pairing-friendly elliptic curve. The resulting framework positions FHIPE as a practical primitive for privacy-preserving edge computing, especially when the computation can be expressed as a bounded inner product.

1. Functional-encryption setting and the meaning of function hiding

Functional encryption (FE) is organized around the principle that decryption should reveal a prescribed function of encrypted data rather than the data itself. Within FE, inner-product encryption (IPE) specializes to the case where ciphertexts encrypt a vector y\boldsymbol{y}, secret or functional keys encode a vector x\boldsymbol{x}, and decryption returns the inner product

x,y.\langle \boldsymbol{x}, \boldsymbol{y} \rangle.

The function-hiding variant, FHIPE, is the form in which both vectors are intended to remain hidden and only the inner product is revealed (Banerjee, 2 Apr 2025).

The deployment model described in the paper is a two-party style computation. An encryptor holds a private input vector y\boldsymbol{y}, a decryptor holds a functional key corresponding to a private function vector x\boldsymbol{x}, and decryption reveals only x,y\langle \boldsymbol{x}, \boldsymbol{y} \rangle. In the application settings discussed, this means that a client’s signal or fingerprint can remain hidden, while model weights or a database vector also remain hidden.

The paper is explicit that its contribution is not a new function-hiding construction. The FHIPE syntax, correctness relation, and security intent are inherited from the scheme of Kim et al.; the contribution lies in software realization, optimization, and deployment on an edge device using BLS12-381. This distinction is central to the topic: in this line of work, “function-hiding inner-product techniques” refers both to the underlying cryptographic method and to the implementation strategies that determine whether the method is operationally viable.

2. Bilinear-group formulation and cryptographic structure

The construction is pairing-based. The ambient algebraic setting uses bilinear groups G1G_1, y\boldsymbol{y}0, and y\boldsymbol{y}1 of prime order y\boldsymbol{y}2, with

y\boldsymbol{y}3

and bilinearity

y\boldsymbol{y}4

Although the background notation is described as typographically inconsistent in places, the algorithmic presentation makes clear that the intended setting is the asymmetric pairing model y\boldsymbol{y}5 (Banerjee, 2 Apr 2025).

The implementation uses BLS12-381, with curve equation

y\boldsymbol{y}6

prime field size y\boldsymbol{y}7, subgroup order size y\boldsymbol{y}8, embedding degree y\boldsymbol{y}9, and estimated security level x\boldsymbol{x}0-bit. The paper contrasts this with BN-254 at x\boldsymbol{x}1-bit and BN-462 at x\boldsymbol{x}2-bit, and motivates BLS12-381 as a widely adopted point in the practical-security design space.

A further structural feature is the sextic twist x\boldsymbol{x}3 of BLS12-381, together with an isomorphism

x\boldsymbol{x}4

where

x\boldsymbol{x}5

This twist representation is used to represent one source group, simplifying pairing arithmetic and compressing elements. The paper attributes to this design a x\boldsymbol{x}6 reduction in ciphertext size relative to an uncompressed alternative.

The security assumptions are not restated in full. The implementation paper inherits the assumptions of the Kim et al. FHIPE construction and emphasizes practical realization rather than new assumption formulations. A plausible implication is that the main research interest here is less the definition of a new hardness basis than the study of how far an established pairing-based FHIPE primitive can be pushed on constrained hardware.

3. Core FHIPE algorithms and correctness conditions

The scheme operates over vectors x\boldsymbol{x}7, with an invertible matrix

x\boldsymbol{x}8

and its associated dual-form matrix

x\boldsymbol{x}9

Let y\boldsymbol{y}0 be a polynomial-size set of admissible inner products.

The setup algorithm

y\boldsymbol{y}1

samples an invertible matrix y\boldsymbol{y}2 and outputs public parameters

y\boldsymbol{y}3

together with a master secret key

y\boldsymbol{y}4

Key generation

y\boldsymbol{y}5

chooses random y\boldsymbol{y}6 and returns

y\boldsymbol{y}7

where

y\boldsymbol{y}8

Encryption

y\boldsymbol{y}9

chooses random x\boldsymbol{x}0 and returns

x\boldsymbol{x}1

where

x\boldsymbol{x}2

Decryption

x\boldsymbol{x}3

computes

x\boldsymbol{x}4

and

x\boldsymbol{x}5

Using

x\boldsymbol{x}6

one obtains

x\boldsymbol{x}7

Decryption therefore reduces to finding x\boldsymbol{x}8 such that

x\boldsymbol{x}9

If such x,y.\langle \boldsymbol{x}, \boldsymbol{y} \rangle.0 exists, it is the inner product; otherwise the output is x,y.\langle \boldsymbol{x}, \boldsymbol{y} \rangle.1 (Banerjee, 2 Apr 2025).

The correctness condition is correspondingly bounded: correctness holds iff

x,y.\langle \boldsymbol{x}, \boldsymbol{y} \rangle.2

If entries satisfy

x,y.\langle \boldsymbol{x}, \boldsymbol{y} \rangle.3

then

x,y.\langle \boldsymbol{x}, \boldsymbol{y} \rangle.4

The paper therefore requires

x,y.\langle \boldsymbol{x}, \boldsymbol{y} \rangle.5

and emphasizes the stronger practical condition

x,y.\langle \boldsymbol{x}, \boldsymbol{y} \rangle.6

because decryption uses a bounded discrete logarithm over a manageable interval.

This bounded-range requirement is not incidental. It is a defining practical property of this style of FHIPE: the hidden-function evaluation is efficient only when the revealed inner product is known in advance to lie in a suitably small set.

4. Leakage model, bounded discrete logarithms, and operational constraints

The intended privacy guarantee is that the ciphertext hides x,y.\langle \boldsymbol{x}, \boldsymbol{y} \rangle.7 except for what is implied by the inner product, and the functional key hides x,y.\langle \boldsymbol{x}, \boldsymbol{y} \rangle.8 except for what is implied by that same output. The pairing computation, together with the randomizers x,y.\langle \boldsymbol{x}, \boldsymbol{y} \rangle.9 and y\boldsymbol{y}0 and the hidden basis matrices y\boldsymbol{y}1 and y\boldsymbol{y}2, collapses the encoded structures into a relation in y\boldsymbol{y}3 that depends only on y\boldsymbol{y}4.

At the same time, the paper is clear about residual exposure. The decryptor learns the value of the inner product and therefore any information inferable from repeated observations of such outputs. Operational leakage also includes the vector dimension y\boldsymbol{y}5, ciphertext length y\boldsymbol{y}6, the selected discrete-log search bound y\boldsymbol{y}7 or equivalently

y\boldsymbol{y}8

and application-level metadata (Banerjee, 2 Apr 2025).

The bounded discrete logarithm is recovered with Baby-Step Giant-Step (BSGS). For

y\boldsymbol{y}9

the implementation precomputes

x\boldsymbol{x}0

sets

x\boldsymbol{x}1

and iterates through giant steps until a match with a baby-step entry is found, yielding

x\boldsymbol{x}2

The paper also addresses signed values through modular encoding. If x\boldsymbol{x}3, it is encoded as

x\boldsymbol{x}4

After discrete-log recovery, if

x\boldsymbol{x}5

the output is decoded as

x\boldsymbol{x}6

This requires choosing x\boldsymbol{x}7 so that positive and negative representatives remain disjoint.

A common misconception is that function hiding eliminates all leakage apart from the stated output. The implementation study does not claim such a theorem. Instead, it highlights the bounded-output and repeated-query realities of deployment. This suggests that in practical systems, function hiding should be interpreted as protecting the vectors against direct recovery while still leaving application-level inference risks attached to the observable sequence of inner-product outputs.

5. Implementation techniques on BLS12-381

The software framework is built in MIRACL and is described as constant-time, with execution time independent of secrets and including “state-of-the-art side-channel countermeasures.” The implementation uses MIRACL’s 64-bit limb representation for 381-bit field elements, with extra “word excess” and “field excess” bits to accelerate modular arithmetic.

Encryption requires x\boldsymbol{x}8 scalar multiplications in the ciphertext group. To accelerate this step, the implementation uses the GLS method on BLS12-381, exploiting an efficient endomorphism. For a point x\boldsymbol{x}9 and scalar x,y\langle \boldsymbol{x}, \boldsymbol{y} \rangle0,

x,y\langle \boldsymbol{x}, \boldsymbol{y} \rangle1

where x,y\langle \boldsymbol{x}, \boldsymbol{y} \rangle2, x,y\langle \boldsymbol{x}, \boldsymbol{y} \rangle3, and

x,y\langle \boldsymbol{x}, \boldsymbol{y} \rangle4

The decomposition is four-dimensional and converts one long scalar multiplication into a multi-scalar multiplication using precomputed points

x,y\langle \boldsymbol{x}, \boldsymbol{y} \rangle5

together with lookup tables of combinations

x,y\langle \boldsymbol{x}, \boldsymbol{y} \rangle6

The reported timing for traditional 4-bit-window scalar multiplication in x,y\langle \boldsymbol{x}, \boldsymbol{y} \rangle7 is 4.16 ms, while the optimized GLS-based scalar multiplication is 1.62 ms, yielding approximately x,y\langle \boldsymbol{x}, \boldsymbol{y} \rangle8 speedup (Banerjee, 2 Apr 2025).

Decryption is accelerated through multi-pairing. The generic form is

x,y\langle \boldsymbol{x}, \boldsymbol{y} \rangle9

with the two main pairing phases identified as Miller Loop (ML) and Final Exponentiation (FE). The optimization strategy studies three cases: no sharing, shared FE only, and shared ML and FE. Compared to no sharing, sharing FE gives up to G1G_10 speedup, and sharing both ML and FE gives another G1G_11 speedup, for a total pairing-stage decryption improvement of about G1G_12.

The bounded discrete-log stage is also optimized. Instead of generating the BSGS table solely through repeated multiplications, the implementation uses Knuth’s power tree and replaces many multiplications with Granger-Scott cyclotomic squarings in the target group. The measured target-group costs are 20.4 G1G_13s for multiplication and 10.1 G1G_14s for cyclotomic squaring, and the power-tree method yields about 25% faster table generation than repeated multiplication alone. The lookup strategy remains a constant-time brute-force search; the paper notes that hash-table lookup can be faster, but it was not used because of prohibitive memory overhead for large G1G_15.

These design choices expose the technique’s practical logic. The cryptographic construction is fixed, but performance is determined by a combination of curve choice, endomorphism exploitation, shared pairing work, constant-time engineering, and memory-sensitive discrete-log recovery.

6. Complexity, empirical performance, and application profiles

The asymptotic costs reported in the paper are explicit. Encryption has time

G1G_16

dominated by G1G_17 scalar multiplications, and memory

G1G_18

due to storage of G1G_19. Decryption has time

y\boldsymbol{y}00

where y\boldsymbol{y}01 arises from the y\boldsymbol{y}02-fold multi-pairing and y\boldsymbol{y}03 from bounded discrete-log recovery, with memory

y\boldsymbol{y}04

typically dominated by the BSGS lookup table for large y\boldsymbol{y}05 (Banerjee, 2 Apr 2025).

The concrete benchmarking platform is a Raspberry Pi 4 Model B with a 1.8 GHz quad-core ARM Cortex-A72, 8 GB LPDDR4-3200 RAM, 128 GB microSDXC storage, 64-bit Raspberry Pi OS kernel 5.15, GCC 10.2.1 with -O3, and the MIRACL Core library. All reported aggregate results were averaged over 10,000 runs.

For the comparison point used against the earlier practical implementation of Kim et al., with

y\boldsymbol{y}06

the reported values are as follows.

Metric Kim et al. This work
Encrypt 71.4 ms 165 ms
Decrypt 366.4 ms 266 ms
Ciphertext 17.7 KB 18.9 KB

The comparison is notable because the BLS12-381 implementation runs on a 1.8 GHz Raspberry Pi 4B, whereas the earlier baseline used MNT6-224 on a 4.0 GHz Intel Core i7. The paper emphasizes that the newer implementation operates at approximately 126-bit security rather than approximately 80-bit security, yet still achieves comparable ciphertext size and faster decryption.

The application case studies further illustrate how practicality depends jointly on vector dimension and output range. For encrypted biomedical sensor data classification, two linear classifiers are implemented. The ECG case uses dimension y\boldsymbol{y}07 and y\boldsymbol{y}08, with Encrypt at 307 ms and Decrypt at 1004 ms. The EEG case uses dimension y\boldsymbol{y}09 and y\boldsymbol{y}10, with Encrypt at 291 ms and Decrypt at 1567 ms. The larger decryption times reflect the cost of bounded discrete-log recovery over a substantial range.

For secure wireless fingerprint-based indoor localization, the toy setting uses y\boldsymbol{y}11 access points and y\boldsymbol{y}12 locations, with transformed vector dimension

y\boldsymbol{y}13

and discrete-log parameter

y\boldsymbol{y}14

The reported per-distance computation costs are Encrypt at 12 ms and Decrypt at 29 ms. This lower-dimensional, small-range regime is much more favorable.

A plausible implication is that the dominant practical variable is not merely the dimension y\boldsymbol{y}15, but the joint regime of y\boldsymbol{y}16 and the admissible output range. The paper’s own summary supports this reading: encryption grows linearly with y\boldsymbol{y}17, whereas decryption grows with both y\boldsymbol{y}18 and y\boldsymbol{y}19, ciphertext size grows linearly with y\boldsymbol{y}20, encryption memory scales as y\boldsymbol{y}21, and decryption memory scales as y\boldsymbol{y}22.

7. Significance, limitations, and place in the broader research landscape

The work establishes that pairing-based FHIPE can be implemented efficiently enough for privacy-preserving edge computing on resource-constrained hardware, provided that the application admits moderate vector dimensions and tightly bounded inner products (Banerjee, 2 Apr 2025). The primary technical message is not the invention of a new function-hiding mechanism, but the demonstration that an existing one can remain practical when moved to a modern and widely adopted curve with substantially higher security than older deployments.

Several limitations are equally central. First, the bounded discrete logarithm is a fundamental bottleneck rather than a secondary implementation detail. Even with optimized scalar multiplication and shared multi-pairing, decryption becomes expensive when the possible inner-product range is large. Second, memory pressure is structurally important: encryption stores the y\boldsymbol{y}23 matrix y\boldsymbol{y}24, while decryption may require large BSGS tables. Third, function hiding does not eliminate application-level inference from repeated outputs or metadata.

The paper therefore locates function-hiding inner-product techniques in a specific practical niche. They are well suited to quantized signals, low-to-moderate dimensions, and tasks in which the output range can be tightly constrained. They are less attractive when the output must span a large interval or when very high-dimensional computations are required at high frequency.

Within the broader FE literature, this work suggests that the maturity of some pairing-based FHIPE constructions has shifted part of the research frontier from purely cryptographic design toward realization questions: curve selection, multi-pairing strategy, endomorphism-based acceleration, constant-time table lookup, serialization, and memory-aware deployment. In that sense, the paper serves as a detailed case study of how function-hiding inner-product techniques move from bilinear-group abstractions to operational edge systems.

Definition Search Book Streamline Icon: https://streamlinehq.com
References (1)

Topic to Video (Beta)

No one has generated a video about this topic yet.

Whiteboard

No one has generated a whiteboard explanation for this topic yet.

Follow Topic

Get notified by email when new papers are published related to Function-Hiding Inner-Product Techniques.