1
0
mirror of https://github.com/samba-team/samba.git synced 2024-12-24 21:34:56 +03:00
samba-mirror/lib/crypto
Alexander Bokovoy bbeef554f2 lib/crypto: implement samba.crypto Python module for RC4
Implement a small Python module that exposes arcfour_crypt_blob()
function widely used in Samba C code.

When Samba Python bindings are used to call LSA CreateTrustedDomainEx2,
there is a need to encrypt trusted credentials with RC4 cipher.

Current Samba Python code relies on Python runtime to provide RC4
cipher. However, in FIPS 140-2 mode system crypto libraries do not
provide access RC4 cipher at all. According to Microsoft dochelp team,
Windows is treating AuthenticationInformation blob encryption as 'plain
text' in terms of FIPS 140-2, thus doing application-level encryption.

Replace samba.arcfour_encrypt() implementation with a call to
samba.crypto.arcfour_crypt_blob().

Signed-off-by: Alexander Bokovoy <ab@samba.org>
Reviewed-by: Simo Sorce <idra@samba.org>
Reviewed-by: Guenther Deschner <gd@samba.org>

Autobuild-User(master): Günther Deschner <gd@samba.org>
Autobuild-Date(master): Wed Mar 15 01:30:24 CET 2017 on sn-devel-144
2017-03-15 01:30:24 +01:00
..
aes_ccm_128_test.c lib/crypto: add aes_ccm_128 tests 2015-08-27 20:23:20 +02:00
aes_ccm_128.c lib/crypto: optimize aes_ccm_128 2015-08-27 20:23:20 +02:00
aes_ccm_128.h lib/crypto: optimize aes_ccm_128 2015-08-27 20:23:20 +02:00
aes_cmac_128_test.c lib/crypto: add aes_cmac_128 chunked tests 2015-08-27 20:23:20 +02:00
aes_cmac_128.c lib/crypto: optimize aes_cmac_128 2015-08-27 20:23:20 +02:00
aes_cmac_128.h lib/crypto: optimize aes_cmac_128 2015-08-27 20:23:20 +02:00
aes_gcm_128_test.c lib/crypto: make use of aes_test.h in aes_gcm_128_test.c 2015-08-27 20:23:20 +02:00
aes_gcm_128.c lib/crypto: optimize aes_gcm_128 2015-08-27 20:23:20 +02:00
aes_gcm_128.h lib/crypto: optimize aes_gcm_128 2015-08-27 20:23:20 +02:00
aes_test.h lib/crypto: add aes_ccm_128 tests 2015-08-27 20:23:20 +02:00
aes.c lib/crypto: make it possible to use only parts of aes.[ch] 2015-08-27 23:23:54 +02:00
aes.h lib/crypto: make it possible to use only parts of aes.[ch] 2015-08-27 23:23:54 +02:00
arcfour.c lib: Fix some whitespace 2016-05-16 19:52:22 +02:00
arcfour.h
crc32.c
crc32.h
crypto.h lib/crypto: fix header guard for crypto.h 2015-03-23 16:04:19 +01:00
hmacmd5.c build: Build with system md5.h on OpenIndiana 2013-06-19 21:32:36 +02:00
hmacmd5.h build: Build with system md5.h on OpenIndiana 2013-06-19 21:32:36 +02:00
hmacmd5test.c crypto: Add prototype for main torture functions. 2012-02-07 01:11:07 +01:00
hmacsha256.c
hmacsha256.h lib/crypto: fix hmac_sha256_final() prototype 2012-02-27 12:51:33 +01:00
md4.c
md4.h
md4test.c crypto: Add prototype for main torture functions. 2012-02-07 01:11:07 +01:00
md5.c lib: Fix strict-aliasing warning in md5 code. 2014-01-09 20:42:54 +01:00
md5.h crypto: fix build on OS X 2014-01-08 08:12:29 +01:00
md5test.c build: Build with system md5.h on OpenIndiana 2013-06-19 21:32:36 +02:00
py_crypto.c lib/crypto: implement samba.crypto Python module for RC4 2017-03-15 01:30:24 +01:00
REQUIREMENTS vfs: Remove smb_traffic_analyzer 2015-11-11 00:23:35 +01:00
rijndael-alg-fst.c
rijndael-alg-fst.h
sha256.c
sha256.h Prevent clashes between system and Samba SHA functions 2015-06-03 01:54:23 +02:00
sha512.c lib/crypto: add and build a copied version of SHA512 functions. 2014-10-14 10:52:04 +02:00
sha512.h Prevent clashes between system and Samba SHA functions 2015-06-03 01:54:23 +02:00
wscript_build lib/crypto: implement samba.crypto Python module for RC4 2017-03-15 01:30:24 +01:00
wscript_configure Prevent clashes between system and Samba SHA functions 2015-06-03 01:54:23 +02:00