def test_gpg_secret_write_function_randomstr(self): "write randomstr to secret, confirm secret file exists, reveal and check" token = "secret/randomstr" secret_gpg_write_function(SECRETS_HOME, token, '|randomstr', [{'fingerprint': KEY.fingerprint}], passphrase="testphrase") self.assertTrue(os.path.isfile(os.path.join(SECRETS_HOME, token))) file_with_secret_tags = tempfile.mktemp() file_revealed = tempfile.mktemp() with open(file_with_secret_tags, 'w') as fp: fp.write('?{gpg:secret/randomstr:deadbeef}') with open(file_revealed, 'w') as fp: secret_gpg_reveal_raw(SECRETS_HOME, file_with_secret_tags, verify=False, output=fp, passphrase="testphrase") with open(file_revealed) as fp: secret = fp.read() self.assertEqual(len(secret), 43) # default length of token_urlsafe() string is 43 assert get_entropy(secret) > 4 # Test with parameter nbytes=16, correlating with string length 22 secret_gpg_write_function(SECRETS_HOME, token, '|randomstr:16', [{'fingerprint': KEY.fingerprint}], passphrase="testphrase") file_revealed = tempfile.mktemp() with open(file_revealed, 'w') as fp: secret_gpg_reveal_raw(SECRETS_HOME, file_with_secret_tags, verify=False, output=fp, passphrase="testphrase") with open(file_revealed) as fp: secret = fp.read() self.assertEqual(len(secret), 22)
def test_ref_function_randomstr(self): "write randomstr to secret, confirm ref file exists, reveal and check" tag = '?{ref:ref/randomstr|randomstr}' REF_CONTROLLER[tag] = RefParams() self.assertTrue(os.path.isfile(os.path.join(REFS_HOME, 'ref/base64'))) file_with_tags = tempfile.mktemp() with open(file_with_tags, 'w') as fp: fp.write('?{ref:ref/randomstr}') revealed = REVEALER.reveal_raw_file(file_with_tags) self.assertEqual(len(revealed), 43) # default length of token_urlsafe() string is 43 self.assertTrue(get_entropy(revealed) > 4) # Test with parameter nbytes=16, correlating with string length 16 tag = '?{ref:ref/randomstr|randomstr:16}' REF_CONTROLLER[tag] = RefParams() revealed = REVEALER.reveal_raw_file(file_with_tags) self.assertEqual(len(revealed), 16)