Cryptography and Information Security

Cryptography and information security

 

 

 

 

Cryptography and Information Security seek at building tools that enable to secure data and to communicate in a reliable, fair, and private way. Over thirty researchers are active in this field.

Principal Investigators :

Axel Legay, Olivier Pereira, Etienne Rivière, Ramin Sadre, François-Xavier Standaert, Jean-Pierre Tignol, Luc Vandendorpe

Research Labs :

Crypto Group, Cloud and Large Scale computing group, Image and Signal Processing Group (ISPGroup)

Research Areas :

The research expertise at UCL, strong of over 30 researchers, covers the various layers of cryptography and its application to information security, namely:

  • Design and analysis of strong security protocols: authentication, multiparty computation, voting, provable security, evaluations, ...;
  • Design and analysis of efficient and secure cryptographic primitives symmetric and asymmetric encryption, digital signatures, ... ;
  • Efficient implementations of cryptographic primitives under various environmental constraints, both in software and hardware smart card, RFID, FPGA, ASIC, sensor networks, ...;
  • Implementation-related attacks (fault injection, side-channel) and countermeasures (distance-bounding protocols, masking, ...);
  • Practical attacks against security applications: time-memory tradeoff, biometric passport, ...;
  • Security from the physical layer: information theoretic cryptography, cooperative communications, ...;
  • Algebra: number theory, algebraic geometry, quadratic forms, algebras over arbitrary fields, ...;
  • Privacy-related issues at all levels ;
  • Computer security: viruses, spam, distributed attacks, wireless networks, ...

Most recent publications

Below are listed the 10 most recent journal articles and conference papers produced in this research area. You also can access all publications by following this link : see all publications.

--> -->
 
 
<type 'exceptions.IOError'>
Python 2.7.9: /usr/bin/python
Mon May 20 13:22:55 2019

A problem occurred in a Python script. Here is the sequence of function calls leading up to the error, in the order they occurred.

 /var/www/sites/tools/export/export.py in ()
    104         t.encode("utf-8"))
    105 
=>  106     tmp = urllib.urlopen(q)
    107     
    108     resp = eval( urllib.urlopen(q).read() )
tmp undefined, urllib = <module 'urllib' from '/usr/lib/python2.7/urllib.pyc'>, urllib.urlopen = <function urlopen>, q = 'https://dial.uclouvain.be/solr6/repository/selec...de%20p%C3%A9riodique%20%28Journal%20article%29%22'
 /usr/lib/python2.7/urllib.py in urlopen(url='https://dial.uclouvain.be/solr6/repository/selec...de%20p%C3%A9riodique%20%28Journal%20article%29%22', data=None, proxies=None, context=None)
     85         opener = _urlopener
     86     if data is None:
=>   87         return opener.open(url)
     88     else:
     89         return opener.open(url, data)
opener = <urllib.FancyURLopener instance>, opener.open = <bound method FancyURLopener.open of <urllib.FancyURLopener instance>>, url = 'https://dial.uclouvain.be/solr6/repository/selec...de%20p%C3%A9riodique%20%28Journal%20article%29%22'
 /usr/lib/python2.7/urllib.py in open(self=<urllib.FancyURLopener instance>, fullurl='https://dial.uclouvain.be/solr6/repository/selec...de%20p%C3%A9riodique%20%28Journal%20article%29%22', data=None)
    211         try:
    212             if data is None:
=>  213                 return getattr(self, name)(url)
    214             else:
    215                 return getattr(self, name)(url, data)
builtin getattr = <built-in function getattr>, self = <urllib.FancyURLopener instance>, name = 'open_https', url = '//dial.uclouvain.be/solr6/repository/select?&sta...de%20p%C3%A9riodique%20%28Journal%20article%29%22'
 /usr/lib/python2.7/urllib.py in open_https(self=<urllib.FancyURLopener instance>, url='//dial.uclouvain.be/solr6/repository/select?&sta...de%20p%C3%A9riodique%20%28Journal%20article%29%22', data=None)
    441             if realhost: h.putheader('Host', realhost)
    442             for args in self.addheaders: h.putheader(*args)
=>  443             h.endheaders(data)
    444             errcode, errmsg, headers = h.getreply()
    445             fp = h.getfile()
h = <httplib.HTTPS instance>, h.endheaders = <bound method HTTPSConnection.endheaders of <httplib.HTTPSConnection instance>>, data = None
 /usr/lib/python2.7/httplib.py in endheaders(self=<httplib.HTTPSConnection instance>, message_body=None)
   1033         else:
   1034             raise CannotSendHeader()
=> 1035         self._send_output(message_body)
   1036 
   1037     def request(self, method, url, body=None, headers={}):
self = <httplib.HTTPSConnection instance>, self._send_output = <bound method HTTPSConnection._send_output of <httplib.HTTPSConnection instance>>, message_body = None
 /usr/lib/python2.7/httplib.py in _send_output(self=<httplib.HTTPSConnection instance>, message_body=None)
    877             msg += message_body
    878             message_body = None
=>  879         self.send(msg)
    880         if message_body is not None:
    881             #message_body was not a string (i.e. it is a file) and
