enigmapython 0.1.1__tar.gz → 0.1.5__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (64) hide show
  1. enigmapython-0.1.5/PKG-INFO +126 -0
  2. enigmapython-0.1.5/enigmapython.egg-info/PKG-INFO +126 -0
  3. {enigmapython-0.1.1 → enigmapython-0.1.5}/setup.py +7 -2
  4. enigmapython-0.1.1/PKG-INFO +0 -7
  5. enigmapython-0.1.1/enigmapython.egg-info/PKG-INFO +0 -7
  6. {enigmapython-0.1.1 → enigmapython-0.1.5}/enigmapython/Enigma.py +0 -0
  7. {enigmapython-0.1.1 → enigmapython-0.1.5}/enigmapython/EnigmaI.py +0 -0
  8. {enigmapython-0.1.1 → enigmapython-0.1.5}/enigmapython/EnigmaINorway.py +0 -0
  9. {enigmapython-0.1.1 → enigmapython-0.1.5}/enigmapython/EnigmaINorwayRotorI.py +0 -0
  10. {enigmapython-0.1.1 → enigmapython-0.1.5}/enigmapython/EnigmaINorwayRotorII.py +0 -0
  11. {enigmapython-0.1.1 → enigmapython-0.1.5}/enigmapython/EnigmaINorwayRotorIII.py +0 -0
  12. {enigmapython-0.1.1 → enigmapython-0.1.5}/enigmapython/EnigmaINorwayRotorIV.py +0 -0
  13. {enigmapython-0.1.1 → enigmapython-0.1.5}/enigmapython/EnigmaINorwayRotorV.py +0 -0
  14. {enigmapython-0.1.1 → enigmapython-0.1.5}/enigmapython/EnigmaIRotorI.py +0 -0
  15. {enigmapython-0.1.1 → enigmapython-0.1.5}/enigmapython/EnigmaIRotorII.py +0 -0
  16. {enigmapython-0.1.1 → enigmapython-0.1.5}/enigmapython/EnigmaIRotorIII.py +0 -0
  17. {enigmapython-0.1.1 → enigmapython-0.1.5}/enigmapython/EnigmaIRotorIV.py +0 -0
  18. {enigmapython-0.1.1 → enigmapython-0.1.5}/enigmapython/EnigmaIRotorV.py +0 -0
  19. {enigmapython-0.1.1 → enigmapython-0.1.5}/enigmapython/EnigmaISonder.py +0 -0
  20. {enigmapython-0.1.1 → enigmapython-0.1.5}/enigmapython/EnigmaISonderRotorI.py +0 -0
  21. {enigmapython-0.1.1 → enigmapython-0.1.5}/enigmapython/EnigmaISonderRotorII.py +0 -0
  22. {enigmapython-0.1.1 → enigmapython-0.1.5}/enigmapython/EnigmaISonderRotorIII.py +0 -0
  23. {enigmapython-0.1.1 → enigmapython-0.1.5}/enigmapython/EnigmaM3.py +0 -0
  24. {enigmapython-0.1.1 → enigmapython-0.1.5}/enigmapython/EnigmaM3RotorI.py +0 -0
  25. {enigmapython-0.1.1 → enigmapython-0.1.5}/enigmapython/EnigmaM3RotorII.py +0 -0
  26. {enigmapython-0.1.1 → enigmapython-0.1.5}/enigmapython/EnigmaM3RotorIII.py +0 -0
  27. {enigmapython-0.1.1 → enigmapython-0.1.5}/enigmapython/EnigmaM3RotorIV.py +0 -0
  28. {enigmapython-0.1.1 → enigmapython-0.1.5}/enigmapython/EnigmaM3RotorV.py +0 -0
  29. {enigmapython-0.1.1 → enigmapython-0.1.5}/enigmapython/EnigmaM3RotorVI.py +0 -0
  30. {enigmapython-0.1.1 → enigmapython-0.1.5}/enigmapython/EnigmaM3RotorVII.py +0 -0
  31. {enigmapython-0.1.1 → enigmapython-0.1.5}/enigmapython/EnigmaM3RotorVIII.py +0 -0
  32. {enigmapython-0.1.1 → enigmapython-0.1.5}/enigmapython/EnigmaM4.py +0 -0
  33. {enigmapython-0.1.1 → enigmapython-0.1.5}/enigmapython/EnigmaM4RotorBeta.py +0 -0
  34. {enigmapython-0.1.1 → enigmapython-0.1.5}/enigmapython/EnigmaM4RotorGamma.py +0 -0
  35. {enigmapython-0.1.1 → enigmapython-0.1.5}/enigmapython/EnigmaM4RotorI.py +0 -0
  36. {enigmapython-0.1.1 → enigmapython-0.1.5}/enigmapython/EnigmaM4RotorII.py +0 -0
  37. {enigmapython-0.1.1 → enigmapython-0.1.5}/enigmapython/EnigmaM4RotorIII.py +0 -0
  38. {enigmapython-0.1.1 → enigmapython-0.1.5}/enigmapython/EnigmaM4RotorIV.py +0 -0
  39. {enigmapython-0.1.1 → enigmapython-0.1.5}/enigmapython/EnigmaM4RotorV.py +0 -0
  40. {enigmapython-0.1.1 → enigmapython-0.1.5}/enigmapython/EnigmaM4RotorVI.py +0 -0
  41. {enigmapython-0.1.1 → enigmapython-0.1.5}/enigmapython/EnigmaM4RotorVII.py +0 -0
  42. {enigmapython-0.1.1 → enigmapython-0.1.5}/enigmapython/EnigmaM4RotorVIII.py +0 -0
  43. {enigmapython-0.1.1 → enigmapython-0.1.5}/enigmapython/Etw.py +0 -0
  44. {enigmapython-0.1.1 → enigmapython-0.1.5}/enigmapython/EtwPassthrough.py +0 -0
  45. {enigmapython-0.1.1 → enigmapython-0.1.5}/enigmapython/Observable.py +0 -0
  46. {enigmapython-0.1.1 → enigmapython-0.1.5}/enigmapython/Observer.py +0 -0
  47. {enigmapython-0.1.1 → enigmapython-0.1.5}/enigmapython/Plugboard.py +0 -0
  48. {enigmapython-0.1.1 → enigmapython-0.1.5}/enigmapython/PlugboardPassthrough.py +0 -0
  49. {enigmapython-0.1.1 → enigmapython-0.1.5}/enigmapython/Reflector.py +0 -0
  50. {enigmapython-0.1.1 → enigmapython-0.1.5}/enigmapython/ReflectorNorwayUKW.py +0 -0
  51. {enigmapython-0.1.1 → enigmapython-0.1.5}/enigmapython/ReflectorSonderUKW.py +0 -0
  52. {enigmapython-0.1.1 → enigmapython-0.1.5}/enigmapython/ReflectorUKWA.py +0 -0
  53. {enigmapython-0.1.1 → enigmapython-0.1.5}/enigmapython/ReflectorUKWB.py +0 -0
  54. {enigmapython-0.1.1 → enigmapython-0.1.5}/enigmapython/ReflectorUKWBThin.py +0 -0
  55. {enigmapython-0.1.1 → enigmapython-0.1.5}/enigmapython/ReflectorUKWC.py +0 -0
  56. {enigmapython-0.1.1 → enigmapython-0.1.5}/enigmapython/ReflectorUKWCThin.py +0 -0
  57. {enigmapython-0.1.1 → enigmapython-0.1.5}/enigmapython/Rotor.py +0 -0
  58. {enigmapython-0.1.1 → enigmapython-0.1.5}/enigmapython/SwappablePlugboard.py +0 -0
  59. {enigmapython-0.1.1 → enigmapython-0.1.5}/enigmapython/Utils.py +0 -0
  60. {enigmapython-0.1.1 → enigmapython-0.1.5}/enigmapython/__init__.py +0 -0
  61. {enigmapython-0.1.1 → enigmapython-0.1.5}/enigmapython.egg-info/SOURCES.txt +0 -0
  62. {enigmapython-0.1.1 → enigmapython-0.1.5}/enigmapython.egg-info/dependency_links.txt +0 -0
  63. {enigmapython-0.1.1 → enigmapython-0.1.5}/enigmapython.egg-info/top_level.txt +0 -0
  64. {enigmapython-0.1.1 → enigmapython-0.1.5}/setup.cfg +0 -0
