DataHash

1.7.1上版(12 KB) 1月
MD5或沙散列数组、结构、细胞或文件

12.6 k下载

更新2019年5月19日

查看许可协议

DATAHASH——Matlab散列数组、结构、细胞或文件
散列= DataHash(数据、选择…)
数据:内置类型的数组(U) INT8/16/32/64,单,双(真实的或复杂的)
CHAR、逻辑、细胞结构(标量或数组,嵌套),function_handle。
选择:char向量列表:
散列方法:‘sha - 1’,‘sha - 256’,‘sha - 384’,‘sha - 512’,‘MD2’,‘MD5’。
输出格式:“六角”、“十六进制”,“双”、“uint8”,“base64”
输入类型:
“数组”:内容、类型和大小的输入(数据)
考虑创建散列。嵌套的细胞
递归地解析和结构体数组。空数组
不同的类型回答不同的散列。
“文件”(数据):作为文件名和散列计算
文件的内容。
“本”(数据):是一个数值,逻辑或CHAR数组。只有
二进制数组的内容被认为是这样
如空数组不同类型回答相同的散列。
“ascii”:“本”一样,但只有8位ascii 16位的一部分
Matlab识字课被认为是。
散列:字符串或数值向量。
例子:
默认值:MD5,十六进制:
DataHash ([]) % 7 de5637fd217d0e44e0082f4d79b3e73

Base64 sha - 1:
年代。一个= uint8 ([]);
年代。b ={{1:10}、结构(“问”,uint64 (415))};
DataHash(年代,base64, sha - 1) % ZMe4eUAp0G9TDrvSW0 / Qc0gQ9 /

与标准的散列程序使用ASCII字符串:
DataHash (“abc”,“sha - 256”,“ascii”)

迈克尔Kleder的“计算哈希”类似的工作,但不接受结构、细胞或文件:
//www.tatmou.com/matlabcentral/fileexchange/8944

“GetMD5”是2快100倍,但是它只回复MD5散列和需要一个c编译器:
//www.tatmou.com/matlabcentral/fileexchange/25921

测试:Matlab 7.7, 7.8, 7.13, 8.6, 9.1, 9.5, Win7&10/64, Java: 1.3, 1.6, 1.7

Bugreports和增强请求是受欢迎的。随意问我关于Matlab 6.5的版本。

PS。MD5、SHA1哈希值是“破”:你可以构造一个数据集,一个特定的散列。但检查文件的完整性或识别一组变量,这两种方法是可靠的。

引用作为

1月(2023)。DataHash(//www.tatmou.com/matlabcentral/fileexchange/31272-datahash), MATLAB中央文件交换。检索

MATLAB版本兼容性
创建R2016b
兼容任何释放
平台的兼容性
窗户 macOS Linux
类别
找到更多的在环境和设置帮助中心MATLAB的答案

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!
版本 发表 发布说明
1.7.1上

错误修复在单元测试功能:GetMD5现在正确了。

1.7

改进处理字符串。接受输入的字符列表向量。

1.6

选择结构不是case-senisitve。String类接受数据。

1.5.0.0

只描述已经更改。代码并不是感动。
不需要使用Matlab TYPECASTX在现代版本。散列已经改变为“数组”模式作为GetMD5回答相同的输出。速度的改进结构体数组。
错误修复:空文件失败。

1.4.0.0

固定的错误:“二进制”模式的字符串和空数组。为“数组”模式[]和0(1 1 0)以前相同的散列。
版本30 - mar - 2015结果已经改变,但帮助部分还没有调整。这是固定的。
结构体数组处理速度更快,校验和不同于早期版本。

1.3.0.0

接受空输入二进制模式了。

1.2.0.0

二进制模式增加只考虑数据的内容。

1.0.0.0