Research Article

Ldasip: A Lightweight Dynamic Audit Approach for Sensitive Information Protection in Cloud Storage

Algorithm 3

Block searching algorithm.
Inputs: user file block m, and deputy root nodes signature set Γ
Output: {path, {tp.Ψ, tp.HASH, tp.F}
SEARCHING (Γ, m, i)
SORT(R∗, cmp_F)//Order R∗ according to access frequency F.
FOR i = 1 TO R∗.size()//Traverse all R∗
{
   QUEUE<TreeNode>QUE
   QUE.push(R∗[i])
   R∗[i].F + = 1
   WHILE(!Q.empty())
{
   TreeNode tp = QUE.top()
   QUE.pop()
   IF(tp.Child.empty() andand tp.HASH = = m.HASH)
{
      List<TreeNode> path;
      path.add(tp)
      WHILE(path.back().Q = = 0)
{
       path.add(path.back().Father)
}
      REVERSE(path)
      return {path, {tp.Ψ, tp.HASH, tp.F}}//Return path, information
}
ELSE
{
       FOR j = 1 TO tp.Child.size() DO
{
      QUE.push(tp.Child[j])
}
}
}
}