Tuesday, December 10, 2013

Section 16.5

The first little bit of this section went over what we talked about in class yesterday, going over applying different cryptosystems to elliptic curves and how you might translate some of the same ideas into elliptic curve math.
The diffie hellman key exchange follows suit, in that we are translating an idea we have covered before and putting it into elliptic curves and this part seems pretty straightforward.
The signature part again seems like a concept that I should be able to understand better but i was a little confused when it starting talking about how k and k^-1 dont multiply to get one but sometimes you could get out infinity.  If k is just an integer shouldnt it just come out as one?  k can't be a point because that would make k^-1 make even less sense...

Sunday, December 8, 2013

Section 16.4

It makes sense that for computer usage that having elliptic curves mod 2 would be worthwhile, what i hadnt thought of is that the equations would need to be modified to not make them = infinity everywhere.  If we are finding the points on a line though mod 2 would there ever be more than 5 points total?  It seems like no matter the curve that they would always only be able to have the same 5 points.  I guess that that is probably why it says that usually elliptic curves mod 2 are not generally big enough.

Thursday, December 5, 2013

Section 16.3

Its interesting how using a random curve that we can can factor prime numbers.  Probably factor numbers as large as we have ever worked with just by trying one random curve... Also it is still intriguing to me, that the thought process is "try to find 3P, oh it didnt work, well that helped us to factor n"  which seems like a much trickier problem than finding 3P.
What I am confused about, is what is the doing this by hand method? How could we apply this on a the final, or what kinds of questions could be asked about it that I could solve by hand?
What are those other times besides RSA when I would want to factor a really large number...?

Tuesday, December 3, 2013

Section 16.2

Curves mod p are what we started to talk a little bit about yesterday, which was good because I liked Math 371 so talking about rings and groups feels more familiar than some of the other material that we have covered this semester.  Also we talked about "addition" so that concept makes sense.
Is the method for finding out the number of points beyond anything that we will cover?  It seems like even if there was some kind of basic algorithm it could be nicer than counting everything up.  unless its a small graph.
Nit-picky I know but I dislike how the book says "this might not look like a log problem, but it is clearly the analog of the log problem...." if it doesn't look like it, how is it clearly it?
So is it possible that when you are choosing a ciphertext or making one I guess that it doesnt work and doesnt code? Or what is it exactly that is failing?

Saturday, November 30, 2013

Section 16.1

Reading about elliptic curves was interesting, interesting to see how even though some of the older ciphers havent been broken necessarily that they have developed more intense ones.  I was wondering what the importance of adding the point (infinity, infinity) would have on the equation, seeing how that is only kind of a solution....
It was also intriguing how it said that when something goes wrong that that is when we get our information.   funny that it takes breaking it down to be able to get what we want.

Sunday, November 24, 2013

Section 2.12

This section was really interesting because it let me see some of the real world application and how cryptanalysis has been done.  I dont envy the job of compiling a list of 105k different settings and setting up the codebook especially without a computer.... But I guess as Emperor Palpatine says "do what must be done".  I like permutations and cycles so this part mathematically was pretty easy going.

Thursday, November 21, 2013

Section 19.3 and online reading

I was glad that the reading started off saying that we arent going to explain this all as detailed as we might but youre going to have to take a few things on faith.  When it comes to quantum mechanics I am completely ok with that...  The first part made logical sense, but when it started talking about fourier transforms I was a little confused, on what they were finding and then on how to use them.  Are Fourier transforms something that we might analyze more than compute?  I understand about the peaks and the periodicity but getting it to that form is the scarier part.
And the online article made sense too, interesting to see what happens when you distill the math out of a complicated subject.

Tuesday, November 19, 2013

Sections 19.1 and 19.2

I have never been so scared for this class as I am right now.  I didnt know that we would get to talk about quantum anything... much less apply it to cryptography....
The experiment with the light was interesting, and I understood the idea of the experiment but once we started to find orthogonal bases I started to get a little confused.
The second part that was talking about the usage was actually a little more understandable.  It is very cool that with this kind of cryptography that you can detect eavesdropping, although it seems like it would take there being a large amount of data being sent to do so.  But maybe thats possible here.  It was interesting to say the least.

Thursday, November 14, 2013

Test 2 Prep

