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
I have a database of 700,000 MD5 virus signatures in the following format:
83968:961ed981485cea5ab3936496966ba0d6:Worm.Gaobot-318
86016:4bed8673ab3d695c52c233306ed3f733:Worm.Gaobot-319
Is there a way to convert the Md5 checksums to valid Hex signatures?
If so, how would (using VB.net) I convert the md5 checksum to hex, remove that first 83968:
thing and leave the name in the same format?
So the end product would look like:
{valid hex signature} :Worm.Gaobot-318
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
我明白你在说什么。您从 Clam 数据库中获得了大量病毒的 MD5。但后来你发现 MD5 不是好的签名,十六进制签名才好。现在你想将 MD5 转换为十六进制。这是不可能的。您可以计算给定字符串的 MD5,但无法从给定 MD5 取回字符串。
快乐编码!
I understand what you are saying. You've got a large collection of MD5s of viruses from the clam database. But later you came to know that MD5s are not good signatures but hex signatures are good. And now you want to convert the MD5s into hex.Its not possible. You can compute the MD5 of a given string, but you cannot get back the string from a given MD5.
Happy coding!
您的“有效的十六进制签名”不是 MD5 哈希 - 它太长了。 MD5 产生 16 个字节,因此 32 个十六进制字符...您的 Eicar 示例是 80 个字符(40 个字节)。
您首先没有指定使用什么算法来得出“有效的十六进制签名”,但假设那里没有冗余,那么您根本没有足够的信息来生成它。这就像当你只知道每个演讲的第一个词时问如何编写戏剧的概要一样。
Your "valid hex signature" isn't an MD5 hash - it's too long. MD5 produces 16 bytes, so 32 hex characters... your Eicar example is 80 characters (40 bytes).
You haven't specified what algorithm is used to come up with that "valid hex signature" in the first place, but assuming there's no redundancy there, you simply don't have enough information to produce it. It's like asking how to produce the synopsis of a play when you only know the first word of each speech.
这将为您提供名称和 md5,不带“83968”或“:”
This will give you the name and the md5 without the "83968" or ":"
看起来您的 MD5 值已经以十六进制格式表示。所以你在这方面做得很好。剩下的唯一事情就是根据“:”字符分割字符串。假设这是您的格式:
83968:961ed981485cea5ab3936496966ba0d6:Worm.Gaobot-318
这是一些 C# 伪代码...
It looks like your MD5 values are already represented in a hexadecimal format. So you are good to go in that regard. The only thing left is to split the string on the ":" character. Assuming this is your format:
83968:961ed981485cea5ab3936496966ba0d6:Worm.Gaobot-318
Here is some C# psuedo code....