diff options
| author | CoprDistGit <infra@openeuler.org> | 2023-04-11 10:30:57 +0000 |
|---|---|---|
| committer | CoprDistGit <infra@openeuler.org> | 2023-04-11 10:30:57 +0000 |
| commit | 8e051d93635adc3be5d652cd6e46cf9bfc596238 (patch) | |
| tree | 180691fd1e18b1cf5ee4a87db29e9afb9e188821 /python-padding.spec | |
| parent | 466154a43bf2fbd120144110e7f6ef4dfa516453 (diff) | |
automatic import of python-padding
Diffstat (limited to 'python-padding.spec')
| -rw-r--r-- | python-padding.spec | 165 |
1 files changed, 165 insertions, 0 deletions
diff --git a/python-padding.spec b/python-padding.spec new file mode 100644 index 0000000..8677f3a --- /dev/null +++ b/python-padding.spec @@ -0,0 +1,165 @@ +%global _empty_manifest_terminate_build 0 +Name: python-Padding +Version: 0.5 +Release: 1 +Summary: Padding methods for password based encryption +License: Public Domain +URL: http://pypi.python.org/pypi/Padding +Source0: https://mirrors.nju.edu.cn/pypi/web/packages/39/c6/400b6f20c0679fcca2d0d7d933e142d000a707a571a9068fd8297e88a781/Padding-0.5.tar.gz +BuildArch: noarch + + +%description +Append and remove padding to/from a string. +I. Functions: +appendPadding(str, blocksize=AES_blocksize, mode='CMS'): + Pad (append padding to) string for use with symmetric encryption algorithm + Input: (string) str - String to be padded + (int) blocksize - block size of the encryption algorithm. Usually 8 or 16 bytes + (string) mode - padding scheme one in (CMS, Bit, ZeroLen, Null, Space, Random) + Return:(string) Padded string according to chosen padding mode +removePadding(str, blocksize=AES_blocksize, mode='CMS'): + Remove padding from string + Input: (str) str - String to be padded + (int) blocksize - block size of the algorithm. Usually 8 or 16 bytes + (string) mode - padding scheme one in (CMS, Bit, ZeroLen, Null, Space, Random) + Return:(string) Decrypted string without padding +II. Blocksizes: +DES (Triple DES), CAST5 and Blowfish have block size of 64 bits = 8 bytes +DES_blocksize = 8 +CAST5_blocksize = 8 +Blowfish_blocksize = 8 +AES has fixed block size of 128 bits = 16 bytes and this is the default blocksize +AES_blocksize = 16 +III. Mode: +MODES ={ +(0,'CMS') : 'Pad with bytes all of the same value as the number of padding bytes. Default mode used in Cryptographic Message Syntax (CMS as defined in RFC 5652, PKCS#5, PKCS#7 and RFC 1423 PEM)', +(1,'Bit') : 'BitPadding: Pad with 0x80 (10000000) followed by zero (null) bytes. Described in ANSI X.923 and ISO/IEC 9797-1', +(2,'ZeroLen') : 'Pad with zeroes except make the last byte equal to the number (length) of padding bytes', +(3,'Null') : 'Pad with null bytes. Only for encrypting of text data.', +(4,'Space') : 'Pad with spaces. Only for encrypting of text data.', +(5,'Random') : 'ISO 10126 Padding (withdrawn in 2007): Pad with random bytes + last byte equal to the number of padding bytes' + } +CMS mode is the default one +Examples in the README.txt file + +%package -n python3-Padding +Summary: Padding methods for password based encryption +Provides: python-Padding +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip +%description -n python3-Padding +Append and remove padding to/from a string. +I. Functions: +appendPadding(str, blocksize=AES_blocksize, mode='CMS'): + Pad (append padding to) string for use with symmetric encryption algorithm + Input: (string) str - String to be padded + (int) blocksize - block size of the encryption algorithm. Usually 8 or 16 bytes + (string) mode - padding scheme one in (CMS, Bit, ZeroLen, Null, Space, Random) + Return:(string) Padded string according to chosen padding mode +removePadding(str, blocksize=AES_blocksize, mode='CMS'): + Remove padding from string + Input: (str) str - String to be padded + (int) blocksize - block size of the algorithm. Usually 8 or 16 bytes + (string) mode - padding scheme one in (CMS, Bit, ZeroLen, Null, Space, Random) + Return:(string) Decrypted string without padding +II. Blocksizes: +DES (Triple DES), CAST5 and Blowfish have block size of 64 bits = 8 bytes +DES_blocksize = 8 +CAST5_blocksize = 8 +Blowfish_blocksize = 8 +AES has fixed block size of 128 bits = 16 bytes and this is the default blocksize +AES_blocksize = 16 +III. Mode: +MODES ={ +(0,'CMS') : 'Pad with bytes all of the same value as the number of padding bytes. Default mode used in Cryptographic Message Syntax (CMS as defined in RFC 5652, PKCS#5, PKCS#7 and RFC 1423 PEM)', +(1,'Bit') : 'BitPadding: Pad with 0x80 (10000000) followed by zero (null) bytes. Described in ANSI X.923 and ISO/IEC 9797-1', +(2,'ZeroLen') : 'Pad with zeroes except make the last byte equal to the number (length) of padding bytes', +(3,'Null') : 'Pad with null bytes. Only for encrypting of text data.', +(4,'Space') : 'Pad with spaces. Only for encrypting of text data.', +(5,'Random') : 'ISO 10126 Padding (withdrawn in 2007): Pad with random bytes + last byte equal to the number of padding bytes' + } +CMS mode is the default one +Examples in the README.txt file + +%package help +Summary: Development documents and examples for Padding +Provides: python3-Padding-doc +%description help +Append and remove padding to/from a string. +I. Functions: +appendPadding(str, blocksize=AES_blocksize, mode='CMS'): + Pad (append padding to) string for use with symmetric encryption algorithm + Input: (string) str - String to be padded + (int) blocksize - block size of the encryption algorithm. Usually 8 or 16 bytes + (string) mode - padding scheme one in (CMS, Bit, ZeroLen, Null, Space, Random) + Return:(string) Padded string according to chosen padding mode +removePadding(str, blocksize=AES_blocksize, mode='CMS'): + Remove padding from string + Input: (str) str - String to be padded + (int) blocksize - block size of the algorithm. Usually 8 or 16 bytes + (string) mode - padding scheme one in (CMS, Bit, ZeroLen, Null, Space, Random) + Return:(string) Decrypted string without padding +II. Blocksizes: +DES (Triple DES), CAST5 and Blowfish have block size of 64 bits = 8 bytes +DES_blocksize = 8 +CAST5_blocksize = 8 +Blowfish_blocksize = 8 +AES has fixed block size of 128 bits = 16 bytes and this is the default blocksize +AES_blocksize = 16 +III. Mode: +MODES ={ +(0,'CMS') : 'Pad with bytes all of the same value as the number of padding bytes. Default mode used in Cryptographic Message Syntax (CMS as defined in RFC 5652, PKCS#5, PKCS#7 and RFC 1423 PEM)', +(1,'Bit') : 'BitPadding: Pad with 0x80 (10000000) followed by zero (null) bytes. Described in ANSI X.923 and ISO/IEC 9797-1', +(2,'ZeroLen') : 'Pad with zeroes except make the last byte equal to the number (length) of padding bytes', +(3,'Null') : 'Pad with null bytes. Only for encrypting of text data.', +(4,'Space') : 'Pad with spaces. Only for encrypting of text data.', +(5,'Random') : 'ISO 10126 Padding (withdrawn in 2007): Pad with random bytes + last byte equal to the number of padding bytes' + } +CMS mode is the default one +Examples in the README.txt file + +%prep +%autosetup -n Padding-0.5 + +%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-Padding -f filelist.lst +%dir %{python3_sitelib}/* + +%files help -f doclist.lst +%{_docdir}/* + +%changelog +* Tue Apr 11 2023 Python_Bot <Python_Bot@openeuler.org> - 0.5-1 +- Package Spec generated |