The things that we spent the most time covering and applying I feel like are the RSA and ElGamal systems, we talked not only about the systems themselves but how to use them and sign them and do other things with them.  I think that we will see them come up on the exam in probably multiple formats.
I expect that we will have to use the definitions that we are supposed to know to do the types of problems that are on the other side of the sheet.  It seems like we will be combining the knowing part with the thinking through and application of the concepts.  Probably a gnarly problem finding square roots and then having to use the Chinese Remainder Theorem... I hate the Chinese Remainder Theorem.

Tuesday, November 12, 2013

Section 12.1-12.2

So the first section about the idea of secret splitting was pretty straight forward.  You want to split up a message between several people.  Well you could just give them each a piece and make them put it together.
The next section is a little bit trickier to understand.  When all of those people get together do they have to try all of the different combinations of pairs that they have?  Even given that the t people will group up and talk together that seems like it would take some doing to recover the message.
Also does having more than t people help your chances?  If you have more people does it make it any easier to recover the message?
The Lagrange method seems easier than the linear method as well.  And by easier I mean at least more intuitive.

Thursday, November 7, 2013

Sections 8.4-8.5, 8.7

It was interesting to read about the birthday attack idea from a cryptological standpoint.  I have talked about it a lot in my actuarial classes and done problems with it before but this did a better job explaining the reasoning behind its paradoxical conclusions than I had heard before.  Interesting to see how the idea relates to choosing keys or codes or even messages.
If the baby step giant step method is superior to the birthday method, is there any reason to ever use the birthday method in real life?
I see how the birthday attack idea relates to multicollisions but I am still shaky on how to find said collisions.  Section 8.7 seems to be a lot of the material that we have read before and especially that we talked about in class on Wed, so i feel pretty comfortable with it.

Tuesday, November 5, 2013

Sections 8.1-8.2

So this whole reading was a little bit hard for me.  I understand the idea of what a hash function should do, that it should make data more compact, which I can see the benefit of that.  However designing one seems very complex to me.  Im not even entirely sure when it says that we are only looking for some m' with h(m') = y.  So we aren't looking for m? Just what y is?
Somewhere along the lines of computing the inverses of one way functions kind of messed me up...
Even just XORing the vectors and making an array in the "simple" example was enough to scare me off.  I guess I'm not a real cryptographer yet.

Sunday, November 3, 2013

Section 7.3-7.5

Bit commitment seems like an understandable idea, it makes sense that you would want both parties to be able to be satisfied.  It seems like what we were supposed to learn in that section was another thing that must be kept in mind in designing a cryptosystem.
What is the usage rate of the cryptosystems that we have been talking about?   Does ElGamal get as much play time as others like RSA or AES?
The ElGamal system seems like it is at least as much work as RSA, and I am still confused about computing the decryption.  Is a the same as alpha? or where did that come from?

Thursday, October 31, 2013

Section 7.2

The general idea of computing discreet logs seems rather doable.  Nothing too crazy at least in the work.  The part that looked like it will take a little bit more practice is using the Pohlig-Hellman algorithm.
I am also not entirely sure what a precomputation is.   I guess its just like extra computations that are done before, but wouldnt that just make it a computation....
And then just to check my understanding, we have the log 4 algorithm to fill in a gap in the pohlig algorithm is that correct?

Tuesday, October 29, 2013

Section 6.5-6.7 and 7.1

It was interesting to read about real examples of the RSA system, and I understand that it is widely used still but reading about it is interesting.  It was cool to see that in some situations it is able to be broken, and that you could win all of $100 for doing so...  Also it was interesting to read about the different "trapdoors" that are built into public key systems, and they are necessary but also scary.  That's what all the allegations against the NSA are about right?

Discreet logs look like they are going to be almost as much fun as factoring large primes... Cryptography moves from one tricky thing to the next.  I guess thats the whole point of it thought isn't it.

Sunday, October 27, 2013

Sections 6.4.1 and 6.4.2

In this section it talked about finding linear dependencies, and does that just mean where they are congruent to 0 mod whatever the current mod is? Or what exactly does that mean?  I guess the whole concept of a factor base is still kinda of fuzzy for me.

And these theoretical methods we covered in class, so i feel pretty comfortable with them at this point.  Your lectures really make the material that we read make a lot more sense.  Im not sure what exactly it is but thank you for putting in the time to make everything come together.

Thursday, October 24, 2013

Section 6.4

Now say what? If a quantum computer were built then we could factor.  Well, is that all we need? Easy Peasy.... Might be better to just work on it from that end....

