Question

In: Computer Science

This is all the questions, There are no MAC code include, so just need a general...

This is all the questions, There are no MAC code include, so just need a general answer but need to be close to the questions. Thank you and the unit this question come from name "Computer Networks"
Question 12 (10 points) Consider Message Authentication Codes:
a) Identify whether an symmetric / asymmetric cryptosystem is used and explain how it is applied to generate and validate the MAC.
b) Describe any additional information is needed by the receiver to validate the MAC.
c) Explain whether the receiver can trust a successfully validated MAC and any assumptions about the additional information you identified in (b) for a validated MAC to be trusted.

Solutions

Expert Solution

a)

In a simple model of the cryptosystem, the sender sends a plaintext that gets encrypted to a ciphertext because of the encryption key and encryption algorithm. Whereas on the receiver side, the ciphertext is decrypted to plaintext by using the decryption key and the decryption algorithm. Both the encryption key and the decryption key are known to a sender and receiver. Symmetric key encryption uses the same key for both encryption and decryption of plaintext whereas asymmetric key encryption uses different keys for both encryption and decryption of plaintext.

  1. In a symmetric cryptosystem, the relation between the keys is the same and both the encryption as well as decryption keys are symmetric in nature.
  2. In a public-key cryptosystem, the relation between the keys is different but mathematically they are related and their encryption key is public whereas the decryption key is private in nature.

In MAC (Message Authentication Code), both sender and receiver use same key (or must agree on the same key) before the communication begins, this provide authentication to the message. Then by using private key, a digital signature is generated to protect the plaintext, as in public-key cryptography. So both symmetric cryptosystem and asymmetric cryptosystem are used in Message Authentication Codes that ensure integrity and authenticity for a plaintext.

b) In Message Authentication Code the sender uses MAC algorithm and secret key to send a message and produces a MAC value. Sender forwards the message along with MAC and assumes that message is sent clearly. To provide confidentiality to the message both the sender and receiver can use encryption and decryption methodology. On the receiver side, the receiver shares secret keys into the MAC algorithm and re-computes the MAC value. The receiver checks whether MAC values are equal to each other. When they match, receiver accepts the message and assures that this message is sent by intended sender. If computed MAC does not match with the MAC sent by sender then the receiver assumes that message is not original rather it is altered.

c) Receiver cannot trust successfully on validated MAC due to its symmetric nature of operation but can be trusted if digital signatures are applied to it.


Related Solutions

Answers are in bold under questions. I just need to know how to get them, so...
Answers are in bold under questions. I just need to know how to get them, so Please show work!! A) If 25% of all vehicles at a certain emissions inspection failed the inspection. Assuming that successive vehicles pass or fail independently of one another. Calculate the following probabilities: At least seven of the last 40 vehicles inspected failed. 0.9038 B) If 25% of all vehicles at a certain emissions inspection failed the inspection. Assuming that successive vehicles pass or fail...
I have to do this "interview", I just need truthful/made-up answers to these questions (Include the...
I have to do this "interview", I just need truthful/made-up answers to these questions (Include the position you hold and why someone in that position can give a better feel for how someone might use accounting someday) 1. I would like to understand if and how financial reporting affects you and your work. Can you give me any examples of how accounting affects your day-to-day responsibilities or decisions? 2. What do other managers and leaders in your company use your...
I have to do this "interview", I just need truthful/made-up answers to these questions (Include the...
I have to do this "interview", I just need truthful/made-up answers to these questions (Include the position you hold and why someone in that position can give a better feel for how someone might use accounting someday) 1.      I would like to understand if and how financial reporting affects you and your work. Can you give me any examples of how accounting affects your day-to-day responsibilities or decisions? 2.      What do other managers and leaders in your company use your...
I NEED THIS CODE FOR C++ USING MONITORS PLEASE #include <stdio.h> #include <stdlib.h> #include <unistd.h> #include...
I NEED THIS CODE FOR C++ USING MONITORS PLEASE #include <stdio.h> #include <stdlib.h> #include <unistd.h> #include <pthread.h> #define THREADS 10 // Number of Thread //bridge declared with array of character and integer value void Bridge(char array[], int value); // Global Variable int North = 1; //For North Number int South = 1; //For South Number pthread_mutex_t mutex1 = PTHREAD_MUTEX_INITIALIZER; // Setting Up MUTEX for lock //Thread for North farmer void NorthFarmer(){ pthread_mutex_lock(&mutex1); char array[5] = "North"; // North printf("%s Tunbridge...
Update the code from the questions if necessary. #include #include /* Program sorts an array of...
Update the code from the questions if necessary. #include #include /* Program sorts an array of integers using a selection sort. The general algorithm repeatedly finds the smallest number in the array and places it at the front of the list. */ using namespace std; int find_small_index (int start_index, int numbers []); void swap_values (int index1, int index2, int numbers []); int main(int argc, char *argv[]) {     // array of numbers     int numbers [10] = {7, 9, 21,...
There is no data associated with these questions, they are just general questions. I didn't know...
There is no data associated with these questions, they are just general questions. I didn't know what is the difference between them. a. What does the population distribution count? b. What does the sample distribution count? c. What does the distribution of sample means count?
T/F questions, don't need explain just need ans, please do all of them. A realized loss...
T/F questions, don't need explain just need ans, please do all of them. A realized loss from involuntary conversion will always be recognized. The basis of gift property is increased by the full amount of gift tax paid by the donor. Generally speaking, a sale of a personal use asset cannot result in a deductible loss. The basis of property is increased by capital returns and decreased by capital expenditures. Not all realized gains and losses are recognized. The amount...
Hi, i need flowchart for this code (C++) please, THANX #include <iostream> #include <thread> #include <unistd.h>...
Hi, i need flowchart for this code (C++) please, THANX #include <iostream> #include <thread> #include <unistd.h> #include <semaphore.h> #include <pthread.h> using namespace std; #define NRO 6 // Número de coches //Puente declarado con matriz y valor entero void Puente(string array, int value); // Variable global int Norte = 1; int Sur = 1; sem_t mutex1; //Coche al norte void* NorteC(void* arg){ sem_wait(&mutex1); string array = "En el lado Norte "; // Norte cout<<array<<"del puente, el coche #"<<Norte<<" puede cruzar el...
Application Questions: 2. The elasticity for a Big Mac =-2, while the elasticity for all hamburgers...
Application Questions: 2. The elasticity for a Big Mac =-2, while the elasticity for all hamburgers =-.7 A) Why is the demand for Big Macs more elastic than demand for hamburgers? B) McDonalds decides to increase the price, does their total revenue increase or decrease? C) What if all hamburger chains got together and collectively decided to increase their prices, would they increase or decrease total revenue?
Need C++ code to be able to run, keep getting a constant value error #include #include...
Need C++ code to be able to run, keep getting a constant value error #include #include #include #include #include #include using namespace std; using namespace std::chrono; int c; void insertionSort(int* arr, int n) { for (int i = 1;i < n;i++) { int v = arr[i]; int j; for (j = i - 1;j > -1;j--) { c++; if (arr[j] > v) { arr[j + 1] = arr[j]; } else { break; } } arr[j + 1] = v; }...
ADVERTISEMENT
ADVERTISEMENT
ADVERTISEMENT