self = <httplib.HTTPSConnection instance>, self.send = <bound method HTTPSConnection.send of <httplib.HTTPSConnection instance>>, msg = 'GET /solr6/repository/select?&start=0&rows=99999....uclouvain.be\r\nUser-Agent: Python-urllib/1.17\r\n\r\n'
 /usr/lib/python2.7/httplib.py in send(self=<httplib.HTTPSConnection instance>, data='GET /solr6/repository/select?&start=0&rows=99999....uclouvain.be\r\nUser-Agent: Python-urllib/1.17\r\n\r\n')
    839         if self.sock is None:
    840             if self.auto_open:
=>  841                 self.connect()
    842             else:
    843                 raise NotConnected()
self = <httplib.HTTPSConnection instance>, self.connect = <bound method HTTPSConnection.connect of <httplib.HTTPSConnection instance>>
 /usr/lib/python2.7/httplib.py in connect(self=<httplib.HTTPSConnection instance>)
   1248 
   1249             self.sock = self._context.wrap_socket(self.sock,
=> 1250                                                   server_hostname=server_hostname)
   1251 
   1252     __all__.append("HTTPSConnection")
server_hostname = 'dial.uclouvain.be'
 /usr/lib/python2.7/ssl.py in wrap_socket(self=<ssl.SSLContext object>, sock=<socket._socketobject object>, server_side=False, do_handshake_on_connect=True, suppress_ragged_eofs=True, server_hostname='dial.uclouvain.be')
    348                          suppress_ragged_eofs=suppress_ragged_eofs,
    349                          server_hostname=server_hostname,
=>  350                          _context=self)
    351 
    352     def set_npn_protocols(self, npn_protocols):
_context undefined, self = <ssl.SSLContext object>
 /usr/lib/python2.7/ssl.py in __init__(self=<ssl.SSLSocket object>, sock=<socket._socketobject object>, keyfile=None, certfile=None, server_side=False, cert_reqs=0, ssl_version=2, ca_certs=None, do_handshake_on_connect=True, family=2, type=1, proto=0, fileno=None, suppress_ragged_eofs=True, npn_protocols=None, ciphers=None, server_hostname='dial.uclouvain.be', _context=<ssl.SSLContext object>)
    564                         # non-blocking
    565                         raise ValueError("do_handshake_on_connect should not be specified for non-blocking sockets")
=>  566                     self.do_handshake()
    567 
    568             except (OSError, ValueError):
self = <ssl.SSLSocket object>, self.do_handshake = <bound method SSLSocket.do_handshake of <ssl.SSLSocket object>>
 /usr/lib/python2.7/ssl.py in do_handshake(self=<ssl.SSLSocket object>, block=False)
    786             if timeout == 0.0 and block:
    787                 self.settimeout(None)
=>  788             self._sslobj.do_handshake()
    789         finally:
    790             self.settimeout(timeout)
self = <ssl.SSLSocket object>, self._sslobj = <_ssl._SSLSocket object>, self._sslobj.do_handshake = <built-in method do_handshake of _ssl._SSLSocket object>

<type 'exceptions.IOError'>: [Errno socket error] [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:581)
      args = ('socket error', SSLError(1, u'[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:581)'))
      errno = 'socket error'
      filename = None
      message = ''
      strerror = SSLError(1, u'[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:581)')

--> -->
 
 
<type 'exceptions.IOError'>
Python 2.7.9: /usr/bin/python
Mon May 20 13:22:55 2019

A problem occurred in a Python script. Here is the sequence of function calls leading up to the error, in the order they occurred.

 /var/www/sites/tools/export/export.py in ()
    106     tmp = urllib.urlopen(q)
    107     
=>  108     resp = eval( urllib.urlopen(q).read() )
    109     if ( resp['response']['numFound'] > 0 ):
    110         #print '<h/>%s (%d)</h2>' % (pubType[t].encode("utf-8"), \
resp undefined, builtin eval = <built-in function eval>, urllib = <module 'urllib' from '/usr/lib/python2.7/urllib.pyc'>, urllib.urlopen = <function urlopen>, q = 'https://dial.uclouvain.be/solr6/repository/selec...de%20p%C3%A9riodique%20%28Journal%20article%29%22', ).read undefined
 /usr/lib/python2.7/urllib.py in urlopen(url='https://dial.uclouvain.be/solr6/repository/selec...de%20p%C3%A9riodique%20%28Journal%20article%29%22', data=None, proxies=None, context=None)
     85         opener = _urlopener
     86     if data is None:
=>   87         return opener.open(url)
     88     else:
     89         return opener.open(url, data)
opener = <urllib.FancyURLopener instance>, opener.open = <bound method FancyURLopener.open of <urllib.FancyURLopener instance>>, url = 'https://dial.uclouvain.be/solr6/repository/selec...de%20p%C3%A9riodique%20%28Journal%20article%29%22'
 /usr/lib/python2.7/urllib.py in open(self=<urllib.FancyURLopener instance>, fullurl='https://dial.uclouvain.be/solr6/repository/selec...de%20p%C3%A9riodique%20%28Journal%20article%29%22', data=None)
    211         try:
    212             if data is None:
