lib/crypto: Document nettle supported crypto
[Samba.git] / lib / crypto / REQUIREMENTS
blob4b1e21a4e5f83f4636bbbdd2fda83b56380bfd45
1 A list of the crypto operations that we require, and what uses them.
3 This list is to allow research into using external crypto libraries.
4 Those possibly supported in the git version of GnuTLS are indicated as '# GNUTLS'
5 Those possibly supported in the git version of nettle are indicated as '# NETTLE'
7 ARCFOUR (RC4)
8  - the old SamOEMHash
9  - Password encryption on SAMR for password set/get
10  - NETLOGON SamLogon session keys
11  - Schannel
12  - genrate_random_data()
14  # GNUTLS
15  # NETTLE
17 DES
18  - NTLM challenge-response
19  - LSA QuerySecret et al
20  - NETLOGON SamLogon session keys
21  - ServerGetTrustInfo returned passwords
22  - RID encryption of passwords
24  # NETTLE
26 3DES
27  - NETLOGON Credentials
29  # NETTLE
31 CRC32
32  - DRSUAPI replication replicated secrets
34 AES CFB8
35  - SCHANNEL
36  - NETLOGON SamLogon session keys
38 AES 128
39  - SMB VFS traffic analyzer
41  # NETTLE (AES-NI available)
43 AES128 CCM
44  - SMB2 2.24 SMB encryption
46  # GNUTLS
47  # NETTLE (AES-NI available)
49 AES128 GCM
50  - SMB2 3.10 SMB encryption
52  # GNUTLS
53  # NETTLE (AES-NI available)
55 AES128 CMAC
56  - SMB2 0x224 SMB Signing
58 MD4
59  - NTLM password hash
60  - genrate_random_number()
62  # NETTLE
64 MD5
65  - NTLM2
66  - SCHANNEL
67  - NTLMSSP
68  - NETLOGON computer credentials
69  - DRSUAPI blob encryption
70  - SAMR/wkssvc password change/set encryption
71  - vfs_fruit
72  - vfs_streams_xattr
73  - passdb old password history format
74  - dsdb password_hash module
75  - SMB1 SMB signing
76  - NTP ntp_signd
78  # GNUTLS
79  # NETTLE
81 HMAC-MD5
82  - NTLMv2
84  # GNUTLS
85  # NETTLE
87 HMACSHA256
88  - SMB2 < 2.24 SMB signing
89  - SMB2 Key derivation
91  # GNUTLS
92  # NETTLE
94 HMACSHA1
95  - BackupKey ServerWrap
97  # GNUTLS
98  # NETTLE
100 SHA256
101  - Security Descriptor hash for vfs_acl_xattr
102  - oLschema2ldif
104  # GNUTLS
105  # NETTLE
107 SHA512
108  - SMB2 Pre-auth integrity verification
109  - BackupKey ClientWrap
111  # GNUTLS
112  # NETTLE
115  - BackupKey ClientWrap
117  # GNUTLS
118  # NETTLE