如何为openssl的MD4准备输入消息?

时间:2013-07-13 18:27:53

标签: c openssl

你知道当你为openssl运行MD4速度时,它适用于不同大小的输入消息:16,64,256,1024,8192。我想在我的内容中执行相同操作代码直接调用MD4函数,但我真的不知道如何准备一个给定大小的消息。可以说,我想为512或1024输入计算MD4。我该如何准备这个输入?

我有一些代码:

int main()
{
    unsigned char digest[MD4_DIGEST_LENGTH];
    char string[] = "hello";

    MD4((unsigned char*)string, strlen(string), (unsigned char*)digest);

    for(int i = 0; i < MD4_DIGEST_LENGTH; i++)
        printf("%02x", digest[i]);
    printf("\n");

    return 0;
}

我是对的,在我的示例中,MD4的输入大小是6 (string length) * 8 (char size) = 48大小?如果是这样,我如何准备一条消息,我将在MD enter code here 4中将其用作输入?

我有一些想法:

  1. 我想向MD4提供512 size的输入消息。我应该这样做准备:

    char txt [64];     for(int i = 0; i&lt; 512/8; i ++)     {         txt [i] =(char)i;     }

  2. 然后像这样运行MD4

    `MD4`((unsigned char*)string, strlen(text), (unsigned char*)digest);
    
    1. 我想给md4一个1024大小的输入消息。我应该这样做准备:

      char txt [128];         for(int i = 0; i&lt; 1024/8; i ++)         {             txt [i] =(char)i;         }

    2. 然后像这样运行MD4

      MD4((unsigned char*)string, strlen(text), (unsigned char*)digest);
      

0 个答案:

没有答案