diff --git a/httpupload/httpupload.py b/httpupload/httpupload.py
index e9db75331745b55ad2f7ccbf359630e6f102bf32..9133c609c87a0ff10685af6247b5c0eb203b35e3 100644
--- a/httpupload/httpupload.py
+++ b/httpupload/httpupload.py
@@ -21,7 +21,7 @@ import urllib
 from urllib.request import Request, urlopen
 import mimetypes
 import logging
-import binascii
+from binascii import hexlify
 import certifi
 
 import nbxmpp
@@ -35,10 +35,7 @@ from dialogs import FileChooserDialog, ErrorDialog
 log = logging.getLogger('gajim.plugin_system.httpupload')
 
 try:
-    if os.name == 'nt':
-        from cryptography.hazmat.backends.openssl import backend
-    else:
-        from cryptography.hazmat.backends import default_backend
+    from cryptography.hazmat.backends import default_backend
     from cryptography.hazmat.primitives.ciphers import Cipher
     from cryptography.hazmat.primitives.ciphers import algorithms
     from cryptography.hazmat.primitives.ciphers.modes import GCM
@@ -172,8 +169,8 @@ class Base(object):
             if type(plugin).__name__ == 'OmemoPlugin':
                 state = plugin.get_omemo_state(self.account)
                 encryption = state.encryption.is_active(jid)
-                log.info('Encryption is: %s', encryption)
-                return encryption
+                log.info('Encryption is: %s', bool(encryption))
+                return bool(encryption)
         log.info('OMEMO not found, encryption disabled')
         return False
 
@@ -298,7 +295,7 @@ class Base(object):
                 transfer = urlopen(request, timeout=30)
             file.stream.close()
             log.info('Urllib upload request done, response code: %s',
-                      transfer.getcode())
+                     transfer.getcode())
             GLib.idle_add(self.upload_complete, transfer.getcode(), file)
             return
         except UploadAbortedException as exc:
@@ -322,7 +319,7 @@ class Base(object):
             log.info("Upload completed successfully")
             message = file.get
             if file.encrypted:
-                message += '#' + binascii.hexlify(file.iv + file.key)
+                message += '#' + hexlify(file.iv + file.key).decode('utf-8')
             file.control.send_message(message=message)
             file.control.msg_textview.grab_focus()
         else:
@@ -353,17 +350,13 @@ class StreamFileWithProgress:
     def __init__(self, file, mode, *args):
         self.event = file.event
         self.backing = open(file.path, mode)
-        self.encrypted_upload = file.encrypted
+        self.encrypted = file.encrypted
         self.backing.seek(0, os.SEEK_END)
-        if self.encrypted_upload:
-            if os.name == 'nt':
-                self.backend = backend
-            else:
-                self.backend = default_backend()
+        if self.encrypted:
             self.encryptor = Cipher(
                 algorithms.AES(file.key),
                 GCM(file.iv),
-                backend=self.backend).encryptor()
+                backend=default_backend()).encryptor()
             self._total = self.backing.tell() + TAGSIZE
         else:
             self._total = self.backing.tell()
@@ -378,7 +371,7 @@ class StreamFileWithProgress:
     def read(self, size):
         if self.event.isSet():
             raise UploadAbortedException
-        if self.encrypted_upload:
+        if self.encrypted:
             data = self.backing.read(size)
             if len(data) > 0:
                 data = self.encryptor.update(data)
@@ -415,7 +408,6 @@ class ProgressWindow:
         self.dialog.set_title('HTTP Upload')
         self.label = self.xml.get_object('label')
         self.label.set_text(_('Requesting HTTP Upload Slot...'))
-        # self.label.set_markup('<big>' + during_text + '</big>')
         self.progressbar = self.xml.get_object('progressbar')
         self.dialog.show_all()
         self.xml.connect_signals(self)