Deterministic UUID generation


Deterministic UUIDs (versions 3 and 5 from would be useful alongside the version 4 that JUCE provides. NOTE: This has been mentioned on here before (Deterministic Uuid from arbitrary string).

I have a juce_SHA1 class (cribbed from juce_SHA256 and wikipedia) which could be used to make version 5 UUIDs and I am happy to write constructors for these.

My question is where should the code go? If I add constructors to juce_Uuid.h then something in JUCE core will need MD5 and SHA1 from juce_cryptography which seems wrong. Alternatively if you have no desire for this code upstream I will put it somewhere else.


I have contributed some code to a fork on github. Would JUCE be interested in a pull request?