ctr_setiv.c

来自「该压缩包中包括 tom的加密函数库及pdf说明 ,以及Rinick s ECC:」· C语言 代码 · 共 59 行

C
59
字号
/* 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"/**  @file ctr_setiv.c  CTR implementation, set IV, Tom St Denis*/  #ifdef CTR/**   Set an initial vector   @param IV   The initial vector   @param len  The length of the vector (in octets)   @param ctr  The CTR state   @return CRYPT_OK if successful*/int ctr_setiv(const unsigned char *IV, unsigned long len, symmetric_CTR *ctr){   int err;      LTC_ARGCHK(IV  != NULL);   LTC_ARGCHK(ctr != NULL);   /* bad param? */   if ((err = cipher_is_valid(ctr->cipher)) != CRYPT_OK) {      return err;   }      if (len != (unsigned long)ctr->blocklen) {      return CRYPT_INVALID_ARG;   }   /* set IV */   XMEMCPY(ctr->ctr, IV, len);      /* force next block */   ctr->padlen = 0;   cipher_descriptor[ctr->cipher].ecb_encrypt(IV, ctr->pad, &ctr->key);      return CRYPT_OK;}#endif /* $Source: /cvs/libtom/libtomcrypt/src/modes/ctr/ctr_setiv.c,v $ *//* $Revision: 1.3 $ *//* $Date: 2005/05/05 14:35:59 $ */

⌨️ 快捷键说明

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