The factoring algorithm leaves something lacking... I can understand the idea of it all but when it comes to using it, i feel like it is another clunky tool.  And if I understand it right, it is based on how we choose B?  But there arent really specific rules for that? Just make it n? And like Vincent from DES said, there is always a tradeoff between security and speed.  So now if we want to have a higher chance of success we have to wait longer.

Tuesday, October 22, 2013

Section 6.3

Here is a nice like theorem that I wish I would have noticed for the homework that was due on Monday.  That basically solves two of the problems right there.  It is interesting that we can figure out that numbers can be factored without ever actually factoring them.

It is also interesting in the fermat primality test that "then n is probably prime" so even with our test we arent exactly sure about what is going on.  Also how likely is very likely that its true?  Are we talking like usually, 55%? Or like very probably like 95%?

Is the Miller Rabin test really saying that you just randomly choose one of the numbers and then see if it works and if not then try another?   That seems like an inefficient way first of all, and second does the randomization help in any way? Also what does it mean when they reach mod 1 but not all at the same time?

Sunday, October 20, 2013

Section 3.10

I was wondering since this method is more general does that mean that we might as well jump right into this method when trying to decide if a number is a square or is it worth it to try the method we used last time and then if we have to come here?  

I am also a little confused on parts 4 and 5 of the jacobi symbols part, it seems like it might be building on what we did last time, but I got a little lost reading about it.

In the end it seems like everything we do, is basically saying that its still really hard to factor n.  You have some things that are like factoring n, but we still cant do those things either.  Kind of a frustrating approach to solving a problem, probably worse for those more invested in it than I...

Thursday, October 17, 2013

Section 3.9

This section looks like the math part of another attack that we will try against the RSA algorithm.  It again looks like you can choose your n in such a way that this wont really work, but it could work.  The idea seems to make sense in my head, the reasoning behind it at least.  Putting it into practice on paper will probably be less fun than just reading about it though.
Also is there a difference between moduli and modulus? I thought that I had heard both but now I'm not so sure.

Sunday, October 13, 2013

Reading 3.12

This reading was kind of short (finally) and also pretty straight forward.  I had no idea that there would be a better way to make a fraction approximation than just rounding.  The whole concept was kind of amazing but also kind of easy to understand.  They proved to me that it should work out well for computations that we will be doing.

Thursday, October 10, 2013

Reading 3.6-3.7

So apparently I got the readings out of order, and I read the wrong one for last time.  I guess that put me a little ahead of the curve but I wanted to go back and do the other, hopefully thats ok.

The part that I understood the most was the part about primitive roots.  It seems just like generators from abstract algebra, which is a piece that I feel like I had a good grasp on.  Also after reading the three pass protocol section a couple of times that clicked as well.  Im glad that we are finally addressing the issue of getting keys out and shared almost easily.  Or at least easier than with other methods.

And its hard to say now, after we have gone over this section in class, it seems to make sense.  We will see how it goes once I try the homework.

Tuesday, October 8, 2013

Reading 6.1

Can I say I called it? I called it... RSA here we come...
So as I have been reading, I can follow the general idea of the RSA algorithm, that you need to keep your prime numbers secret and you can share the key.  Really this system makes a lot of sense because it makes sending information easy, you dont have to actually send someone with some kind of key in hand which makes it a lot more feasible today.
The part that I think will still be hard is actually using the algorithm.  Im sure that when we are working with it we will do a pseudo version, or at least smaller numbers because that is the whole point that it is still a secure system.... In any case I'm sure that this material will be more challenging than before.

Saturday, October 5, 2013

Reading 3.4-3.5

Ill admit, i was a little bit sad that the Chinese Remainder theorem has reared its ugly head yet again.  I remember going over it in Theory of Analysis and not liking it at all, here it actually didnt seem quite as bad as I remembered.  Still some of the way that it goes about using it is kind of confusing to me.

The modular power arithmetic seemed to not be too challenging, but it does make me think that soon we will be getting into scarier forms of cryptography that have to do with large prime numbers....

Thursday, October 3, 2013

For 10/4

I think that some of the things that we have studied that are more general ideas will be more applicable than some of the older ciphers.  The shift ciphers were good to kind of get us thinking about ciphers but dont hold too much value.  However things like finite fields and divisibility will be applicable to many kinds of codes.

I expect to see some simple codes and a lot of definitions, or asking to explain how different kinds of ciphers work.

I need to work on the feedback sections, (as you can tell I cant even recall the real name...) and also just go over the codebook sections again so that I could run through them easily.

