![]() |
Notice! The role of this model answer is instructional only. Everything that is asked in the assignment may not be covered in detail. The model answer gives you the content of the answer and an idea of what it should be. The things that are important in the grading of the homework have been emphasized. Please, inform the course staff if you think that there is a mistake in the model answer!
Autentication: Is this process really Scott's process?
Authorization: Does Scott have permission to delete this file?
So the main difference is that in first case we are interested in with
who we are talking and at the second case we wonder if that particular
instance have permission to do something.
This is an opinion question. All good answers are accepted. The following
things might pop up:
- The data at laptops is not (usually) encrypted
- Handcomputer have nowday more and more data without any
protection
- How meny phonenumber do you really remember?
- Do you store any important information in SMS?
- WLANs are not safe!!!
When SSL connection is established client and server will use
handshake protocol to agree:
1) protocol version
2) cryptographic algorithms
3) do they autenticate each other
4) change secrets with public key method.
The process is about following:
| |
|
| Client Hello | |
| Server Hello | |
| Certificate* or Server key exchange* | |
| Certificate Request* | |
| Server Hello Done | |
| Certificate* or No certificate* | |
| Client Key Exchange | |
| Certificate Verify* | |
| Change Cipher Spec | |
| Finished | |
| Change Cipher Spec | |
| Finished | |
| Connection is ready. | |
1) Clien sends ClientHello message to server.
Hello-message includes:
- protocol version
- session ID
- cipher suite
- compression method
Clien might also send two random values in ClientHello.random
2) Server response with ServerHello (include same
attributes than ClientHello) and ServerHello.random if needed.
3) Server might also send:
- Server's Certificate or it will send
ServerKeyExchange-message if server doesn't have certificate
or it's
certificate is only for signing.
- CertificateRequest is sent if server wants to
autenticate
client.
4) Server sends ServerHelloDone
5) Client will next autenticate server, it will check that server's sertificate is valid, CA is trusted and sertificate is coming from address where it should come.
Client response:
- Certificate or no_certificate
(if server wants to autenticate client)
- ClientKeyExchange At this point client will generate
pre-master secret and encrypt it with servers public key.
- Certificate Verity message is sent, if client have
singning ability, to verify the certificate.
[ChangeCipherSpec]Client will generate master secret from premaster.
- Finished (This message is crypted with new
algorithm,
keys and it tells that I'm ready.)
6) if servet have wanted to autenticate client, it checks sertificate
validity etc.
[ChangeCipherSpec] Server will generate master secret from premaster.
Server response:
- Finished (This message is crypted with new
algorithm, keys,
and it tells that server is ready.)
7) The conection is ready for use.
S-HTTP is an extension to the HTTP for secure document transfer. It does not
use any particular algorithm for encryption but it supports for example RSA.
Notice that S-HTTP is NOT HTTPS (which is HTTP over SSL). Main difference
between these two is that whet SSL is working just above TCP when S-HTTP is
workin above HTTP applications.
In port scanning intruder is trying to find open services from computer
for using
them for his own purposes. For example hacker can try to use sendmail-bug
to have
computer's password file.
First technique is packet filtering. In this method there is some rules for accepting incoming or outgoing packet. If these rules are not conformed packet are simply dropped. For example all packet form outside to port 23 (telnet) can be forbidden.
Other method is appication gateway. Now selection can be based on header
information, message sizes or even contents of packets. We can define
that some application can not send or reserve data from outside.
Third method is circuit level gateway which is combination of packet filtering and application level firewall.
For this question there is no correct answer. Main point is to get students to think if they're safe and what should be done if they are not...
X.509 certificate standard is general proof that somebody is what he
is claiming to be. It is used at www-environment to verify different
instanses.
Certificate have following fields:
- version
- Serial number
- signature algorithm ID
- Issuer name
- validity period
- subject name
- subject public key info
- issuer unique indentifier
- subject unique indentifier
- some extensions
W3c:'s document (http://www.w3.org/TR/2001/PR-xmldsig-core-2001082)
gives one solution for this problem but technically detailed
answer was not required. Following things should be discussed:
- Key management, certificates, ID-cards, ...
- How to ensure keys, certificates etc are valid?
- Trusted third party
- Customer will need some kind of plug-in => platform independence
- Maybe legal notations.
- ...