digest-blake2b 0.0.2 → 0.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 6bb43dc304a2148c476e19f9b2b1dcef84340dbe28316c26980ff061f427db4c
4
- data.tar.gz: b9109fc3c671f658ea8d0d4084327e0c4ca4da427607b844370bf79622234461
3
+ metadata.gz: 2f6ddf84f1a45241173888cd08e58d83d14d68b6aa5aebaa75fc26166ddfe872
4
+ data.tar.gz: 1c85b12e4305d8443f5ef6c74ffd8ea5694f394649ecedecfe76e853d3326fcb
5
5
  SHA512:
6
- metadata.gz: 9afed341a55d34509be93f5d106f1b214eeadf76edf9d852c1919cdc5899df1f95d1ae35d26157f9133cd7fbffd1228c6467c243e3485d8ec8c16b3f63646542
7
- data.tar.gz: 639d7640182c611a7183f6b14bdae714c5a2c158251b977ffc73138e0d50d9968abe5717c8c42f741e4b96ca808163a1137fa62f7673c402cfda615795621881
6
+ metadata.gz: d95f7026949e3c5240239a32233a47ef05eb0e6336acdb6a1f3d57344892dab697c49747ae3f11aa119afb619e693eadf63abb7121fdac8b6f265a82da44b80a
7
+ data.tar.gz: 1e3310cf5816eabf5d03d960e194a1208e5b7cc4a9a2d2fc8898e4b2772dd959c31623292c79cfd4cdc67d0acfd9db7b1d55d93df9cc943f56145722d2536262
data/.gitignore CHANGED
@@ -8,7 +8,7 @@
8
8
  /checksums/*
9
9
  !/checksums/.keep
10
10
  /lib/*.bundle
11
- /lib/digest/blake2b_ext.so
11
+ /lib/digest/blake2b/ext.so
12
12
 
13
13
  *.o
14
14
  *.gem
data/Gemfile CHANGED
@@ -1,2 +1,6 @@
1
+ # frozen_string_literal: true
2
+
1
3
  source 'https://rubygems.org'
4
+
5
+ # Specify your gem's dependencies in digest-blake2b.gemspec
2
6
  gemspec
data/Rakefile CHANGED
@@ -1,10 +1,12 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'bundler/gem_tasks'
2
4
  require 'rake/testtask'
3
5
  require 'rake/extensiontask'
4
6
 
5
7
  spec = Gem::Specification.load('digest-blake2b.gemspec')
6
8
 
7
- Rake::ExtensionTask.new('digest/blake2b_ext', spec) do |ext|
9
+ Rake::ExtensionTask.new('digest/blake2b/ext', spec) do |ext|
8
10
  ext.source_pattern = '*.{c,h}'
9
11
  end
10
12
 
@@ -13,9 +13,9 @@ Gem::Specification.new do |spec|
13
13
  spec.summary = 'The BLAKE2b cryptographic hash function.'
14
14
  spec.platform = Gem::Platform::RUBY
15
15
 
16
- spec.required_ruby_version = '~> 2.1'
16
+ spec.required_ruby_version = '>= 2.1', '< 4'
17
17
 
18
- spec.authors = ['Franck Verrot', 'Mauricio Gomes']
18
+ spec.authors = ['Alex Kotov', 'Franck Verrot', 'Mauricio Gomes']
19
19
  spec.email = %w[mauricio@edge14.com]
20
20
 
21
21
  spec.description = <<-DESCRIPTION.split.join ' '
@@ -41,10 +41,10 @@ Gem::Specification.new do |spec|
41
41
 
42
42
  spec.executables = spec.files.grep %r{^exe/}, &File.method(:basename)
43
43
 
44
- spec.extensions << 'ext/digest/blake2b_ext/extconf.rb'
44
+ spec.extensions << 'ext/digest/blake2b/ext/extconf.rb'
45
45
 
46
- spec.add_development_dependency 'rake-compiler', '~> 0.9'
47
- spec.add_development_dependency 'bundler' , '~> 1.5'
48
- spec.add_development_dependency 'rake' , '~> 11.1'
46
+ spec.add_development_dependency 'bundler' , '~> 2.2'
49
47
  spec.add_development_dependency 'minitest' , '~> 5.11'
48
+ spec.add_development_dependency 'rake' , '~> 13.0'
49
+ spec.add_development_dependency 'rake-compiler', '~> 0.9'
50
50
  end
@@ -12,6 +12,7 @@
12
12
  More information about the BLAKE2 hash function can be found at
13
13
  https://blake2.net.
14
14
  */
