Information Technology Reference
In-Depth Information
Each thread
H
[
i
] determines whether to verify the signature with a verification
probability
p
.If
H
[
i
] defines a verification, and the signature is proved to be
valid,
H
[
i
] returns a
true
value informing that it is a valid signature. Otherwise,
it returns a
false
value. The result of all those threads are stored in a structure
P
. If all fields in the structure
P
are proved to be valid, it is interpreted as
evidence that all the verified signatures are correct so the message is accepted
as valid. On the other hand, if
P
contains some thread results that is invalid,
this could be interpreted as false message. If most threads indicate that the
message is false, it is taken as invalid message, otherwise it is valid. If there is
a tie or a questionable amount of false signatures, the reputation information
stored by the receiving agent about the different agents that have signed the
message is checked. In this case, only those agents that have a good reputation
due to their active and correct participation in the network are trusted and
accepted.
Algorithm 2.
Probabilistic Verification of Signatures
01:
function
Main(...)
02: bool P[c];
03: Thread H[c];
05:
for
(i=0;i¡c;i++)
do
06:
if
(ProbH[i]=1)
then
07: P[j]=H[i](VerifySignature(S,M));
08: j++;
09:
end if
10:
end for
11:
if
(IsTrueAll(P))
then
12:
return
ReliableMessage;
13:
else
14:
if
(NotIsTrueAll(P))
then
15:
return
NotReliableMessage;
16:
else
17:
return
VerifyNodeReputation;
18:
end if
19:
end if
20:
end Main
21:
bool function
VerifySignature(Signature S,text M)
22:
if
(IsValid(S))
then
23:
return
true;
24:
else
25:
return
false;
26:
endif
27:
end function
Search WWH ::
Custom Search