getSignature(blob) {
        return new Promise(callback => {
            const reader = new FileReader();
            reader.onloadend = () => {
                const arr = (new Uint8Array(reader.result)).subarray(0, 4);
                let signature = '';
                for (let i = 0; i < arr.length; i++) {
                    signature += arr[i].toString(16);
                }
                callback(signature);
            };
            reader.readAsArrayBuffer(blob);
        });
    }
Get File/Blob header (signature) to parse for MIME-type or any magic numbers
@param {File|Blob} blob
@returns {Promise} callback(str:signature)