Yo voy con
mamcx. Para este problema específico creo que le estás dando demasiadas vueltas. Si dispones de una tabla en la bd donde almacenar la correspondencia entre las cadenas largas y cortas, lo único que necesitas es un autonumérico/generador que puedes prefijar con una cadena al gusto o simplemente rellenar con ceros iniciales:
Código:
corta------original
00000001 920B2995-7686-4A92-9956-ABBA906D31C1
00000002 6EE9F0BC-6AD2-48FF-BD15-00890556403D
...
00000010 7D8512CF-57C5-4792-A0D2-B26CDCFABC7D
00000011 2DF078B9-10D0-4F5E-BF85-55410DA4EB5C
...
00003812 02050FD5-DBFB-4EF5-B478-7EDEE9369AB2
// Saludos