GUID generator
Jim Ault
JimAultWins at yahoo.com
Sat Jun 21 01:12:19 EDT 2008
the milliseconds might be a little better.
Jim Ault
Las Vegas
On 6/20/08 9:44 PM, "Sarah Reichelt" <sarah.reichelt at gmail.com> wrote:
> If these have to be unique, I would base them on "the seconds" as that
> is very unlikely to be duplicated, unless you generate them all at
> once, so produce many per second.
> Converting the seconds to hex gives 8 characters, so that could be
> most of the first segment in your ID.
>
> Then you could add in some machine-specific identifier if the IDs
> generated by different people all had to be unique.
>
> Then pad it out to the correct length with random characters as before.
>
> Cheers,
> Sarah
>
>
> On Sat, Jun 21, 2008 at 2:12 PM, Sivakatirswami <katir at hindu.org> wrote:
>> I'm building a PicLens Publisher here that will do pretty much what the
>> current PicLens Publisher does from CoolIris, with some additions to their
>> Media RSS format that their app does not do.
>> (see www.piclens.com)
>>
>> One thing I need to emulate is their GUID (Global Unique ID) generator which
>> outputs unique len(36) random strings like
>>
>> 557B4610-65DC-4FEA-B6DC-32C3FA4B374D
>>
>> 24D2C85A-DD13-4B5D-9CCF-8F3ADC3E6CC7
>>
>> 6B8CD7AA-11B5-4A0D-8EF1-0D6B18C80A17
>>
>> 0B7815AE-AC47-457D-B2CA-F0280947220D
>>
>> there is no significance to these strings other than that the uniqueness of
>> the string being close to infinity i.e. unlikely every to be duplicated
>> again.
>>
>> This is something brand new for me... I'm curious if anyone knows the
>> patterns here or has any idea of the algorithm being used. It does appear
>> that the alpha chars are always a) caps b) never go beyond F This hints at a
>> hexidecimal system underlying the algorithm.
>> I presume one could request a random selection from the hex set:
>> 0123456789ABCDEF
>> and call this 36 times. i don't know why there is any need for hyphenated
>> segments other than for readability....
>>
>> But, it's pretty simple to write a generator the appears to emulate the
>> algorithm.. I have this so far and it seems to do the job... any insights?
>>
>> on mouseUp
>> repeat 5 times
>> repeat 9 times
>> put GetRandomHex() after tGUID
>> end repeat
>> put "-" after tGUID
>> repeat 3 times
>> repeat 4 times
>> put GetRandomHex() after tGUID
>> end repeat
>> put "-" after tGUID
>> end repeat
>> repeat 12 times hexSet [tPickAnyOne]
>> put GetRandomHex() after tGUID
>> end repeat
>> put tGUID & cr after tOutPut
>> put empty into tGUID
>> end repeat
>> put tOutPut
>> end mouseUp
>>
>> function GetRandomHex
>> put "0 1 2 3 4 5 6 7 8 9 A B C D E F" into hexSet
>> split hexSet by " "
>> put random(16) into tPickAnyOne
>> return hexSet [tPickAnyOne]
>> end GetRandomHex
>>
>> delivers
>>
>> F2ACEA9EB-C3A5-F4CE-05B5-92888E1E80FA
>> 66A5365D3-EF9A-EF00-66EB-6C82663130B7
>> 65634AD6D-8577-A757-310F-47287CF85389
>> E2A1DC66D-C58C-1F26-26BF-35EA95A46B5C
>> BC04061AC-E3C5-3DEC-6EF3-7397B7757F8A
>>
>>
>> Seem OK?
>>
>>
>> _______________________________________________
>> use-revolution mailing list
>> use-revolution at lists.runrev.com
>> Please visit this url to subscribe, unsubscribe and manage your subscription
>> preferences:
>> http://lists.runrev.com/mailman/listinfo/use-revolution
>>
> _______________________________________________
> use-revolution mailing list
> use-revolution at lists.runrev.com
> Please visit this url to subscribe, unsubscribe and manage your subscription
> preferences:
> http://lists.runrev.com/mailman/listinfo/use-revolution
More information about the use-livecode
mailing list