Difference between revisions of "Sage Cross Reference Table of Wishes and Availability"
Jump to navigation
Jump to search
m |
|||
(7 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
'''Back to [[SAGE & cryptology]] |
'''Back to [[SAGE & cryptology]] |
||
+ | ==Table== |
||
− | |||
'''Legend''' |
'''Legend''' |
||
* C: wrapped C code |
* C: wrapped C code |
||
Line 20: | Line 20: | ||
!TLS Lite |
!TLS Lite |
||
|- style="background-color:#dddddd;" |
|- style="background-color:#dddddd;" |
||
− | ! align="left" colspan="8"| |
+ | ! align="left" colspan="8"| |
+ | ===Block Ciphers=== |
||
|- style="background-color:#eeeeee;" |
|- style="background-color:#eeeeee;" |
||
− | | align="left" colspan="8"| |
+ | | align="left" colspan="8"| |
+ | ====Block cipher algorithms==== |
||
|- |
|- |
||
− | | Serpent || || || || || ||[http://psionicist.online.fr/code/] |
+ | | Serpent || || || || || ||[http://psionicist.online.fr/code/][http://www.cl.cam.ac.uk/~fms27/serpent/serpent.py.html] |
|- |
|- |
||
| Blowfish || || C || C || || ||[http://www.4dsolutions.net/cgi-bin/py2html.cgi?script=/ocn/python/blowfish.py] [http://www.michaelgilfix.com/files/blowfish.py] [http://ivoras.sharanet.org/projects/blowfish.html] |
| Blowfish || || C || C || || ||[http://www.4dsolutions.net/cgi-bin/py2html.cgi?script=/ocn/python/blowfish.py] [http://www.michaelgilfix.com/files/blowfish.py] [http://ivoras.sharanet.org/projects/blowfish.html] |
||
Line 34: | Line 36: | ||
| DES || || C || || C || ||[http://twhiteman.netfirms.com/des.html] |
| DES || || C || || C || ||[http://twhiteman.netfirms.com/des.html] |
||
|- |
|- |
||
− | | 3DES || || C || || C || |
+ | | 3DES || || C || || C || ||[http://twhiteman.netfirms.com/des.html] |
|- |
|- |
||
− | | AES || || C || || C || Py |
+ | | AES || || C || || C || Py ||[http://psionicist.online.fr/code/] [http://jclement.ca/software/pyrijndael/][http://bitconjurer.org/rijndael.py tlslite implementation] |
|- |
|- |
||
| Present || || || || || || |
| Present || || || || || || |
||
|- style="background-color:#eeeeee;" |
|- style="background-color:#eeeeee;" |
||
− | | align="left" colspan="8"| |
+ | | align="left" colspan="8"| |
+ | ====Modes of operation==== |
||
|- |
|- |
||
| CMAC || || || || || || |
| CMAC || || || || || || |
||
Line 54: | Line 57: | ||
| ECB || || C || || C || || |
| ECB || || C || || C || || |
||
|- |
|- |
||
− | | CBC || || C || || C || |
+ | | CBC || || C || || C || Py || |
|- |
|- |
||
| CTR || || C || || || || |
| CTR || || C || || || || |
||
Line 64: | Line 67: | ||
| MDC-2 || || || || || || |
| MDC-2 || || || || || || |
||
|- style="background-color:#eeeeee;" |
|- style="background-color:#eeeeee;" |
||
− | | align="left" colspan="8"| |
+ | | align="left" colspan="8"| |
+ | ====Paddings==== |
||
|- |
|- |
||
| bit padding || || || || || || |
| bit padding || || || || || || |
||
Line 78: | Line 82: | ||
| ANSI X.923 || || || || || || |
| ANSI X.923 || || || || || || |
||
|- style="background-color:#dddddd;" |
|- style="background-color:#dddddd;" |
||
− | ! align="left" colspan="8"| |
+ | ! align="left" colspan="8"| |
+ | ===Stream Ciphers=== |
||
|- |
|- |
||
| RC4 || || C || || C || Py ||[http://www.amk.ca/python/writing/crypto-curiosa.html] |
| RC4 || || C || || C || Py ||[http://www.amk.ca/python/writing/crypto-curiosa.html] |
||
Line 108: | Line 113: | ||
| Self-Shrinking generator|| || || || || || |
| Self-Shrinking generator|| || || || || || |
||
|- style="background-color:#dddddd;" |
|- style="background-color:#dddddd;" |
||
− | ! align="left" colspan="8"| |
+ | ! align="left" colspan="8"| |
+ | ===One-way Functions=== |
||
|- |
|- |
||
− | | MD5 || Py || C || || C || ||[http://codespeak.net/svn/pypy/dist/pypy/lib/md5.py] |
+ | | MD5 || Py(C) || C || || C || ||[http://codespeak.net/svn/pypy/dist/pypy/lib/md5.py pypy] |
|- |
|- |
||
− | | SHA Family || Py || C (SHA-1 & 256)|| || C (only SHA1) || ||[http://codespeak.net/svn/pypy/dist/pypy/lib/sha.py] |
+ | | SHA Family || Py(C) || C (SHA-1 & 256)|| || C (only SHA1) || ||[http://codespeak.net/svn/pypy/dist/pypy/lib/sha.py pypy(SHA1)][https://vcs.slash-me.net/snippets/sha256/sha256.py SHA256] |
|- |
|- |
||
| Whirlpool || || || || || ||[http://psionicist.online.fr/code/] |
| Whirlpool || || || || || ||[http://psionicist.online.fr/code/] |
||
|- |
|- |
||
− | | RipeMD || || |
+ | | RipeMD || || Py || || C (ripemd-160) || ||[http://psionicist.online.fr/code/] |
|- |
|- |
||
| MDC-2 || || || || || || |
| MDC-2 || || || || || || |
||
Line 128: | Line 134: | ||
| Miyaguchi-Preneel || || || || || || |
| Miyaguchi-Preneel || || || || || || |
||
|- |
|- |
||
− | | HMAC || Py || |
+ | | HMAC || Py || Py || || C*** || Py || |
|- |
|- |
||
| NMAC || || || || || || |
| NMAC || || || || || || |
||
Line 134: | Line 140: | ||
| KDF family || || || || || || |
| KDF family || || || || || || |
||
|- |
|- |
||
− | | PBKDF2 || || || || C*** || ||[http:// |
+ | | PBKDF2 || || || || C*** || ||[http://www.dlitz.net/software/python-pbkdf2/] |
|- style="background-color:#dddddd;" |
|- style="background-color:#dddddd;" |
||
− | ! align="left" colspan="8"| |
+ | ! align="left" colspan="8"| |
+ | |||
+ | ===Public-key cryptography=== |
||
|- |
|- |
||
| Misc || || || || || || |
| Misc || || || || || || |
||
|- style="background-color:#eeeeee;" |
|- style="background-color:#eeeeee;" |
||
− | | align="left" colspan="8"| |
+ | | align="left" colspan="8"| |
+ | ====ECC==== |
||
|- |
|- |
||
| all coordinate sys. || || || || || || |
| all coordinate sys. || || || || || || |
||
Line 146: | Line 155: | ||
|cf [http://www.hyperelliptic.org/EFD/ EFD] || || || || || || |
|cf [http://www.hyperelliptic.org/EFD/ EFD] || || || || || || |
||
|- style="background-color:#eeeeee;" |
|- style="background-color:#eeeeee;" |
||
− | | align="left" colspan="8"| |
+ | | align="left" colspan="8"| |
+ | ====Other==== |
||
|- |
|- |
||
| RSA || || C** || || C (PKCS1) || Py ||[http://pypi.python.org/pypi/asym/0.1.0] [http://www.stuvel.eu/rsa] |
| RSA || || C** || || C (PKCS1) || Py ||[http://pypi.python.org/pypi/asym/0.1.0] [http://www.stuvel.eu/rsa] |
||
Line 162: | Line 172: | ||
| NTRUE || || || || || || |
| NTRUE || || || || || || |
||
|- style="background-color:#dddddd;" |
|- style="background-color:#dddddd;" |
||
− | ! align="left" colspan="8"| |
+ | ! align="left" colspan="8"| |
+ | ===Pseudo-random generators=== |
||
|- |
|- |
||
| cf NIST || || || || || || |
| cf NIST || || || || || || |
||
|- |
|- |
||
| Mersenne Twister || Py || || || || || |
| Mersenne Twister || Py || || || || || |
||
− | |- |
||
− | | || || || || || || |
||
|- style="background-color:#dddddd;" |
|- style="background-color:#dddddd;" |
||
− | ! align="left" colspan="8"| |
+ | ! align="left" colspan="8"| |
+ | ===Cryptanalysis tools=== |
||
|- |
|- |
||
| align="left" colspan="8"|Entropy finder: [http://deadhacker.com/2007/05/13/finding-entropy-in-binary-files/] and [http://blog.dkbza.org/2007/05/scanning-data-for-entropy-anomalies.html] then [http://blog.dkbza.org/2007/07/scanning-data-for-entropy-anomalies-ii.html] |
| align="left" colspan="8"|Entropy finder: [http://deadhacker.com/2007/05/13/finding-entropy-in-binary-files/] and [http://blog.dkbza.org/2007/05/scanning-data-for-entropy-anomalies.html] then [http://blog.dkbza.org/2007/07/scanning-data-for-entropy-anomalies-ii.html] |
||
− | |- |
||
− | | || || || || || || |
||
− | |- |
||
− | | || || || || || || |
||
− | |- |
||
− | | || || || || || || |
||
|} |
|} |
||
Latest revision as of 17:19, 15 October 2008
Back to SAGE & cryptology
Table
Legend
- C: wrapped C code
- Py: pure python code
- Sage: sage code
Sage | optional packages | other python packages | python code available | ||||
---|---|---|---|---|---|---|---|
PyCrypto | PyOpenSSL | M2Crypto | TLS Lite | ||||
Block Ciphers | |||||||
Block cipher algorithms | |||||||
Serpent | [1][2] | ||||||
Blowfish | C | C | [3] [4] [5] | ||||
Twofish | [6] | ||||||
Idea | C | C | |||||
DES | C | C | [7] | ||||
3DES | C | C | [8] | ||||
AES | C | C | Py | [9] [10]tlslite implementation | |||
Present | |||||||
Modes of operation | |||||||
CMAC | |||||||
XCBC | book* | ||||||
CBC-MAC | book* | ||||||
CCM | |||||||
GCM | |||||||
ECB | C | C | |||||
CBC | C | C | Py | ||||
CTR | C | ||||||
LRW | |||||||
XTS | [11] | ||||||
MDC-2 | |||||||
Paddings | |||||||
bit padding | |||||||
zeros | |||||||
PKCS7 | C | ||||||
PKCS12 | |||||||
ISO 10126 | |||||||
ANSI X.923 | |||||||
Stream Ciphers | |||||||
RC4 | C | C | Py | [12] | |||
A5/1 A5/2 | |||||||
SNOW2 SNOW3G | |||||||
HC-128 | |||||||
RABBIT | |||||||
Salsa 20/12 | |||||||
SOSEMANUK | |||||||
F-FCSR | |||||||
Grain | |||||||
MICKEY | |||||||
Trivium | |||||||
LFSR | Sage | ||||||
Shrinking generator | Sage | ||||||
Self-Shrinking generator | |||||||
One-way Functions | |||||||
MD5 | Py(C) | C | C | pypy | |||
SHA Family | Py(C) | C (SHA-1 & 256) | C (only SHA1) | pypy(SHA1)SHA256 | |||
Whirlpool | [13] | ||||||
RipeMD | Py | C (ripemd-160) | [14] | ||||
MDC-2 | |||||||
RadioGatun | |||||||
Davies-Meyer | |||||||
Matyas-Meyer-Oseas | |||||||
Miyaguchi-Preneel | |||||||
HMAC | Py | Py | C*** | Py | |||
NMAC | |||||||
KDF family | |||||||
PBKDF2 | C*** | [15] | |||||
Public-key cryptography | |||||||
Misc | |||||||
ECC | |||||||
all coordinate sys. | |||||||
cf EFD | |||||||
Other | |||||||
RSA | C** | C (PKCS1) | Py | [16] [17] | |||
DSA | C | C | |||||
ElGamal | C | ||||||
DH | C | ||||||
XTR | |||||||
Paillier | |||||||
NTRUE | |||||||
Pseudo-random generators | |||||||
cf NIST | |||||||
Mersenne Twister | Py | ||||||
Cryptanalysis tools | |||||||
Entropy finder: [18] and [19] then [20] |
/**Check if PKCS#1 v1.5/v2.1 and if CTR
/***See EVP.py
book*: C-code available in Oreilly's OpenSSL book