Skip to main content
. 2016 Nov 25;16(12):1993. doi: 10.3390/s16121993
Algorithm 5 DecryptNode.
Input:
  YeII: defined in Equation (3)
  SKQ: the querier Q’s secret key;
  SQ: the querier Q’s attribute set;
  u: a node in the access tree TP;
Output:
  paru: a secret parameter;  
  or ⊥
 1: if u is a leaf node then
 2:   Set i=att(u);
 3:   if iSQ then
 4:     Compute
paru=eDi,CueDi,Cu=eg,gqu0dk;
 5:   else return paru=;
 6:   end if
 7: else
 8:   Define Fu=null;
 9:   for all zChildren(u) do
 10:     Compute parz=DecryptNodeYeII,SKQ,SQ,z;
 11:     if parz then
 12:       Update Fu=Fu{parz};
 13:     end if
 14:   end for
 15:   if |Fu|<ku then return paru=;
 16:   else
 17:     Compute paru=eg0,g0qu0d0 using Fu by polynomial interpolation method;
 18:   end if
 19: end if
  return paru.