=>  213                 return getattr(self, name)(url)
    214             else:
    215                 return getattr(self, name)(url, data)
builtin getattr = <built-in function getattr>, self = <urllib.FancyURLopener instance>, name = 'open_https', url = '//dial.uclouvain.be/solr6/repository/select?&sta...de%20p%C3%A9riodique%20%28Journal%20article%29%22'
 /usr/lib/python2.7/urllib.py in open_https(self=<urllib.FancyURLopener instance>, url='//dial.uclouvain.be/solr6/repository/select?&sta...de%20p%C3%A9riodique%20%28Journal%20article%29%22', data=None)
    441             if realhost: h.putheader('Host', realhost)
    442             for args in self.addheaders: h.putheader(*args)
=>  443             h.endheaders(data)
    444             errcode, errmsg, headers = h.getreply()
    445             fp = h.getfile()
h = <httplib.HTTPS instance>, h.endheaders = <bound method HTTPSConnection.endheaders of <httplib.HTTPSConnection instance>>, data = None
 /usr/lib/python2.7/httplib.py in endheaders(self=<httplib.HTTPSConnection instance>, message_body=None)
   1033         else:
   1034             raise CannotSendHeader()
=> 1035         self._send_output(message_body)
   1036 
   1037     def request(self, method, url, body=None, headers={}):
self = <httplib.HTTPSConnection instance>, self._send_output = <bound method HTTPSConnection._send_output of <httplib.HTTPSConnection instance>>, message_body = None
 /usr/lib/python2.7/httplib.py in _send_output(self=<httplib.HTTPSConnection instance>, message_body=None)
    877             msg += message_body
    878             message_body = None
=>  879         self.send(msg)
    880         if message_body is not None:
    881             #message_body was not a string (i.e. it is a file) and
self = <httplib.HTTPSConnection instance>, self.send = <bound method HTTPSConnection.send of <httplib.HTTPSConnection instance>>, msg = 'GET /solr6/repository/select?&start=0&rows=99999....uclouvain.be\r\nUser-Agent: Python-urllib/1.17\r\n\r\n'
 /usr/lib/python2.7/httplib.py in send(self=<httplib.HTTPSConnection instance>, data='GET /solr6/repository/select?&start=0&rows=99999....uclouvain.be\r\nUser-Agent: Python-urllib/1.17\r\n\r\n')
    839         if self.sock is None:
    840             if self.auto_open:
=>  841                 self.connect()
    842             else:
    843                 raise NotConnected()
self = <httplib.HTTPSConnection instance>, self.connect = <bound method HTTPSConnection.connect of <httplib.HTTPSConnection instance>>
 /usr/lib/python2.7/httplib.py in connect(self=<httplib.HTTPSConnection instance>)
   1248 
   1249             self.sock = self._context.wrap_socket(self.sock,
=> 1250                                                   server_hostname=server_hostname)
   1251 
   1252     __all__.append("HTTPSConnection")
server_hostname = 'dial.uclouvain.be'
 /usr/lib/python2.7/ssl.py in wrap_socket(self=<ssl.SSLContext object>, sock=<socket._socketobject object>, server_side=False, do_handshake_on_connect=True, suppress_ragged_eofs=True, server_hostname='dial.uclouvain.be')
    348                          suppress_ragged_eofs=suppress_ragged_eofs,
    349                          server_hostname=server_hostname,
=>  350                          _context=self)
    351 
    352     def set_npn_protocols(self, npn_protocols):
_context undefined, self = <ssl.SSLContext object>
 /usr/lib/python2.7/ssl.py in __init__(self=<ssl.SSLSocket object>, sock=<socket._socketobject object>, keyfile=None, certfile=None, server_side=False, cert_reqs=0, ssl_version=2, ca_certs=None, do_handshake_on_connect=True, family=2, type=1, proto=0, fileno=None, suppress_ragged_eofs=True, npn_protocols=None, ciphers=None, server_hostname='dial.uclouvain.be', _context=<ssl.SSLContext object>)
    564                         # non-blocking
    565                         raise ValueError("do_handshake_on_connect should not be specified for non-blocking sockets")
=>  566                     self.do_handshake()
    567 
    568             except (OSError, ValueError):
self = <ssl.SSLSocket object>, self.do_handshake = <bound method SSLSocket.do_handshake of <ssl.SSLSocket object>>
 /usr/lib/python2.7/ssl.py in do_handshake(self=<ssl.SSLSocket object>, block=False)
    786             if timeout == 0.0 and block:
    787                 self.settimeout(None)
=>  788             self._sslobj.do_handshake()
    789         finally:
    790             self.settimeout(timeout)
self = <ssl.SSLSocket object>, self._sslobj = <_ssl._SSLSocket object>, self._sslobj.do_handshake = <built-in method do_handshake of _ssl._SSLSocket object>

<type 'exceptions.IOError'>: [Errno socket error] [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:581)
      args = ('socket error', SSLError(1, u'[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:581)'))
      errno = 'socket error'
      filename = None
      message = ''
      strerror = SSLError(1, u'[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:581)')