MATLAB在密码学中的应用



注意:

二进制不能直接转十六进制,但是十进制可以转十六进制

一定看清各变量的数据类型,有的是char,有的是逻辑型,有的是uint等



字符串转二进制

s=abcd;

bin=dec2bin(s,8)  %十进制转二进制


MATLAB在密码学中的应用


左循环移位

ones=bin(1,:);  %bin数据的第一行为例

circ=circshift(ones,[1,-1])  %只需要修改-1这个参数,-1代表左循环1


MATLAB在密码学中的应用



按位异或

left=bin(2,:);  %bin数组的第2

right=bin(3,:);  %bin数组的第3

 

left=uint8(bin2dec(left));  %转换成8无符号整形 十进制

right=uint8(bin2dec(right));   

xorValues=dec2bin(bitxor(left,right),8);  %最后进行按位异或的值8位 二进制


MATLAB在密码学中的应用