branca-ruby 1.0.0 → 1.0.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: ed83738a4d8fa5af4ce11072867964581233d64b
4
- data.tar.gz: 3bd9e2a9a4ec544199ff8fc4b412e5a8aee1c168
2
+ SHA256:
3
+ metadata.gz: 22cc1fffd0d86f0f04a164da3d0df44e79c1313a7469cd460a6f7c1da571be11
4
+ data.tar.gz: 5e65160787f9928edc64d5d339c04cce7ab1326fd7b7c7b33d3a473728505364
5
5
  SHA512:
6
- metadata.gz: 57467de90627d3d71cf6c44678a73eff888ab63d8af956d3e8349c62f3370a4f4aefa5328df416ed99a579beae383ad1ca88a5136d57d0b5007513ea11f967bf
7
- data.tar.gz: fad2dd6948928afea94699b963500585fe7d95ee2a59cb08dcd77cca3e30d1a5a85a4e19c8c5c8c58d6880c5e11b5e5c1a86cf46a3ca392df92f89b3907e522e
6
+ metadata.gz: a04a6f68d9f135afb7c1701edf1ddf8d0503f26e378ac9243e8f96a8dc8c39b5416c3cc2a9046bacbb1fff228dd76183000c15e946cdb8e942d06de140613410
7
+ data.tar.gz: c070da07296c597cf1570c3e5e7aa6d273952cb0f75330dd2a119eaf8cf8af799d5d88d2e75c281a75a4eaae9cb53eafd22c5517eed1794f3a60707ce0430169
@@ -0,0 +1,8 @@
1
+ #!/bin/sh
2
+ set -ex
3
+
4
+ wget https://download.libsodium.org/libsodium/releases/libsodium-1.0.18.tar.gz
5
+ tar -xzvf libsodium-1.0.18.tar.gz
6
+ cd libsodium-1.0.18
7
+ ./configure --prefix=/usr
8
+ make && make install
@@ -0,0 +1,15 @@
1
+ sudo: true
2
+ language: ruby
3
+
4
+ rvm:
5
+ - 2.5
6
+
7
+ cache:
8
+ directories:
9
+ - $HOME/libsodium
10
+
11
+ before_install:
12
+ - sudo ./.travis-libsodium.sh
13
+ - gem install bundler -v '< 2'
14
+
15
+ script: "bundle exec rspec --color"
data/README.md CHANGED
@@ -2,6 +2,8 @@
2
2
 
3
3
  Authenticated and encrypted API tokens using modern crypto.
4
4
 
5
+ [![Gem Version](https://badge.fury.io/rb/branca-ruby.svg)](https://badge.fury.io/rb/branca-ruby)
6
+ [![Build Status](https://travis-ci.com/thadeu/branca-ruby.svg?branch=main)](https://travis-ci.com/thadeu/branca-ruby)
5
7
  [![Software License](https://img.shields.io/badge/license-MIT-brightgreen.svg?style=flat-square)](LICENSE)
6
8
 
7
9
  ## What?
@@ -8,10 +8,10 @@ require 'branca/exceptions'
8
8
  require 'branca/decoder'
9
9
 
10
10
  module Branca
11
- VERSION = 0xBA
12
-
13
11
  class << self
14
- attr_writer :secret_key, :ttl
12
+ VERSION = 0xBA
13
+
14
+ attr_accessor :secret_key, :ttl
15
15
 
16
16
  def encode(message, timestamp = Time.now.utc)
17
17
  nonce = RbNaCl::Random.random_bytes(cipher.nonce_bytes)
@@ -39,7 +39,7 @@ module Branca
39
39
  end
40
40
 
41
41
  def secret_key
42
- @secret_key ||= RbNaCl::Random.random_bytes(32)
42
+ @secret_key&.b || RbNaCl::Random.random_bytes(32)
43
43
  end
44
44
 
45
45
  def configure
@@ -49,7 +49,7 @@ module Branca
49
49
  private
50
50
 
51
51
  def cipher
52
- @cipher ||= RbNaCl::AEAD::XChaCha20Poly1305IETF.new(Branca.secret_key&.b)
52
+ @cipher ||= RbNaCl::AEAD::XChaCha20Poly1305IETF.new(secret_key)
53
53
  end
54
54
 
55
55
  def token_explode(token)
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Branca
4
- VERSION = '1.0.0'
4
+ VERSION = '1.0.1'
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: branca-ruby
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0
4
+ version: 1.0.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Thadeu Esteves
@@ -104,6 +104,8 @@ files:
104
104
  - ".gitignore"
105
105
  - ".rspec"
106
106
  - ".rubocop.yml"
107
+ - ".travis-libsodium.sh"
108
+ - ".travis.yml"
107
109
  - Gemfile
108
110
  - LICENSE
109
111
  - README.md
@@ -134,8 +136,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
134
136
  - !ruby/object:Gem::Version
135
137
  version: '0'
136
138
  requirements: []
137
- rubyforge_project:
138
- rubygems_version: 2.5.2.2
139
+ rubygems_version: 3.0.3
139
140
  signing_key:
140
141
  specification_version: 4
141
142
  summary: Authenticated and encrypted API tokens using modern crypto