亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? des.h

?? DES encryption algorithm
?? H
字號(hào):
#ifndef CRYPT_H_
#define CRYPT_H_
#include <assert.h>
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <time.h>
#include <ctype.h>
#include <limits.h>

#ifdef __cplusplus
extern "C" {
#endif

/* version */
#define CRYPT   0x0096
#define SCRYPT  "0.96"

/* error codes [will be expanded in future releases] */
enum {
   CRYPT_OK=0,             /* Result OK */
   
   CRYPT_INVALID_KEYSIZE,  /* Invalid key size given */
   CRYPT_INVALID_ROUNDS,   /* Invalid number of rounds */
   CRYPT_FAIL_TESTVECTOR,  /* Algorithm failed test vectors */
  
};
#define DES
/* Use small code where possible */
#define SMALL_CODE

/* Enable self-test test vector checking */
#define LTC_TEST

/* type of argument checking, 0=default, 1=fatal and 2=none */
#define ARGTYPE  0
/* ch1-01-1 */

/* Controls endianess and size of registers.  Leave uncommented to get platform neutral [slower] code */
/* detect x86-32 machines somewhat */
#if defined(INTEL_CC) || (defined(_MSC_VER) && defined(WIN32)) || (defined(__GNUC__) && (defined(__DJGPP__) || defined(__CYGWIN__) || defined(__MINGW32__) || defined(__i386__)))
   #define ENDIAN_LITTLE
   #define ENDIAN_32BITWORD
#endif

/* detects MIPS R5900 processors (PS2) */
#if (defined(__R5900) || defined(R5900) || defined(__R5900__)) && (defined(_mips) || defined(__mips__) || defined(mips))
   #define ENDIAN_LITTLE
   #define ENDIAN_64BITWORD
#endif

/* #define ENDIAN_LITTLE */
/* #define ENDIAN_BIG */

/* #define ENDIAN_32BITWORD */
/* #define ENDIAN_64BITWORD */

#if (defined(ENDIAN_BIG) || defined(ENDIAN_LITTLE)) && !(defined(ENDIAN_32BITWORD) || defined(ENDIAN_64BITWORD))
    #error You must specify a word size as well as endianess 
#endif

#if !(defined(ENDIAN_BIG) || defined(ENDIAN_LITTLE))
   #define ENDIAN_NEUTRAL
#endif

/* fix for MSVC ...evil! */
#ifdef _MSC_VER
   #define CONST64(n) n ## ui64
   typedef unsigned __int64 ulong64;
#else
   #define CONST64(n) n ## ULL
   typedef unsigned long long ulong64;
#endif

/* this is the "32-bit at least" data type 
 * Re-define it to suit your platform but it must be at least 32-bits 
 */
typedef unsigned long ulong32;

/* ---- HELPER MACROS ---- */
#ifdef ENDIAN_NEUTRAL

#define STORE32L(x, y)                                                                     \
     { (y)[3] = (unsigned char)(((x)>>24)&255); (y)[2] = (unsigned char)(((x)>>16)&255);   \
       (y)[1] = (unsigned char)(((x)>>8)&255); (y)[0] = (unsigned char)((x)&255); }

#define LOAD32L(x, y)                            \
     { x = ((unsigned long)((y)[3] & 255)<<24) | \
           ((unsigned long)((y)[2] & 255)<<16) | \
           ((unsigned long)((y)[1] & 255)<<8)  | \
           ((unsigned long)((y)[0] & 255)); }


#define STORE32H(x, y)                                                                     \
     { (y)[0] = (unsigned char)(((x)>>24)&255); (y)[1] = (unsigned char)(((x)>>16)&255);   \
       (y)[2] = (unsigned char)(((x)>>8)&255); (y)[3] = (unsigned char)((x)&255); }

#define LOAD32H(x, y)                            \
     { x = ((unsigned long)((y)[0] & 255)<<24) | \
           ((unsigned long)((y)[1] & 255)<<16) | \
           ((unsigned long)((y)[2] & 255)<<8)  | \
           ((unsigned long)((y)[3] & 255)); }


#endif /* ENDIAN_NEUTRAL */

#ifdef ENDIAN_LITTLE

#define STORE32H(x, y)                                                                     \
     { (y)[0] = (unsigned char)(((x)>>24)&255); (y)[1] = (unsigned char)(((x)>>16)&255);   \
       (y)[2] = (unsigned char)(((x)>>8)&255); (y)[3] = (unsigned char)((x)&255); }

#define LOAD32H(x, y)                            \
     { x = ((unsigned long)((y)[0] & 255)<<24) | \
           ((unsigned long)((y)[1] & 255)<<16) | \
           ((unsigned long)((y)[2] & 255)<<8)  | \
           ((unsigned long)((y)[3] & 255)); }


#ifdef ENDIAN_32BITWORD 

#define STORE32L(x, y)        \
     { unsigned long __t = (x); memcpy(y, &__t, 4); }

#define LOAD32L(x, y)         \
     memcpy(&(x), y, 4);

#else /* 64-bit words then  */

#define STORE32L(x, y)        \
     { unsigned long __t = (x); memcpy(y, &__t, 4); }

#define LOAD32L(x, y)         \
     { memcpy(&(x), y, 4); x &= 0xFFFFFFFF; }

#endif /* ENDIAN_64BITWORD */

#endif /* ENDIAN_LITTLE */

#ifdef ENDIAN_BIG
#define STORE32L(x, y)                                                                     \
     { (y)[0] = (unsigned char)(((x)>>24)&255); (y)[1] = (unsigned char)(((x)>>16)&255);   \
       (y)[2] = (unsigned char)(((x)>>8)&255); (y)[3] = (unsigned char)((x)&255); }

#define LOAD32L(x, y)                            \
     { x = ((unsigned long)((y)[0] & 255)<<24) | \
           ((unsigned long)((y)[1] & 255)<<16) | \
           ((unsigned long)((y)[2] & 255)<<8)  | \
           ((unsigned long)((y)[3] & 255)); }

#ifdef ENDIAN_32BITWORD 

#define STORE32H(x, y)        \
     { unsigned long __t = (x); memcpy(y, &__t, 4); }

#define LOAD32H(x, y)         \
     memcpy(&(x), y, 4);

#else /* 64-bit words then  */

#define STORE32H(x, y)        \
     { unsigned long __t = (x); memcpy(y, &__t, 4); }

#define LOAD32H(x, y)         \
     { memcpy(&(x), y, 4); x &= 0xFFFFFFFF; }

#endif /* ENDIAN_64BITWORD */
#endif /* ENDIAN_BIG */

#define BSWAP(x)  ( ((x>>24)&0x000000FFUL) | ((x<<24)&0xFF000000UL)  | \
                    ((x>>8)&0x0000FF00UL)  | ((x<<8)&0x00FF0000UL) )

