One way cryptographic hashing of a number ensuring each result is unique

Is there a good algorithm for this? after an amount of searching around I haven't been able to find any conclusive answers.

Basically in a system which collects various bits of data about its users, each user is identified by a 64 bit unique Id. this Id is used as a primary key to a data set which may include any amount of data collected from this user. as is, this works fine as the Id's are already unique, but for legal reasons I need to hash the Id's in a way that I cannot link them back to the actual person. but at the same time needing to guarantee the uniqueness of the ID.

Obviously with the values being unique it would be possible to reverse engineer the algorithm used. but I'm not so sure that it being 100% unbreakable is so much of an issue here rather than making it so there isn't an easy way of reversing it

thanks

Answers


For each ID generate a unique random ID and store it as part of the users information.

Then you can get from an ID to hash. The reverse is computationally possible (as you must scan the whole key space) but excessively hard and time consuming.


Need Your Help

AL lib: (EE) UpdateDeviceParams: Failed to set 44100hz, got 48000hz instead

java lwjgl openal

I'm coding to manage OpenAL in java using lwjgl 3 and when I create the ALContext with this line:

Creating a CFDictionary

css swift

In an attempt to get this following code to work:

About UNIX Resources Network

Original, collect and organize Developers related documents, information and materials, contains jQuery, Html, CSS, MySQL, .NET, ASP.NET, SQL, objective-c, iPhone, Ruby on Rails, C, SQL Server, Ruby, Arrays, Regex, ASP.NET MVC, WPF, XML, Ajax, DataBase, and so on.