ahrsaenc.h revision 7c478bd95313f5f23a4c958a745db2134aa03244
/*
* Copyright 1999-2002 Sun Microsystems, Inc. All rights reserved.
* Use is subject to license terms.
*/
#pragma ident "%Z%%M% %I% %E% SMI"
/* Copyright (C) RSA Data Security, Inc. created 1990, 1996. This is an
unpublished work protected as such under copyright law. This work
contains proprietary, confidential, and trade secret information of
RSA Data Security, Inc. Use, disclosure or reproduction without the
express written authorization of RSA Data Security, Inc. is
prohibited.
*/
#ifndef _AHRSAENC_H_
#define _AHRSAENC_H_
#include "ahchencr.h"
struct AH_RSAEncryption;
/* For EncodeBlock, the block to encode is left justified in the
z.block with length given by z._inputLen. EncodeBlock encodes the block
in place to fill it out to z.blockLen.
For DecodeBlock, return the contents in the given ITEM by decoding
the z.block value which has length given by decryptedLen. This
procedure must also ensure that the block was encrypted with 8 bytes
of padding.
*/
typedef struct {
int (*EncodeBlock) PROTO_LIST
A_SURRENDER_CTX *));
int (*DecodeBlock) PROTO_LIST
typedef struct AH_RSAEncryption {
struct {
unsigned char *block;
unsigned int blockLen;
} z; /* Zeroized by constructor */
unsigned int _inputLen; /* Length of data accumulated by Update */
unsigned int _maxInputLen; /* used during update to check for overflow */
((AH_RSAEncryption *, struct B_AlgorithmInfoType *));
((THIS_ENCRYPT_DECRYPT *, unsigned int *));
A_SURRENDER_CTX *));
A_SURRENDER_CTX *));
((THIS_ENCRYPT_DECRYPT *, unsigned char *, unsigned int *,
unsigned int, const unsigned char *, unsigned int, B_Algorithm *,
A_SURRENDER_CTX *));
((THIS_ENCRYPT_DECRYPT *, unsigned char *, unsigned int *,
unsigned int, B_Algorithm *, A_SURRENDER_CTX *));
((THIS_ENCRYPT_DECRYPT *, unsigned char *, unsigned int *,
unsigned int, B_Algorithm *, A_SURRENDER_CTX *));
#endif