Posted  by 

Dev C++ Cryptopp

Crypto++
Developer(s)originally Wei Dai, the Crypto++ project since 2015
Initial release1995
Stable release
Repository
Written inC++
Operating systemCross-platform
TypeSecurity library
LicenseBoost Software License (previously Crypto++ License) / individual files into the public domain
Websitewww.cryptopp.com
Usage

Crypto++ (also known as CryptoPP, libcrypto++, and libcryptopp) is a free and open-sourceC++ class library of cryptographicalgorithms and schemes written by Wei Dai. Crypto++ has been widely used in academia, student projects, open source and non-commercial projects, as well as businesses.[1] Released in 1995, the library fully supports 32-bit and 64-bitarchitectures for many major operating systems and platforms, including Android (using STLport), Apple (Mac OS X and iOS), BSD, Cygwin, IBM AIX and S/390, Linux, MinGW, Solaris, Windows, Windows Phone and Windows RT. The project also supports compilation using C++03, C++11 and C++17 runtime libraries; and a variety of compilers and IDEs, including Borland Turbo C++, Borland C++ Builder, Clang, CodeWarrior Pro, GCC (including Apple's GCC), Intel C++ Compiler (ICC), Microsoft Visual C/C++, and Sun Studio.

How can I encrypt a byte array with Crypto's RSA implementation? I already found an example for strings. But I can't find a good example how to do the same for a byte array. This is my first att. Apr 08, 2020 free C class library of cryptographic schemes. Contribute to weidai11/cryptopp development by creating an account on GitHub. Crypto (also known as CryptoPP, libcrypto, and libcryptopp) is a free and open-source C class library of cryptographic algorithms and schemes written by Wei Dai. Crypto has been widely used in academia, student projects, open source and non-commercial projects, as well as businesses.

Algorithms[edit]

Crypto++ ordinarily provides complete cryptographic implementations, and often includes less popular, less frequently-used schemes. For example, Camellia is an ISO/NESSIE/IETF-approved block cipher roughly equivalent to AES, and Whirlpool is an ISO/NESSIE/IETF-approved hash function roughly equivalent to SHA; both are included in the library.[2][3]

Additionally, the Crypto++ library sometimes makes proposed and bleeding edge algorithms and implementations available for study by the cryptographic community. For example, VMAC, a universal hash-based message authentication code, was added to the library during its submission to the Internet Engineering Task Force (CFRG Working Group); and Brainpool curves, proposed in March 2009 as an Internet Draft in RFC 5639, were added to Crypto++ 5.6.0 in the same month.[4][5]

Crypto++ algorithms and implementations
Primitive or OperationAlgorithms or Implementations
Pseudorandom number generatorsLCG, KDF2, Blum Blum Shub, ANSI X9.17, Mersenne Twister, RDRAND and RDSEED
High speed stream ciphersChaCha8/12/20, HC-128 and HC-256, Panama, Rabbit, Salsa20, SOSEMANUK, XSalsa20
AES and AES candidatesRijndael (AES selection), RC6, MARS, Twofish, Serpent, CAST-256
Other block ciphersARIA, Blowfish, Camellia, CHAM, HIGHT, IDEA, Kalyna (128/256/512), LEA, RC5, Triple-DES (2- and 3-key), SEED, SHACAL-2, Simon and Speck (64/128), SIMECK, Skipjack, SM4, TEA, Threefish (256/512/1024), XTEA
Block cipher modes of operationECB, CBC, CTS, CFB, OFB, CTR
Authenticated encryption modesCCM, GCM, EAX
Block ciphers padding schemesPKCS#5, PKCS#7, Zeros, One and zeros, W3C Padding
Message authentication codesVMAC, HMAC, CMAC, CBC-MAC, DMAC, Two-Track-MAC
Cryptographic hash functionBLAKE2 (BLAKE2b and BLAKE2s), Keccak, SHA-1, SHA-2 (SHA-224, SHA-256, SHA-384, and SHA-512), SHA3, Tiger, WHIRLPOOL, RIPEMD (RIPEMD-128, RIPEMD-160, RIPEMD-256, and RIPEMD-320)
Password based key derivation functionsPBKDF1 and PBKDF2 from PKCS #5, PBKDF from PKCS #12 appendix B, Krawczyk and Eronen's HKDF
Public-key cryptographyRSA, DSA, ElGamal, Nyberg-Rueppel (NR), Rabin-Williams (RW), LUC, LUCELG, DLIES (variants of DHAES), ESIGN, curve25519
Padding schemes for public-key systemsPKCS#1 v2.0, OAEP, PSS, PSSR, IEEE P1363EMSA2 and EMSA5
Key agreement schemesDiffie–Hellman (DH), Unified Diffie–Hellman (DH2), Menezes–Qu–Vanstone (MQV), Hashed MQV (HMQV), Fully Hashed MQV (FHMQV), LUCDIF, XTR-DH, x25519
Elliptic curve cryptographyECDSA, ECNR, ECIES, ECDH, ECMQV
Secret SharingShamir's secret sharing scheme, Rabin's information dispersal algorithm (IDA)

The library also makes available primitives for number theoretic operations such as a fast multi-precision integers; prime number generation and verification; finite field arithmetic, including GF(p) and GF(2n); elliptical curves; and polynomial operations.

Furthermore, the library retains a collection of insecure or obsolescent algorithms for backward compatibility and historical value: MD2, MD4, MD5, Panama Hash, DES, ARC4, SEAL 3.0, WAKE, WAKE-OFB, DESX (DES-XEX3), RC2, SAFER, 3-WAY, GOST, SHARK, CAST-128, and Square.

Performance[edit]

In a 2007 ECRYPT workshop paper focusing on public key implementations of eight libraries, Ashraf Abusharekh and Kris Kaj found that 'Crypto++ 5.1 [sic] leads in terms of support for cryptographic primitives and schemes, but is the slowest of all investigated libraries.'[6]

In 2008, speed tests carried out by Timo Bingmann using seven open-sourcesecurity libraries with 15 block ciphers, Crypto++ 5.5.2 was the top performing library under two block ciphers, and did not rank below the average library performance under the remaining block ciphers.[7]

Crypto++ also includes an auto-benchmarking feature, available from the command line (cryptest.exe b), the results of which are available at Crypto++ 5.6.0 Benchmarks.[8]

As with many other cryptographic libraries available for 32-bit and 64-bit x86architectures, Crypto++ includes assembly routines for AES using AES-NI. With AES-NI, AES performance improves dramatically: 128-bit AES/GCM throughput increases from approximately 28.0 cycles per byte to 3.5 cycles per byte.[9][10][11]

And after this article Free E-Books www.Indian-Cooking.Info. And from last few months we are searching this kind of website or source from where we can get new dishes recipes and today our search / surfing mission end with your this useful website.Requesting you to also publish cook books for Chinese too.This is really great site where everyone end her new recipes search will end.Again thank you very much please keep it up with new and new recipes. I drop a leave a response whenever I especially enjoy a article on a blogor if I have something to contribute to the conversation.It is a result of the sincerness communicated in the articleI browsed. Download indian cooking books free. I was moved enough to drop a comment 😛 I actually do have some questions for you if it’s allright.

Version releases[edit]

Crypto++ 1.0 was released in June 1995. Since its initial release, the library has seen nearly two dozen revisions, including an architectural change in version 5.0.[12][13] There have been ten releases using the version 5.0 architecture since March 2009.[14]

Crypto++ releases since version 5.0
VersionReleased Date
Crypto++ 5.6.0March 15, 2009
Crypto++ 5.6.1August 9, 2010
Crypto++ 5.6.2February 20, 2013
Crypto++ 5.6.3November 20, 2015
Crypto++ 5.6.4September 11, 2016
Crypto++ 5.6.5October 11, 2016
Crypto++ 6.0.0January 22, 2018
Crypto++ 6.1.0February 22, 2018
Crypto++ 7.0.0April 8, 2018
Crypto++ 8.0.0December 28, 2018
Crypto++ 8.1.0February 11, 2019
Crypto++ 8.2.0April 28, 2019

Lawrence Teo's compilation of previous Crypto++ releases dating back to 1995 can be found in the users group archives.[15]

FIPS validations[edit]

Crypto++ has received three Federal Information Processing Standard (FIPS) 140-2 Level 1 module validations with no post-validation issues.[16]

FIPS validated Crypto++ modules
VersionCertificateDates
Crypto++ 5.0.4Certificate 343[17]2003-09-05, 2005-10-28
Crypto++ 5.2.3Certificate 562[18]2005-07-29, 2005-08-24, 2005-10-28
Crypto++ 5.3.0Certificate 819[19]2007-08-13, 2007-08-17

Crypto++ was moved to the CMVP's Historical Validation List in 2016. The move effectively means the library is no longer validated.

Licensing[edit]

Dev c cryptopp download

As of version 5.6.1, Crypto++ consists of only public domain files, with a compilation copyright and a single open source license for the compilation copyright:[20]

Dev C Cryptopp Download

The License of Crypto++ is somewhat unusual amongst open source projects. A distinction is made between the library as a compilation (i.e., collection), which is copyrighted by Wei Dai, and the individual files in it, which are public domain.

The library is copyrighted as a compilation in order to place certain disclaimers (regarding warranty, export, and patents) in the license and to keep the attributions and public domain declarations intact when Crypto++ is distributed in source code form. The fact that individual files are public domain means that legally you can place code segments, entire files, or small sets of files (up to the limit set by fair use) into your own project and do anything you want with them without worrying about the copyright.

— Crypto++ Website

See also[edit]

References[edit]

  1. ^
    • J. Kelsey, B. Schneier, D. Wagner, C. Hall (1998). 'Cryptanalytic Attacks on Pseudorandom Number Generators'. Fast Software Encryption, 5th International Proceedings. http://www.schneier.com/paper-prngs.pdf. Retrieved 2010-08-10.
    • C. Adjih, D. Raffo, P. Mühlethaler (2004). 'OLSR: Distributed Key Management for Security'Archived 2011-07-21 at the Wayback Machine. Independent Research. http://www2.lifl.fr/SERAC/downloads/attacks-olsr-dkm.pdf . Retrieved 2010-08-10.
    • X. Yinglian, M. K. Reiter, D. O'Hallaron (2006). 'Protecting Privacy in Key-Value Search Systems'. Computer Security Applications Conference (ACSAC). https://www.cs.cmu.edu/~ylxie/papers/report03.pdf. Retrieved 2010-08-10.
    • T. Zidenberg (2010). 'Optimizing Crypto++ library for P4'Archived 2011-07-21 at the Wayback Machine. Technion, Israel Institute of Technology Website. http://softlab-pro-web.technion.ac.il/projects/cryptoppopt/html/projectBook.html . Retrieved 2010-08-10.
  2. ^'Japan's First 128-bit Block Cipher 'Camellia' Approved as a New Standard Encryption Algorithm in the Internet'. physorg.com. Retrieved 2010-08-12.
  3. ^A. Hartikainen; T. Toivanen; H. Kiljunen (2005). 'Whirlpool hashing function'. Secure Communications, Seminar Workshop. Lappeenranta University of Technology. CiteSeerX10.1.1.98.6099.Missing or empty url= (help)
  4. ^'Elliptic Curve Cryptography (ECC) Brainpool Standard Curves and Curve Generation'. RFC 5639. IETF. 2009. Retrieved 2010-08-08.
  5. ^'Crypto++ 5.6.0 Release Notes'. Crypto++ Website. 2009. Retrieved 2010-08-08.
  6. ^A. Abusharekh; K. Kaj (2007). 'Comparative Analysis of Software Libraries for Public Key Cryptography'(PDF). ECRYPT Workshop on Software Performance Enhancement for Encryption and Decryption. Retrieved 2010-08-12.[permanent dead link]
  7. ^T. Bingmann (2008). 'Speedtest and Comparison of Open-Source Cryptography Libraries and Compiler Flags'. Timo Bingmann Weblog. Retrieved 2010-08-10.
  8. ^'Crypto++ 5.6.0 Benchmarks'. Crypto++ Website. 2009. Retrieved 2010-08-10.
  9. ^P. Schmid; A. Roos (2010). 'AES-NI Performance Analyzed'. Tom's Hardware. Retrieved 2010-08-10.
  10. ^T. Krovetz; W. Dai (2010). 'Misdetection of MIPS endianness & How to get fast AES calls?'. Crypto++ user group. Retrieved 2010-08-11.
  11. ^'Crypto++ 5.6.0 Pentium 4 Benchmarks'. Crypto++ Website. 2009. Retrieved 2010-08-10.
  12. ^Announcement (2002). 'Crypto++ 5.0 beta available'. Crypto++ Mailing List. Retrieved 2010-08-09.
  13. ^Announcement (2002). 'Crypto++ 5.0 update'. Crypto++ Mailing List. Retrieved 2010-08-09.
  14. ^'Crypto++ Announcements List'. Sourceforge.net. Retrieved 2010-08-14.
  15. ^L. Teo (2002). 'Release Dates of Previous Versions'. Crypto++ Mailing List. Retrieved 2010-08-09.
  16. ^'Crypto++TM Library Versions 5.3.0 [32-bit and 64-bit] Security Policy'(PDF). Cryptographic Module Validation Program (CMVP). 2007. Retrieved 2010-08-08.
  17. ^'Validated FIPS 140-1 and FIPS 140-2 Cryptographic Modules (2003)'. Cryptographic Module Validation Program (CMVP). 2003. Retrieved 2010-08-08.
  18. ^'Validated FIPS 140-1 and FIPS 140-2 Cryptographic Modules (2005)'. Cryptographic Module Validation Program (CMVP). 2005. Retrieved 2010-08-08.
  19. ^'Validated FIPS 140-1 and FIPS 140-2 Cryptographic Modules (2007)'. Cryptographic Module Validation Program (CMVP). 2007. Retrieved 2010-08-08.
  20. ^'Compilation Copyright for Crypto++'. Crypto++ Website. Retrieved 2010-08-15.

External links[edit]

  • List of projects that use Crypto++ (Includes nonprofit and for profit projects)
Retrieved from 'https://en.wikipedia.org/w/index.php?title=Crypto%2B%2B&oldid=937272540'
Dev
[ jessie ] [ stretch ] [ buster ] [ bullseye ] [ sid ] [ experimental ]

Links for libcrypto++-dev

Debian Resources:

Download Source Package libcrypto++:

Dev C Cryptopp 2017

Maintainer:

  • Laszlo Boszormenyi (GCS) (QA Page)

External Resources:

  • Homepage [www.cryptopp.com]

Similar packages:

General purpose cryptographic library - C++ development

Crypto++ is library for creating C++ programs which use cryptographicalgorithms. The library uses a Pipes & Filters architecture with heavyuse of templates and abstract base classes. The cryptographictools include:and a whole lot more. Alternative libraries are libgcrypt andnettle.

This package contains the header files needed for developing usingthe Crypto++ class library and the static library with libtoolsupoport.

Tags: Software Development: C++ Development, Libraries, Implemented in: C++, Role: role::devel-lib, security::cryptography

Other Packages Related to libcrypto++-dev

  • depends
  • recommends
  • suggests
  • enhances
  • dep:libcrypto++6 (= 5.6.4-8) [powerpcspe, x32]
    General purpose cryptographic library - shared library
    dep:libcrypto++6 (= 5.6.4-9) [not powerpcspe, x32]

Download libcrypto++-dev

Download for all available architectures
ArchitectureVersionPackage SizeInstalled SizeFiles
alpha(unofficial port)5.6.4-91,551.0 kB16,699.0 kB [list of files]
amd645.6.4-91,331.6 kB13,390.0 kB [list of files]
arm645.6.4-91,341.4 kB13,955.0 kB [list of files]
armel5.6.4-91,415.0 kB12,534.0 kB [list of files]
armhf5.6.4-91,419.5 kB11,889.0 kB [list of files]
hppa(unofficial port)5.6.4-91,402.0 kB11,544.0 kB [list of files]
i3865.6.4-91,414.5 kB11,092.0 kB [list of files]
m68k(unofficial port)5.6.4-91,238.9 kB10,697.0 kB [list of files]
mips64el5.6.4-91,470.0 kB15,705.0 kB [list of files]
mipsel5.6.4-91,421.7 kB11,830.0 kB [list of files]
powerpcspe(unofficial port)5.6.4-81,244.4 kB10,604.0 kB [list of files]
ppc64(unofficial port)5.6.4-91,376.1 kB14,887.0 kB [list of files]
ppc64el5.6.4-91,404.9 kB14,666.0 kB [list of files]
riscv64(unofficial port)5.6.4-93,692.2 kB40,997.0 kB [list of files]
s390x5.6.4-91,247.9 kB13,347.0 kB [list of files]
sh4(unofficial port)5.6.4-91,342.5 kB10,289.0 kB [list of files]
sparc64(unofficial port)5.6.4-91,263.4 kB14,179.0 kB [list of files]
x32(unofficial port)5.6.4-81,255.3 kB10,389.0 kB [list of files]