Give an explicit description of the column-round operation in
Salsa20 using the
quarter-round map.
The basic nonlinear operation of Salsa20 is the quarterround function. Each quarterround(a, b, c, d) consists of four ARX rounds, each of which comprises of one addition (A), one cyclic left rotation (R) and one XOR (X) operation as given below.
b = b ⊕ ((a + d) ≪ 7),
c = c ⊕ ((b + a) ≪ 9),
d = d ⊕ ((c + b) ≪ 13),
a = a ⊕ ((d + c) ≪ 18)
Each columnround works as four quarterrounds on each of the four columns of the state matrix and each rowround works as four quarterrounds on each of the four rows of the state matrix. In Salsa20 (one can call it Salsa20/20), ten times the columnround and ten times the rowround are applied alternatively on the initial state. One may note that this can be considered as application of the columnround and transpose of the state matrix [6] twenty times. This helps in understanding the cipher better as in this case every round of Salsa20 becomes identical. To be precise, in each round, we first apply quarterround on all the four columns in the following order: quarterround(x0, x4, x8, x12), quarterround(x5, x9, x13, x1), quarterround(x10, x14, x2, x6), and quarterround(x15, x3, x7, x11), and then a transpose(X) as considering it as a 4×4 matrix. By X(r) , we mean that r rounds have been applied on the initial state X. Hence X(0) is the same as the initial state X. Finally, after R rounds we have X(R) . Then a keystream block of 16 words or 512 bits is obtained as Z = X + X(R) . For Salsa20, R = 20. However, the one accepted in eStream [9] software portfolio is Salsa20/12, where R = 12. Naturally, more rounds will provide better security and less rounds will provide higher speed. One may note that each Salsa20 round is reversible as the state-transition operations are reversible. In other words, if X(r+1) = round(X(r) ), then X(r) = reverseround(X(r+1)), where reverseround is the inverse of round and consists of first transposing the state and then applying the inverse of quarterround for each column as follows.
a = a ⊕ ((d + c) ≪ 18),
d = d ⊕ ((c + b) ≪ 13),
c = c ⊕ ((b + a) ≪ 9),
b = b ⊕ ((a + d) ≪ 7).
Consider that one obtains a state X(1) after one round of Salsa20. Now to know whether it is a valid state after one round, one needs to come back by one reverse round and then check whether the constants in the diagonal elements are indeed the specified ones. This is the constraint for 256-bit Salsa20. However, for 128- bit Salsa20, one needs to have another constraint related to the key words apart from matching the constants. That is, we need to have ki = ki+4, for 0 ≤ i ≤ 3.
Give an explicit description of the column-round operation in Salsa20 using the quarter-round map.
Explain the root operation map and give an example
WILL RATE IMMEDIATELY Find the area of the following surface using the given explicit description of the surface. The cone 2 =9(x2 + y2), for Oszs33 Set up the surface integral for the given function over the given surface S as a double integral over a region in the xy-plane. SS as - SSOA (Type an exact answer, using a as needed.) The surface area is (Type an exact answer, using * as needed.)
Analyze the following circuit. 1. (a) Write down the exeitation and output funetions (b) Form the excitation and state tables (c Give a word description of the circuit operation Analyze the following circuit. 1. (a) Write down the exeitation and output funetions (b) Form the excitation and state tables (c Give a word description of the circuit operation
Read each description in the first column of the table below. If any chemical element with atomic number of 92 or less matches the description, check Yes and enter the chemical symbol of an element that matches. Otherwise check No in the second column. description Does any element match the description? If you checked yes, give the symbol of an element that matches. An element in Period 4 and Group 1A Yes A nonmetal in Group 7A. An alkaline earth...
Read each description in the first column of the table below. If any chemical element with atomic number of 92 or less matches the description, check yes and enter the chemical symbol for an element that matches. Otherwise check No in the second column. Read each description in the first column of the table below. If any chemical element with enter the chemical symbol of an element that matches. Otherwise check No in the secon description Does any element match...
Suppose that binary heaps are represented using explicit links. Give a simple algorithm to find the tree node that is at implicit position i. instructions: provide Java-like pseudocode. The implicit position of a node refers to the index it would have if the heap was stored in the array format reviewed in class (first element at index 1).
Read each description in the first column of the table below. If any chemical element with atomic number of 92 or less matches the description, check Yes and enter the chemical symbol of an element that matches. Otherwise check No in the second column. description Does any element match the description? If you checked yes, give the symbol of an element that matches. An element in Period 2 and Group 8A Yes No A metalloid in Group 4A Yes No...
Read each description in the first column of the table below. If any chemical element with atomic number of 92 or less matches the description, check Yes and enter the chemical symbol of an element that matches. Otherwise check No in the second column. description Does any element match the description? If you checked yes, give the symbol of an element that matches. An element in Period 1 and Group 3A. Yes No A semimetal in Group SA. Yes No...
Read each description in the first column of the table below. If any chemical element with atomic number of 92 or less matches the description, check Yes and enter the chemical symbol of an element that matches. Otherwise check No in the second column. description Does any element match the description? If you checked yes, give the symbol of an element that matches. Yes An element in Period 1 and Group 1A. Yes No A semimetal in Group 8A. Yes...
(#3a){Screenshot.} Create a VIEW named ProductProfit that displays the Category Description, Product Description, and the Profit (SalePrice - Cost). Name the Category description column ‘Category’ and the Product description ‘Item’. The screenshot should show the SQL code to create the view and a SELECT statement displaying the records returned in descending order of the Profit column. (#3b){Screenshot.} Using the ProductProfit VIEW, display the records that are in the TOP 10 Percent of Profit. The screenshot should show the SELECT statement...