1. 10 Eyl, 2018 1 kayıt (commit)
  2. 31 Tem, 2018 1 kayıt (commit)
    • Serhiy Storchaka's avatar
      [3.7] bpo-33729: Fix issues with arguments parsing in hashlib. (GH-8346) (GH-8581) · 47957dab
      Serhiy Storchaka yazdı
      * help(hashlib) didn't work because of incorrect module name in blake2b and
        blake2s classes.
      * Constructors blake2*(), sha3_*(), shake_*() and keccak_*() incorrectly
        accepted keyword argument "string" for binary data, but documented as
        accepting the "data" keyword argument. Now this parameter is positional-only.
      * Keyword-only parameters in blake2b() and blake2s() were not documented as
        keyword-only.
      * Default value for some parameters of blake2b() and blake2s() was None,
        which is not acceptable value.
      * The length argument for shake_*.digest() was wrapped out to 32 bits.
      * The argument for shake_128.digest() and shake_128.hexdigest() was not
        positional-only as intended.
      * TypeError messages for incorrect arguments in all constructors sha3_*(),
        shake_*() and keccak_*() incorrectly referred to sha3_224.
      
      Also made the following enhancements:
      
      * More accurately specified input and result types for strings, bytes and
        bytes-like objects.
      * Unified positional parameter names for update() and constructors.
      * Improved formatting.
      (cherry picked from commit f1d36d8e)
      Co-authored-by: 's avatarSerhiy Storchaka <storchaka@gmail.com>
      47957dab
  3. 03 Kas, 2017 1 kayıt (commit)
    • Jack O'Connor's avatar
      bpo-31933: fix blake2 multi-byte params on big endian platforms (#4250) · dcfb0e3c
      Jack O'Connor yazdı
      All Blake2 params have to be encoded in little-endian byte order. For
      the two multi-byte integer params, leaf_length and node_offset, that
      means that assigning a native-endian integer to them appears to work on
      little-endian platforms, but gives the wrong result on big-endian. The
      current libb2 API doesn't make that very clear, and @sneves is working
      on new API functions in the GH issue above. In the meantime, we can work
      around the problem by explicitly assigning little-endian values to the
      parameter block.
      
      See https://github.com/BLAKE2/libb2/issues/12.
      dcfb0e3c
  4. 01 Kas, 2017 1 kayıt (commit)
    • Lars Viklund's avatar
      Remove nested comments in blake2 (#4173) · 388cd85e
      Lars Viklund yazdı
      Replace occurence of nested comments in blake2 reference implementation
      with preprocessor directive for disabling unused code.
      
      `blake2s-load-xop.h` is conditionally pulled in only on chips with XOP
      support, among others the AMD Bulldozer. The malformed comments in the
      source file breaks the build of `hashlib`'s `_blake2` on GCC 6.3.0.
      
      Official reference code on github uses `#if` so this change should be
      uncontroversial.
      388cd85e
  5. 24 Eki, 2017 1 kayıt (commit)
    • Michał Górny's avatar
      fixes bpo-31834: Use optimized code for BLAKE2 only with SSSE3+ (#4066) · 1aa00ff3
      Michał Górny yazdı
      Rework the code choosing BLAKE2 code paths from using the optimized
      variant on all x86_64 machines to using it when SSSE3 or better
      supported instructions sets are available.
      
      Firstly, this solves the problem of using pure SSE2 code path on x86_64
      machines. As reported in the bug, this code is slower than the reference
      code on all tested x86_64 machines. Furthermore, on Athlon64 that lacks
      SSSE3, it is even 2.5 times slower than the reference code! Checking
      for SSSE3 therefore ensures that the optimized implementation will only
      be used when it has a chance of performing better.
      
      Secondly, this makes it possible to use SSSE3+ optimizations on 32-bit
      x86 systems. This allows for even 2 times speed gain on modern 32-bit
      x86 systems (tested in a 32-bit chroot).
      1aa00ff3
  6. 07 Eyl, 2017 1 kayıt (commit)
  7. 23 Ock, 2017 1 kayıt (commit)
  8. 08 Eyl, 2016 2 kayıt (commit)
  9. 07 Eyl, 2016 2 kayıt (commit)
  10. 06 Eyl, 2016 4 kayıt (commit)