Webserver+3d print

Dependents:   Nucleo

Embed: (wiki syntax)

« Back to documentation index

cipher_mode_cbc.c File Reference

cipher_mode_cbc.c File Reference

Cipher Block Chaining (CBC) mode. More...

Go to the source code of this file.

Functions

error_t cbcEncrypt (const CipherAlgo *cipher, void *context, uint8_t *iv, const uint8_t *p, uint8_t *c, size_t length)
 CBC encryption.
error_t cbcDecrypt (const CipherAlgo *cipher, void *context, uint8_t *iv, const uint8_t *c, uint8_t *p, size_t length)
 CBC decryption.

Detailed Description

Cipher Block Chaining (CBC) mode.

License

Copyright (C) 2010-2017 Oryx Embedded SARL. All rights reserved.

This file is part of CycloneCrypto Open.

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.

Description

The Cipher Block Chaining (CBC) mode is a confidentiality mode whose encryption process features the combining of the plaintext blocks with the previous ciphertext blocks. The CBC mode requires an IV to combine with the first plaintext block. Refer to SP 800-38A for more details

Author:
Oryx Embedded SARL (www.oryx-embedded.com)
Version:
1.7.6

Definition in file cipher_mode_cbc.c.


Function Documentation

error_t cbcDecrypt ( const CipherAlgo cipher,
void *  context,
uint8_t *  iv,
const uint8_t *  c,
uint8_t *  p,
size_t  length 
)

CBC decryption.

Parameters:
[in]cipherCipher algorithm
[in]contextCipher algorithm context
[in,out]ivInitialization vector
[in]cCiphertext to be decrypted
[out]pPlaintext resulting from the decryption
[in]lengthTotal number of data bytes to be decrypted
Returns:
Error code

Definition at line 105 of file cipher_mode_cbc.c.

error_t cbcEncrypt ( const CipherAlgo cipher,
void *  context,
uint8_t *  iv,
const uint8_t *  p,
uint8_t *  c,
size_t  length 
)

CBC encryption.

Parameters:
[in]cipherCipher algorithm
[in]contextCipher algorithm context
[in,out]ivInitialization vector
[in]pPlaintext to be encrypted
[out]cCiphertext resulting from the encryption
[in]lengthTotal number of data bytes to be encrypted
Returns:
Error code

Definition at line 60 of file cipher_mode_cbc.c.