#ifdef _MSC_VER

#pragma intrinsic(_lrotr,_lrotl)
#define ROR(x,n) _lrotr(x,n)
#define ROL(x,n) _lrotl(x,n)

#elif defined(__GNUC__) && defined(__i386__) && !defined(INTEL_CC)

static inline unsigned long ROL(unsigned long word, int i)
{
   __asm__("roll %%cl,%0"
      :"=r" (word)
      :"0" (word),"c" (i));
   return word;
}

static inline unsigned long ROR(unsigned long word, int i)
{
   __asm__("rorl %%cl,%0"
      :"=r" (word)
      :"0" (word),"c" (i));
   return word;
}

#else
/* rotates the hard way */
#define ROL(x, y) ( (((unsigned long)(x)<<(unsigned long)((y)&31)) | (((unsigned long)(x)&0xFFFFFFFFUL)>>(unsigned long)(32-((y)&31)))) & 0xFFFFFFFFUL)
#define ROR(x, y) ( ((((unsigned long)(x)&0xFFFFFFFFUL)>>(unsigned long)((y)&31)) | ((unsigned long)(x)<<(unsigned long)(32-((y)&31)))) & 0xFFFFFFFFUL)

#endif

/* extract a byte portably */
#ifdef _MSC_VER
   #define byte(x, n) ((unsigned char)((x) >> (8 * (n))))
