Поточный шифр
Материал из Википедии — свободной энциклопедии
Поточный шифр - это симметричный шифр, в котором данные шифруются посимвольно (в отличие от блочного, который работает с некоторым набором символов).
Эту статью следует викифицировать. Пожалуйста, оформите её согласно общим правилам и указаниям. |
[править] Пример кода
int main (int argc, char *argv[]) { char seed[256]; char data[512]; char buf[buf_size]; char digit[5]; int hex, rd, i, n; rc4_key key; clrscr(); if (argc < 2) { fprint(stderr, "%s key out\n", argv[0]; exit(1); } strcopy(data,argv[1]); n = strlen(data); if (n&1) { strcat(data,"0"); n++ } n/=2; strcpy(digit, "AA"); digit[4] = '\x0'; for (i = 0; i < n; i++) { digit[2] = data[i*2]; digit[3] = data [i*2+1]; sscanf(digit, "%x",&hex); seed[i] = hex; } prepare_key(seed, n, &key); rd = fread(buf, 1, buf_size, stdin); while (rd >0) { rc4(buf, rd, &key); fwrite(buf, 1, rd, stduot); rd = fread(buf, 1, buf_size, stdin); } } |