1 calculCCC( OO, Q, RRRRRR, EZABPQMCDU): # les paramètres sont de type chaîne, ex : "00"
2 concatenation = OO + Q + RRRRRR + EZABPQMCDU
3 ordre = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+" # caractères utilisés pour le codage (37 différents)
4
5 a = b = c = 0 # initialisation de a, b et c
6
7 for i in range(19): # boucle de 0 à 18, pour chaque index de position dans concatenation
8 position = ordre.find(concatenation[i]) # on retrouve la position du caractère concatenation[i] dans ordre
9
10 a = (1 * a + position) % 37 # calcul du nombre a, "% 37" pour modulo 37
11 b = (2 * b + position) % 37
12 c = (4 * c + position) % 37
13
14 return ordre[a] + ordre[b] + ordre[c] # on encode a, b et c en leur caractères correspondants, et on concatène le tout