module Sandal::Enc

Contains encryption (JWE) functionality.

Public Class Methods

token_parts(token) click to toggle source

Gets the decoded parts of a JWE token.

@param token [String or Array] The token, or encoded token parts. @return [[Array, Array]] The encoded parts and the decoded parts.

# File lib/sandal/enc.rb, line 12
def self.token_parts(token)
  parts = token.is_a?(Array) ? token : token.split(".")
  raise ArgumentError unless parts.length == 5
  decoded_parts = parts.map { |part| Sandal::Util.jwt_base64_decode(part) }
  return parts, decoded_parts
rescue ArgumentError
  raise Sandal::InvalidTokenError, "Invalid token encoding."
end