예제 #1
0
    def __format__(self, formatstr):
        """Advanced formatting for messages."""
        hexify = False
        verbose = False
        digest = False
        if "h" in formatstr:
            hexify = True
        if "v" in formatstr:
            verbose = True
        if "m" in formatstr:
            digest = True

        if self.certChain is None:
            cert_list = None
        else:
            if isinstance(self.certChain, X509CertChain):
                cert_list = [cert.bytes for cert in self.certChain.x509List]
            else:
                cert_list = self.certChain

            if digest:
                cert_list = "[" + ", ".join(b2a_hex(secureHash(cert, "sha256")) for cert in cert_list) + "]"
            else:
                cert_list = [repr(cert) for cert in cert_list]

        return "Certificate({0})".format(cert_list)
예제 #2
0
    def __format__(self, formatstr):
        """Advanced formatting for messages."""
        hexify = False
        verbose = False
        digest = False
        if 'h' in formatstr:
            hexify = True
        if 'v' in formatstr:
            verbose = True
        if 'm' in formatstr:
            digest = True

        if self.certChain is None:
            cert_list = None
        else:
            if isinstance(self.certChain, X509CertChain):
                cert_list = [cert.bytes for cert in self.certChain.x509List]
            else:
                cert_list = self.certChain

            if digest:
                cert_list = "[" + ", ".join(
                    b2a_hex(secureHash(cert, 'sha256'))
                    for cert in cert_list) + "]"
            else:
                cert_list = [repr(cert) for cert in cert_list]

        return "Certificate({0})".format(cert_list)
 def test_SHA224(self):
     self.assertEqual(secureHash(b'abc', 'sha224'),
                      bytearray(b'\x23\x09\x7D\x22'
                                b'\x34\x05\xD8\x22'
                                b'\x86\x42\xA4\x77'
                                b'\xBD\xA2\x55\xB3'
                                b'\x2A\xAD\xBC\xE4'
                                b'\xBD\xA0\xB3\xF7'
                                b'\xE3\x6C\x9D\xA7'))
 def test_SHA256(self):
     self.assertEqual(secureHash(b'abc', 'sha256'),
                      bytearray(b'\xBA\x78\x16\xBF'
                                b'\x8F\x01\xCF\xEA'
                                b'\x41\x41\x40\xDE'
                                b'\x5D\xAE\x22\x23'
                                b'\xB0\x03\x61\xA3'
                                b'\x96\x17\x7A\x9C'
                                b'\xB4\x10\xFF\x61'
                                b'\xF2\x00\x15\xAD'))
예제 #5
0
 def test_SHA224(self):
     self.assertEqual(
         secureHash(b'abc', 'sha224'),
         bytearray(b'\x23\x09\x7D\x22'
                   b'\x34\x05\xD8\x22'
                   b'\x86\x42\xA4\x77'
                   b'\xBD\xA2\x55\xB3'
                   b'\x2A\xAD\xBC\xE4'
                   b'\xBD\xA0\xB3\xF7'
                   b'\xE3\x6C\x9D\xA7'))
예제 #6
0
 def test_SHA256(self):
     self.assertEqual(
         secureHash(b'abc', 'sha256'),
         bytearray(b'\xBA\x78\x16\xBF'
                   b'\x8F\x01\xCF\xEA'
                   b'\x41\x41\x40\xDE'
                   b'\x5D\xAE\x22\x23'
                   b'\xB0\x03\x61\xA3'
                   b'\x96\x17\x7A\x9C'
                   b'\xB4\x10\xFF\x61'
                   b'\xF2\x00\x15\xAD'))
 def test_SHA384(self):
     self.assertEqual(secureHash(b'abc', 'sha384'),
                      bytearray(b'\xCB\x00\x75\x3F'
                                b'\x45\xA3\x5E\x8B'
                                b'\xB5\xA0\x3D\x69'
                                b'\x9A\xC6\x50\x07'
                                b'\x27\x2C\x32\xAB'
                                b'\x0E\xDE\xD1\x63'
                                b'\x1A\x8B\x60\x5A'
                                b'\x43\xFF\x5B\xED'
                                b'\x80\x86\x07\x2B'
                                b'\xA1\xE7\xCC\x23'
                                b'\x58\xBA\xEC\xA1'
                                b'\x34\xC8\x25\xA7'))
예제 #8
0
 def test_SHA384(self):
     self.assertEqual(
         secureHash(b'abc', 'sha384'),
         bytearray(b'\xCB\x00\x75\x3F'
                   b'\x45\xA3\x5E\x8B'
                   b'\xB5\xA0\x3D\x69'
                   b'\x9A\xC6\x50\x07'
                   b'\x27\x2C\x32\xAB'
                   b'\x0E\xDE\xD1\x63'
                   b'\x1A\x8B\x60\x5A'
                   b'\x43\xFF\x5B\xED'
                   b'\x80\x86\x07\x2B'
                   b'\xA1\xE7\xCC\x23'
                   b'\x58\xBA\xEC\xA1'
                   b'\x34\xC8\x25\xA7'))
 def test_SHA512(self):
     self.assertEqual(secureHash(b'abc', 'sha512'),
                      bytearray(b'\xDD\xAF\x35\xA1'
                                b'\x93\x61\x7A\xBA'
                                b'\xCC\x41\x73\x49'
                                b'\xAE\x20\x41\x31'
                                b'\x12\xE6\xFA\x4E'
                                b'\x89\xA9\x7E\xA2'
                                b'\x0A\x9E\xEE\xE6'
                                b'\x4B\x55\xD3\x9A'
                                b'\x21\x92\x99\x2A'
                                b'\x27\x4F\xC1\xA8'
                                b'\x36\xBA\x3C\x23'
                                b'\xA3\xFE\xEB\xBD'
                                b'\x45\x4D\x44\x23'
                                b'\x64\x3C\xE8\x0E'
                                b'\x2A\x9A\xC9\x4F'
                                b'\xA5\x4C\xA4\x9F'))
예제 #10
0
 def test_SHA512(self):
     self.assertEqual(
         secureHash(b'abc', 'sha512'),
         bytearray(b'\xDD\xAF\x35\xA1'
                   b'\x93\x61\x7A\xBA'
                   b'\xCC\x41\x73\x49'
                   b'\xAE\x20\x41\x31'
                   b'\x12\xE6\xFA\x4E'
                   b'\x89\xA9\x7E\xA2'
                   b'\x0A\x9E\xEE\xE6'
                   b'\x4B\x55\xD3\x9A'
                   b'\x21\x92\x99\x2A'
                   b'\x27\x4F\xC1\xA8'
                   b'\x36\xBA\x3C\x23'
                   b'\xA3\xFE\xEB\xBD'
                   b'\x45\x4D\x44\x23'
                   b'\x64\x3C\xE8\x0E'
                   b'\x2A\x9A\xC9\x4F'
                   b'\xA5\x4C\xA4\x9F'))