summaryrefslogtreecommitdiff
path: root/lib/trunk/storage.rb
diff options
context:
space:
mode:
Diffstat (limited to 'lib/trunk/storage.rb')
-rw-r--r--lib/trunk/storage.rb62
1 files changed, 0 insertions, 62 deletions
diff --git a/lib/trunk/storage.rb b/lib/trunk/storage.rb
index a041f60..7adaa35 100644
--- a/lib/trunk/storage.rb
+++ b/lib/trunk/storage.rb
@@ -1,66 +1,4 @@
module Trunk
- class CompositeSerializer
- def initialize(serializers = [])
- @serializers = serializers
- end
-
- def add(serializer)
- @serializers.push(serializer)
- end
-
- def serialize(value)
- @serializers.each do |x|
- value = x.serialize(value)
- end
- value
- end
-
- def deserialize(value)
- puts "deserialize"
- @serializers.reverse.each do |x|
- puts x.class
- value = x.deserialize(value)
- end
- value
- end
- end
-
- class Base64Serializer
- def serialize(value)
- Base64.strict_encode64(value)
- end
-
- def deserialize(value)
- Base64.decode64(value)
- end
- end
-
- class SymmetricCrypto
- attr_reader :private_key, :algorithm
-
- def initialize(private_key, algorithm: 'AES-256-CBC')
- @private_key = private_key
- @algorithm = algorithm
- end
-
- def serialize(plain_text)
- cipher = OpenSSL::Cipher.new(algorithm)
- cipher.encrypt
- cipher.key = private_key
- cipher.random_iv + cipher.update(plain_text) + cipher.final
- end
-
- def deserialize(cipher_text)
- cipher = OpenSSL::Cipher.new(algorithm)
- cipher.decrypt
- iv = cipher_text[0..cipher.iv_len - 1]
- data = cipher_text[cipher.iv_len..-1]
- cipher.key = private_key
- cipher.iv = iv
- cipher.update(data) + cipher.final
- end
- end
-
class Storage
def initialize(hash, serializer)
@hash = hash