crumbl 0.0.1 → 0.0.2
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 +4 -4
- data/bin/crumbl +12 -10
- data/lib/crumbl/base.rb +4 -8
- data/lib/crumbl/version.rb +1 -1
- metadata +2 -2
    
        checksums.yaml
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            ---
         | 
| 2 2 | 
             
            SHA1:
         | 
| 3 | 
            -
              metadata.gz:  | 
| 4 | 
            -
              data.tar.gz:  | 
| 3 | 
            +
              metadata.gz: c3b8dd0f98053b98e04343c60659836908c22ef6
         | 
| 4 | 
            +
              data.tar.gz: fe1bf8a3c123ac1650989dcd5712bf6e0a70d669
         | 
| 5 5 | 
             
            SHA512:
         | 
| 6 | 
            -
              metadata.gz:  | 
| 7 | 
            -
              data.tar.gz:  | 
| 6 | 
            +
              metadata.gz: 813d43fa0cf1b6f070b8cbe0c24a5d3d1b17029422de9e40d28e0e54e340bf2c85245fad93bace746077d11046c4a408bb9047da6074e4d1c77806cb7cc38f39
         | 
| 7 | 
            +
              data.tar.gz: 236ca9d70db70d6ee5192c723086a69620b8725c0845fbad8547e64b414124967cfdea1eff974dd8327b2d11ecb95e32c5503e1488d49a9728816244e679b9bb
         | 
    
        data/bin/crumbl
    CHANGED
    
    | @@ -12,28 +12,30 @@ end | |
| 12 12 | 
             
            class CrumblCmd < Thor
         | 
| 13 13 | 
             
              desc "decode [COOKIE]", "Decode a Rails 3 cookie [COOKIE]"
         | 
| 14 14 | 
             
              def decode(cookie)
         | 
| 15 | 
            -
                Crumbl.decode cookie
         | 
| 15 | 
            +
                puts Crumbl.decode cookie
         | 
| 16 16 | 
             
              end
         | 
| 17 17 |  | 
| 18 | 
            -
              desc "encode [ | 
| 19 | 
            -
               | 
| 20 | 
            -
             | 
| 18 | 
            +
              desc "encode [KEY] --data [DATA]", "Encode [DATA] as a Rails 3 cookie signed with secret key [KEY]"
         | 
| 19 | 
            +
              method_option :data, :aliases => "-d", :type => :hash, :required => true
         | 
| 20 | 
            +
              def encode(key)
         | 
| 21 | 
            +
                puts Crumbl.encode options[:data], key
         | 
| 21 22 | 
             
              end
         | 
| 22 23 |  | 
| 23 | 
            -
              desc "decrypt [ | 
| 24 | 
            +
              desc "decrypt [KEY BASE] [COOKIE]", "Decrypt Rails 4 [COOKIE] using secret key base [KEY BASE]"
         | 
| 24 25 | 
             
              method_option :iterations,                   :aliases => "-i", :default => Crumbl::DEFAULT_ITERATIONS, :type => :numeric
         | 
| 25 26 | 
             
              method_option :encrypted_cookie_salt,        :aliases => "-e", :default => Crumbl::DEFAULT_ENCRYPTED_COOKIE_SALT
         | 
| 26 27 | 
             
              method_option :encrypted_signed_cookie_salt, :aliases => "-s", :default => Crumbl::DEFAULT_ENCRYPTED_SIGNED_COOKIE_SALT
         | 
