Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Verfügbare kryptographische Software Kathrin Tofall.

Ähnliche Präsentationen


Präsentation zum Thema: "Verfügbare kryptographische Software Kathrin Tofall."—  Präsentation transkript:

1 Verfügbare kryptographische Software Kathrin Tofall

2 Übersicht - Verfügbare Bibliotheken Java, C++, Basic etc. - Beispiele/Einzelprogramme Rjindael, RSA, Elliptische Kurven - Online-benutzbare Verschlüsselungen Vigenère, Caesar usw.

3 Einige Bibliotheken borZoi (http://dragongate-technologies.com/products.html)http://dragongate-technologies.com/products.html Botan (http://botan.randombit.net/)http://botan.randombit.net/ Bouncy Castle Crypto (http://www.bouncycastle.org/latest_releases.html)http://www.bouncycastle.org/latest_releases.html Catacomb (http://www.excessus.demon.co.uk/misc-hacks/#catacomb)http://www.excessus.demon.co.uk/misc-hacks/#catacomb Cryptix (http://www.cryptix.org/)http://www.cryptix.org/ Cryptlib (http://www.cs.auckland.ac.nz/%7Epgut001/cryptlib/)http://www.cs.auckland.ac.nz/%7Epgut001/cryptlib/ Crypto++ (http://www.eskimo.com/~weidai/cryptlib.html)http://www.eskimo.com/~weidai/cryptlib.html Miracl (http://indigo.ie/~mscott/#download)http://indigo.ie/~mscott/#download Secude Toolkit (http://indigo.ie/~mscott/#download)http://indigo.ie/~mscott/#download

4 borZoi C++ Open Source Unterstützt folgende Algorithmen (auf elliptische Kurven) - Elliptic Curve Diffie-Hellman Key Agreement Scheme - ECDSA (Elliptic Curve Digital Signature Algorithm) - ECIES (Elliptic Curve Integrated Encryption Scheme) - AES (Symmetric Encryption Scheme) - SHA-1 (Hash Algorithm) Handbuch Autor: Anthony Mulcahy

5 Botan C++ Open Source Autor: Jack Lloyd Dokumentation Beinhaltet Algorithmen aus folgenden Gebieten: Public Key Algorithmen ( Diffie-Hellman, DSA, ElGamal, Nyberg-Rueppel, Rabin-Williams, RSA ) Stream Ciphers ( ARC4, ISAAC, SEAL, WiderWake4+1)

6 Botan Block Ciphers ( Blowfish, CAST-128, CAST-256, CS-Cipher, DES/DESX/TripleDES, GOST, IDEA, Lion, Luby-Rackoff, MISTY1, RC2, RC5, RC6, Rijndael, SAFER-SK, Serpent, SHARK, Skipjack, Square, TEA, Threeway, Twofish, XTEA ) Hash Functions ( HAS-160, HAVAL, MD2, MD4, MD5, RIPEMD-128, RIPEMD-160, SHA-160, SHA- 256, SHA-384, SHA-512, Tiger, Whirlpool) Checksums ( Adler32, CRC24, CRC32 ) MACs ( ANSI X9.19 MAC, EMAC, HMAC, MD5-MAC)

7 Bouncy Castle Crypto Java Open Source Scheint kein eigenes Handbuch zu haben Enthält unter anderem folgendes: SHA1, MD2, MD4, MD5 AES, DES, IDEA, RSA ElGamal

8 Catacomb C Open Source Kurze Beschreibung mit im Zip-File Unterstützt u.a. Block Ciphers Secret Sharing RSA Padding Support Hash Funktionen Public Key Algorithmen Man braucht zusätzlich mLib (http://www.excessus.demon.co.uk/misc-hacks/#mLib).http://www.excessus.demon.co.uk/misc-hacks/#mLib

9 Cryptix Java Open Source Unterstützt angeblich mehr Algorithmen als jede andere verfügbare Java- Krypto-Bibliothek, u.a. - DES, Rjindael/AES - Block-Cipher - Hash-Funktionen - ElGamal

10 Cryptlib C Open Source Manual Weit verbreitete Verschlüsselungsalgorithmen und -systeme Digitale Unterschriften und Schlüsselerzeugungsroutinen S/MIME, SSL/TLS, Authentifizierungsservices wie CMP and OCSP, Bietet ein komplettes Public/Private-Key Interface

11 Crypto++ C++ Open Source Kurze Beschreibungen im Zip-File Enthält u.a. folgendes: - AES und AES-Kandidaten RC6, MARS, Twofish, Serpent, CAST Symmetric Block Ciphers IDEA, DES, Triple-DES, RC2, RC5, Blowfish, SHARK etc. - Generic Cipher Modes: ECB, CBC, CFB, OFB - Stream Ciphers: Panama, ARC4, BLumBlumShub usw. - Public Key: RSA, DAS, ElGamal, NR, Rabin, Rabin-Williams... - Padding Schemes: PKCS, OAEP...

12 Crypto++ - Schlüsselaustausch: Diffie-Hellmann, Menezes-Qu-Vanstone... - Elliptische Kurven: ECDSA, ECNR, ECIES, ECDH, ECMQV - One-Way-Hash-Functions: SHA1, MD2, MD4, MD Authentifizierungscodes: MD5-MAC, HMAC... - Pseudozufallsgeneratoren: ANSI X9.17, PGPs RandPool - Shamirs Secret Sharing Scheme - Kompression/Dekompression - Schnelle Integer- und Polynomoperationen - Arithmetik über endlichen Körpern (p, 2^n) - Primzahlgenerierung, - verifizierung

13 CrypTool Freeware Demonstrations- und Referenzprogramm für Kryptographie Deutsch und englisch Wird von der TU Darmstadt weiterentwickelt Enthält Programme zum/zur/zu - Verschlüsseln (Cäsar, RSA, AES, elliptische Kurven) - Automatische Analysen für klassische Verschlüsselungsverfahren - Hashfunktionen, Zufallsdaten - Komprimierung/Dekomprimierung

14 CrypTool Online-Hilfe Skript mit eher mathematisch orientierten Informationen zu kryptographischen Verfahren, zu Primzahlen und zur elementaren Zahlentheorie Benutzt folgende Bibliotheken: Secude-Toolkit (Version ) der Secude GmbH für Hashfunktio- nen, symmetrische und asymmetrische Verschlüsselungsverfahren und das SchlüsselmanagementSecude GmbH Miracl (Version 4.4.3) der Shamus Software Ltd für die Langzahl- arithmetik (zur Demonstration des RSA-Kryptosystem und zur Fakto- risierung von Zahlen) zuShamus Software Ltd

15 Miracl C/C++ Open Source Umfangreiches Handbuch, in dem alle Routinen beschrieben werdenHandbuch Folgende Routinen sind z.B. enthalten - Mersenne-Zahlen generieren - Faktorisieren mit Hilfe von Brute Force, Brent-Pollard, Pollard, Williams, Lenstra, Qsieve - DL-Problembehandlung Kangaroo, Pollard-Rho für DL - Public Key Demo zu Diffie-Hellmann/ElGamal, RSA, Standardmethoden für digitale Signaturen, Routinen mir elliptischen Kurven

16 Secude Toolkit Nicht frei verfügbar, aber Testversion Folgende Produkte: - SECUDE Authent for Outlook - SECUDE FileSafe - SECUDE SmartLogon - SECUDE Authent for Lotus Notes - SECUDE for mySAP.com - SECUDE Secure Login - SECUDE TransFair FrameWork - SECUDE CA Management - SECUDE SDK (C/C++) - SECUDE SDK (Java)

17 Weitere Bibliotheken+Links Mozilla (http://www.mozilla.org/projects/security/pki/nss/)http://www.mozilla.org/projects/security/pki/nss/ Flexiprovider (http://www.flexiprovider.de/)http://www.flexiprovider.de/ OpenPGP Implementations (http://cypherspace.org/openpgp/)http://cypherspace.org/openpgp/ OpenCDK (http://www.winpt.org/opencdk.html)http://www.winpt.org/opencdk.html libgcrypt (ftp://ftp.gnupg.org/gcrypt/alpha/libgcrypt/)ftp://ftp.gnupg.org/gcrypt/alpha/libgcrypt/ Die Liste lässt sich natürlich noch fortsetzen.

18 Beispiele Rijndael RSA Algorithmen über elliptischen Kurven

19 Beispiel I: Rijndael Es gibt sehr viele Rjindael-Implementationen, auch außerhalb von Krypto-Bibliotheken: Maple, Universität Paderborn (Rijndael, Rijndael-Test) Maple, Universität PaderbornRijndaelRijndael-Test Matlab, Hochschule Bremen (Zip-File, PDF-engl., PDF-dt.) Matlab, Hochschule BremenZip-FilePDF-engl.PDF-dt. C/C++/Assembler, Brian Gladman C, Mike Scott C++, Szymon Stefanek Java, Paulo Barreto Visual Basic 6, Phil Fresle Delphi, EldoS Group Auch diese Liste läßt sich natürlich noch fortsetzen.

20 Beispiel I: Rijndael Implementierung u.a. in folgenden Bibliotheken: - Catacomb - Cryptix - Crypto++ - CrypTool

21 Beispiel II - RSA RSAEuro (außerdem DES, Diffie-Hellmann) RSAEuro RSA-Java-Implementation Faster-Java-Implementation (Neal Wagner) Faster-Java-Implementation RSA in Java und C Bibliotheken RSA ist in den meisten Bibliotheken enthalten (Botan, Crypto++, Miracl)

22 Beispiel III – Ell. Kurven EC-DL-Problem, IEEE P1363 Home Page Verschiedenes (Papers, Software, Links) Crypto Kong benutzt elliptische Kurven Crypto Kong Elliptic Package Links zu ell. Kurven (Anwendungen/Formales) Links zu ell. Kurven Bibliotheken: - borZoi - Crypto++

23 Verschiedenes Krypto-Bibliotheken für JAVA Im Rahmen des Forschungsverbundes Datensicherheit NRW ist ein Überblick zu verfügbaren- Krypto-Bibliotheken entstanden. Diese Bibliotheken lassen sich einfach in Java integrieren, so dass über definierte Schnittstellen auf kryptographische Funktionen zugegriffen werden kann Krypto-Bibliotheken für JAVA

24 Online-Verfügbares Affine-Cipher Euklidischer Algorithmus Keyword-Cipher Rail-Fence-Cipher RSA-Berechnung RSA-Simulation mit JavaScript Transposition-Cipher Vigenère-Cipher


Herunterladen ppt "Verfügbare kryptographische Software Kathrin Tofall."

Ähnliche Präsentationen


Google-Anzeigen