1#!/usr/bin/gawk 2 3# Copyright 2020 Oxide Computer Company 4 5# Converts the MD5 test vectors into the same format as the SHA ones 6# usage: gawk -f convert.awk byte-hashes.md5 7 8BEGIN { 9 filenum = 0; 10} 11 12$2 == "^" { 13 filename = sprintf("byte%04d.dat", filenum); 14 # od -An -t x1 -w200000 < <file> | sed -e 's/ //g' 15 cmd = sprintf("sh -c \"od -An -t x1 -w200000 < %s | sed -e 's/ //g'\"", filename); 16 cmd |& getline bindata 17 binlen = length(bindata) / 2; 18 if (binlen == 0) { 19 bindata = "00" 20 } 21 printf("Len = %d\n", binlen * 8); 22 printf("Msg = %s\n", bindata); 23 printf("MD = %s\n\n", tolower($1)); 24 filenum++; 25} 26