我正在試圖分析一個短的加密程序,並找出它使用的是哪種機制。什麼樣的密碼機制使用重複的異或?
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char * argv[]) {
long int key;
char * endptr;
key = strtol(argv[1], &endptr, 10);
srandom(key);
{ /* now copy input to output through crypt transformation */
char ch;
while (!feof(stdin)) {
putc((getc(stdin)^random())&0xFF, stdout);
}
fclose(stdout);
}
}
我可以簡單地遵循這一點,但我有麻煩試圖剷除它使用何種機制..
我看以下內容:
http://en.wikipedia.org/wiki/Public-key_cryptography
http://en.wikipedia.org/wiki/Block_cipher
http://en.wikipedia.org/wiki/Stream_cipher
http://en.wikipedia.org/wiki/Diffie-Hellman
我傾向於迭代塊cyphers,但我真的不知道在這一點上。
以上都不是。您將無法在一行代碼中實現這些功能。想想更簡單。 – EJP 2011-03-31 00:42:32
@EJP其實,這是一個非常簡單的流密碼。 – 2011-04-04 23:50:50