15
+
15
16
  #ifndef BLAKE2_CONFIG_H
16
17
  #define BLAKE2_CONFIG_H
17
18
 
@@ -20,23 +21,22 @@
20
21
  #define HAVE_SSE2
21
22
  #endif
22
23
 
23
- #if defined(__SSSE3__)
24
+ #ifdef __SSSE3__
24
25
  #define HAVE_SSSE3
25
26
  #endif
26
27
 
27
- #if defined(__SSE4_1__)
28
+ #ifdef __SSE4_1__
28
29
  #define HAVE_SSE41
29
30
  #endif
30
31
 
31
- #if defined(__AVX__)
32
+ #ifdef __AVX__
32
33
  #define HAVE_AVX
33
34
  #endif
34
35
 
35
- #if defined(__XOP__)
36
+ #ifdef __XOP__
36
37
  #define HAVE_XOP
37
38
  #endif
38
39
 
39
-
40
40
  #ifdef HAVE_AVX2
41
41
  #ifndef HAVE_AVX
42
42
  #define HAVE_AVX
@@ -65,7 +65,7 @@
65
65
  #define HAVE_SSE2
66
66
  #endif
67
67
 
68
- #if !defined(HAVE_SSE2)
68
+ #ifndef HAVE_SSE2
69
69
  #error "This code requires at least SSE2."
70
70
  #endif
71
71
 
@@ -12,6 +12,7 @@
12
12
  More information about the BLAKE2 hash function can be found at
13
13
  https://blake2.net.
14
14
  */
15
+
15
16
  #ifndef BLAKE2_IMPL_H
16
17
  #define BLAKE2_IMPL_H
17
18
 
@@ -19,7 +20,7 @@
19
20
  #include <string.h>
20
21
 
21
22
  #if !defined(__cplusplus) && (!defined(__STDC_VERSION__) || __STDC_VERSION__ < 199901L)
22
- #if defined(_MSC_VER)
23
+ #ifdef _MSC_VER
23
24
  #define BLAKE2_INLINE __inline
24
25
  #elif defined(__GNUC__)
25
26
  #define BLAKE2_INLINE __inline__
@@ -32,7 +33,7 @@
32
33
 
33
34
  static BLAKE2_INLINE uint32_t load32( const void *src )
