Input ( T r u s t i , N i , α , )

Output ( T r u s t i , N i )

1) for i N

2) if complete this round of consensus

3) T r u s t i T r u s t i ( r ) + α ( 1 T r u s t i ( r ) )

4) else if Malicious behavior

5) T r u s t i 0

6) else T r u s t i β T r u s t i ( r )

7) if T r u s t i ( r ) < n

8) S T r u s t i ( r ) ←error

9) T r u s t i ( r ) n recover in the next cycle

10) else if T r u s t i ( r ) < l

11) S T r u s t i ( r ) ←abnormal

12) else if T r u s t i ( r ) < m

13) S T r u s t i ( r ) ←normal

14) else

15) S T r u s t i ( r ) ←excellent

16) if T r u s t i ( r ) > m

17) T r u s t i ( r ) l reset at next cycle

18) return ( T r u s t i , N i )

end for