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

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

?? der_encode_sequence.c

?? 該壓縮包中包括 tom的加密函數(shù)庫及pdf說明 ,以及Rinick s ECC:橢圓曲線非對(duì)稱加密密鑰生成器
?? C
字號(hào):
/* LibTomCrypt, modular cryptographic library -- Tom St Denis * * LibTomCrypt is a library that provides various cryptographic * algorithms in a highly modular and flexible manner. * * The library is free for all purposes without any express * guarantee it works. * * Tom St Denis, tomstdenis@gmail.com, http://libtomcrypt.org */#include "tomcrypt.h"#include <stdarg.h>/**  @file der_encode_sequence.c  ASN.1 DER, encode a SEQUENCE, Tom St Denis*/#ifdef LTC_DER/**   Encode a SEQUENCE   @param list      The list of items to encode   @param inlen     The number of items in the list   @param out       [out] The destination    @param outlen    [in/out] The size of the output   @return CRYPT_OK on success*/int der_encode_sequence(ltc_asn1_list *list, unsigned long inlen,                        unsigned char *out,  unsigned long *outlen) {   int           err, type;   unsigned long size, x, y, z, i;   void          *data;   LTC_ARGCHK(list    != NULL);   LTC_ARGCHK(out     != NULL);   LTC_ARGCHK(outlen  != NULL);   /* get size of output that will be required */   y = 0;   for (i = 0; i < inlen; i++) {       type = list[i].type;       size = list[i].size;       data = list[i].data;       if (type == LTC_ASN1_EOL) {           break;       }       switch (type) {           case LTC_ASN1_INTEGER:               if ((err = der_length_integer(data, &x)) != CRYPT_OK) {                  goto LBL_ERR;               }               y += x;               break;           case LTC_ASN1_SHORT_INTEGER:               if ((err = der_length_short_integer(*((unsigned long*)data), &x)) != CRYPT_OK) {                  goto LBL_ERR;               }               y += x;               break;           case LTC_ASN1_BIT_STRING:               if ((err = der_length_bit_string(size, &x)) != CRYPT_OK) {                  goto LBL_ERR;               }               y += x;               break;           case LTC_ASN1_OCTET_STRING:               if ((err = der_length_octet_string(size, &x)) != CRYPT_OK) {                  goto LBL_ERR;               }               y += x;               break;           case LTC_ASN1_NULL:               y += 2;               break;           case LTC_ASN1_OBJECT_IDENTIFIER:               if ((err = der_length_object_identifier(data, size, &x)) != CRYPT_OK) {                  goto LBL_ERR;               }               y += x;               break;           case LTC_ASN1_IA5_STRING:               if ((err = der_length_ia5_string(data, size, &x)) != CRYPT_OK) {                  goto LBL_ERR;               }               y += x;               break;           case LTC_ASN1_PRINTABLE_STRING:               if ((err = der_length_printable_string(data, size, &x)) != CRYPT_OK) {                  goto LBL_ERR;               }               y += x;               break;           case LTC_ASN1_UTCTIME:               if ((err = der_length_utctime(data, &x)) != CRYPT_OK) {                  goto LBL_ERR;               }               y += x;               break;           case LTC_ASN1_SEQUENCE:               if ((err = der_length_sequence(data, size, &x)) != CRYPT_OK) {                  goto LBL_ERR;               }               y += x;               break;                     default:               err = CRYPT_INVALID_ARG;               goto LBL_ERR;       }   }   /* calc header size */   z = y;   if (y < 128) {      y += 2;   } else if (y < 256) {      /* 0x30 0x81 LL */      y += 3;   } else if (y < 65536UL) {      /* 0x30 0x82 LL LL */      y += 4;   } else if (y < 16777216UL) {      /* 0x30 0x83 LL LL LL */      y += 5;   } else {      err = CRYPT_INVALID_ARG;      goto LBL_ERR;   }   /* too big ? */   if (*outlen < y) {      err = CRYPT_BUFFER_OVERFLOW;      goto LBL_ERR;   }   /* store header */   x = 0;   out[x++] = 0x30;   if (z < 128) {      out[x++] = z;   } else if (z < 256) {      out[x++] = 0x81;      out[x++] = z;   } else if (z < 65536UL) {      out[x++] = 0x82;      out[x++] = (z>>8UL)&255;      out[x++] = z&255;   } else if (z < 16777216UL) {      out[x++] = 0x83;      out[x++] = (z>>16UL)&255;      out[x++] = (z>>8UL)&255;      out[x++] = z&255;   }   /* store data */   *outlen -= x;   for (i = 0; i < inlen; i++) {       type = list[i].type;       size = list[i].size;       data = list[i].data;       if (type == LTC_ASN1_EOL) {           break;       }       switch (type) {           case LTC_ASN1_INTEGER:               z = *outlen;               if ((err = der_encode_integer(data, out + x, &z)) != CRYPT_OK) {                  goto LBL_ERR;               }               x       += z;               *outlen -= z;               break;           case LTC_ASN1_SHORT_INTEGER:               z = *outlen;               if ((err = der_encode_short_integer(*((unsigned long*)data), out + x, &z)) != CRYPT_OK) {                  goto LBL_ERR;               }               x       += z;               *outlen -= z;               break;           case LTC_ASN1_BIT_STRING:               z = *outlen;               if ((err = der_encode_bit_string(data, size, out + x, &z)) != CRYPT_OK) {                  goto LBL_ERR;               }               x       += z;               *outlen -= z;               break;           case LTC_ASN1_OCTET_STRING:               z = *outlen;               if ((err = der_encode_octet_string(data, size, out + x, &z)) != CRYPT_OK) {                  goto LBL_ERR;               }               x       += z;               *outlen -= z;               break;           case LTC_ASN1_NULL:               out[x++] = 0x05;               out[x++] = 0x00;               *outlen -= 2;               break;           case LTC_ASN1_OBJECT_IDENTIFIER:               z = *outlen;               if ((err = der_encode_object_identifier(data, size, out + x, &z)) != CRYPT_OK) {                  goto LBL_ERR;               }               x       += z;               *outlen -= z;               break;           case LTC_ASN1_IA5_STRING:               z = *outlen;               if ((err = der_encode_ia5_string(data, size, out + x, &z)) != CRYPT_OK) {                  goto LBL_ERR;               }               x       += z;               *outlen -= z;               break;                     case LTC_ASN1_PRINTABLE_STRING:               z = *outlen;               if ((err = der_encode_printable_string(data, size, out + x, &z)) != CRYPT_OK) {                  goto LBL_ERR;               }               x       += z;               *outlen -= z;               break;           case LTC_ASN1_UTCTIME:               z = *outlen;               if ((err = der_encode_utctime(data, out + x, &z)) != CRYPT_OK) {                  goto LBL_ERR;               }               x       += z;               *outlen -= z;               break;           case LTC_ASN1_SEQUENCE:               z = *outlen;               if ((err = der_encode_sequence(data, size, out + x, &z)) != CRYPT_OK) {                  goto LBL_ERR;               }               x       += z;               *outlen -= z;               break;           default:               err = CRYPT_INVALID_ARG;               goto LBL_ERR;       }   }   *outlen = x;   err = CRYPT_OK;   LBL_ERR:   return err;}#endif

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
精品福利视频一区二区三区| 亚洲三级在线播放| 国产欧美日韩综合| 日韩高清一级片| 丰满放荡岳乱妇91ww| 在线看一区二区| 国产精品国产三级国产| 久久国产视频网| 欧美性大战久久久| 亚洲天堂av一区| 国产99精品视频| 精品久久久久一区二区国产| 午夜电影久久久| 在线国产电影不卡| 国产精品家庭影院| 国产成人在线色| 日韩免费性生活视频播放| 亚洲综合色成人| 99精品一区二区| 中文字幕一区在线观看| 国产精品1区2区| 久久久久国产精品人| 激情综合色播激情啊| 日韩精品自拍偷拍| 精品一区二区三区久久久| 日韩欧美国产一二三区| 日韩综合在线视频| 欧美一级搡bbbb搡bbbb| 日本强好片久久久久久aaa| 欧美一区二区二区| 美女一区二区三区在线观看| 日韩美女一区二区三区| 国产综合色视频| 久久香蕉国产线看观看99| 欧美性色黄大片| 日韩精品免费视频人成| 日韩精品最新网址| 粉嫩aⅴ一区二区三区四区 | 久久99精品久久久| 日韩欧美国产麻豆| 麻豆国产精品一区二区三区| 欧美mv和日韩mv的网站| 韩国av一区二区| 国产精品欧美极品| 91啪亚洲精品| 欧美aaaaaa午夜精品| 国产性天天综合网| 99精品1区2区| 日韩av在线发布| 国产午夜精品久久| 一本大道综合伊人精品热热| 亚洲一区二区三区国产| 欧美一级理论性理论a| 国产成人夜色高潮福利影视| 亚洲视频图片小说| 欧美日韩国产一级片| 久热成人在线视频| 中文字幕一区二区三区乱码在线 | 亚洲精品高清在线| 欧美一区二区三区播放老司机| 国内不卡的二区三区中文字幕 | 欧美不卡一二三| www.色精品| 偷拍亚洲欧洲综合| 久久综合给合久久狠狠狠97色69| 成人免费va视频| 天天影视色香欲综合网老头| 欧美精品一区二区三| 97精品久久久久中文字幕| 日韩中文字幕亚洲一区二区va在线 | 久久精品人人做人人爽97| av资源网一区| 男女激情视频一区| 中文字幕 久热精品 视频在线| 在线精品国精品国产尤物884a| 激情图片小说一区| 一区二区三区四区亚洲| 精品三级av在线| 在线观看91视频| 成人免费的视频| 国内精品伊人久久久久av一坑| ●精品国产综合乱码久久久久| 在线播放一区二区三区| 99久久伊人网影院| 久久 天天综合| 午夜精彩视频在线观看不卡| 国产精品私人自拍| 久久影院电视剧免费观看| 欧美日韩亚洲综合在线 | 在线看国产一区二区| 狠狠色伊人亚洲综合成人| 亚洲国产日韩a在线播放性色| 国产欧美一区二区精品性色| 欧美一区二区国产| 欧美美女视频在线观看| 99久久精品国产一区| 国产一区美女在线| 日韩精品色哟哟| 婷婷综合五月天| 亚洲一区在线免费观看| 亚洲欧美二区三区| 国产精品乱码久久久久久| 久久久欧美精品sm网站| 日韩欧美色电影| 日韩一级免费观看| 欧美体内she精高潮| 色噜噜狠狠成人中文综合| 成人av资源站| 成人精品视频一区二区三区| 国产老肥熟一区二区三区| 青青草原综合久久大伊人精品| 亚洲福利国产精品| 亚洲sss视频在线视频| 亚洲一区二区精品视频| 一区二区三区精品久久久| 亚洲一区在线看| 亚洲成人黄色影院| 亚洲国产欧美日韩另类综合| 亚洲最色的网站| 夜夜揉揉日日人人青青一国产精品| 亚洲精品综合在线| 亚洲最大的成人av| 日韩精品欧美成人高清一区二区| 午夜成人免费电影| 精品一区二区三区蜜桃| 国产成人在线影院| 不卡av在线免费观看| 91亚洲永久精品| 欧美日韩成人综合| 日韩久久免费av| 免费一级欧美片在线观看| 蜜臀久久久久久久| 丰满放荡岳乱妇91ww| 日本精品一区二区三区高清| 欧美午夜寂寞影院| 欧美成人欧美edvon| 国产欧美日韩亚州综合| 国产精品久久久久桃色tv| 亚洲欧美乱综合| 日本va欧美va瓶| 国产成人高清视频| 欧美主播一区二区三区| 日韩欧美激情在线| 亚洲视频免费看| 蜜桃av一区二区在线观看| caoporen国产精品视频| 欧美亚一区二区| 久久色在线观看| 亚洲综合视频在线| 久久99热国产| 色哟哟亚洲精品| 精品国产一区二区精华| 亚洲欧洲日产国码二区| 热久久国产精品| av在线一区二区三区| 在线播放国产精品二区一二区四区| 久久久噜噜噜久噜久久综合| 亚洲一区成人在线| 国产精品91一区二区| 欧美美女网站色| 成人免费在线视频| 蜜桃视频一区二区| 在线中文字幕不卡| 久久精品一区八戒影视| 午夜影院久久久| 91色九色蝌蚪| 欧美激情一区不卡| 免费成人美女在线观看| 欧美亚洲日本国产| 国产精品久久国产精麻豆99网站| 美女在线一区二区| 欧美撒尿777hd撒尿| 国产欧美日韩不卡免费| 久久精品999| 欧美电影一区二区| 亚洲精品欧美专区| 亚洲综合视频在线| 99免费精品视频| 久久欧美中文字幕| 久久国产乱子精品免费女| 欧美日韩国产高清一区二区| 亚洲精品中文字幕乱码三区| 成人aa视频在线观看| 亚洲国产精品v| 国产成人亚洲精品青草天美| 欧美一级高清片在线观看| 午夜视频久久久久久| 一本色道久久综合精品竹菊| 国产亚洲精品资源在线26u| 欧美性生活影院| 成人黄动漫网站免费app| 国产亚洲精品资源在线26u| 成人国产精品免费网站| 日韩伦理av电影| 91精品国产综合久久久久久| 九九九久久久精品| 中文字幕亚洲欧美在线不卡| 97精品国产97久久久久久久久久久久| 国产精品久久久久久久久晋中 | 国产成人av电影免费在线观看|