Skip to main content
. 2024 Feb 5;24(3):1035. doi: 10.3390/s24031035
Algorithm 2: Signup(Vi,SU){EV}
// Params: attribute values Vi; private key SU
// Returns: proof EV
function GenerateSignature(attribute_values []Vi, publicKey QU) →σ
function GenerateProof(attribute values []Vi, private key SU) → proof EV
01: // Step (i): Compute T based on the public parameters p and q
02: T=pq
03: // Step (ii): Input attribute values Vi and private key SU
04: // Compute the formula for F
05: F = empty set // Initialize F as an empty set
06: for each attribute value vij in Vi:
07:   // Compute lj
08:   lj=H2SUvij
09:   // Square each lj to get fj
10:   fj=lj2
11:   // Add fj to the set F
12:   F=F union fj
13: // Construct the proof EV
14: EV=T, F
15: return EV
endfunction