| 27 | 
            -
              def decrypt( | 
| 28 | 
            -
                Crumbl.decrypt cookie, secret_key_base, options[:iterations], options[:encrypted_cookie_salt], options[:encrypted_signed_cookie_salt]
         | 
| 28 | 
            +
              def decrypt(secret_key_base, cookie)
         | 
| 29 | 
            +
                puts Crumbl.decrypt cookie, secret_key_base, options[:iterations], options[:encrypted_cookie_salt], options[:encrypted_signed_cookie_salt]
         | 
| 29 30 | 
             
              end
         | 
| 30 31 |  | 
| 31 | 
            -
              desc "encrypt [ | 
| 32 | 
            +
              desc "encrypt [KEY BASE] --data [DATA]", "Encrypt Rails 4 [DATA] using secret key base [KEY BASE]"
         | 
| 33 | 
            +
              method_option :data,                         :aliases => "-d", :type => :hash, :required => true
         | 
| 32 34 | 
             
              method_option :iterations,                   :aliases => "-i", :default => Crumbl::DEFAULT_ITERATIONS, :type => :numeric
         | 
| 33 35 | 
             
              method_option :encrypted_cookie_salt,        :aliases => "-e", :default => Crumbl::DEFAULT_ENCRYPTED_COOKIE_SALT
         | 
| 34 36 | 
             
              method_option :encrypted_signed_cookie_salt, :aliases => "-s", :default => Crumbl::DEFAULT_ENCRYPTED_SIGNED_COOKIE_SALT
         | 
| 35 | 
            -
              def encrypt( | 
| 36 | 
            -
                Crumbl.encrypt data, secret_key_base, options[:iterations], options[:encrypted_cookie_salt], options[:encrypted_signed_cookie_salt]
         | 
| 37 | 
            +
              def encrypt(secret_key_base)
         | 
| 38 | 
            +
                puts Crumbl.encrypt options[:data], secret_key_base, options[:iterations], options[:encrypted_cookie_salt], options[:encrypted_signed_cookie_salt]
         | 
| 37 39 | 
             
              end
         | 
| 38 40 | 
             
            end
         | 
| 39 41 |  | 
    
        data/lib/crumbl/base.rb
    CHANGED
    
    | @@ -8,14 +8,12 @@ class Crumbl | |
| 8 8 | 
             
              DEFAULT_ENCRYPTED_SIGNED_COOKIE_SALT = "signed encrypted cookie"
         | 
| 9 9 |  | 
| 10 10 | 
             
              def self.decode cookie
         | 
| 11 | 
            -
                 | 
| 12 | 
            -
                puts "Decoded: #{decoded}"
         | 
| 11 | 
            +
                ::Rack::Session::Cookie::Base64::Marshal.new.decode(cookie)
         | 
| 13 12 | 
             
              end
         | 
| 14 13 |  | 
| 15 14 | 
             
              def self.encode data, key
         | 
| 16 15 | 
             
                cookie_verifier = ActiveSupport::MessageVerifier.new(key)
         | 
| 17 | 
            -
                 | 
| 18 | 
            -
                puts "Encoded: #{encoded}"
         | 
| 16 | 
            +
                cookie_verifier.generate data
         | 
| 19 17 | 
             
              end
         | 
| 20 18 |  | 
| 21 19 | 
             
              def self.decrypt cookie, secret_key_base, iterations=DEFAULT_ITERATIONS, encrypted_cookie_salt=DEFAULT_ENCRYPTED_COOKIE_SALT, encrypted_signed_cookie_salt=DEFAULT_ENCRYPTED_SIGNED_COOKIE_SALT
         | 
| @@ -23,8 +21,7 @@ class Crumbl | |
| 23 21 | 
             
                secret = key_generator.generate_key(encrypted_cookie_salt)
         | 
| 24 22 | 
             
                sign_secret = key_generator.generate_key(encrypted_signed_cookie_salt)
         | 
| 25 23 | 
             
                encryptor = ActiveSupport::MessageEncryptor.new(secret, sign_secret)
         | 
| 26 | 
            -
                 | 
| 27 | 
            -
                puts "Decrypted: #{decrypted}"
         | 
| 24 | 
            +
                encryptor.decrypt_and_verify(cookie)
         | 
| 28 25 | 
             
              end
         | 
| 29 26 |  | 
| 30 27 | 
             
              def self.encrypt data, secret_key_base, iterations=DEFAULT_ITERATIONS, encrypted_cookie_salt=DEFAULT_ENCRYPTED_COOKIE_SALT, encrypted_signed_cookie_salt=DEFAULT_ENCRYPTED_SIGNED_COOKIE_SALT
         | 
| @@ -32,7 +29,6 @@ class Crumbl | |
| 32 29 | 
             
                secret = key_generator.generate_key(encrypted_cookie_salt)
         | 
| 33 30 | 
             
                sign_secret = key_generator.generate_key(encrypted_signed_cookie_salt)
         | 
| 34 31 | 
             
                encryptor = ActiveSupport::MessageEncryptor.new(secret, sign_secret)
         | 
| 35 | 
            -
                 | 
| 36 | 
            -
                puts "Encrypted: #{encrypted}"
         | 
| 32 | 
            +
                encryptor.encrypt_and_sign(data)
         | 
| 37 33 | 
             
              end
         | 
| 38 34 | 
             
            end
         | 
    
        data/lib/crumbl/version.rb
    CHANGED
    
    
    
        metadata
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            --- !ruby/object:Gem::Specification
         | 
| 2 2 | 
             
            name: crumbl
         | 
| 3 3 | 
             
            version: !ruby/object:Gem::Version
         | 
| 4 | 
            -
              version: 0.0. | 
| 4 | 
            +
              version: 0.0.2
         | 
| 5 5 | 
             
            platform: ruby
         | 
| 6 6 | 
             
            authors:
         | 
| 7 7 | 
             
            - David Lanner
         | 
| @@ -50,7 +50,7 @@ files: | |
| 50 50 | 
             
            - lib/crumbl.rb
         | 
| 51 51 | 
             
            - lib/crumbl/base.rb
         | 
| 52 52 | 
             
            - lib/crumbl/version.rb
         | 
| 53 | 
            -
            homepage:  | 
| 53 | 
            +
            homepage: https://github.com/dlanner/crumbl
         | 
| 54 54 | 
             
            licenses:
         | 
| 55 55 | 
             
            - MIT
         | 
| 56 56 | 
             
            metadata: {}
         |