Metadata-Version: 2.1
Name: xtea
Version: 0.7.1
Summary: A python version of XTEA
Home-page: https://github.com/Varbin/xtea/wiki
Author: Simon Biewald
Author-email: simon@fam-biewald.de
License: Public Domain
Download-URL: https://github.com/Varbin/xtea
Keywords: xtea tea encryption cryptography
Platform: UNKNOWN
Classifier: Development Status :: 4 - Beta
Classifier: License :: Public Domain
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 2
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.3
Classifier: Programming Language :: Python :: 3.4
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: Implementation :: CPython
Classifier: Programming Language :: Python :: Implementation :: PyPy
Classifier: Topic :: Security
Classifier: Topic :: Security :: Cryptography
Requires-Dist: pep272-encryption (>=0.3)

===========
Python XTEA
===========

.. image:: https://api.codeclimate.com/v1/badges/563d6ad2607d6ed6fda3/maintainability
   :target: https://codeclimate.com/github/Varbin/xtea/maintainability
   :alt: Maintainability

.. image:: https://api.codeclimate.com/v1/badges/563d6ad2607d6ed6fda3/test_coverage
   :target: https://codeclimate.com/github/Varbin/xtea/test_coverage
   :alt: Test Coverage

.. image:: https://travis-ci.org/Varbin/xtea.svg?branch=master
   :target: https://travis-ci.org/Varbin/xtea
   :alt: Travis CI build status

.. image:: https://ci.appveyor.com/api/projects/status/mgfc1g53vvc9umkl?svg=true
   :target: https://ci.appveyor.com/project/Varbin/xtea/
   :alt: Appveyor CI build status

.. image:: https://readthedocs.org/projects/xtea/badge/?version=latest
   :target: https://xtea.readthedocs.io/en/latest/?badge=latest
   :alt: Documentation Status


This is an XTEA-Cipher implementation in Python (eXtended Tiny Encryption Algorithm).

    XTEA is a blockcipher with 8 bytes blocksize and 16 bytes Keysize (128-Bit).
    The algorithm is secure at 2014 with the recommend 64 rounds (32 cycles). This
    implementation supports following modes of operation:
    ECB, CBC, CFB, OFB, CTR


Example:

    >>> from xtea import *
    >>> key = " "*16  # Never use this
    >>> text = "This is a text. "*8
    >>> x = new(key, mode=MODE_OFB, IV="12345678")
    >>> c = x.encrypt(text)
    >>> text == x.decrypt(c)
    True


Resources
=========

* PyPi: https://pypi.org/project/xtea
* Docs: http://xtea.readthedocs.io/
* Source code: https://github.com/varbin/xtea
* Issue tracker: https://github.com/varbin/xtea/issues


Changelog
---------

Version 0.7.1, former 0.6.1 / 0.7.0; Jun 16, 2018
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

- Improved tests
- PEP8-style formatting
- Unittests: Counter, modes (but not results of them!), test vectors
- [BREAKING CHANGE] Counter class is now in xtea.counter
- Python 3.3 is not tested anymore on Travis CI
- [BREAKING CHANGE] CFB mode is now correctly implemented.
  By setting ``partition_size`` it is possible to set the
  internal partition size (in bits) as per PEP-272.
- Python 3: An optional C extension improves speed upto a factor of 10.
- [BREAKING CHANGE] `block_size` and `key_size` is now in bytes.
- Skipped 0.7.0 with

(unreleased) Version 0.6.0; Oct 16, 2016
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

- Python 3 does work now
- [BREAKING CHANGE] counters cannot return numbers any more, they must return bytestrings now
- [BREAKING CHANGE] Cipher objects remember state, so two consecutive calls to XTEACipher.encrypt should not return the same
- improved documentation

(unreleased) Version 0.5.0; Oct 15, 2016
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

- Removed CBCMAC

Version 0.4.1; Jul 30, 2015
~~~~~~~~~~~~~~~~~~~~~~~~~~~

- Fixed installer

Version 0.4.0; Jul 12, 2014
~~~~~~~~~~~~~~~~~~~~~~~~~~~

- Buggless & PEP compliant CTR
- CTR mode works with strings now
- raises DeprecatedWarning if a number is returned
- CBCMAC class added (use static method CBCMAC.new(args) to create)

Version 0.3.2; Jul 11, 2014
~~~~~~~~~~~~~~~~~~~~~~~~~~~

- Minor Fixes

Version 0.3.1; Jul 11, 2014
~~~~~~~~~~~~~~~~~~~~~~~~~~~

- Minor Fixes
- Fixed that the length of data will not be checked

Version 0.3.0; Jul 11, 2014
~~~~~~~~~~~~~~~~~~~~~~~~~~~

- Added CFB mode
- Fully working with PEP 272
- Raising NotImplementedError only on PGP-CFB (OpenPGP) mode
- Wheel support and changelog (0.2.1)

(unreleased) Version 0.2.1 - dev; Jul 10, 2014
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

- Added better wheel support for uploading (just for me) with a setup.cfg
- Added this file (auto uploading on pypi/warehouse and github)
- (upload.py for github)

Version 0.2.0; Jul 9, 2014
~~~~~~~~~~~~~~~~~~~~~~~~~~

- Added a test feature; warning in CTR
- Raises warning on CTR, added a handler that CTR will not crash anymore ;)

Version 0.1.1; Jul 9, 2014
~~~~~~~~~~~~~~~~~~~~~~~~~~

- Module raises a NotImplementedError on CFB
- Minor changes

Version 0.1; Jun 22, 2014
~~~~~~~~~~~~~~~~~~~~~~~~~

- Initial release
- Supports all mode except CFB
- Buggy CTR ( "ÃŸ" = "\\xc3\\x9f" )
- Working with PEP 272, default mode is ECB