#else
   #define byte(x, n) (((x) >> (8 * (n))) & 255)
#endif   

typedef struct des_key {
    ulong32 ek[32], dk[32];
}symmetric_key;

extern int des_setup(const unsigned char *key, int keylen, int num_rounds, symmetric_key *skey);
extern void des_ecb_encrypt(const unsigned char *pt, unsigned char *ct, symmetric_key *key);
extern void des_ecb_decrypt(const unsigned char *ct, unsigned char *pt, symmetric_key *key);
extern int des_test(void);
extern int des_keysize(int *desired_keysize);


#if ARGTYPE == 0
#include <signal.h>

/* this is the default LibTomCrypt macro  */
extern void crypt_argchk(char *v, char *s, int d);
#define _ARGCHK(x) if (!(x)) { crypt_argchk(#x, __FILE__, __LINE__); }

#elif ARGTYPE == 1

/* fatal type of error */
#define _ARGCHK(x) assert((x))

#elif ARGTYPE == 2

#define _ARGCHK(x) 

#endif
void zeromem(void *dst, size_t len);
void burn_stack(unsigned long len);

#ifdef __cplusplus
   }
#endif

#endif /* CRYPT_H_ */

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲色图丝袜美腿| 日韩经典一区二区| 悠悠色在线精品| 亚洲免费av高清| 水野朝阳av一区二区三区| 亚洲免费大片在线观看| 图片区日韩欧美亚洲| 麻豆91精品91久久久的内涵| 国内欧美视频一区二区| 国产成人精品aa毛片| 日本韩国精品在线| 欧美一区二区视频观看视频| 久久综合九色综合97_久久久| 精品久久久久99| 亚洲欧美日韩国产手机在线| 天堂成人国产精品一区| 国产ts人妖一区二区| 91久久精品日日躁夜夜躁欧美| 在线观看91精品国产麻豆| 精品国产91乱码一区二区三区| 国产精品久久久久久久第一福利| 亚洲资源在线观看| 九九国产精品视频| 色哟哟一区二区三区| 久久综合久久鬼色| 亚洲午夜私人影院| 高清日韩电视剧大全免费| 欧美羞羞免费网站| 亚洲欧洲国产日本综合| 丝瓜av网站精品一区二区| 色av成人天堂桃色av| 久久女同性恋中文字幕| www国产亚洲精品久久麻豆| 伊人色综合久久天天人手人婷| 久久精品av麻豆的观看方式| 欧美主播一区二区三区| 最新中文字幕一区二区三区| 精品一区二区av| 日韩欧美一二区| 爽爽淫人综合网网站| 欧美偷拍一区二区| 亚洲综合一二区| av在线播放成人| 国产精品国产自产拍高清av王其 | 精品视频色一区| 亚洲图片你懂的| 99久久精品免费| 国产精品人成在线观看免费| 国产一区二区成人久久免费影院| 在线视频你懂得一区二区三区| 亚洲色图自拍偷拍美腿丝袜制服诱惑麻豆 | 日韩欧美成人午夜| 日本一不卡视频| 日韩欧美国产三级| 看片网站欧美日韩| 欧美国产精品v| 91久久精品一区二区三| 日韩av午夜在线观看| 精品久久久久久久一区二区蜜臀| 久久国产精品一区二区| 欧美mv日韩mv亚洲| 成人一级片网址| 日韩理论片中文av| 欧美一级精品在线| 高清不卡一二三区| 一区二区高清在线| 欧美一区二区黄色| av一区二区不卡| 日日夜夜精品免费视频| 国产午夜精品福利| 欧美自拍丝袜亚洲| 国产精品综合久久| 久久99精品国产麻豆不卡| 欧美国产1区2区| 777xxx欧美| 99re8在线精品视频免费播放| 奇米888四色在线精品| 久久综合久久综合亚洲| 91视频在线看| 国精产品一区一区三区mba视频| 亚洲精品高清视频在线观看| 日韩免费福利电影在线观看| 日本韩国精品一区二区在线观看| 黑人精品欧美一区二区蜜桃| 亚洲成人福利片| 国产精品久久99| 久久久亚洲欧洲日产国码αv| 欧美三片在线视频观看| av电影在线观看不卡| 久久综合九色综合欧美亚洲| 国产在线观看一区二区| 日韩成人一级片| 亚洲一区二区成人在线观看| 欧美国产在线观看| 久久网这里都是精品| 日韩欧美国产1| 欧美成人一区二区| 日韩欧美一区中文| 日韩欧美aaaaaa| 日韩午夜在线影院| 日韩午夜激情视频| 26uuu精品一区二区三区四区在线| 欧美日韩一区二区三区视频| 欧美午夜不卡在线观看免费| 91成人在线观看喷潮| 在线观看91精品国产入口| 欧美亚洲一区二区在线| 337p亚洲精品色噜噜噜| 日韩一区二区在线观看视频| 欧美电影免费观看高清完整版在线观看| 在线成人av影院| 久久综合九色综合97_久久久| 国产亚洲欧美色| 国产精品成人免费精品自在线观看| 久久九九久久九九| 国产精品久久久久久户外露出 | 久久精品久久综合| 国产成人三级在线观看| 日本道色综合久久| 欧美日韩免费不卡视频一区二区三区| 欧美一级片在线看| 中文字幕第一区二区| 一区二区三区四区在线| 免费一区二区视频| 成人av网站在线观看| 91精品视频网| **网站欧美大片在线观看| 日韩激情av在线| 成人自拍视频在线| 3d成人h动漫网站入口| 亚洲欧洲av一区二区三区久久| 日韩精品色哟哟| 99在线视频精品| 久久久精品天堂| 免费欧美在线视频| 91小视频在线| 国产日产精品1区| 麻豆免费看一区二区三区| 欧美在线|欧美| 国产精品黄色在线观看| 国产精品18久久久久久久久久久久| 日本二三区不卡| 亚洲人成精品久久久久久| 精品亚洲aⅴ乱码一区二区三区| 91国模大尺度私拍在线视频| 国产精品你懂的在线欣赏| 久久超级碰视频| 亚洲日本丝袜连裤袜办公室| 韩国精品主播一区二区在线观看 | 91成人免费在线视频| 国产精品青草综合久久久久99| 美女诱惑一区二区| 日韩一区二区三区三四区视频在线观看 | 国产日韩精品一区二区三区在线| 亚洲精品视频在线观看网站| 成人av综合在线| 国产精品国产三级国产专播品爱网| 国产黄色成人av| 中文字幕av不卡| 成人av网址在线| 亚洲一区二区三区视频在线播放| 一本色道久久综合精品竹菊| 国产精品卡一卡二卡三| 成人高清免费观看| 亚洲免费毛片网站| 在线视频你懂得一区| 视频一区在线视频| 久久影院视频免费| 成人福利在线看| 一区二区久久久久| 制服丝袜亚洲精品中文字幕| 国产一区亚洲一区| 亚洲日本在线天堂| 欧美日韩1234| 成人精品电影在线观看| 亚洲一二三区在线观看| 日韩一卡二卡三卡| 一本高清dvd不卡在线观看| 亚洲高清一区二区三区| 久久久亚洲高清| 色成人在线视频| 九九九久久久精品| 亚洲午夜私人影院| 国产精品欧美久久久久无广告| 欧美日本一区二区三区四区| 国产精品99久久久久久似苏梦涵 | 亚洲色图制服丝袜| 精品裸体舞一区二区三区| av成人老司机| 国产麻豆91精品| 日韩成人精品在线| 亚洲精品国产a| 国产精品久久久久桃色tv| 337p粉嫩大胆噜噜噜噜噜91av| 欧美在线播放高清精品| 99久久99久久综合| 懂色一区二区三区免费观看| 麻豆久久久久久久| 亚洲国产一区二区a毛片| 国产精品天干天干在观线|