/*! This file is auto-generated */ .wp-block-button__link{color:#fff;background-color:#32373c;border-radius:9999px;box-shadow:none;text-decoration:none;padding:calc(.667em + 2px) calc(1.333em + 2px);font-size:1.125em}.wp-block-file__button{background:#32373c;color:#fff;text-decoration:none} Q14E Suppose you want to compute the ... [FREE SOLUTION] | 91影视

91影视

Suppose you want to compute the nth Fibonacci number Fn , modulo an integer p. Can you find an efficient way to do this?

Short Answer

Expert verified

The final running time after computing each step of fib3is O(log(n)*M(logp)).

Step by step solution

01

Introduction

Fibonacci Series 鈥 This series can be defined as every element of the series is the sum of two previous number of the series. Series will start from 0and1.

02

nth Fibonacci number formulae

Matrix multiplication for nthFibonacci number is

FnFn+1=0111nF0F1

Let鈥檚 assume that the running time for multiplying matrix of n-bit numbers is x(n).

By problem0.4,fib3 involvesO(logn) arithmetic operations for multiplication.

So,

For every arithmetic operation with modp, then the answer of the final step is long aslogp bits.

Therefore, the final running time after computing each step offib3 is O(log(n)*M(logp)).

Unlock Step-by-Step Solutions & Ace Your Exams!

  • Full Textbook Solutions

    Get detailed explanations and key concepts

  • Unlimited Al creation

    Al flashcards, explanations, exams and more...

  • Ads-free access

    To over 500 millions flashcards

  • Money-back guarantee

    We refund you if you fail your exam.

Over 30 million students worldwide already upgrade their learning with 91影视!

One App. One Place for Learning.

All the tools & learning materials you need for study success - in one app.

Get started for free

Most popular questions from this chapter

Digital signatures, continued.Consider the signature scheme of Exercise 1.45.

(a) Signing involves decryption, and is therefore risky. Show that if Bob agrees to sign anything he is asked to, Eve can take advantage of this and decrypt any message sent by Alice to Bob.

(b) Suppose that Bob is more careful, and refuses to sign messages if their signatures look suspiciously like text. (We assume that a randomly chosen messagethat is, a random number in the range{1,...,N-1} is very unlikely to look like text.) Describe a way in which Eve can nevertheless still decrypt messages from Alice to Bob, by getting Bob to sign messages whose signatures look random.

Let[m]denote the set{0,1,,m1}. For each of the following families of hash functions, say whether or not it is universal, and determine how many random bits are needed to choose a function from the family.

(a) H={ha1,a2:a1,a2[m]}, wheremis a fixed prime and

ha1ha1,a2(x1,x2)=a1x1+a2x2modm

Notice that each of these functions has signatureha1,a2:[m]2[m]that is, it maps a pair of integers in[m]to a single integer in[m].

(b) His as before, except that nowm=2kis some fixed power of.2

(c) His the set of all functionsf:[m][m1].

RSA and digital signatures. Recall that in the RSA public-key cryptosystem, each user has a public key P=(N,e) and a secret key d. In a digital signature scheme, there are two algorithms, sign and verify. The sign procedure takes a message and a secret key, then outputs a signature . The verify procedure takes a public key (N,e), a signature , and a message M, then returns 鈥渢rue鈥 if could have been created by sign (when called with message M and the secret key (N, e) corresponding to the public key ); 鈥渇alse鈥 otherwise.

(a)Why would we want digital signatures?

(b) An RSA signature consists of sign, (M,d)=Md(modN)where d is a secret key and N is part of the public key . Show that anyone who knows the public key (N,e)can perform verify ((N,e),Md,M), i.e., they can check that a signature really was created by the private key. Give an implementation and prove its correctness.

(c) Generate your own RSA modulus, N=pq public key e, and private key d (you don鈥檛 need to use a computer). Pick p and q so you have a 4-digit modulus and work by hand. Now sign your name using the private exponent of this RSA modulus. To do this you will need to specify some one-to-one mapping from strings to integers in [0,N-1]. Specify any mapping you like. Give the mapping from your name to numbers m1,m2,...mk,then sign the first number by giving the value md1(modN), and finally show that .

(md1)e=m1(modN)

(d) Alice wants to write a message that looks like it was digitally signed by Bob. She notices that Bob鈥檚 public RSA key is (17,391). To what exponent should she raise her message?

If p is prime, how many elements of{0,1,...pn-1} have an inverse modulopn ?

Consider the problem of computing x y for given integers x and y: we want the whole answer, not modulo a third integer. We know two algorithms for doing this: the iterative algorithm which performs y 鈭 1 multiplications by x; and the recursive algorithm based on the binary expansion of y. Compare the time requirements of these two algorithms, assuming that the time to multiply an n-bit number by an m-bit number is O(mn).

See all solutions

Recommended explanations on Computer Science Textbooks

View all explanations

What do you think about this solution?

We value your feedback to improve our textbook solutions.

Study anywhere. Anytime. Across all devices.