コード例 #1
0
 def callback(path):
     try:
         # Save
         proxy = self.proxy.current
         self.aes_key = AESCipher.generate_key()
         remote_uri = str(path)
         new_file_info = FileInfo(
             name=self.data_name.value,
             data_type='stream',
             proxy=proxy,
             remote_type='stream',
             remote_uri=remote_uri,
             public_key=wallet.market_client.public_key,
             is_published=False,
             created=func.current_timestamp(),
             aes_key=self.aes_key)
         fs.add_file(new_file_info)
         self._id = new_file_info.id
         encrypted_key = RSACipher.encrypt(self.aes_key)
         encrypted_key = Encoder.bytes_to_base64_str(encrypted_key)
         wallet.market_client.upload_file_info(None, None, 0, self._id,
                                               'stream',
                                               json.dumps(remote_uri),
                                               self.data_name.value,
                                               encrypted_key)
         path = json.loads(path)
         self.uploaded.emit(path)
     except Exception as err:
         logger.error(err)
コード例 #2
0
def encrypt_file(file_in_path, file_out_path):
    new_key = AESCipher.generate_key()
    encrypter = AESCipher(new_key)
    encrypter.encrypt(file_in_path, file_out_path)
    return new_key