Tag: libgcrypt

从gcry_cipher_decrypt确定解密数据的大小?

我正在使用AES / GCM,但以下是其他模式的一般问题,如AES / CBC。 我对libgcrypt进行了以下调用: #define COUNTOF(x) ( sizeof(x) / sizeof(x[0]) ) #define ROUNDUP(x, b) ( (x) ? (((x) + (b – 1)) / b) * b : b) const byte cipher[] = { 0xD0,0x6D,0x69,0x0F … }; byte recovered[ ROUNDUP(COUNTOF(cipher), 16) ]; … err = gcry_cipher_decrypt( handle, // gcry_cipher_hd_t recovered, // void * COUNTOF(recovered), […]

C Libgcrypt:无法使用libgcrypt检查数字是否为素数

我正在使用libgcrypt函数gcry_prime_check来测试数字3是否为素数。 事实certificate,根据我的function,3不是素数。 我究竟做错了什么? 这是我的代码 #include #include int main(void) { gcry_mpi_t cript_prime; gcry_error_t err; char buffer[8] = {0}; char number[8] = {0}; printf(“%s\n”, gcry_check_version ( NULL ) ); gcry_control( GCRYCTL_INIT_SECMEM, 16384, 0 ); cript_prime = gcry_mpi_new(16); strcpy(number,”3″); gcry_mpi_scan(&cript_prime,GCRYMPI_FMT_USG,number,sizeof(number),NULL); gcry_mpi_print(GCRYMPI_FMT_USG,buffer,sizeof(buffer),NULL,cript_prime); printf(“The number tested is: %s\n”,buffer); err = gcry_prime_check(cript_prime,4); if(err) { printf(“%s\n”,gcry_strerror(err)); } gcry_mpi_release(cript_prime); return 0; } 这是输出 […]