@@ -0,0 +1,126 @@
1
+ Metadata-Version: 2.1
2
+ Name: enigmapython
3
+ Version: 0.1.5
4
+ Summary: A simple yet faithful library to emulate different Enigma machines models using Python
5
+ Home-page: https://github.com/denismaggior8/enigma-python
6
+ Author: Denis Maggiorotto
7
+ Description-Content-Type: text/markdown
8
+
9
+ # Enigma Python library
10
+
11
+ ![](img/logo.jpg)
12
+
13
+ ## About
14
+
15
+ Welcome to **enigmapython**, a Python package designed to emulate the legendary Enigma cryptographic machine used during World War II. **enigmapython** provides a faithful implementation of the Enigma machine, allowing users to explore and understand the workings of this historic device.
16
+
17
+ ## Key Features
18
+
19
+ - **Flexible Configuration**: **enigmapython** allows customization of the Enigma machine configuration, enabling users to experiment with different rotor settings, reflectors, and ring positions.
20
+ - **Easy Extension**: **enigmapython** is designed to be easily extensible, allowing developers to add new features or enhance the existing implementation.
21
+ - **Simple yet faithful**: don't be fooled by its simplicity; **enigmapython** implements 100% the algorithms of many Enigma machine models, allowing to decode a message that has been encoded by a real Enigma machine and also the contrary.
22
+
23
+ ## Machines implementations
24
+
25
+ The following Enigma machine models (along with their rotors, reflectors and plugboards) have been implemented:
26
+
27
+ ### Enigma I
28
+
29
+ | Scrambler | Wiring | Notch | Implemented |
30
+ |------- |---------------------------- |------- |------------- |
31
+ | Plugboard (passthrough+swappable) | N/A | N/A | ✅ |
32
+ | ETW (passthrough) | abcdefghijklmnopqrstuvwxyz | N/A | ✅ |
33
+ | Rotor I | ekmflgdqvzntowyhxuspaibrcj | q | ✅ |
34
+ | Rotor II | ajdksiruxblhwtmcqgznpyfvoe | e | ✅ |
35
+ | Rotor III | bdfhjlcprtxvznyeiwgakmusqo | v | ✅ |
36
+ | Reflector A | ejmzalyxvbwfcrquontspikhgd | N/A | ✅ |
37
+ | Reflector B | yruhqsldpxngokmiebfzcwvjat | N/A | ✅ |
38
+ | Reflector C | fvpjiaoyedrzxwgctkuqsbnmhl | N/A | ✅ |
39
+
40
+ ### Enigma I Norway (Norenigma)
41
+
42
+ | Scrambler | Wiring | Notch | Implemented |
43
+ |------- |---------------------------- |------- |------------- |
44
+ | Plugboard (passthrough+swappable) | N/A | N/A | ✅ |
45
+ | ETW (passthrough) | abcdefghijklmnopqrstuvwxyz | N/A | ✅ |
46
+ | Rotor I | wtokasuyvrbxjhqcpzefmdinlg | q | ✅ |
47
+ | Rotor II | gjlpubswemctqvhxaofzdrkyni | e | ✅ |
48
+ | Rotor III | jwfmhnbpusdytixvzgrqlaoekc | v | ✅ |
49
+ | Rotor IV | fgzjmvxepbwshqtliudykcnrao | j | ✅ |
50
+ | Rotor V | hejxqotzbvfdascilwpgynmurk | z | ✅ |
51
+ | Reflector UKW | mowjypuxndsraibfvlkzgqchet | N/A | ✅ |
52
+
53
+ ### Enigma I Sondermaschine (special machine)
54
+
55
+ | Scrambler | Wiring | Notch | Implemented |
56
+ |------- |---------------------------- |------- |------------- |
57
+ | Plugboard (passthrough+swappable) | N/A | N/A | ✅ |
58
+ | ETW (passthrough) | abcdefghijklmnopqrstuvwxyz | N/A | ✅ |
59
+ | Rotor I | veosirzujdqckgwypnxaflthmb | q | ✅ |
60
+ | Rotor II | uemoatqlshpkcyfwjzbgvxidnr | e | ✅ |
61
+ | Rotor III | tzhxmbsipnurjfdkeqvcwglaoy | v | ✅ |
62
+ | Reflector UKW | ciagsndrbytpzfulvhekoqxwjm | N/A | ✅ |
63
+
64
+
65
+ ### Enigma M3
66
+
67
+ | Scrambler | Wiring | Notch | Implemented |
68
+ |------- |---------------------------- |------- |------------- |
69
+ | Plugboard (passthrough+swappable) | N/A | N/A | ✅ |
70
+ | ETW (passthrough) | abcdefghijklmnopqrstuvwxyz | N/A | ✅ |
71
+ | Rotor I | ekmflgdqvzntowyhxuspaibrcj | q | ✅ |
72
+ | Rotor II | ajdksiruxblhwtmcqgznpyfvoe | e | ✅ |
73
+ | Rotor III | bdfhjlcprtxvznyeiwgakmusqo | v | ✅ |
74
+ | Rotor IV | esovpzjayquirhxlnftgkdcmwb | j | ✅ |
75
+ | Rotor V | vzbrgityupsdnhlxawmjqofeck | z | ✅ |
76
+ | Rotor VI | jpgvoumfyqbenhzrdkasxlictw | m, z | ✅ |
77
+ | Rotor VII | nzjhgrcxmyswboufaivlpekqdt | m, z | ✅ |
78
+ | Rotor VIII | fkqhtlxocbjspdzramewniuygv | m, z | ✅ |
79
+ | Reflector B | yruhqsldpxngokmiebfzcwvjat | N/A | ✅ |
80
+ | Reflector C | fvpjiaoyedrzxwgctkuqsbnmhl | N/A | ✅ |
81
+
82
+ ### Enigma M4
83
+
84
+ | Scrambler | Wiring | Notch | Implemented |
85
+ |------- |---------------------------- |------- |------------- |
86
+ | Plugboard (passthrough+swappable) | N/A | N/A | ✅ |
87
+ | ETW (passthrough) | abcdefghijklmnopqrstuvwxyz | N/A | ✅ |
88
+ | Rotor I | ekmflgdqvzntowyhxuspaibrcj | q | ✅ |
89
+ | Rotor II | ajdksiruxblhwtmcqgznpyfvoe | e | ✅ |
90
+ | Rotor III | bdfhjlcprtxvznyeiwgakmusqo | v | ✅ |
91
+ | Rotor IV | esovpzjayquirhxlnftgkdcmwb | j | ✅ |
92
+ | Rotor V | vzbrgityupsdnhlxawmjqofeck | z | ✅ |
93
+ | Rotor VI | jpgvoumfyqbenhzrdkasxlictw | m, z | ✅ |
94
+ | Rotor VII | nzjhgrcxmyswboufaivlpekqdt | m, z | ✅ |
95
+ | Rotor VIII | fkqhtlxocbjspdzramewniuygv | m, z | ✅ |
96
+ | Beta | leyjvcnixwpbqmdrtakzgfuhos | N/A | ✅ |
97
+ | Gamma | fsokanuerhmbtiycwlqpzxvgjd | N/A | ✅ |
98
+ | Reflector B Thin | enkqauywjicopblmdxzvfthrgs | N/A | ✅ |
99
+ | Reflector C Thin | rdobjntkvehmlfcwzaxgyipsuq | N/A | ✅ |
100
+
101
+ ## Prerequisites
102
+
103
+ - Python 3.11
104
+ - Clone this repo, checkout the desired branch/tag and install requirements (`pip install -r requirements.txt`) or directly from PyPI using `pip install enigmapython`
105
+
106
+ ## Getting started
107
+
108
+ Please have a look of the [examples](./examples) folder
109
+
110
+ ## Documentation
111
+
112
+ TBD, for now... code (and comments) are the documentation
113
+
114
+ ## Credits/references
115
+
116
+ - Early days experiments with Python and Enigma (where this repo comes from) can be found at: https://github.com/denismaggior8/enigma-cypher
117
+ - Rotors wirings have been taken from Crypto Museum at this link https://www.cryptomuseum.com/crypto/enigma/wiring.htm
118
+ - Thanks to
119
+ - Piotte13 https://piotte13.github.io/enigma-cipher/
120
+ - Cryptii https://cryptii.com
121
+ - PyEnigma https://pypi.org/project/pyenigma/
122
+ - 101 computing https://www.101computing.net/enigma-machine-emulator/
123
+
124
+ for having helped me testing the correctness of the generated ciphertexts
125
+
126
+
@@ -0,0 +1,126 @@
1
+ Metadata-Version: 2.1
2
+ Name: enigmapython
3
+ Version: 0.1.5
4
+ Summary: A simple yet faithful library to emulate different Enigma machines models using Python
5
+ Home-page: https://github.com/denismaggior8/enigma-python
6
+ Author: Denis Maggiorotto
7
+ Description-Content-Type: text/markdown
8
+
9
+ # Enigma Python library
10
+
11
+ ![](img/logo.jpg)
12
+
13
+ ## About
14
+
15
+ Welcome to **enigmapython**, a Python package designed to emulate the legendary Enigma cryptographic machine used during World War II. **enigmapython** provides a faithful implementation of the Enigma machine, allowing users to explore and understand the workings of this historic device.
16
+
17
+ ## Key Features
18
+
19
+ - **Flexible Configuration**: **enigmapython** allows customization of the Enigma machine configuration, enabling users to experiment with different rotor settings, reflectors, and ring positions.
20
+ - **Easy Extension**: **enigmapython** is designed to be easily extensible, allowing developers to add new features or enhance the existing implementation.
21
+ - **Simple yet faithful**: don't be fooled by its simplicity; **enigmapython** implements 100% the algorithms of many Enigma machine models, allowing to decode a message that has been encoded by a real Enigma machine and also the contrary.
22
+
23
+ ## Machines implementations
24
+
25
+ The following Enigma machine models (along with their rotors, reflectors and plugboards) have been implemented:
26
+
27
+ ### Enigma I
28
+
29
+ | Scrambler | Wiring | Notch | Implemented |
30
+ |------- |---------------------------- |------- |------------- |
31
+ | Plugboard (passthrough+swappable) | N/A | N/A | ✅ |
32
+ | ETW (passthrough) | abcdefghijklmnopqrstuvwxyz | N/A | ✅ |
33
+ | Rotor I | ekmflgdqvzntowyhxuspaibrcj | q | ✅ |
34
+ | Rotor II | ajdksiruxblhwtmcqgznpyfvoe | e | ✅ |
35
+ | Rotor III | bdfhjlcprtxvznyeiwgakmusqo | v | ✅ |
36
+ | Reflector A | ejmzalyxvbwfcrquontspikhgd | N/A | ✅ |
37
+ | Reflector B | yruhqsldpxngokmiebfzcwvjat | N/A | ✅ |
38
+ | Reflector C | fvpjiaoyedrzxwgctkuqsbnmhl | N/A | ✅ |
39
+
40
+ ### Enigma I Norway (Norenigma)
41
+
42
+ | Scrambler | Wiring | Notch | Implemented |
43
+ |------- |---------------------------- |------- |------------- |
44
+ | Plugboard (passthrough+swappable) | N/A | N/A | ✅ |
45
+ | ETW (passthrough) | abcdefghijklmnopqrstuvwxyz | N/A | ✅ |
46
+ | Rotor I | wtokasuyvrbxjhqcpzefmdinlg | q | ✅ |
47
+ | Rotor II | gjlpubswemctqvhxaofzdrkyni | e | ✅ |
48
+ | Rotor III | jwfmhnbpusdytixvzgrqlaoekc | v | ✅ |
49
+ | Rotor IV | fgzjmvxepbwshqtliudykcnrao | j | ✅ |
50
+ | Rotor V | hejxqotzbvfdascilwpgynmurk | z | ✅ |
51
+ | Reflector UKW | mowjypuxndsraibfvlkzgqchet | N/A | ✅ |
52
+
53
+ ### Enigma I Sondermaschine (special machine)
54
+
55
+ | Scrambler | Wiring | Notch | Implemented |
56
+ |------- |---------------------------- |------- |------------- |
57
+ | Plugboard (passthrough+swappable) | N/A | N/A | ✅ |
58
+ | ETW (passthrough) | abcdefghijklmnopqrstuvwxyz | N/A | ✅ |
59
+ | Rotor I | veosirzujdqckgwypnxaflthmb | q | ✅ |
60
+ | Rotor II | uemoatqlshpkcyfwjzbgvxidnr | e | ✅ |
61
+ | Rotor III | tzhxmbsipnurjfdkeqvcwglaoy | v | ✅ |
62
+ | Reflector UKW | ciagsndrbytpzfulvhekoqxwjm | N/A | ✅ |
63
+
64
+
65
+ ### Enigma M3
66
+
67
+ | Scrambler | Wiring | Notch | Implemented |
68
+ |------- |---------------------------- |------- |------------- |
69
+ | Plugboard (passthrough+swappable) | N/A | N/A | ✅ |
70
+ | ETW (passthrough) | abcdefghijklmnopqrstuvwxyz | N/A | ✅ |
71
+ | Rotor I | ekmflgdqvzntowyhxuspaibrcj | q | ✅ |
72
+ | Rotor II | ajdksiruxblhwtmcqgznpyfvoe | e | ✅ |
73
+ | Rotor III | bdfhjlcprtxvznyeiwgakmusqo | v | ✅ |
74
+ | Rotor IV | esovpzjayquirhxlnftgkdcmwb | j | ✅ |
75
+ | Rotor V | vzbrgityupsdnhlxawmjqofeck | z | ✅ |
76
+ | Rotor VI | jpgvoumfyqbenhzrdkasxlictw | m, z | ✅ |
77
+ | Rotor VII | nzjhgrcxmyswboufaivlpekqdt | m, z | ✅ |
78
+ | Rotor VIII | fkqhtlxocbjspdzramewniuygv | m, z | ✅ |
79
+ | Reflector B | yruhqsldpxngokmiebfzcwvjat | N/A | ✅ |
80
+ | Reflector C | fvpjiaoyedrzxwgctkuqsbnmhl | N/A | ✅ |
81
+
82
+ ### Enigma M4
83
+
84
+ | Scrambler | Wiring | Notch | Implemented |
85
+ |------- |---------------------------- |------- |------------- |
86
+ | Plugboard (passthrough+swappable) | N/A | N/A | ✅ |
87
+ | ETW (passthrough) | abcdefghijklmnopqrstuvwxyz | N/A | ✅ |
88
+ | Rotor I | ekmflgdqvzntowyhxuspaibrcj | q | ✅ |
89
+ | Rotor II | ajdksiruxblhwtmcqgznpyfvoe | e | ✅ |
90
+ | Rotor III | bdfhjlcprtxvznyeiwgakmusqo | v | ✅ |
91
+ | Rotor IV | esovpzjayquirhxlnftgkdcmwb | j | ✅ |
92
+ | Rotor V | vzbrgityupsdnhlxawmjqofeck | z | ✅ |
93
+ | Rotor VI | jpgvoumfyqbenhzrdkasxlictw | m, z | ✅ |
94
+ | Rotor VII | nzjhgrcxmyswboufaivlpekqdt | m, z | ✅ |
95
+ | Rotor VIII | fkqhtlxocbjspdzramewniuygv | m, z | ✅ |
96
+ | Beta | leyjvcnixwpbqmdrtakzgfuhos | N/A | ✅ |
97
+ | Gamma | fsokanuerhmbtiycwlqpzxvgjd | N/A | ✅ |
98
+ | Reflector B Thin | enkqauywjicopblmdxzvfthrgs | N/A | ✅ |
99
+ | Reflector C Thin | rdobjntkvehmlfcwzaxgyipsuq | N/A | ✅ |
100
+
101
+ ## Prerequisites
102
+
103
+ - Python 3.11
104
+ - Clone this repo, checkout the desired branch/tag and install requirements (`pip install -r requirements.txt`) or directly from PyPI using `pip install enigmapython`
105
+
106
+ ## Getting started
107
+
108
+ Please have a look of the [examples](./examples) folder
109
+
110
+ ## Documentation
111
+
112
+ TBD, for now... code (and comments) are the documentation
113
+
114
+ ## Credits/references
115
+
116
+ - Early days experiments with Python and Enigma (where this repo comes from) can be found at: https://github.com/denismaggior8/enigma-cypher
117
+ - Rotors wirings have been taken from Crypto Museum at this link https://www.cryptomuseum.com/crypto/enigma/wiring.htm
118
+ - Thanks to
119
+ - Piotte13 https://piotte13.github.io/enigma-cipher/
120
+ - Cryptii https://cryptii.com
121
+ - PyEnigma https://pypi.org/project/pyenigma/
122
+ - 101 computing https://www.101computing.net/enigma-machine-emulator/
123
+
124
+ for having helped me testing the correctness of the generated ciphertexts
125
+
126
+
@@ -1,13 +1,18 @@
1
1
  from setuptools import setup, find_packages
