sequel_auth 0.0.6 → 0.0.7
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:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: e2175f04cd46399643c847326b0e40133804ea62264315f2634968b9c72aa990
|
4
|
+
data.tar.gz: cc44e957dae778c2e37b0f2d7be209e14d295598598f62951e264e50a6f8ebe8
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 526016215de744b925031bab53a12930737b541312e74353550e8305c8f629b94528d20e5e8178e2a7afd5075a999e3830308a705a1879bf0fcccc5ea117cfab
|
7
|
+
data.tar.gz: 6f2ae03ded8e22c43cb14c538ee2fade2f5c5e3ece2a6c65ebd0099486fe9d3d3cf6f68d2f80b42738f5e675c5fda551e8ec2ec8c4c15fd966eeaed7b3cf5555
|
data/lib/sequel_auth.rb
CHANGED
@@ -1,8 +1,8 @@
|
|
1
1
|
require "sequel"
|
2
2
|
require "securerandom"
|
3
|
-
require_relative "providers/bcrypt"
|
4
|
-
require_relative "providers/scrypt"
|
5
|
-
require_relative "providers/crypt"
|
3
|
+
require_relative "sequel_auth/providers/bcrypt"
|
4
|
+
require_relative "sequel_auth/providers/scrypt"
|
5
|
+
require_relative "sequel_auth/providers/crypt"
|
6
6
|
|
7
7
|
module Sequel
|
8
8
|
module Plugins
|
File without changes
|
@@ -5,10 +5,10 @@ module SequelAuth
|
|
5
5
|
class Crypt
|
6
6
|
class << self
|
7
7
|
|
8
|
-
attr_writer :
|
8
|
+
attr_writer :method,:salt_size,:salt
|
9
9
|
# Salt prefix - prefix for random salt
|
10
|
-
def
|
11
|
-
@
|
10
|
+
def method
|
11
|
+
@method ||= defaults[:method]
|
12
12
|
end
|
13
13
|
|
14
14
|
# Salt size - size as number
|
@@ -16,14 +16,23 @@ module SequelAuth
|
|
16
16
|
@salt_size ||= defaults[:salt_size]
|
17
17
|
end
|
18
18
|
|
19
|
+
# Salt size
|
19
20
|
def salt
|
20
|
-
|
21
|
+
@salt ||= defaults[:salt]
|
22
|
+
end
|
23
|
+
|
24
|
+
def random_salt
|
25
|
+
schemes.fetch(method) + (salt_size-schemes.fetch(method).length).times.map {
|
21
26
|
(('a'..'z').to_a + (1..9).to_a + ('A'..'Z').to_a).sample
|
22
27
|
}.join
|
23
28
|
end
|
24
29
|
|
25
30
|
def encrypt(password)
|
26
|
-
|
31
|
+
if salt
|
32
|
+
password.crypt(salt)
|
33
|
+
else
|
34
|
+
password.crypt(random_salt)
|
35
|
+
end
|
27
36
|
end
|
28
37
|
|
29
38
|
def matches?(hash, password)
|
@@ -32,10 +41,21 @@ module SequelAuth
|
|
32
41
|
|
33
42
|
def defaults
|
34
43
|
{
|
35
|
-
|
44
|
+
salt: nil,
|
45
|
+
method: :sha512,
|
36
46
|
salt_size: 16,
|
37
47
|
}.freeze
|
38
48
|
end
|
49
|
+
private
|
50
|
+
def schemes
|
51
|
+
{
|
52
|
+
md5: '$1$',
|
53
|
+
nthash: '$3$$',
|
54
|
+
sha256: '$5$',
|
55
|
+
sha512: '$6$',
|
56
|
+
sha1: '$sha1$'
|
57
|
+
}.freeze
|
58
|
+
end
|
39
59
|
end
|
40
60
|
end
|
41
61
|
end
|
File without changes
|
data/lib/sequel_auth/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: sequel_auth
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.7
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Fatih GENÇ
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2021-05-
|
11
|
+
date: 2021-05-06 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: sequel
|
@@ -72,6 +72,20 @@ dependencies:
|
|
72
72
|
- - "~>"
|
73
73
|
- !ruby/object:Gem::Version
|
74
74
|
version: '3.0'
|
75
|
+
- !ruby/object:Gem::Dependency
|
76
|
+
name: simplecov
|
77
|
+
requirement: !ruby/object:Gem::Requirement
|
78
|
+
requirements:
|
79
|
+
- - "~>"
|
80
|
+
- !ruby/object:Gem::Version
|
81
|
+
version: '0.21'
|
82
|
+
type: :development
|
83
|
+
prerelease: false
|
84
|
+
version_requirements: !ruby/object:Gem::Requirement
|
85
|
+
requirements:
|
86
|
+
- - "~>"
|
87
|
+
- !ruby/object:Gem::Version
|
88
|
+
version: '0.21'
|
75
89
|
- !ruby/object:Gem::Dependency
|
76
90
|
name: sqlite3
|
77
91
|
requirement: !ruby/object:Gem::Requirement
|
@@ -92,10 +106,10 @@ executables: []
|
|
92
106
|
extensions: []
|
93
107
|
extra_rdoc_files: []
|
94
108
|
files:
|
95
|
-
- lib/providers/bcrypt.rb
|
96
|
-
- lib/providers/crypt.rb
|
97
|
-
- lib/providers/scrypt.rb
|
98
109
|
- lib/sequel_auth.rb
|
110
|
+
- lib/sequel_auth/providers/bcrypt.rb
|
111
|
+
- lib/sequel_auth/providers/crypt.rb
|
112
|
+
- lib/sequel_auth/providers/scrypt.rb
|
99
113
|
- lib/sequel_auth/version.rb
|
100
114
|
homepage: https://gitlab.com/ikilifikir/sequel_auth
|
101
115
|
licenses:
|