Alexandre Julliard
b402b78780
rsaenh: Fix padding bytes check for 0-byte payload.
2009-12-02 14:59:56 +01:00
Juan Lang
9d9ae93a58
rsaenh: Revert part of d3c482250a
.
2009-10-22 10:55:49 +02:00
Juan Lang
a48aae26e6
rsaenh: Fail if CRYPT_IPSEC_HMAC_KEY is passed to CryptImportKey.
2009-10-22 10:55:42 +02:00
Juan Lang
48975c38e0
rsaenh: Store key when algid is a CALG_RSA_* algid, too.
2009-10-21 16:05:58 +02:00
Juan Lang
7a6381e852
rsaenh: Make the enhanced crypto provider the default.
2009-10-20 13:47:14 +02:00
Juan Lang
9a72789686
rsaenh: Add some traces to key importing.
2009-10-20 13:47:04 +02:00
Dmitry Timoshkov
d3c482250a
rsaenh: Fix the accepted RC2 key length, based on a test case by Dan Kegel.
2009-10-13 14:07:00 +02:00
Juan Lang
d2827be07f
rsaenh: Implement exporting PLAINTEXTKEYBLOBs.
2009-08-10 13:09:13 +02:00
Juan Lang
ff6328efcc
rsaenh: Implement importing PLAINTEXTKEYBLOBs.
2009-08-10 13:09:06 +02:00
Alexandre Julliard
7682bc6f88
rsaenh: Rename the HANDLETABLE structure to avoid conflicts with wingdi.h.
2009-02-09 13:03:35 +01:00
Juan Lang
674786527a
rsaenh: Also write a key's permissions when it's being stored to the registry.
2009-01-29 12:40:09 +01:00
Juan Lang
2edda7208f
rsaenh: Load/store key permissions along with key pair value.
2009-01-29 12:40:03 +01:00
Juan Lang
bd41f77d3d
rsaenh: Use key spec rather than char * to identify a key pair.
2009-01-29 12:39:55 +01:00
Juan Lang
fbc26f3855
rsaenh: Don't store a key to the registry when it's being read from the registry.
2009-01-29 12:39:49 +01:00
Juan Lang
4eb1ee4277
rsaenh: Store a key's value to the registry when a key is imported.
2009-01-29 12:39:45 +01:00
Juan Lang
17da3004ef
rsaenh: Split CPImportKey into a helper function for each type of key supported.
2009-01-29 12:39:40 +01:00
Juan Lang
30764edd12
rsaenh: Use helper function to install keys.
2009-01-29 12:22:28 +01:00
Juan Lang
8f4a491489
rsaenh: Separate storing a key container's keys from releasing them.
2009-01-29 12:22:21 +01:00
Juan Lang
e8ea6700ca
rsaenh: Honor a key's permissions when exporting a private key.
2009-01-29 12:22:07 +01:00
Juan Lang
8265569e99
rsaenh: Split CPExportKey into helper functions for each export type.
2009-01-29 12:21:59 +01:00
Juan Lang
0eb9ae17fe
rsaenh: Fix CryptSetKeyParam for KP_PERMISSIONS.
2009-01-29 12:21:50 +01:00
Juan Lang
1cc5886771
rsaenh: Honor the CRYPT_EXPORTABLE flag to CryptAcquireContext and CryptGenKey.
2009-01-29 12:21:45 +01:00
Juan Lang
cc1e6eed7e
rsaenh: Honor the CRYPT_EXPORTABLE flags to CryptImportKey.
2009-01-29 12:21:38 +01:00
Michael Stefaniuc
16042cff7b
rsaenh: Remove superfluous pointer casts.
2009-01-13 15:25:46 +01:00
Andrew Talbot
c44dcda12b
rsaenh: Sign-compare warnings fix.
2008-11-10 11:15:03 +01:00
Michael Stefaniuc
4f199a10ad
Remove the remaining casts of NULL.
2008-11-03 13:42:09 +01:00
Michael Stefaniuc
9cafb9c168
rsaenh: Use 0 instead of casting NULL to a handle of integer type.
2008-10-27 11:28:09 +01:00
Rob Shearman
b069b53bd9
rsaenh: Add a value to the empty braces in the initialiser for aOIDDescriptor in build_hash_signature.
...
An empty initialiser isn't supported on some compilers like MSVC.
2008-10-15 16:45:09 +02:00
Juan Lang
408f3d96c5
rsaenh: Test and correct the maximum allowable salt length.
2008-07-29 12:20:26 +02:00
Vijay Kiran Kamuju
e666bb2a5c
rsaenh: Fix AES provider keys for Windows XP.
2008-06-04 12:41:01 +02:00
Paul Vriens
51ee956b95
rsaenh: Add some new flags to wincrypt.h and use one of them.
2008-04-03 11:30:20 +02:00
Andrew Talbot
038169b6a7
rsaenh: Assign to structs instead of using memcpy.
2008-03-17 11:41:17 +01:00
Juan Lang
ad6a7a788d
rsaenh: Merge the encrypting and decrypting states, as encrypting and decrypting are allowed with the same key.
2008-02-08 11:02:25 +01:00
Andrew Talbot
303bff281c
rsaenh: Remove unneeded casts.
2008-01-18 12:43:37 +01:00
Juan Lang
83f74fef2c
crypt32: Support setting the salt value through KP_SALT_EX.
2007-11-29 13:34:56 +01:00
Juan Lang
c9e0fa442a
crypt32: Support getting and setting the KP_PADDING key param.
2007-11-29 13:34:50 +01:00
Juan Lang
749a7adaf4
rsaenh: Empty container names are allowed for CRYPT_VERIFYCONTEXT contexts.
2007-11-28 11:20:20 +01:00
Vijay Kiran Kamuju
1dbaa8c619
rsaenh: Add implementation of Enhanced RSA AES Provider.
2007-11-21 13:07:41 +01:00
Juan Lang
f6833c4d09
rsaenh: Check pad bytes for consistency when decrypting.
2007-11-12 12:57:15 +01:00
Juan Lang
61d58c15aa
rsaenh: Fix a comment.
2007-11-08 11:48:38 +01:00
Juan Lang
8788cca0ef
rsaenh: Use LocalFree to free memory return by Crypt(Un)ProtectData.
2007-11-07 13:13:17 +01:00
Juan Lang
5408471b23
rsaenh: Use helper function to read key pairs from registry.
2007-11-07 13:13:12 +01:00
Juan Lang
9260fcf7ac
rsaenh: Use helper function to delete a key container's registry key.
2007-11-07 13:13:03 +01:00
Juan Lang
88405a68e7
rsaenh: Use helper function to open a key container's registry key.
2007-11-07 13:12:53 +01:00
Juan Lang
060ed4cf02
rsaenh: Use helper function to create a container's registry key.
2007-11-07 13:12:47 +01:00
Juan Lang
58269419e5
rsaenh: Use helper function to persist keys.
2007-11-07 13:10:32 +01:00
Juan Lang
f0d2766fdc
rsaenh: Validate pad byte when decrypting a block cipher.
2007-09-12 11:33:11 +02:00
Juan Lang
41d057837c
rsaenh: Support setting the effective key length of RC2 keys.
2007-09-11 12:35:22 +02:00
Juan Lang
5666efb137
rsaenh: Call setup_key whenever the IV is reset.
2007-09-11 12:35:18 +02:00
Juan Lang
16c40d9112
rsaenh: Reorder padding code to avoid unnecessary comparison.
2007-09-11 12:35:14 +02:00
Andrew Talbot
c94f113f4f
rsaenh: Constify some variables.
2007-08-24 10:57:16 +02:00
Juan Lang
cd3954e7fd
rsaenh: Get rid of the hash idle state, native doesn't behave as though it has one.
2007-07-11 12:00:38 +02:00
Maarten Lankhorst
4e0ef1cb38
rsaenh: Allow CRYPT_NEWKEYSET and CRYPT_VERIFYCONTEXT at same time when acquiring context.
2007-06-13 12:06:17 +02:00
Andrew Talbot
42fd48f38e
rsaenh: Exclude unused header.
2007-05-18 14:11:29 +02:00
Mounir IDRASSI
e61eddd6a5
rsaenh: Fix crash in RSAENH_CPVerifySignature if pbSignature is set to NULL or if dwSigLen is lesser than the expected value.
2007-05-15 12:23:09 +02:00
Mounir IDRASSI
f772fb9898
rsaenh: Add support for mandatory parameters to RSAENH_CPGetProvParam.
2007-05-11 11:20:13 +02:00
Mounir IDRASSI
56a1326a8b
rsaenh: Use the correct registry key in RSAENH_CPAcquireContext.
2007-05-08 12:23:06 +02:00
Mounir IDRASSI
a7d897d76a
rsaenh: Fix read_key_container bug that prevents CryptAcquireContext from correctly loading the keys.
2007-05-07 20:35:59 +02:00
Alexandre Julliard
69a88a9d40
Fix minor differences in the formatting of the license notices.
2007-05-04 12:08:15 +02:00
Yuval Fledel
1cdc057091
rsaenh: Convert handle type from unsigned int to HCRYPTKEY.
2007-04-23 16:17:54 +02:00
Dmitry Timoshkov
c9842d2ca9
rsaenh: Make some data const and static.
2006-12-14 20:11:37 +01:00
Michael Stefaniuc
7c7e1943ca
rsaenh: Win64 printf format warning fixes.
2006-10-09 12:56:13 +02:00
Juan Lang
51f24d4170
rsaenh: Correct signature checking.
...
- pass desired key to encrypt_block_impl
- don't change the alg id of imported keys
- add a few traces
2006-09-29 14:41:15 +02:00
Andrew Talbot
c4daa191b0
rsaenh: Cast-qual warnings fix.
2006-09-27 09:40:32 +02:00
Juan Lang
e649994262
rsaenh: Test and fix CryptEncrypt with NULL buffer.
2006-08-08 20:15:08 +02:00
Juan Lang
b6d5972190
rsaenh: More tests and some fixes.
...
- correct deleting the default container
- imported keys should be stored in their container, not just given to the caller
- tests for these changes
2006-07-28 13:16:33 +02:00
Juan Lang
c562957375
rsaenh: Public keys should be exported with the CALG_RSA_KEYX alg_id.
2006-07-27 12:10:38 +02:00
Karsten Elfenbein
dd6598b834
rsaenh: Fix the case when CPGetHashParam should return the size of the HASHVAL.
2006-07-26 11:11:03 +02:00
Karsten Elfenbein
bf1ad6c324
rsaenh: Fix the case when the CPEncrypt function is asked for the needed buffer size.
2006-07-26 11:11:03 +02:00
Saulius Krasuckas
9b2fe9e193
rasenh: Fix a copy&paste bug at passing only one string to RegSetValueExW() at a time.
2006-06-02 20:43:47 +02:00
Jonathan Ernst
360a3f9142
Update the address of the Free Software Foundation.
2006-05-23 14:11:13 +02:00
Robert Shearman
811fb7614c
Call DisableThreadLibraryCalls for DLLs that don't need thread
...
creation/destruction notifications.
2006-01-09 17:17:37 +01:00
Vincent Béron
d52dafb5cc
Add a few missing #includes.
2005-12-07 12:51:39 +01:00
Juan Lang
fac3698fc2
When just a public key is imported, its ALG_ID should be CALG_RSA_SIGN
...
rather than CALG_RSA_KEYX.
2005-10-06 11:35:11 +00:00
Mike McCormack
93ab695a5c
Fix gcc 4.0 warnings.
2005-08-26 08:53:31 +00:00
Mike McCormack
f674f1f71b
Fix declarations.
2005-06-15 10:20:53 +00:00
Alexandre Julliard
2e4bca9db5
Added magic comments to all Wine-specific registry accesses to make
...
them easier to grep.
2005-06-13 18:56:00 +00:00
Michael Jung
dd5b70b4bd
Use the Data Protection API to protect the users private keys.
2005-05-27 19:23:19 +00:00
Robert Shearman
54160222a0
Rename MODULENAME_Dll* functions to Dll* for better consistency and
...
type checking.
2005-05-17 14:41:37 +00:00
Kees Cook
0cdc0479b8
Avoid segfault in hash update with corrupted decrypt data.
2005-05-16 09:15:24 +00:00
Kees Cook
ea2fabca84
Avoid segfault when detecting decryption buffer size.
2005-05-16 08:50:45 +00:00
Peter Berg Larsen
6aefbc0934
Strncpy elimination.
2005-04-18 15:36:20 +00:00
Peter Berg Larsen
e732fc023d
Janitorial: Get rid of strncpy/strncpyW.
2005-03-28 14:17:51 +00:00
Jakob Eriksson
9ed61de9a2
Get rid of HeapAlloc casts.
2005-03-24 21:01:35 +00:00
Michael Jung
3b26f513b5
Check pdwDataLen param for non NULL'ness.
...
Implemented PP_IMPLTYPE and PP_VERSION provider params.
2005-02-14 20:54:43 +00:00
Francois Gouget
4d801b66e6
Assorted spelling fixes.
2005-02-10 19:19:35 +00:00
Michael Jung
e40af1ccd0
Implemented CPGetProvParam's PP_ENUMCONTAINERS parameter type.
...
Added corresponding test.
Removed some tabs that slipped in with the last patch.
2005-02-09 22:25:09 +00:00
Michael Jung
5e2075be3a
Moved PKCS1 #2 un-/padding from Import-/ExportKey to helper
...
functions.
Support RSA en-/decryption via CPEncrypt and CPDecrypt.
Added test case for RSA en-/decryption.
2005-01-31 11:28:41 +00:00
Michael Jung
fb85c9e924
Support for TLS1 pseudo random function.
...
Some helper functions for DATA_BLOB's.
Computing TLS1 master secret from the pre-master secret.
Deriving the master hash from the master secret.
Deriving TLS1 MAC and encryption keys from the master hash.
Tests for most of the above.
2005-01-24 12:50:29 +00:00
Michael Jung
d91ba25a03
Avoid code duplication by moving handle lookup into get_algid_info.
2005-01-19 16:59:23 +00:00
Michael Jung
a200c4e97a
Moved HMAC initialization and finalization code to
...
init_/finalize_hash.
Removed the redundant pKeyContainer function parameter from
init_hash.
2005-01-17 13:41:46 +00:00
Michael Jung
2c845618a3
Support for generating and exporting PCT1, SSL2/3 and TLS1 master
...
secrets. Ensure that these are not used in CPEncrypt, CPDecrypt or
CPDeriveKey.
2005-01-10 12:27:32 +00:00
Eric Pouech
cf1d00bb08
Removed excessive statement (break after return or goto, not useful
...
break, not needed vars...)
2005-01-09 16:42:53 +00:00
Michael Jung
ada55dccd7
Register rsaenh as a RSA SChannel provider.
...
Register rsaenh as default RSA SChannel provider.
2005-01-06 19:34:47 +00:00
Michael Jung
7c26a65f07
Added list of supported algorithms for SChannel personality.
2005-01-05 17:13:36 +00:00
Michael Jung
974c94f604
Set last error if dwFlags are non zero in CPReleaseContext.
...
Added corresponding test.
2005-01-05 13:22:37 +00:00
Michael Jung
7fa80077b4
Always set ERROR_SUCCESS in case of success in CPAcquireContext.
2005-01-04 20:33:48 +00:00
Michael Jung
2032284035
Added support for machine keysets.
2005-01-04 11:49:55 +00:00
Michael Jung
1d7800bdee
Implemented parallel hashing in CPEncrypt and CPDecrypt.
...
Implemented CPHashSessionKey.
2005-01-03 14:35:35 +00:00
Michael Stefaniuc
5ad7d858e0
Do not check for non NULL pointer before HeapFree'ing it. It's
...
redundant.
2004-12-23 17:06:43 +00:00