CAS Registry Numbers algorithm



 Dear all:
 
Searching the archives of CHMINF-L { *at * } LISTSERV.INDIANA.EDU (URL is http://listserv.indiana.edu/archives/chminf-l.html), I found out the algorithm used to generate the checksum number of every CAS RN. Since it could be of interest for some people in the list, I will reproduce the text here (thanks to the original sender, Gary Wiggins; I hope not to break any rule by reproducing this and giving the source):
         ALGORITHM: The last digit is a checksum digit of the unit integer of
 the summed products of multiplying the left-next-most integer by 1, followed by
 multiplying the left-next-most integer by 2, etc.
         e.g.'s:
                 Acetone: RN= 67-64-1
         1X4 + 2X6 + 3X7 + 4X6 = 61, and 1 is the checksum digit of RN=67-64-1.
                 Butane: RN= 106-97-8
 
1X7 + 2X9 + 3X6 + 4X0 + 5X1 = 48, and 8 is the checksum digit of RN=106-97-8
 
However, other people has pointed out this algorithm to be defective: due to our decimal notation system, the same checksum number can be obtained for a transposed number.
 Comments??