summaryrefslogtreecommitdiff
path: root/python-tlslite-ng.spec
blob: 97cbba022169927ab814a1ce25fea34c130b1815 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
%global _empty_manifest_terminate_build 0
Name:		python-tlslite-ng
Version:	0.7.6
Release:	1
Summary:	Pure python implementation of SSL and TLS.
License:	LGPLv2
URL:		https://github.com/tlsfuzzer/tlslite-ng
Source0:	https://mirrors.nju.edu.cn/pypi/web/packages/cd/95/4311e6b70ded82035b7f3a92bfe5ea350e6d9effe925493ac31ccaf924cc/tlslite-ng-0.7.6.tar.gz
BuildArch:	noarch


%description
tlslite-ng is a pure python implementation of SSLv3.0, TLS 1.0, TLS 1.1 and
TLS 1.2 protocols.

It can use pycrypto, m2crypto and gmp for acceleration of cryptographic
operations but is not dependant upon them.

Functionality implemented include:
 - all above mentioned protocols, including support for client certificates
   (RFC 6101, RFC 2246, RFC 4346, RFC 5246)
 - RC4, 3DES-CBC, AES-CBC, AES-GCM and ChaCha20 ciphers (RFC 5246, RFC 6347,
   RFC 4492, RFC 5288, RFC 5289, RFC 7539, RFC 7905)
 - MD5, SHA1, SHA256 and SHA384 HMACs as well as AEAD mode of operation with
   GCM or Poly1305 authenticator
 - RSA, DHE_RSA and ECDHE_RSA key exchange
 - full set of signature hashes (md5, sha1, sha224, sha256, sha384, sha512,
   rsa_pss_sha256, rsa_pss_sha384 and rsa_pss_sha512) for ServerKeyExchange
   and CertfificateVerify in TLS v1.2
 - secp256r1, secp384r1, secp521r1, secp256k1, secp224r1 and secp192r1 curves
   for ECDHE_RSA key exchange (support for last two depends on the version
   of ecdsa library used)
 - x25519 and x448 curves for ECDHE_RSA key exchage (RFC 7748. RFC 4492bis)
 - anonymous DHE key exchange
 - anonymous ECDH key exchange
 - NULL encryption ciphersuites
 - FALLBACK_SCSV (RFC 7507)
 - encrypt-then-MAC mode of operation for CBC ciphersuites (RFC 7366)
 - TACK certificate pinning
 - SRP_SHA_RSA and SRP_SHA ciphersuites (RFC 5054)
 - Extended Master Secret calculation for TLS connections (RFC 7627)
 - padding extension (RFC 7685)
 - Keying material exporter (RFC 5705)
 - Next Protocol Negotiation
 - Application-Layer Protocol Negotiation Extension (RFC 7301)
 - FFDHE prime/group negotiation (RFC 7919)


tlslite-ng aims to be a drop-in replacement for tlslite while providing more
comprehensive set of features and more secure defautls.

%package -n python3-tlslite-ng
Summary:	Pure python implementation of SSL and TLS.
Provides:	python-tlslite-ng
BuildRequires:	python3-devel
BuildRequires:	python3-setuptools
BuildRequires:	python3-pip
%description -n python3-tlslite-ng
tlslite-ng is a pure python implementation of SSLv3.0, TLS 1.0, TLS 1.1 and
TLS 1.2 protocols.

It can use pycrypto, m2crypto and gmp for acceleration of cryptographic
operations but is not dependant upon them.

