FHERMA
L4 · APPLICATIONMEASURED

Encrypted Recommendation

encrypted-recommendation · spec v0.1.0 · 0 implementations · 6 runners

Create implementationSpecification

DESCRIPTION

Ranks catalogue items for a user whose history stays encrypted.

Recommendation is nearest-neighbour search wearing different clothes: a user is a vector, items are vectors, and the answer is the closest few. What makes it its own capability is where the vectors come from — a factorization built over many users, which raises the question of whose data trained it and what the recommendations leak about other people.

The kernel covers producing the ranking. Building the model is a separate concern, and whether it was trained on encrypted data or in the clear is an implementation trait rather than part of this contract.

INTERFACE

encrypted_recommendation(
  in  ct     : Ciphertext  // the encrypted user profile or history
  out ct     : Ciphertext  // the encrypted ranking of recommended items
  ...               // anything else the realization needs — keys, context, encoding — is its own concern
)

PARAMETER SCHEMA

NAMETYPERANGE
catalogue_sizeinteger1 – 2^24
profile_dimensionsinteger1 – 2^12
recommendationsinteger1 – 2^10
target_precisionnumber0.5 – 1

The schema belongs to the kernel. Each implementation declares which part of it it supports.

CORRECTNESS

01The requested number of distinct items is returned.
02Ranking quality is measured against known preferences over a fixed evaluation set.
03Items already in the user history are excluded or included by a rule stated in advance.

SECURITY PROPERTIES

The user history and the resulting ranking stay encrypted. Recommendations must not let another user’s history be inferred.

ASSUMPTIONS

The catalogue is public; the user profile is not.

REFERENCES

Encrypted Recommendation · FHERMA