34
35
  {
35
- #if defined(NATIVE_LITTLE_ENDIAN)
36
+ #ifdef NATIVE_LITTLE_ENDIAN
36
37
  uint32_t w;
37
38
  memcpy(&w, src, sizeof w);
38
39
  return w;
@@ -47,7 +48,7 @@ static BLAKE2_INLINE uint32_t load32( const void *src )
47
48
 
48
49
  static BLAKE2_INLINE uint64_t load64( const void *src )
49
50
  {
50
- #if defined(NATIVE_LITTLE_ENDIAN)
51
+ #ifdef NATIVE_LITTLE_ENDIAN
51
52
  uint64_t w;
52
53
  memcpy(&w, src, sizeof w);
53
54
  return w;
@@ -66,7 +67,7 @@ static BLAKE2_INLINE uint64_t load64( const void *src )
66
67
 
67
68
  static BLAKE2_INLINE uint16_t load16( const void *src )
68
69
  {
69
- #if defined(NATIVE_LITTLE_ENDIAN)
70
+ #ifdef NATIVE_LITTLE_ENDIAN
70
71
  uint16_t w;
71
72
  memcpy(&w, src, sizeof w);
72
73
  return w;
@@ -79,7 +80,7 @@ static BLAKE2_INLINE uint16_t load16( const void *src )
79
80
 
80
81
  static BLAKE2_INLINE void store16( void *dst, uint16_t w )
81
82
  {
82
- #if defined(NATIVE_LITTLE_ENDIAN)
83
+ #ifdef NATIVE_LITTLE_ENDIAN
83
84
  memcpy(dst, &w, sizeof w);
84
85
  #else
85
86
  uint8_t *p = ( uint8_t * )dst;
@@ -90,7 +91,7 @@ static BLAKE2_INLINE void store16( void *dst, uint16_t w )
90
91
 
91
92
  static BLAKE2_INLINE void store32( void *dst, uint32_t w )
92
93
  {
93
- #if defined(NATIVE_LITTLE_ENDIAN)
94
+ #ifdef NATIVE_LITTLE_ENDIAN
94
95
  memcpy(dst, &w, sizeof w);
95
96
  #else
96
97
  uint8_t *p = ( uint8_t * )dst;
@@ -103,7 +104,7 @@ static BLAKE2_INLINE void store32( void *dst, uint32_t w )
103
104
 
104
105
  static BLAKE2_INLINE void store64( void *dst, uint64_t w )
105
106
  {
106
- #if defined(NATIVE_LITTLE_ENDIAN)
107
+ #ifdef NATIVE_LITTLE_ENDIAN
107
108
  memcpy(dst, &w, sizeof w);
108
109
  #else
109
110
  uint8_t *p = ( uint8_t * )dst;
@@ -12,19 +12,20 @@
12
12
  More information about the BLAKE2 hash function can be found at
13
13
  https://blake2.net.
14
14
  */
15
+
15
16
  #ifndef BLAKE2_H
16
17
  #define BLAKE2_H
17
18
 
18
19
  #include <stddef.h>
19
20
  #include <stdint.h>
20
21
 
21
- #if defined(_MSC_VER)
22
+ #ifdef _MSC_VER
22
23
  #define BLAKE2_PACKED(x) __pragma(pack(push, 1)) x __pragma(pack(pop))
23
24
  #else
24
25
  #define BLAKE2_PACKED(x) x __attribute__((packed))
25
26
  #endif
26
27
 
27
- #if defined(__cplusplus)
28
+ #ifdef __cplusplus
28
29
  extern "C" {
29
30
  #endif
30
31
 
@@ -188,7 +189,7 @@ extern "C" {
188
189
  /* This is simply an alias for blake2b */
189
190
  int blake2( void *out, size_t outlen, const void *in, size_t inlen, const void *key, size_t keylen );
190
191
 
191
- #if defined(__cplusplus)
192
+ #ifdef __cplusplus
192
193
  }
193
194
  #endif
194
195
 
@@ -26,16 +26,16 @@
26
26
  #include <intrin.h> /* for _mm_set_epi64x */
27
27
  #endif
28
28
  #include <emmintrin.h>
29
- #if defined(HAVE_SSSE3)
29
+ #ifdef HAVE_SSSE3
30
30
  #include <tmmintrin.h>
31
31
  #endif
32
- #if defined(HAVE_SSE41)
32
+ #ifdef HAVE_SSE41
33
33
  #include <smmintrin.h>
34
34
  #endif
35
- #if defined(HAVE_AVX)
35
+ #ifdef HAVE_AVX
36
36
  #include <immintrin.h>
37
37
  #endif
38
- #if defined(HAVE_XOP)
38
+ #ifdef HAVE_XOP
39
39
  #include <x86intrin.h>
40
40
  #endif
41
41
 
@@ -160,7 +160,7 @@ static void blake2b_compress( blake2b_state *S, const uint8_t block[BLAKE2B_BLOC
160
160
  const __m128i r16 = _mm_setr_epi8( 2, 3, 4, 5, 6, 7, 0, 1, 10, 11, 12, 13, 14, 15, 8, 9 );
161
161
  const __m128i r24 = _mm_setr_epi8( 3, 4, 5, 6, 7, 0, 1, 2, 11, 12, 13, 14, 15, 8, 9, 10 );
162
162
  #endif
163
- #if defined(HAVE_SSE41)
163
+ #ifdef HAVE_SSE41
164
164
  const __m128i m0 = LOADU( block + 00 );
165
165
  const __m128i m1 = LOADU( block + 16 );
166
166
  const __m128i m2 = LOADU( block + 32 );
@@ -297,14 +297,14 @@ int blake2( void *out, size_t outlen, const void *in, size_t inlen, const void *
297
297
  return blake2b(out, outlen, in, inlen, key, keylen);
298
298
  }
299
299
 
300
- #if defined(SUPERCOP)
300
+ #ifdef SUPERCOP
301
301
  int crypto_hash( unsigned char *out, unsigned char *in, unsigned long long inlen )
302
302
  {
303
303
  return blake2b( out, BLAKE2B_OUTBYTES, in, inlen, NULL, 0 );
304
304
  }
305
305
  #endif
306
306
 
307
- #if defined(BLAKE2B_SELFTEST)
307
+ #ifdef BLAKE2B_SELFTEST
308
308
  #include <string.h>
309
309
  #include "blake2-kat.h"
310
310
  int main( void )
@@ -12,6 +12,7 @@
12
12
  More information about the BLAKE2 hash function can be found at
13
13
  https://blake2.net.
14
14
  */
15
+
15
16
  #ifndef BLAKE2B_ROUND_H
16
17
  #define BLAKE2B_ROUND_H
17
18
 
@@ -80,7 +81,7 @@
80
81
  row2l = _mm_roti_epi64(row2l, -63); \
81
82
  row2h = _mm_roti_epi64(row2h, -63); \
82
83
 
83
- #if defined(HAVE_SSSE3)
84
+ #ifdef HAVE_SSSE3
84
85
  #define DIAGONALIZE(row1l,row2l,row3l,row4l,row1h,row2h,row3h,row4h) \
85
86
  t0 = _mm_alignr_epi8(row2h, row2l, 8); \
86
87
  t1 = _mm_alignr_epi8(row2l, row2h, 8); \
@@ -136,7 +137,7 @@
136
137
 
137
138
  #endif
138
139
 
139
- #if defined(HAVE_SSE41)
140
+ #ifdef HAVE_SSE41
140
141
  #include "blake2b-load-sse41.h"
141
142
  #else
142
143
  #include "blake2b-load-sse2.h"
@@ -1,3 +1,3 @@
1
1
  require 'mkmf'
2
2
  $CFLAGS += ' -Wall -Wextra -std=c99 -pedantic -Wno-long-long'
3
- create_makefile 'digest/blake2b_ext'
3
+ create_makefile 'digest/blake2b/ext'
@@ -100,7 +100,7 @@ VALUE m_blake2_digest(VALUE self, VALUE _input, VALUE _representation) {
100
100
  return result;
101
101
  }
102
102
 
103
- void Init_blake2b_ext() {
103
+ void Init_ext() {
104
104
  mDigest = rb_define_module("Digest");
105
105
 
106
106
  mDigest_cBlake2 = rb_define_class_under(mDigest, "Blake2b", rb_cObject);
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Digest
4
4
  class Blake2b
5
- VERSION = '0.0.2'
5
+ VERSION = '0.0.3'
6
6
  end
7
7
  end
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require 'digest/blake2b_ext'
3
+ require 'digest/blake2b/ext'
4
4
 
5
5
  require 'digest/blake2b/key'
6
6
  require 'digest/blake2b/version'
metadata CHANGED
@@ -1,79 +1,80 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: digest-blake2b
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.0.3
5
5
  platform: ruby
6
6
  authors:
7
+ - Alex Kotov
7
8
  - Franck Verrot
8
9
  - Mauricio Gomes
9
10
  autorequire:
10
11
  bindir: exe
11
12
  cert_chain: []
12
- date: 2019-10-09 00:00:00.000000000 Z
13
+ date: 2021-09-16 00:00:00.000000000 Z
13
14
  dependencies:
14
15
  - !ruby/object:Gem::Dependency
15
- name: rake-compiler
16
+ name: bundler
16
17
  requirement: !ruby/object:Gem::Requirement
17
18
  requirements:
18
19
  - - "~>"
19
20
  - !ruby/object:Gem::Version
20
- version: '0.9'
21
+ version: '2.2'
21
22
  type: :development
22
23
  prerelease: false
23
24
  version_requirements: !ruby/object:Gem::Requirement
24
25
  requirements:
25
26
  - - "~>"
26
27
  - !ruby/object:Gem::Version
27
- version: '0.9'
28
+ version: '2.2'
28
29
  - !ruby/object:Gem::Dependency
29
- name: bundler
30
+ name: minitest
30
31
  requirement: !ruby/object:Gem::Requirement
31
32
  requirements:
32
33
  - - "~>"
33
34
  - !ruby/object:Gem::Version
34
- version: '1.5'
35
+ version: '5.11'
35
36
  type: :development
36
37
  prerelease: false
37
38
  version_requirements: !ruby/object:Gem::Requirement
38
39
  requirements:
39
40
  - - "~>"
40
41
  - !ruby/object:Gem::Version
41
- version: '1.5'
42
+ version: '5.11'
42
43
  - !ruby/object:Gem::Dependency
43
44
  name: rake
44
45
  requirement: !ruby/object:Gem::Requirement
45
46
  requirements:
46
47
  - - "~>"
47
48
  - !ruby/object:Gem::Version
48
- version: '11.1'
49
+ version: '13.0'
49
50
  type: :development
50
51
  prerelease: false
51
52
  version_requirements: !ruby/object:Gem::Requirement
52
53
  requirements:
53
54
  - - "~>"
54
55
  - !ruby/object:Gem::Version
55
- version: '11.1'
56
+ version: '13.0'
56
57
  - !ruby/object:Gem::Dependency
57
- name: minitest
58
+ name: rake-compiler
58
59
  requirement: !ruby/object:Gem::Requirement
59
60
  requirements:
60
61
  - - "~>"
61
62
  - !ruby/object:Gem::Version
62
- version: '5.11'
63
+ version: '0.9'
63
64
  type: :development
64
65
  prerelease: false
65
66
  version_requirements: !ruby/object:Gem::Requirement
66
67
  requirements:
67
68
  - - "~>"
68
69
  - !ruby/object:Gem::Version
69
- version: '5.11'
70
+ version: '0.9'
70
71
  description: BLAKE2b is a cryptographic hash function faster than MD5, SHA-1, SHA-2,
71
72
  and SHA-3 for 64-bit systems.
72
73
  email:
73
74
  - mauricio@edge14.com
74
75
  executables: []
75
76
  extensions:
76
- - ext/digest/blake2b_ext/extconf.rb
77
+ - ext/digest/blake2b/ext/extconf.rb
77
78
  extra_rdoc_files: []
78
79
  files:
79
80
  - ".circleci/config.yml"
@@ -84,15 +85,15 @@ files:
84
85
  - Rakefile
85
86
  - checksums/.keep
86
87
  - digest-blake2b.gemspec
87
- - ext/digest/blake2b_ext/blake2-config.h
88
- - ext/digest/blake2b_ext/blake2-impl.h
89
- - ext/digest/blake2b_ext/blake2.h
90
- - ext/digest/blake2b_ext/blake2b-load-sse2.h
91
- - ext/digest/blake2b_ext/blake2b-load-sse41.h
92
- - ext/digest/blake2b_ext/blake2b-ref.c
93
- - ext/digest/blake2b_ext/blake2b-round.h
94
- - ext/digest/blake2b_ext/extconf.rb
95
- - ext/digest/blake2b_ext/rbext.c
88
+ - ext/digest/blake2b/ext/blake2-config.h
89
+ - ext/digest/blake2b/ext/blake2-impl.h
90
+ - ext/digest/blake2b/ext/blake2.h
91
+ - ext/digest/blake2b/ext/blake2b-load-sse2.h
92
+ - ext/digest/blake2b/ext/blake2b-load-sse41.h
93
+ - ext/digest/blake2b/ext/blake2b-ref.c
94
+ - ext/digest/blake2b/ext/blake2b-round.h
95
+ - ext/digest/blake2b/ext/extconf.rb
96
+ - ext/digest/blake2b/ext/rbext.c
96
97
  - lib/digest/blake2b.rb
97
98
  - lib/digest/blake2b/key.rb
98
99
  - lib/digest/blake2b/version.rb
@@ -110,16 +111,19 @@ require_paths:
110
111
  - lib
111
112
  required_ruby_version: !ruby/object:Gem::Requirement
112
113
  requirements:
113
- - - "~>"
114
+ - - ">="
114
115
  - !ruby/object:Gem::Version
115
116
  version: '2.1'
117
+ - - "<"
118
+ - !ruby/object:Gem::Version
119
+ version: '4'
116
120
  required_rubygems_version: !ruby/object:Gem::Requirement
117
121
  requirements:
118
122
  - - ">="
119
123
  - !ruby/object:Gem::Version
120
124
  version: '0'
121
125
  requirements: []
122
- rubygems_version: 3.0.3
126
+ rubygems_version: 3.2.22
123
127
  signing_key:
124
128
  specification_version: 4
125
129
  summary: The BLAKE2b cryptographic hash function.