Tuesday, October 1, 2013

Reading 5.1-5.4

Because of what we covered in class I already felt like I had at least a little bit of a handle on the general idea of the AES algorithm.  The 4 layers that make up a round anyways. However the part of this that didn't quite click was talking about the key shedule, about what it means when i is not a multiple of 4, or when it is, what the different steps to take are.

Also my question is, how is something like this implemented? how would the decryptor receive the 10 keys that they will need to use to be able to decrypt.  also do they send inverses with the keys or do both ends get to do all of the calculations? or are those tables the same for every single AES encryption?

Sunday, September 29, 2013

Cryptography Question

How long do I spend on the homework?  Well it depends but it usually takes me about an hour or so to get through the reading and blogging to try and make sense of it, and then about another 2 hours for each assignment.  They have been getting longer as the coursework gets harder but I think thats to be expected.  The reading has helped me get ready, and especially the diagrams but the lectures have been much better in preparing me.  I find if i pay attention in class and take notes that I am much better prepared to work on the homework.  The concepts are explained more fully in terms that I can understand.  That would be the thing that has been most helpful in my learning.


Tuesday, September 24, 2013

Reading 4.5-4.8

I guess that it's important to focus on the things that we do know and understand... What I thought was interesting out of this reading was 4.8, the section on password security.  I thought that there is a much larger thought process that goes into passwords than I had realized.  Also the salt factor seemed like it would greatly improve security, but yet again they say that they already have to work on new ways to keep passwords secure as these encryptions will soon become obsolete.

What I had a harder time understanding, were several things.  First I just had a small question on how you could build up a codebook, would it only work for people sending the exact same message? Because otherwise wouldnt the block cipher change more than just one letter in the corresponding ciphertext?  Also the output feedback mode confused me a little bit with when you split and XOR everything.

Thursday, September 19, 2013

Sections 4.1, 4.2, 4.4

After an initial reading about DES encryption my head started to spin a little bit.  I have tried to back up and read through section 4.2 a few more times to at least understand the concept.  However the confusing part lies in 4.4.  Talking about splitting up and sending different parts of the plaintext different places was often hard to follow.  Also the part about using different S-boxes wasn't overly clear to me.

Something that I DID understand, and thought was interesting was how companies like banks might use two different types of encryption for their data.  We read about how they might send the key to the next cryptosystem via a previous one.  I had been wondering how different companies might receive keys from the senders without loss of security.  Using public key encryption to send it was something that I had not thought of before.

Reading 2.9-2.11

Something that I dont understand is what makes the one time pad system unbreakable as opposed to other systems, this seems to be almost simpler than some of the other ones that we have read about, but the book just bluntly states that it is unbreakable.  Will we be susceptible to mockery in later years as new people figure out a way to solve our "unbreakable" code?  Also I got pretty lost reading about LFSR sequences.

The part that i liked was going through the realization that what we think is random may not be random.  That in fact if I for example were to make up a "random" sequence of ones and zeros that not only would it not be very random you could probably predict where I was going, and be able to tell that a person had done it.  True randomness is hard to come by.

Tuesday, September 17, 2013

Reading 3.8 and 2.5-2.8

What I found interesting, (along with the entire story about Sherlock Holmes) was that the block cipher method made genuine sense to me, being able to invert matrices seems to have finally come in handy.  It also makes sense how it is so much harder to use frequency analysis because of how changing on letter of plaintext will manipulate a much larger portion of cipher text than with other ciphers that we have been using.

The hard part of this reading was understanding how someone would break the adfgx cipher without the keyword.  The book just said if you know the keyword then its easy.  But don't we only assume that they know the method not the key? It seems like without that, that it would be difficult to come to any kind of conclusion.  I guess that is why they thought it was strong at the time.

Saturday, September 14, 2013

Reading 2.3

I found it interesting that they have discovered not only a logical problem solving way to solve Vigenere ciphers but also a mathematical approach as well.  And as usual, math seems to bring us closer to the answer faster.  Also it was a good reminder that we can never be content with what we have already done, just as people used to think that these were strong codes and now we can break them easily, it is the same with everything we do, we should always try and push ourselves to do bigger and better things.

What i didnt understand particularly well, was how they decided that finding how many times you get the same letter after shifting the cipher text would yield the key length.  I don't seem to be able to see the correlation between the letters matching up and the length of the key.  Is it maybe because you hope to have letters like e make appearances in both pieces of the cipher text and you will be shifting letters the key length apart similarly? (I don't think that that made sense outside of my head, I guess thats what a blog is for...)

