7.7
2. The uniqueness about the RSA and Diffie-Hellman standards is that even when they are publicly known, they are still extremely difficult to crack. It is necessary to keep an open, public, standard so that the two parties involved in sending data know the procedure, allowing them to send and recieve encrypted messages. If it was not a open standard, then everyone may do the procedure differently, which would not allow for the data to be decrypted.
- Explain in your own words how public key encryption is not symmetric.
- Cryptography relies on open standards - protocols or standards that are publicly available. Diffie-Hellman and RSA are all open cryptographic standards. Why is it necessary to use open standards in cryptography? (Hint: consider the need for public keys)
2. The uniqueness about the RSA and Diffie-Hellman standards is that even when they are publicly known, they are still extremely difficult to crack. It is necessary to keep an open, public, standard so that the two parties involved in sending data know the procedure, allowing them to send and recieve encrypted messages. If it was not a open standard, then everyone may do the procedure differently, which would not allow for the data to be decrypted.
7.6
- Explain briefly how the following substitution ciphers can be broken: Caesar cipher, Simple substitution cipher, Vigenere cipher.
- Define symmetric encryption.
2. Symmetric encryption is a method where the same key is used to encrypt and decrypt the message
7.4
- What are ping and traceroute? How does each work?
- What are the benefits of packet switching?
- What is the TCP/IP Model?
- What are packet sniffers? Why is it important to protect your data when using public wifi connections?
- What is the difference between IPv4 and IPv6? Why have we shifted to IPv6?
- What is the link between IP addresses and domain names?
2. The benefits of packet switching are the increase of redundancy and robustness.
3. It is a model depicting how data is transmitted from one user to another through the Application layer down through the Transport and Internet layers, through a LAN, and back up through the application layer to another users computer.
4. Packet sniffers are similar to your standard creepy fed ex guy, he (or she) opens up your packages to read the contents. It is important to protect your data, because sniffers can record passwords or important data in your computer that can compromise privacy and security.
5.The difference between the two are the number of bits that IPv4 is in dotted decimal notation, and IPv6 is in Hexadecimal notation, and we have switched to IPv6 because we ran out of IPv4 addresses in multiple areas worldwide, and IPv6 gives more destinations.
6. The link between Ip addresses and domain names are that domain names are hostnames that are associated with an IP address
6.8
1. Which data set did you select and why did you choose it? Summarize the data included, being specific about the types of data (text, sounds, transactions, etc.) included. Make sure you list the title and the website where you found the data.
We chose data from the FIRST Robotics Competitions of 2016, specifically statistics regarding the defenses, towers, and matches during the season. This was shown by the 2016 insights found at https://www.thebluealliance.com/insights/2016.
2. List your 3-5 hypotheses and the data visualizations that you created for each. (Include the visualizations as images on your portfolio or provide a link to your Fusiontable, shared with your instructor.)
If a defense has a high damage percentage in the qualification matches, then the percentage will increase in playoff matches.
If high goals are worth more points than low goals, then more high goals will be scored than low goals.
If the match is a playoff match rather than a qualification match, then the percentage of captures will increase.
If the match is a qualification match, then the score will be less than that of a playoff match.
If the match is a playoff match, then the foul count will be greater than that of a qualification match.
We chose data from the FIRST Robotics Competitions of 2016, specifically statistics regarding the defenses, towers, and matches during the season. This was shown by the 2016 insights found at https://www.thebluealliance.com/insights/2016.
2. List your 3-5 hypotheses and the data visualizations that you created for each. (Include the visualizations as images on your portfolio or provide a link to your Fusiontable, shared with your instructor.)
If a defense has a high damage percentage in the qualification matches, then the percentage will increase in playoff matches.
If high goals are worth more points than low goals, then more high goals will be scored than low goals.
If the match is a playoff match rather than a qualification match, then the percentage of captures will increase.
If the match is a qualification match, then the score will be less than that of a playoff match.
If the match is a playoff match, then the foul count will be greater than that of a qualification match.
3. Explain how collaborating with a partner helped you gain new insight or knowledge about the data.
My partner helped me to select and analyze the data by choosing specific aspects of the completion data to focus on.
4. Identify at least one security and/or privacy concern that is associated with the data in the data set you chose.
One concern of security and privacy that is involved with this data is statistics involving specific team's accomplishments, as teams may not want to be recognized by these statistics.
My partner helped me to select and analyze the data by choosing specific aspects of the completion data to focus on.
4. Identify at least one security and/or privacy concern that is associated with the data in the data set you chose.
One concern of security and privacy that is involved with this data is statistics involving specific team's accomplishments, as teams may not want to be recognized by these statistics.
6.7
- By filtering and analyzing your data set, create a pie chart that displays the relative percentages of cloud forest, rain forest, and dry forest specimens that occur in the data set. Describe the procedure you used to create the pie chart and copy and paste the chart into your portfolio page. Having troubles working with your chart? Watch this video for some tips and tricks.
6.6
- Describe how using a list of lists allowed the Presidents Quiz app to have more variety.
6.5
2. True, because it is asynchronous, and that it must wait for the data to arrive to be able to use it, where as if it was synchronous, it could be done almost immediately.
3. It allows for abstraction to be used within the code to allow for a cleaner and less complex code. The data would be requested and not stored in app, so it frees up storage, and also allows for the code to be less complex
- Describe and give an example of the difference between synchronous and asynchronous data access.
- True or False. When an app retrieves data from Firebase, it first requests the data and then it stops whatever it is doing and waits for the data to arrive. Explain.
- One aspect of abstraction is that it helps to reduce details to focus on what's relevant. How does the use of an external database in this app help reduce detail in the program?
2. True, because it is asynchronous, and that it must wait for the data to arrive to be able to use it, where as if it was synchronous, it could be done almost immediately.
3. It allows for abstraction to be used within the code to allow for a cleaner and less complex code. The data would be requested and not stored in app, so it frees up storage, and also allows for the code to be less complex
6.4
You must submit a comment before seeing replies.
Matt Esser
Today at 12:15 am
2. I learned that colleges that are larger and have a higher graduation rate cost the most money, and many people who graduate from said schools are drowning in debt. This is especially true for large public schools such as Penn State or ohio State. As schools get more expensive, students become further and further in debt, with both the blue and yellow dots progressing in a linear fashion toward the top right of the graph.
3. "If the tuition costs are higher at a private institution, the student debt will be significantly higher than that of a public school."
4. This data may have a privacy concern for the colleges, because they are basically being exposed of their exploits on young students to those who are looking at college, which may make people think twice about attending a cirtain school.
5. The purpose of the visualizqation was to show the trend of colleges and universities becoming more expensive, along with debt increasing.
Matt Esser
Today at 12:15 am
- Choose one of the data sets listed above in the Activity section and give a brief description of it. What specifically were the types of data (text, sounds, transactions, etc.) included in the data set you chose?
- What new facts did you learn when exploring the data set? List at least 3 facts.
- Write a question you have about the data set you chose. Now, convert that question into a hypothesis (a statement) with your prediction about the data.
(Hypotheses take the form of "If __________, then _________." For example, a hypothesis about the student debt data could be, "If the tuition costs are higher at an institution, the student debt will be higher." - Identify at least one security and/or privacy concern that is associated with the data in the data set you chose?
- If your data set included a visualization, explain the purpose of the visualization. How would you change or improve the visualization? If it did not include a visualization, describe one that you think would be useful in understanding the data.
2. I learned that colleges that are larger and have a higher graduation rate cost the most money, and many people who graduate from said schools are drowning in debt. This is especially true for large public schools such as Penn State or ohio State. As schools get more expensive, students become further and further in debt, with both the blue and yellow dots progressing in a linear fashion toward the top right of the graph.
3. "If the tuition costs are higher at a private institution, the student debt will be significantly higher than that of a public school."
4. This data may have a privacy concern for the colleges, because they are basically being exposed of their exploits on young students to those who are looking at college, which may make people think twice about attending a cirtain school.
5. The purpose of the visualizqation was to show the trend of colleges and universities becoming more expensive, along with debt increasing.
6.2 Reflection
2. I would enhance this app so that instead of using a text box and indexing the value, I would index button values, such that if the button pressed toggles the indexed true/False value, it would be correct. If not, it would be incorrect.
- Describe the significance of the global variable index. How was it used in this app? Based on your answer, why might indexing be important in programming?
- Using what you have learned about lists and indexing, how might you enhance this app so that it is a multiple choice quiz?
2. I would enhance this app so that instead of using a text box and indexing the value, I would index button values, such that if the button pressed toggles the indexed true/False value, it would be correct. If not, it would be incorrect.
5.8 Reflection
2. I would use the same as before with the multiple character classes (uppercase, lowercase...), but increase the length to at least 11 characters long. PeaNutbUtter77! is another excelent exampe of this for it will take years to crack with even an advanced computer like the one mentioned.
3. Add just one ore character (12). Again PeaNutbUtter77! would fit the bill.
4. The nearest route is 8.2 miles, but the optimal route is 7.6. This shows that although the software isnt perfect, it still assists in reducing travel distance. A similar phenomenon is seen when driving local roads; when your GPS tells you to go one way, but you know that another way is faster.
- (POGIL) A password scheme consists of a minimum password length and the different types of symbols (i.e., letters, numbers, specials) that can be used in the password. Using the Password Strength Calculator, determine the optimal scheme for withstanding a brute force attack of at least 10 years by an ordinary PC performing 100 million tests per second.
- (POGIL) According to this 2012 article, a password-cracking computer can try 350 billion passwords per second. How would you have to modify your scheme to withstand a 10-year attack by this specially designed computer?
- (POGIL) That article was written in 2012, almost 5 years ago. Password cracking technology has probably gotten a lot better. Suppose the number of passwords that can be checked per second doubles every year, use the Password Strength Calculator to determine an optimal password scheme for the year 2020?
- (POGIL) For routes starting and ending at Trinity College, identify the nearest neighbor route and the optimal route. What does this show you about the nearest neighbor heuristic?
2. I would use the same as before with the multiple character classes (uppercase, lowercase...), but increase the length to at least 11 characters long. PeaNutbUtter77! is another excelent exampe of this for it will take years to crack with even an advanced computer like the one mentioned.
3. Add just one ore character (12). Again PeaNutbUtter77! would fit the bill.
4. The nearest route is 8.2 miles, but the optimal route is 7.6. This shows that although the software isnt perfect, it still assists in reducing travel distance. A similar phenomenon is seen when driving local roads; when your GPS tells you to go one way, but you know that another way is faster.
5.7 Reflection
The first graph is Sequential, and as the list size goes on, the time it takes to find the correct value becomes exponentially larger. On the other hand, Binary search, the second graphs, is a linear search pattern that is able to find the value without a significant time increase.
These are three sorting methods that were tested. Bubble is exponential, and it takes the longest amount of time to find the value, bucket is the shortest, for it is linear, and merge is like a mix between the two. It doesnt take as long to find the value as bubble, but it is not as efficient as bucket.
5.6 Reflection
- For each of the 3 bugs in the Pong game, explain what the bug was, how to fix it, and the type of error (semantic or syntax).
5.4 Reflection
2.I think if I had to sort more than one deck, I would chose radex, for it would sort the numbers then suit, effectively sorting both suit and value in a short amount of time.
- Bubble and Merge Sort are referred to as comparison sorts because the values of the two pieces of data are compared during each step. Why are the radix and bucket sort not comparison sorts?
- Which sort do you think would be the fastest if you had to sort more than one deck of cards (i.e. as the amount of data to be sorted increases)? Why?
2.I think if I had to sort more than one deck, I would chose radex, for it would sort the numbers then suit, effectively sorting both suit and value in a short amount of time.
5.3 Reflection
2. The maximum would be 8 guesses
3. The maximum would be 40 guesses
4. A linear search would be most benificial, for the cards are arranged randomly, and binary cannot effectively find it, so the best way is to go through them one by one.
5. One problem I search daily is phone contacts. In my imessage, my tests go all over the place. to search for the conversation I want to find, I use sequential searching, because it cannot use binary.
- (POGIL) Define a pseudocode algorithm that will efficiently play the guessing game.
- (POGIL) To guess a number between 1 and 100, what's the maximum number of guesses your algorithm would take?
- (POGIL) To guess a number between 1 and 500, what's the maximum number of guesses your algorithm would take?
- Suppose you have a deck of cards and you want to find the Ace of Spades. If the deck is shuffled, which is the best search algorithm to use and why?
- Give an example of a search problem you encounter in everyday life. Does it use sequential, binary, or some other search?
2. The maximum would be 8 guesses
3. The maximum would be 40 guesses
4. A linear search would be most benificial, for the cards are arranged randomly, and binary cannot effectively find it, so the best way is to go through them one by one.
5. One problem I search daily is phone contacts. In my imessage, my tests go all over the place. to search for the conversation I want to find, I use sequential searching, because it cannot use binary.
5.2 Reflection
2. The maximum would be 8 guesses
3. The maximum would be 40 guesses
4. A linear search would be most benificial, for the cards are arranged randomly, and binary cannot effectively find it, so the best way is to go through them one by one.
5. One problem I search daily is phone contacts. In my imessage, my tests go all over the place. to search for the conversation I want to find, I use sequential searching, because it cannot use binary.
- (POGIL) Define a pseudocode algorithm that will efficiently play the guessing game.
- (POGIL) To guess a number between 1 and 100, what's the maximum number of guesses your algorithm would take?
- (POGIL) To guess a number between 1 and 500, what's the maximum number of guesses your algorithm would take?
- Suppose you have a deck of cards and you want to find the Ace of Spades. If the deck is shuffled, which is the best search algorithm to use and why?
- Give an example of a search problem you encounter in everyday life. Does it use sequential, binary, or some other search?
2. The maximum would be 8 guesses
3. The maximum would be 40 guesses
4. A linear search would be most benificial, for the cards are arranged randomly, and binary cannot effectively find it, so the best way is to go through them one by one.
5. One problem I search daily is phone contacts. In my imessage, my tests go all over the place. to search for the conversation I want to find, I use sequential searching, because it cannot use binary.
Logo 2.0 Reflections
The lesson here is that our choice of abstractions, in this case the use of parameters in our Logo commands, affects the kinds of problems we can solve and how we solve them. That is, our choice of abstractions have an enormous impact on our algorithms. In addition, procedural abstraction (both with and without parameters) makes algorithms easier by raising the level of abstraction.
Describe in your own words, with a specific example from Logo, how our choice of abstractions (commands) in this lesson provides us with the ability to solve problems that couldn't be solved with the abstractions (commands) used in Logo Part 1.
1. This will allow us to make different shapes, such as pentegons and triangles easliy because we can use abstraction to program the number of times we want the algorithm to run. This will be very benificial in making perfect shapes such as pentegons, where the angles are the same for all and the sides are the same length.
Describe in your own words, with a specific example from Logo, how our choice of abstractions (commands) in this lesson provides us with the ability to solve problems that couldn't be solved with the abstractions (commands) used in Logo Part 1.
1. This will allow us to make different shapes, such as pentegons and triangles easliy because we can use abstraction to program the number of times we want the algorithm to run. This will be very benificial in making perfect shapes such as pentegons, where the angles are the same for all and the sides are the same length.
4.10 Reflection
- Which generation of the 4-bit simulators above is the most abstract? Why?
- Explain the purpose or function of the RAM and the CPU.
- Describe in your own words the difference between the fetch and execute steps.
- Summarize the differences between assembly language and machine language programming.
2. The purpose is to store values and compute
3. The difference is that fetch means to get values and execute means to compute
4. The differences are that machine language is ready to excecute, but the assembly language must first be compiled
4.9 Reflection
- What are the main differences between Bill Nye's solar system model and the Second Life model?
- (POGIL) What would happen if there were lots more wolves than there are bunnies? Would the wolves live forever? Record your hypothesis, prediction and experiment results.
2. If there were a lot more wolves, the wolves would eat all the bunnies and then die out. We ran experiments with more wolves and the hypothesis was correct
4.7 Reflection
- Consider the following Dilbert cartoon? Would it be possible for a PRNG to spit out 6 NINEs in a row?
- Are slot machines fair? Why or why not?
- Is it possible to devise a method that would allow you to win consistently on a slot machine?
2. Slot machines are fair, but they are not equal. They are random for the most part, but some are programmed to hit more often.
3. It is possible if the person figures out the algoritm for the slot machine, but the player must have other people play the dead rounds for them and they must play the hot rounds of the machine to win constantly
4.6 Reflection
- (POGIL) Record your teams results for each run in a neatly organized table. That is, if you did 20 runs of 100 coin flips each, your table should have 20 rows of results, with percentages for each row and totals at the bottom.
- (POGIL) According to your results, does App Inventor's PRNG provide a good model of randomness?
- (POGIL) A friend claims that flipping a coin 100 times and finding that it comes up heads only 45% of the time shows that the coin is biased. How should you reply?
- Because we are using a coin flip app, this experiment really tests only that App Inventor's random integer block generates a 1 around half the time. Is this a sufficient test for App Inventor's PRNG? What other experiments might you do to increase your confidence in App Inventor’s PRNG?
2. Yes, for it is almost 50%, but there is a probability for the number to be greater or lesser.
3. I should reply that the coin is random, and the more times that the coin is flipped, the closer to 50% it will be, and that it shouldn't be exactly 50%.
4. Yes, for it is reliable that the block will display heads or tails randomly. Other experiments that may be done is how the android will move to a random xy cordinate in the Android Smash app
Show Less
4.6 POGL
- (Portfolio) According to your results, does App Inventor's PRNG provide a good model of randomness?
- (Portfolio) A friend claims that flipping a coin 100 times and finding that it comes up heads only 45% of the time shows that the coin is biased. How should you reply?
2. I should reply that the coin is random, and the more times that the coin is flipped, the closer to 50% it will be, and that it shouldn't be exactly 50%.
4.5 Reflection
- Write an if/else statement to express the following real life situation. Mary likes ice cream and always chooses chocolate unless there is no chocolate in which case she chooses strawberry. But if there’s no strawberry either then she settles for vanilla, which, for some reason, is always available. (HINT: You may need to put together more than 1 if/else statement to do this.)
- Give another example from real life where you use if/else logic to make a decision.
- What enables us to simulate coin flipping in this app is App Inventor’s random-integer block. These blocks constitute a model of randomness — an abstraction of real randomness such as really flipping a coin. How might we use the CoinFlip app test whether this is a good model of randomness?
Then chose chocolate
IF there is no chocolate
Then chose strawberry
Else chose vanilla
2. Another real life example would be in the lunch room, I always get buff chic pizza , but if there isnt any, I go int the sandwich line, unless there is a huge line of people there. If there is a huge line, I get the special.
3. We can test to see if this is a good model of randomness by tapping tee coin 20 times and recording if the coin showed heads or tails. Once the 20 values have been recoreded, the heads and tails values should be almost the same, thus portraying an abstraction of randomness
4.2 Reflection
- Android Mash presents a new type of event which you haven't encountered before. What is that new event? How often is it triggered?
- Consider the apps you've developed so far. Can you list all the different events your apps have responded to? What other events do you think an app can respond to? Explore some of the components in App Inventor and see what event handlers they have.
- What are the advantages of writing procedures in programming? Consider the procedures you wrote for your Android Mash app.
2. I have coded too many apps to list all the events I have used, but I use many clock, when screen initialized, and when buttonPredded events. Other events could be when accelerometer is shaken, or when location changes.
3. Some advantages of writing procedures is that it helps clean up code and makes it easier to understand.