VB.net MD5校验和到十六进制

我有一个700,000 MD5病毒签名的数据库,格式如下:
83968:961ed981485cea5ab3936496966ba0d6:Worm.Gaobot-318
86016:4bed8673ab3d695c52c233306ed3f733:Worm.Gaobot-319
有没有办法将Md5校验和转换为有效的十六进制签名? 如果是这样,我将如何(使用VB.net)将md5校验和转换为十六进制,删除第一个
83968:
并将名称保留为相同的格式? 所以最终产品看起来像:
{valid hex signature} :Worm.Gaobot-318
    
已邀请:
我明白你在说什么。您从clam数据库中收集了大量MD5病毒。但后来你才知道MD5不是好签名,但是十六进制签名很好。现在你想将MD5转换成十六进制。这是不可能的。您可以计算给定字符串的MD5,但不能从给定的MD5中获取字符串。 快乐的编码!     
您的“有效十六进制签名”不是MD5哈希 - 它太长了。 MD5产生16个字节,因此32个十六进制字符......您的Eicar示例是80个字符(40个字节)。 您没有指定首先使用什么算法来提供“有效十六进制签名”,但假设那里没有冗余,您根本没有足够的信息来生成它。这就像在你只知道每个演讲的第一个单词时询问如何制作剧本的故事大纲。     
$string fullStr = "83968:961ed981485cea5ab3936496966ba0d6:Worm.Gaobot-318 ";
$string name = fullStr.Split(":")[2];
$string md5 = fullStr.Split(":")[1];
这将为您提供名称和没有“83968”或“:”的md5     
看起来您的MD5值已经以十六进制格式表示。所以你在这方面很好。唯一剩下的就是将字符串拆分为“:”字符。假设这是你的格式: 83968:961ed981485cea5ab3936496966ba0d6:Worm.Gaobot-318 这是一些C#psuedo代码....
string fullStr = "83968:961ed981485cea5ab3936496966ba0d6:Worm.Gaobot-318 ";
string arr[] = fullStr.Split(":");
for(int i=0; i<arr.length; i++)
{
    Console.WriteLine(arr[i]);
}
    

要回复问题请先登录注册