Task 1 Generate an Edwards curve key and sign a file using the OpenSSL command line. Later, during the seminar, you will do the same using C OpenSSL API. Note that you had a similar task for the ASN1 seminar, and you can use the same commands here. - Generate keys with Ed25519 scheme # openssl genpkey -algorithm Ed25519 -out private.pem - Export public key # openssl pkey -in private.pem -pubout -out public.pem - Sign a file. Note the signature size. # echo "message" > message.txt # openssl pkeyutl -sign -inkey private.pem -out sign.bin -rawin -in message.txt - Verify signature # openssl pkeyutl -verify -pubin -inkey public.pem -rawin -in message.txt -sigfile sign.bin - Print info about keys # openssl pkey -text -in private.pem # openssl pkey -pubin -text -in public.pem Task 2 Investigate a certificate chain returned in TLS connection. Later, during the seminar, you will do the same using C OpenSSL API. Connect to some host (-connect option), note you will need to provide a servername (hostname) if there are multiple servers hosted on the same IP address. The null redirection is to close the connection without actually sending anything. # openssl s_client -showcerts -servername www.google.com -connect www.google.com:443 Now connect again and simulate a real HTTPS download of the robots.txt file. We will send a trivial GET command here: # echo -e "GET /robots.txt HTTP/1.1\r\nHost: www.google.com\r\nConnection: Close\r\n\r\n" | openssl s_client -quiet -connect www.google.com:443