コード例 #1
0
def decrypt(in_file, out_file, private_key, key_length=32):
    bs = AES.block_size
    salt = in_file.read(bs)[len('Salted__'):]
    pass_key_length = int(in_file.read(11)[len('Length__'):])
    print pass_key_length
    encrypted_password = in_file.read(5+pass_key_length)[len('Key__'):]
    print encrypted_password
    password = bitcoin_asymmetric_encrypt.decrypt(private_key,encrypted_password)
    print password

    key, iv = derive_key_and_iv(password, salt, key_length, bs)
    cipher = AES.new(key, AES.MODE_CBC, iv)
    next_chunk = ''
    finished = False
    while not finished:
        chunk, next_chunk = next_chunk, cipher.decrypt(in_file.read(1024 * bs))
        if len(next_chunk) == 0:
            padding_length = ord(chunk[-1])
            chunk = chunk[:-padding_length]
            finished = True
        out_file.write(chunk)
コード例 #2
0
ファイル: message.py プロジェクト: rajumariappan/govern8rLib
 def get_message_from_secure_payload(self, payload):
     encrypted = payload['message']
     decrypted = bitcoin_asymmetric_encrypt.decrypt(
         self.wallet.get_private_key_wif(), encrypted)
     return decrypted
コード例 #3
0
ファイル: message.py プロジェクト: cypherhat/govern8rLib
 def get_message_from_secure_payload(self, payload):
     encrypted = payload['message']
     decrypted = bitcoin_asymmetric_encrypt.decrypt(self.wallet.get_private_key_wif(), encrypted)
     return decrypted