Example #1
0
 def test_is_base64(self):
     assert is_base64(portable_b64encode("foo"))
     assert is_base64(portable_b64encode(self.some_binary))
     assert is_base64(portable_b64encode(self.ghost_emoji))
     self.assertFalse(is_base64("foo"))
     self.assertFalse(is_base64("2454"))
     self.assertFalse(is_base64("1234"))
Example #2
0
def encrypt_var(csv_keys):
    """Encrypt what comes in from stdin and return base64
    encrypted against the specified keys, returning on stdout"""
    keys = massage_keys(csv_keys.split(','))
    data = sys.stdin.read()
    encrypted = cryptorito.encrypt_var(data, keys)
    print(cryptorito.portable_b64encode(encrypted))
Example #3
0
def cli_root_import(name):
    """Imports a plaintext root token and will encrypt
    according to the propriecle configuration."""
    server = get_server(name)
    root_token = getpass('Root Token: ', stream=sys.stderr)
    if not root_token:
        problems("Must specify a token")

    root_key = conf.get('root_key')
    key_id = cryptorito.key_from_keybase(root_key[8:])['fingerprint']
    encrypted = cryptorito.portable_b64encode(
        cryptorito.encrypt_var(root_token, [key_id]))
    do_write(encrypted, root_file_name(server))
Example #4
0
    def obj(self):
        s_obj = {}
        for name, filename in iteritems(self._obj):
            actual_file = hard_path(filename, self.opt.secrets)
            secret_file(actual_file)
            data = open_maybe_binary(actual_file)
            try:
                is_unicode_string(data)
                s_obj[name] = data
            except aomi.exceptions.Validation:
                s_obj[name] = portable_b64encode(data)
                self.secret_format = 'binary'

        return s_obj
Example #5
0
    def obj(self):
        s_obj = {}
        for name, filename in iteritems(self._obj):
            actual_file = hard_path(filename, self.opt.secrets)
            secret_file(actual_file)
            data = open_maybe_binary(actual_file)
            try:
                is_unicode_string(data)
                s_obj[name] = data
            except aomi.exceptions.Validation:
                s_obj[name] = portable_b64encode(data)
                self.secret_format = 'binary'

        return s_obj
Example #6
0
def cli_unseal_import(name, s_slot):
    """Imports a unseal key at a spcified slot and will
    encrypt accordign to the propriecle configuration."""
    slot = int(s_slot)
    server = get_server(name)
    unseal_key = getpass('Unseal Key: ', stream=sys.stderr)
    if not unseal_key:
        problems("Must specify a unseal key")

    a_key = conf.get('keys')[slot - 1]
    key_id = cryptorito.key_from_keybase(a_key[8:])['fingerprint']
    encrypted = cryptorito.portable_b64encode(
        cryptorito.encrypt_var(unseal_key, [key_id]))
    do_write(encrypted, unseal_file_name(server, slot))
Example #7
0
 def test_happy_path(self):
     print("AAAA %s" % portable_b64decode(portable_b64encode("foo")))
     assert polite_string(portable_b64decode(
         portable_b64encode("foo"))) == "foo"