Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
des.h File Reference
DES block cipher. More...
Go to the source code of this file.
Data Structures | |
| struct | des_context |
| DES context structure. More... | |
| struct | des3_context |
| Triple-DES context structure. More... | |
Functions | |
| void | des_key_set_parity (unsigned char key[DES_KEY_SIZE]) |
| Set key parity on the given key to odd. | |
| int | des_key_check_key_parity (const unsigned char key[DES_KEY_SIZE]) |
| Check that key parity on the given key is odd. | |
| int | des_key_check_weak (const unsigned char key[DES_KEY_SIZE]) |
| Check that key is not a weak or semi-weak DES key. | |
| int | des_setkey_enc (des_context *ctx, const unsigned char key[DES_KEY_SIZE]) |
| DES key schedule (56-bit, encryption) | |
| int | des_setkey_dec (des_context *ctx, const unsigned char key[DES_KEY_SIZE]) |
| DES key schedule (56-bit, decryption) | |
| int | des3_set2key_enc (des3_context *ctx, const unsigned char key[DES_KEY_SIZE *2]) |
| Triple-DES key schedule (112-bit, encryption) | |
| int | des3_set2key_dec (des3_context *ctx, const unsigned char key[DES_KEY_SIZE *2]) |
| Triple-DES key schedule (112-bit, decryption) | |
| int | des3_set3key_enc (des3_context *ctx, const unsigned char key[DES_KEY_SIZE *3]) |
| Triple-DES key schedule (168-bit, encryption) | |
| int | des3_set3key_dec (des3_context *ctx, const unsigned char key[DES_KEY_SIZE *3]) |
| Triple-DES key schedule (168-bit, decryption) | |
| int | des_crypt_ecb (des_context *ctx, const unsigned char input[8], unsigned char output[8]) |
| DES-ECB block encryption/decryption. | |
| int | des_crypt_cbc (des_context *ctx, int mode, size_t length, unsigned char iv[8], const unsigned char *input, unsigned char *output) |
| DES-CBC buffer encryption/decryption. | |
| int | des3_crypt_ecb (des3_context *ctx, const unsigned char input[8], unsigned char output[8]) |
| 3DES-ECB block encryption/decryption | |
| int | des3_crypt_cbc (des3_context *ctx, int mode, size_t length, unsigned char iv[8], const unsigned char *input, unsigned char *output) |
| 3DES-CBC buffer encryption/decryption | |
| int | des_self_test (int verbose) |
| Checkup routine. | |
Detailed Description
DES block cipher.
Copyright (C) 2006-2014, Brainspark B.V.
This file is part of PolarSSL (http://www.polarssl.org) Lead Maintainer: Paul Bakker <polarssl_maintainer at polarssl.org>
All rights reserved.
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.
Definition in file des.h.
Function Documentation
| int des3_crypt_cbc | ( | des3_context * | ctx, |
| int | mode, | ||
| size_t | length, | ||
| unsigned char | iv[8], | ||
| const unsigned char * | input, | ||
| unsigned char * | output | ||
| ) |
3DES-CBC buffer encryption/decryption
- Parameters:
-
ctx 3DES context mode DES_ENCRYPT or DES_DECRYPT length length of the input data iv initialization vector (updated after use) input buffer holding the input data output buffer holding the output data
- Returns:
- 0 if successful, or POLARSSL_ERR_DES_INVALID_INPUT_LENGTH
| int des3_crypt_ecb | ( | des3_context * | ctx, |
| const unsigned char | input[8], | ||
| unsigned char | output[8] | ||
| ) |
| int des3_set2key_dec | ( | des3_context * | ctx, |
| const unsigned char | key[DES_KEY_SIZE *2] | ||
| ) |
| int des3_set2key_enc | ( | des3_context * | ctx, |
| const unsigned char | key[DES_KEY_SIZE *2] | ||
| ) |
| int des3_set3key_dec | ( | des3_context * | ctx, |
| const unsigned char | key[DES_KEY_SIZE *3] | ||
| ) |
| int des3_set3key_enc | ( | des3_context * | ctx, |
| const unsigned char | key[DES_KEY_SIZE *3] | ||
| ) |
| int des_crypt_cbc | ( | des_context * | ctx, |
| int | mode, | ||
| size_t | length, | ||
| unsigned char | iv[8], | ||
| const unsigned char * | input, | ||
| unsigned char * | output | ||
| ) |
| int des_crypt_ecb | ( | des_context * | ctx, |
| const unsigned char | input[8], | ||
| unsigned char | output[8] | ||
| ) |
| int des_key_check_key_parity | ( | const unsigned char | key[DES_KEY_SIZE] ) |
| int des_key_check_weak | ( | const unsigned char | key[DES_KEY_SIZE] ) |
| void des_key_set_parity | ( | unsigned char | key[DES_KEY_SIZE] ) |
| int des_self_test | ( | int | verbose ) |
| int des_setkey_dec | ( | des_context * | ctx, |
| const unsigned char | key[DES_KEY_SIZE] | ||
| ) |
| int des_setkey_enc | ( | des_context * | ctx, |
| const unsigned char | key[DES_KEY_SIZE] | ||
| ) |
Generated on Tue Jul 12 2022 19:40:22 by
1.7.2