Skip to main content
. 2021 Apr 27;21(9):3051. doi: 10.3390/s21093051
Algorithm 1 Save and Search of Hot & Cold Blockchain
Input: Hot_Tx // Investigation and identity transaction
    Cold_Tx // Evidence video and identity transaction
    K // User Private key
output: Save Success or Failure
     Search Result of Hot_Tx and Cold_Tx
01 Hot_ledger [] ← NULL // Hot Blockchain Ledger
02 Cold_ledger [] ← NULL // Cold Blockchain Ledger
03 D [] ← List // User Digital Certificate
04 function Save(Hot_Tx, Cold_Tx, K)
05   I ← 0 // User index
06   V ← 0 // Valid flag
07   F ← 2 // Full flag
08   while D[I] do
09    if D[I] ∋ K && !is Empty(HoT_Tx)
10      V ← V + 1
11      Append(Hot_ledger [I], HoT_Tx)
12    end if
13    if D[I] ∋ K && !isEmpty(Cold_Tx)
14      V ← V + 1
15      Append(Cold_ledger[I], Cold_Tx)
16    end if
17    I ← I + 1
18    end while
19   while true do
20    if V = F return true
21    else return false
22    end if
23   end while
24 end function
25 function Search(HoT_Tx.ID and RNN, K)
26   I ← 0 // User index
27   R1 ← 0 // Hot_Tx
28   R2 ← 0 // Cold_Tx
29   while D[I] do
30    if D[I] ∋ K
31      if Hot_Tx[I].ID and RNN = Hot_Ledger[i].IDand RNN
32       R1 ← Hot_Ledger[I]
33      end if
34      if R1. EVI_ID = Cold_Ledger[I].EVI_ID
35       R2 ← Cold _Ledger[I]
36      end if
37     I ← I + 1
38   end while
39   return R1, R2
40 end function