Functionality implemented include:
 - all above mentioned protocols, including support for client certificates
   (RFC 6101, RFC 2246, RFC 4346, RFC 5246)
 - RC4, 3DES-CBC, AES-CBC, AES-GCM and ChaCha20 ciphers (RFC 5246, RFC 6347,
   RFC 4492, RFC 5288, RFC 5289, RFC 7539, RFC 7905)
 - MD5, SHA1, SHA256 and SHA384 HMACs as well as AEAD mode of operation with
   GCM or Poly1305 authenticator
 - RSA, DHE_RSA and ECDHE_RSA key exchange
 - full set of signature hashes (md5, sha1, sha224, sha256, sha384, sha512,
   rsa_pss_sha256, rsa_pss_sha384 and rsa_pss_sha512) for ServerKeyExchange
   and CertfificateVerify in TLS v1.2
 - secp256r1, secp384r1, secp521r1, secp256k1, secp224r1 and secp192r1 curves
   for ECDHE_RSA key exchange (support for last two depends on the version
   of ecdsa library used)
 - x25519 and x448 curves for ECDHE_RSA key exchage (RFC 7748. RFC 4492bis)
 - anonymous DHE key exchange
 - anonymous ECDH key exchange
 - NULL encryption ciphersuites
 - FALLBACK_SCSV (RFC 7507)
 - encrypt-then-MAC mode of operation for CBC ciphersuites (RFC 7366)
 - TACK certificate pinning
 - SRP_SHA_RSA and SRP_SHA ciphersuites (RFC 5054)
 - Extended Master Secret calculation for TLS connections (RFC 7627)
 - padding extension (RFC 7685)
 - Keying material exporter (RFC 5705)
 - Next Protocol Negotiation
 - Application-Layer Protocol Negotiation Extension (RFC 7301)
 - FFDHE prime/group negotiation (RFC 7919)


tlslite-ng aims to be a drop-in replacement for tlslite while providing more
comprehensive set of features and more secure defautls.

%package help
Summary:	Development documents and examples for tlslite-ng
Provides:	python3-tlslite-ng-doc
%description help
tlslite-ng is a pure python implementation of SSLv3.0, TLS 1.0, TLS 1.1 and
TLS 1.2 protocols.

It can use pycrypto, m2crypto and gmp for acceleration of cryptographic
operations but is not dependant upon them.

Functionality implemented include:
 - all above mentioned protocols, including support for client certificates
   (RFC 6101, RFC 2246, RFC 4346, RFC 5246)
 - RC4, 3DES-CBC, AES-CBC, AES-GCM and ChaCha20 ciphers (RFC 5246, RFC 6347,
   RFC 4492, RFC 5288, RFC 5289, RFC 7539, RFC 7905)
 - MD5, SHA1, SHA256 and SHA384 HMACs as well as AEAD mode of operation with
   GCM or Poly1305 authenticator
 - RSA, DHE_RSA and ECDHE_RSA key exchange
 - full set of signature hashes (md5, sha1, sha224, sha256, sha384, sha512,
   rsa_pss_sha256, rsa_pss_sha384 and rsa_pss_sha512) for ServerKeyExchange
   and CertfificateVerify in TLS v1.2
 - secp256r1, secp384r1, secp521r1, secp256k1, secp224r1 and secp192r1 curves
   for ECDHE_RSA key exchange (support for last two depends on the version
   of ecdsa library used)
 - x25519 and x448 curves for ECDHE_RSA key exchage (RFC 7748. RFC 4492bis)
 - anonymous DHE key exchange
 - anonymous ECDH key exchange
 - NULL encryption ciphersuites
 - FALLBACK_SCSV (RFC 7507)
 - encrypt-then-MAC mode of operation for CBC ciphersuites (RFC 7366)
 - TACK certificate pinning
 - SRP_SHA_RSA and SRP_SHA ciphersuites (RFC 5054)
 - Extended Master Secret calculation for TLS connections (RFC 7627)
 - padding extension (RFC 7685)
 - Keying material exporter (RFC 5705)
 - Next Protocol Negotiation
 - Application-Layer Protocol Negotiation Extension (RFC 7301)
 - FFDHE prime/group negotiation (RFC 7919)


tlslite-ng aims to be a drop-in replacement for tlslite while providing more
comprehensive set of features and more secure defautls.

%prep
%autosetup -n tlslite-ng-0.7.6

%build
%py3_build

%install
%py3_install
install -d -m755 %{buildroot}/%{_pkgdocdir}
if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi
if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi
if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi
if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi
pushd %{buildroot}
if [ -d usr/lib ]; then
	find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst
fi
if [ -d usr/lib64 ]; then
	find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst
fi
if [ -d usr/bin ]; then
	find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst
fi
if [ -d usr/sbin ]; then
	find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst
fi
touch doclist.lst
if [ -d usr/share/man ]; then
	find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst
fi
popd
mv %{buildroot}/filelist.lst .
mv %{buildroot}/doclist.lst .

%files -n python3-tlslite-ng -f filelist.lst
%dir %{python3_sitelib}/*

%files help -f doclist.lst
%{_docdir}/*

%changelog
* Sun Apr 23 2023 Python_Bot <Python_Bot@openeuler.org> - 0.7.6-1
- Package Spec generated