APCSP Vocab Flashcards
Overflow
Error that occurs when the number of bits is not enough to hold the number
Ex. If one byte was used to store a piece of data and the piece of data was greater than 256, it would cause an overflow error
Round-off
Error that occurs when the number of bits is not enough to reprsent the actual number
Ex. 3.14 (3 digits) used to represent pi
Lossy
Compressing data in a way that loses some of the original data. The decompressed image is not the same as the original image
Ex. Sending a picture as a small file, resulting in lost resolution.
Lossless
Compressing data in a way that preserves all data and allows full recovery of original image. When sending, the file is not as compressed as a lossy file would be
Ex. Text files, computer programs
Metadata
Data about data
Ex. a camera storing location, shutter speed, and aperture for a digital photo
Sequencing
The order in which steps in a code are performed (typically line by line)
Selection
A boolean condition to determine which of two algorithmic paths are taken, if any
Usually if-statement
Iteration
Using a looping control control structure to go through every item in a list
Usually for or while
Reasonable Time
The number of steps an algorithm takes in the worst case based on input size is less than or equal to a polynomial function
(can’t increase superpolynomially like 2^n or n!)
Not Reasonable Time
Usually exponential in the number of steps, like doubling every time your input grows by one
Heuristic
Using a “rule” to guide an algorithm, like always walking toward the north star if you were stuck in a forest
Using heuristic problem solving allows an algorithm to find the best approximate solution from n! solutions
Undecidable
A problem that is so difficult we can’t ever create an algorithm that would be able to answer yes or no for all inputs,
Ex. determining if a user’s program run on some input would always stop and not run forever
Linear Search
Going one by one and examining each element in a list until the value is found
Ex. looking for a word in the dictionary
Binary Search
Requires the list to be sorted in order. Then the list is cut in half and either the right or left side of the list is kept depending on the value of the element that is being searched for.
If a list is a certain length, then the number of times that list an be cut in half is the maximum number of times the list can be searched to find a certain value.
If there are more ways to search, the list is cut more times (like looking for a spot on a grid based off a current location, listwould be cut in four)
API’s
Application Programming Interface
APIs allow developers to sync data between multiple platforms and can facilitate communication among the various microservices in web applications.
Citizen Science
Lots of people to help with a scientific project
Ex. asking everyone around the world to count the butterflies they see in one day.
Cloud Computing
Using distributed calculations and/or storage for big data or a web application
Crowdsourcing
Asking lots of users to help with something
Ex. funding a projects, running SETI@Home to look for extraterrestrial signals
Creative Commons
An alternative to copyright that allows people to declare how they want their artistic creation to be shared, remixed, used in noncommercial contexts, and how the policy should propogate with remixed versions.
Open Access
A policy that allows people to have read access to things
Ex. libraries or online data
Moore’s Law
The number of transistors on a chip doubles every two years
Peer-to-Peer Networks
A system where one user’s computer connects through the internet to another user’s computer without going through an intermediary “centralized” computer to manage the connection
Digital Divide
The idea that some commuities/populations have less access to computing than others
ISP
Internet Service Provider
A company that provides access to the internet.
How does internet communication arrive at its destination?
Speech on the internet goes from the source to an ISP, into the cloud, out of the cloud, to another ISP, and to its destination
How can the government control speech on the internet?
1.) It can try to control the speaker or the speaker’s ISP by criminalizing certain kinds of speech (this won’t work is the speaker isn’t in the same country as the listener)
2.) It can try to control the listener by prohibiting posession of certain kinds of materials. In the U.S., possession of copyrighted software w/out appropriate liscensing is illegal, as is possession of other copyrighted material w/ the intent to profit from redistributing it
3.) The government can try to control the intermediaries
How can internet posters evade being convicted for defamation/slander on the web?
The poster could evade responsibility as long as they remain ananymous, which can easily be done on the internet
What has congress given ISP’s relating to an Internet Defamation case?
Congress had given the ISP’s a complete waiver of responsibility for the consequences of false and damaging statements, even when the ISP knew they were false
Internet Protocol Hourglass
Each protocol interfaces only to those in the layer immediatelly above and below it, and all data is turned into IP bit packets in order to pass from an application to one of the physical media that make up the network.
- email, web, phone
- SMTP, HTTPP
- TCP, UDP
- IP
- wire, fiber, radio
TCP
Transmission Control Protocol
Guaranteed reliable transmissions by breaking messages into packets, keeping track of which packets have been recieved successfully, resending any that have been lost, and specifying the order for reassembling the data on the other end
UDP
User Datagram Protocol
-Provides timely but less reliable message delivery
HTTP
HyperText Transport Protocol
-used for sending and receiving web pages
SMTP
Simple Mail Transport Protocol
-Used for sending email
What does “end to end” mean in regard to the internet
“End-to-end” in the internet, means that the switches making up the core of the network should be dumb-optimized to carry out their single limited function of passing packets.
RFC
Request for Comment
-Standards adopted through a remarkable process of consensus-building, nohieraechial in the extreme. Someone posts a proposal, and a cycle of comment and revision, or buy-in and objection, eventually coverges on something useful, if not universally regarded as perfect
Shortcut for going from binary to hexadecimal
-To translate a binary numeral (like 1101011101) to hexadecimal, start by splitting it into groups of four bits, from left to right (like this: 11 0101 1101)
Then determine the value of each group and write the corresponding hex digit
Internet
A network of independent but connected devices all over the world
World Wide Web
The collection of interlinked website documents (such as HTML files) that you can view with a web browser by typing addresses like
http://bjc.berkely.edu/website/privacy.html.
The collection of web pages that you view when you are online on a computer or other device.
HTML
Hypertext markup language
Most web pages are written with________
URL
Uniform Resource Locator
An address for accessing specific wevb data located on a server
Server
A computer hosting data for other to access
Protocol
The standard for communication between browsers and servers (usually “http” or “https”)
Sometimes not visible in browsers like Google Chrome
Domain Name
The name of the server that hosts the data (bjc.berkeley.edu)
Path
The location of the data in a hierarchy of folders on the server
Protocols
Standards for communication
IP
Internet Protocol
An addressing system that finds paths to distant computers
Specifies how a router handles a request for another IP address
Redundant
There are multiple pathways among the physical connections of the internet to create redundancy. Even if one pathway is unavailable, there is still another way to transmit a message from a sender to receiver.
Hierarchial
There are two ___________ internet addressing systems: domain names and IP addresses. These address ____________ works much like the postal system, which locates people first by state, then city, then street, then house number, then apartment, and then finally person.
Fault Tolerance
Ability to work around problems
Scalability
The ability f the net to keep working even as the size of the network and the amount of traffic over the network increase
Virus
A kind of malware that tries to spread itself over the network to other computers
Antivirus Software
Helps protect against virus attacks
Phising
An attacker send you an email that appears to be from some official organiziation (like a bank) and tricks you into giving info to them (like a bank password)
DDoS
Distributed Denial of Service
-Consists of sending a lot of requests to a server at the same time. This can overload the server’s network bandwidth
-Causes a temporary inability to reach the targeted server so other users of that server are denied service
Which protocols are used to keep secure HTTP connections
Transport Layer Security (TLS) or maybe even an older version called Secure Sockets Layer (SSL). With these protocols, the site you are visiting sends its public key, and your browser uses it to encrypt the info you send.
Certificate Authorities
Used by many websites for encryption to protect files and info that is transmitted over the internet. They issue certificates to verify the identity of a user or computer.
Public IP Address
The IP address that is logged by various servers/devices when you connect to them through you internet connection.
Private IP Address
An IP address that’s reserved for internal use behind a router or other Network Address Translation (NAT) device, apart from the public
IP v4
This adress is big enough to support 2^32 computers. That’s about 4 billion (4^109), but there are more than seven billion people on Earth, so there aren’t enough IP addrresses to go around. Each of the four numbers in a typical IP address today is an eight-bit byte with a value between 0 and 255.
IP v6
The long-term solution is to increase the length of an IP address. The new IP addresses are 128 bits wide, which is enough to support 2^128 computers
Routers
The “connection points” of the internet. Networking devices that route traffic between subnetworks on the internet.
Packets
When you send a message over the internet, your computer divides it into small chunks, called _______ that it sends individually, each on its own path. A ________ can include any kind of data: text, numbers, lists, etc.
Packet Switching Network
A diggital networking communications method that groups all transmitted data into suitably sized blocks, called packets, which are transmitted via a medium that may be shared by multiple simultaneous communication sessions.
Ex. Internet
Hierarchy of Abstractions
Manages complexity of finternet by hiding the details of lower levels of the system. The highest level of abstraction includes the most general features of the internet that have to work the same across all devices. At lower levels of abstraction, things get more device-specific.
Application Layer Protocols
The highest level of abstraction because they manage how data is interpreted and displayed to users. These protocols give meaning to the bits sent by lower-level protocols; user and server computers must agree on what the bits mean, and application protocols (like HTTP) offer this.
Transport Layer Protocols
Manage the breakdown of a message into packets to be transmitted by lower level protocols and the reconstruction of the message from the packets upon arrival
Internet Layer Protocols
Manage the pathways that the data packets travel across networks. These protocols treat the internet like one large network even though the physical reality on the lower level is one of many tiny subnetworks.
Networrk Interface Hardware
Also known as Link Layer
All Internet devices connect through a physical interface that uses a protocol to manage the connection to the local network. These local protocols are the least abstract because they deal directly with your physical hardware.
DNS
Domain Name System
The hierarchial addressing protocol that is human-readable
Who is in charge of the internet?
The computers on the internet and the connections among them don’t belong to any one oranization
ICANN
The Internet Corporation for Assigned Names and Numbers
Controls the DNS hierarchy and the allocation of IP addresses
For how long has the U.S. dominated the internet and why?
The U.S. has “controlled” the Internet up until 2009. The Advanced Research Project Agency (ARPA) first developed the Internet in 1969.
Open Protocols
Standards that are not owned by a company
IETF
Internet Engineering Task Force alongside the Internet Society oversee internet protocols
What does the internet rely on to operate properly?
The internet relies on the cooperation of many different elements
Firewall
Used to limit the kinds of connections (HTTP requests, incoming mail, etc) outsiders can make to your computer
Cipher
The set of rules your are using to encode the info
Key
What tells you how to arrange cipher’s rules. _______ is applied using an algorithm to a string or block of unencrypted text to produce encrypted.
Deciphering
Analyzing the code and working back from it
Monoalphabetic Cipher
A class of ciphers where thhe code is based on one letter of the alphabet standing for another letter consistently throughout the message
Brute Force
Trying all the possible ways to crack a code
Frequency Analysis
Based on the idea that every linaguage has its own specific patterns. The study of the frequency of letters or groups of letters in a ciphertext
Crib
Words, letters, and phrases that are so common that it is hard to form a sentence without them
Ex. e and the
Polyalphabetic Cipher
The way you scramble the alphabet actually changes throughout the message
Ex. Vigenere cipher
Vingenere Square
Alphabet goes up on the top and also to the side in order to help write a code.
How can you crack Vigenere cipher?
By using a type of frequency analysis by Charles Babbage. Babbage realized that some patterns in a long message may still show up and he counted how many letters separated those repeated patterns.
One Time Pad Encryption
Only way to create an unbreakable cipher. Uses the key that is as long as the message itself. Once a sheet is used for a message, you destroy it. Then you use the next sheet for the next message so you never repeat a key. As long as you keep the pad safe, no one can ever decrypt the message.
The Enigma Machine
An example of a one time pad encryption device.