Research Article

Sequence Alignment with Dynamic Divisor Generation for Keystroke Dynamics Based User Authentication

Algorithm 2

The pseudocode of sequence alignment with dynamic divisor generation (SADD) algorithm.
Input: Training data extracted from a genuine user, . Testing data extracted from a genuine user or an imposter, .
In the training phase:
(1) for each attribute   do
(2)
(3)
(4) end for
(5) for each attribute   do
(6) mean
(7) for each row   do// Start from second row
(8)   mean (mean + )/2
(9) end for
(10)diff
(11)ratio (mean − )/diff
(12)divisor 20 − (20 * ratio)
(13)rangeDiff (diff/divisor)
(14) end  for
(15) for each row and each attribute in   do
(16)label ceil(()/rangeDiff) + (20 − divisor)
(17)if label = 0
(18)  label 1// If the data is exactly the same value as the minimum time, then it should be categorized as label
(19)model label// We just preserve it as to represent
(20) end  for
In the testing phase:
(1) Convert the to the alphabet letter format based on the minimum point the rane difference from step 3 and step 7
   respectively, from training phase. And then we run from step 15 to step 20 for just once time.
(2) for each row in model do
(3)for each attribute in   do
(4)   if = model
(5)   Score 1
(6)end for
(7)Final_Score sum(Score)
(8) end for
(9) Checking_Score mean(Final_Score)// Can be max, min, median, mean, and mode
(10) return Checking_Score
Output: The score then used to compare the threshold