GithubHelp home page GithubHelp logo

kerukuro / digestpp Goto Github PK

View Code? Open in Web Editor NEW
187.0 11.0 44.0 7.61 MB

C++11 header-only message digest library

License: The Unlicense

C++ 100.00%
hash sha1 sha256 sha512 sha3 blake blake2 blake2x skein kangarootwelve

digestpp's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

digestpp's Issues

Conflict with asio library or termios.h

When i try to compile digestpp with asio (header only), the compiler fails with this message:

inc/digestpp/algorithm/detail/sha3_provider.hpp:40:13:
error: expected unqualified-id before numeric constant
     uint64_t B0 = A[0 * 5 + 0] ^ D[0];
              ^

The issue is because asio includes termios.h and termios.h define B0 as 00000000. Like this:
#define B0 0000000 /* hang up */

I think the solution may can be replace the variable B0 with another name or is there a better solution?

No license

Do you plan to choose a license for your project?

Bad name documentation

This library is not header-only, we have to include a bunch of file to get it work, and it's a big mess.

Groestl/* test passed with errors with 32bit compilation

Platform and compiler:


Windows 7 x64 [Version 6.1.7601]
Microsoft Visual Studio Community 2017 Version 15.9.26
VisualStudio.15.Release/15.9.26+28307.1234
Visual C++ 2017 00369-60000-00001-AA395


Compiling test.cc with VS2017 using x86 debug/release:


Groestl/256 error: expected 8c7ad62eb26a21297bc39c2d7293b4bd4d3399fa8afab29e970471739e28b301, actual b70d81f0215c295a43193b0439d688d852f417a186f173bededd5a5d71c5f17b
Groestl/512 error: expected badc1f70ccd69e0cf3760c3f93884289da84ec13c70b3d12a53a7a8a4a513f99715d46288f55e1dbf926e6d084a0538e4eebfc91cf2b21452921ccde9131718d, actual 545f354922267ece6b14fa129074058acd34b3314d65b30be3d29a64d92355ee2dee2086dfc9028e0c2aa455fd05e18b3544697b522533a5640ac40c9766d258
Self-test completed with 2 errors.


Compiling test.cc with VS2017 using x64 debug/release, execution passes witout any error.

g++ x64 compilation and execution also passed without any error.

Error: call to 'byteswap' is ambiguous (groestl_provider.hpp line 124)

Hi @kerukuro,

I'm getting a single error when trying to use digestpp:

algorithm/detail/groestl_provider.hpp:124:26: error:
      call to 'byteswap' is ambiguous
                h[hs > 256 ? 15 : 7] = byteswap(hash_size());
                                       ^~~~~~~~

It seems to be getting confused between uint(16/32/64)_t types.

If I comment out the #include for groestl_provider.hpp, everything works great.

Any ideas? Thanks much.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.