#include #include "rsa-data.h" void rsadestable(void *table, const void *key) { int i; int j; int v; for (i=0;i<128;i++) ((unsigned char *)table)[i] = 0; for (i=0;i<64;i++) { if (((const unsigned char *)key)[i>>3]&(1<<(i&7))) { for (j=libdes__rsadkbits[i][0];j>0;j--) { v = libdes__rsadkbits[i][j]; ((unsigned char *)table)[v>>3] ^= 1 << (v & 7); } } } } void rsades3table(void *table, const void *key) { int i; int j; int v; for (i=0;i<384;i++) ((unsigned char *)table)[i] = 0; for (i=0;i<192;i++) { if (((const unsigned char *)key)[i>>3]&(1<<(i&7))) { for (j=libdes__rsad3kbits[i][0];j>0;j--) { v = libdes__rsad3kbits[i][j]; ((unsigned char *)table)[v>>3] ^= 1 << (v & 7); } } } }