We recommend using our Core Library wrapper classes' methods available in the SDK itself (like com.nalpeiron.zentitle.licensingclient.zentitle2core.DeviceFingerprint.generateForCurrentMachine()), which are designed to handle low-level details like memory allocation, etc.