⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 des_bs_b.c

📁 著名的解Unix密码的源程序
💻 C
字号:
/* * This file is part of John the Ripper password cracker, * Copyright (c) 1996-98 by Solar Designer *//* * Bitslice DES encryption. */#include "arch.h"#include "DES_bs.h"/* Include the S-boxes here, so that the compiler can inline them */#include "DES_bs_s.c"#define b				DES_bs_all.B#define e				DES_bs_all.Evoid DES_bs_body(){	ARCH_WORD **k = DES_bs_all.Kp;	int count = 8;	do {		s1(*e[0] ^ *k[0], *e[1] ^ *k[1], *e[2] ^ *k[2],			*e[3] ^ *k[3], *e[4] ^ *k[4], *e[5] ^ *k[5],			&b[40], &b[48], &b[54], &b[62]);		s2(*e[6] ^ *k[6], *e[7] ^ *k[7], *e[8] ^ *k[8],			*e[9] ^ *k[9], *e[10] ^ *k[10], *e[11] ^ *k[11],			&b[44], &b[59], &b[33], &b[49]);		s3(*e[12] ^ *k[12], *e[13] ^ *k[13], *e[14] ^ *k[14],			*e[15] ^ *k[15], *e[16] ^ *k[16], *e[17] ^ *k[17],			&b[55], &b[47], &b[61], &b[37]);		s4(*e[18] ^ *k[18], *e[19] ^ *k[19], *e[20] ^ *k[20],			*e[21] ^ *k[21], *e[22] ^ *k[22], *e[23] ^ *k[23],			&b[57], &b[51], &b[41], &b[32]);		s5(*e[24] ^ *k[24], *e[25] ^ *k[25], *e[26] ^ *k[26],			*e[27] ^ *k[27], *e[28] ^ *k[28], *e[29] ^ *k[29],			&b[39], &b[45], &b[56], &b[34]);		s6(*e[30] ^ *k[30], *e[31] ^ *k[31], *e[32] ^ *k[32],			*e[33] ^ *k[33], *e[34] ^ *k[34], *e[35] ^ *k[35],			&b[35], &b[60], &b[42], &b[50]);		s7(*e[36] ^ *k[36], *e[37] ^ *k[37], *e[38] ^ *k[38],			*e[39] ^ *k[39], *e[40] ^ *k[40], *e[41] ^ *k[41],			&b[63], &b[43], &b[53], &b[38]);		s8(*e[42] ^ *k[42], *e[43] ^ *k[43], *e[44] ^ *k[44],			*e[45] ^ *k[45], *e[46] ^ *k[46], *e[47] ^ *k[47],			&b[36], &b[58], &b[46], &b[52]);		s1(*e[48] ^ *k[48], *e[49] ^ *k[49], *e[50] ^ *k[50],			*e[51] ^ *k[51], *e[52] ^ *k[52], *e[53] ^ *k[53],			&b[8], &b[16], &b[22], &b[30]);		s2(*e[54] ^ *k[54], *e[55] ^ *k[55], *e[56] ^ *k[56],			*e[57] ^ *k[57], *e[58] ^ *k[58], *e[59] ^ *k[59],			&b[12], &b[27], &b[1], &b[17]);		s3(*e[60] ^ *k[60], *e[61] ^ *k[61], *e[62] ^ *k[62],			*e[63] ^ *k[63], *e[64] ^ *k[64], *e[65] ^ *k[65],			&b[23], &b[15], &b[29], &b[5]);		s4(*e[66] ^ *k[66], *e[67] ^ *k[67], *e[68] ^ *k[68],			*e[69] ^ *k[69], *e[70] ^ *k[70], *e[71] ^ *k[71],			&b[25], &b[19], &b[9], &b[0]);		s5(*e[72] ^ *k[72], *e[73] ^ *k[73], *e[74] ^ *k[74],			*e[75] ^ *k[75], *e[76] ^ *k[76], *e[77] ^ *k[77],			&b[7], &b[13], &b[24], &b[2]);		s6(*e[78] ^ *k[78], *e[79] ^ *k[79], *e[80] ^ *k[80],			*e[81] ^ *k[81], *e[82] ^ *k[82], *e[83] ^ *k[83],			&b[3], &b[28], &b[10], &b[18]);		s7(*e[84] ^ *k[84], *e[85] ^ *k[85], *e[86] ^ *k[86],			*e[87] ^ *k[87], *e[88] ^ *k[88], *e[89] ^ *k[89],			&b[31], &b[11], &b[21], &b[6]);		s8(*e[90] ^ *k[90], *e[91] ^ *k[91], *e[92] ^ *k[92],			*e[93] ^ *k[93], *e[94] ^ *k[94], *e[95] ^ *k[95],			&b[4], &b[26], &b[14], &b[20]);		k += 96;	} while (--count);}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -