how to convert md5 hash value as binary bits?

7 Ansichten (letzte 30 Tage)
Megha Nayar
Megha Nayar am 29 Mai 2019
Kommentiert: Jan am 5 Feb. 2021
Hi,
Suppose hash string is YuRtBM.. (something like this), i need it as 000101010 (128 bits because its md5).
  2 Kommentare
yougharta ghennai
yougharta ghennai am 5 Feb. 2021
any answer for this problem my friend ?
Jan
Jan am 5 Feb. 2021
Bearbeitet: Jan am 5 Feb. 2021
"(something like this)" is not enough to define the input uniquely. Maybe this is base64?

Melden Sie sich an, um zu kommentieren.

Antworten (1)

Jan
Jan am 5 Feb. 2021
With the bold guess, that the input is a base64 string:
Out = matlab.net.base64decode('YuRtBM');
Bmat = dec2bin(Out);
Bvec = reshape(Bmat.', 1, []) - '0'
  2 Kommentare
yougharta ghennai
yougharta ghennai am 5 Feb. 2021
% i find something better than that i gues
hash = 'dc1c320defa535b9d8177fc07ace6481';
%there are 32 chars on hex ==> 2 chars for 1 element .
% ==> we use that and it will give you directly the 128 bits :
binary_hash = hexToBinaryVector(hash);
disp(binary_hash);
% and you will notice it .
Jan
Jan am 5 Feb. 2021
In the original question the hash was "YuRtBM..." which is not a hex string.
hexToBinaryVector is part of the Sata Acquisition Toolbox. Without it:
hash = 'dc1c320defa535b9d8177fc07ace6481';
hexToBin(hash)
function bin = hexToBin(hex)
dec = sscanf(hex, '%2x').';
bin = rem(floor(dec ./ pow2(7:-1:0).'), 2); % Auto-expand, >= R2016b
bin = reshape(bin, 1, []);
end

Melden Sie sich an, um zu kommentieren.

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by