2
+ from pathlib import Path
3
+
4
+
5
+ this_directory = Path(__file__).parent
6
+ long_description = (this_directory/".."/".."/"README.md").read_text()
2
7
 
3
8
 
4
9
  setup(
5
10
  author="Denis Maggiorotto",
6
- long_description=open('enigmapython/README.txt').read(),
11
+ long_description=long_description,
7
12
  long_description_content_type='text/markdown',
8
13
  url="https://github.com/denismaggior8/enigma-python",
9
14
  name="enigmapython",
10
- version="v0.1.1",
15
+ version="0.1.5",
11
16
  packages=find_packages(
12
17
  # All keyword arguments below are optional:
13
18
  where='.', # '.' by default
@@ -1,7 +0,0 @@
1
- Metadata-Version: 2.1
2
- Name: enigmapython
3
- Version: 0.1.1
4
- Summary: A simple yet faithful library to emulate different Enigma machines models using Python
5
- Home-page: https://github.com/denismaggior8/enigma-python
6
- Author: Denis Maggiorotto
7
- Description-Content-Type: text/markdown
@@ -1,7 +0,0 @@
1
- Metadata-Version: 2.1
2
- Name: enigmapython
3
- Version: 0.1.1
4
- Summary: A simple yet faithful library to emulate different Enigma machines models using Python
5
- Home-page: https://github.com/denismaggior8/enigma-python
6
- Author: Denis Maggiorotto
7
- Description-Content-Type: text/markdown
File without changes