I've got a number of colors which I'm trying to reverse engineer from a binary blob.

I've narrowed it down to a small section of the file, with the following values:

c[(0,0,0)] = 0x000000000000000000000000000000000000000000000000 c[(1,1,1)] = 0xBF0E01554E8BA53F00000000000000000000000000000000 c[(2,2,2)] = 0x28669E4C5AC1C23F00000000000000000000000000000000 c[(254,254,254)]= 0x8026349E84EE584000000000000000000000000000000000 c[(255,255,255)]= 0x00000000000059400000000000000000000000000000193D c[(1,0,0)] = 0x77AD31D28614853FAC4E7111AF220640D52D4FEF829A0340 c[(0,1,0)] = 0x8B4660320FF59C3F5148F95093550AC032ACE29C3D4A0540 c[(0,0,1)] = 0xCE01487450BA6C3F281E4AB53579044013312C6B12540DC0 c[(255,0,0)] = 0xE01C58AC04464C40091768519039534082A2B8D49E065140 c[(0,255,0)] = 0x46F3DD4DDA665540BAD424C91DDF56C05E7592BA947D5240 c[(0,0,255)]= 0xD84DBD3AA1554140BF17BD2D09C85140F9DB813DD37859C0

I'm looking for tips in how to decode these strings to the corresponding color strings.


Worked it out - the colors are encoded using the CIELAB color model. They are represented as a sequence of 3 8-byte, little endian doubles, corresponding to the C, I and E components of the color.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.