1
0
mirror of https://git.tartarus.org/simon/putty.git synced 2025-07-12 08:43:53 -05:00

Peter Schellenbach's patch: re-implement the PuTTY cryptographic

functions as calls to the MS Crypto API. Not integrated into the
Makefile yet, but should eventually allow building of an SSH-enabled
PuTTY which contains no native crypto code, so it can be used
everywhere (and anyone who can get the MS encryption pack can still
use the SSH parts).

[originally from svn r425]
This commit is contained in:
Simon Tatham
2000-03-24 09:45:49 +00:00
parent e32eae7db1
commit 9922072a8d
8 changed files with 502 additions and 6 deletions

17
ssh.h
View File

@ -8,8 +8,13 @@
struct RSAKey {
int bits;
int bytes;
#ifdef MSCRYPTOAPI
unsigned long exponent;
unsigned char *modulus;
#else
void *modulus;
void *exponent;
#endif
};
int makekey(unsigned char *data, struct RSAKey *result,
@ -24,9 +29,13 @@ typedef unsigned int uint32;
unsigned long crc32(const void *s, size_t len);
struct MD5Context {
uint32 buf[4];
uint32 bits[2];
unsigned char in[64];
#ifdef MSCRYPTOAPI
unsigned long hHash;
#else
uint32 buf[4];
uint32 bits[2];
unsigned char in[64];
#endif
};
void MD5Init(struct MD5Context *context);
@ -40,7 +49,9 @@ struct ssh_cipher {
void (*decrypt)(unsigned char *blk, int len);
};
#ifndef MSCRYPTOAPI
void SHATransform(word32 *digest, word32 *data);
#endif
int random_byte(void);
void random_add_noise(void *noise, int length);