In our study of Diophantine equations in Chapters 11 and 12, we were able to make precise descriptions of the solution sets of several classes of Diophantine equations. For the most part, however, these tended to be equations of degree one or two. Apart from Fermat’s Last Theorem, we have said almost nothing about degree three equations. Such equations do turn out to be more difficult, but their study is now a highly active area of research. Given a degree three Diophantine equation in two variables, we can impose a group structure on the set of solutions. (See the notes in Chapter 7 for a brief discussion of groups.) The group law provides a method of generating new solutions from old ones and often provides insight into what the solution set looks like. More practically, this group structure can be used to provide shortcuts for factoring integers. Recall that the lack of an efficient factoring algorithm is the basis of security for the RSA encryption scheme (see Chapter 8). In fact, one can even use the group structure to obtain a public key encryption scheme that provides a level of security comparable to that of RSA but with smaller keys. Perhaps the most dramatic application of the study of degree three equations is the completion of the proof of Fermat’s Last Theorem in 1995. The first few sections of this chapter will serve as a sort of crash course on elliptic curves. For a more complete treatment see [32].