Thursday, September 12, 2013

2.1-2.2 and 2.4

Some of the things that I found most interesting, were just thinking about how all throughout history, lots of people, famous people, people I've heard of and read about, have used codes to deliver information.  I also hadn't realized, or thought about completely how much knowledge and mastery of other peripheral things would matter in cryptography.  For example in substitution ciphers, the more you know about the language you are working in the better, knowing things like h often precedes e but hardly follows it, are some of the cruxes that code breaking is based on.

What is hard for me to stomach a little, is how much guesswork needs to be done.  Cryptography has proven to be  very different kind of math, it's not just every time you see this kind of problem, apply this formula.  But in essence you have to be willing to try many different things and several kinds of attacks.  The approaches are still very logical, which appeals to me, but I am afraid that the guesswork that needs to be done will be ever increasing as we move into harder types of codes.

Wednesday, September 11, 2013

Guest Speaker Ardis Parshall

What I thought was the most interesting was when she was talking about the pigpen code.  Even though it isn't a code that would be very strong if anyone was trying to break it, it seems like it would be fun to use with friends.  Kerckhoff's principle seems to ruin all the fun of that kind of code...

Something that wasn't necessarily difficult to understand but that did spark questions, was the use of codes through other people.  It seems that the more people that are involved in the use of a code the more chance there is of it being broken.  For example Ardis was talking about how people would send messages through telegram, and normally that the person who was sending the message would have to have someone else actually send the telegram.  At some point, wouldn't the person who was sending gibberish get curious enough to try and find out what was being sent?  I wonder if there is some kind of formula or idea about how quickly code breaks down depending on the number of people using it.  Maybe that is the idea behind public key encryption.

Sunday, September 8, 2013

Reading 3.2 and 3.3

The most interesting things in these sections were how you can run the Euclidean algorithm forwards and backwards to not only help you to find quotients but also to help you find the gcd of different and even large numbers.  Also it was interesting how addition, subtraction, and multiplication in Mod n seemed to be pretty straight forward but that division was the operation that is tricky.  Then you have to make sure that the gcd of n and your divisor is 1.

The pieces that I found the most difficult in this section were first the very last step of the proof for the first proposition, it made sense all the way until it just stated that b is congruent to c.  I feel like I am missing a step, or there is something that I'm not seeing there.  Also trying to wrap my head around non-linear congruences seems a little strange.

Thursday, September 5, 2013

Reading 1.1-1.2 and 3.1

The hardest part of this section for me to understand was the piece about public key algorithms.  It is hard for me to understand what exactly it is that Bob knows that lets him decrypt the message when everyone has access to the message and the key.  I am still having a hard time seeing how this would solve the problem anyways because Bob needs extra information given to him somehow to be able to decipher the message.

The most interesting parts of this section were the real world applications of plaintext attacks in World War II.  It was interesting, (and a little scary) to see how using a little logic and a few interceptions that the Allies could become aware of entire encryption keys and all the while the German outpost never even realized they were feeding information to their enemies.  And to think that that one little slip could have such large ramifications.  It was also interesting to read about how the more that cryptography develops the more information we are willing to let Eve see.

Wednesday, September 4, 2013

Sept 4. Introduction

My name is Spencer, and I am currently a senior at BYU studying math.
I have taken Math 290, 313, 314, 341, 371.  And I am currently in 342 as well as 485 and have taken some stats classes as well.
I am taking this class because when I was in Math 371 I took it with a group of friends and we decided that it would be fun to take this together as well.  Having other people in the class I knew and would talk to made it easier to study and to get homework done.  It helped me understand more and I hope to be able to do just as well in this class.
I haven't used any of those programs hardly at all, and have little experience with any other mathematical program.  I have limited programming experience, I have taken a few classes in high school and here at BYU, but can general navigate my way through computer programs.
The most effective math professor that I have had, worked hard to make himself available to me, so that I could get the help that I needed on concepts that I did not understand they also taught in such a way as to allow me to feel like I was going to be able to make it if not excel. He helped me to feel not so overwhelmed even though the material was challenging.
Something unique about me is that I was on a national math team in high school (I wish that I still felt that smart) and am usually confident in my ability to get things done.
I will be attending your office hours as often as I can, luckily they are right when my classes end.