Archive for September, 2013
Just about everyone reading this has probably heard of the game ‘capture the flag’ before. Most people have participated in this traditional run-and-tag field game, it’s simple and timeless; just about all of the rules you need to know are explained in its name. Given its simplicity and ubiquity, the game of capture the flag is easy to adapt for different situations, and has taken on many different forms over the years — of particular interest is the game’s interpretation by the network security community.
In network security, games of capture the flag are used as a form of recreation, training, and sometimes even recruitment. Games of capture the flag played in the security community, as you might expect, play a bit differently than their namesake would suggest. They also come in a few different varieties.
The less common variant of network security capture the flag also happens to be the more recognizable. This variant is referred to as ‘attack and defense’. An ‘attack and defense’ game pits two teams of players against each other on identical, pre-constructed computer networks, each with a string of characters referred to as the ‘flag’ hidden somewhere within one of the machines. The goal is to hack into the other team’s network and acquire the ‘flag’, while at the same time securing your own team’s network from invasion.
‘Jeopardy’ style variants are far more common, and can support thousands of teams of players simultaneously. In a ‘jeopardy’ style game, contest organizers design elaborate challenges that can only be solved by utilizing skills that are important for network security professionals to possess. These challenges are organized by category and difficulty, with more difficult challenges offering more points — much like a Jeopardy board. Unlimited amounts of teams can compete online to score the most points and secure their victory. Competitions like these are designed with different skill levels in mind, which makes them conducive to beginning players with little experience. A simple challenge would look like this:
After reading about string encoding methods and searching around for ways to decode such strings, you might try running that string through a base-64 decoder like this one which would reveal the flag.
More complicated challenges might see you recovering secret messages encoded in images, SQL injecting web applications, writing a buffer overflow for an executable file or any combination of various skills and techniques. If any of those sound foreign to you, another unspoken tradition of capture the flag competitions is for competitors to post detailed explanations online about how they solved challenges, after the competition is complete. This way, less experienced competitors can learn and advanced competitors can use such published material to attract potential employers.
In the end, the philosophy of these competitions is this: be a hacker. To think like a hacker is a positive and desirable trait. A ‘hacker’ mindset is a mindset of creative problem solving; an important skill not just in network security, but in almost any profession.
When I graduated from ISU in 2010 and got a job with a large company, one of the first things I noticed when I got there was how much people use Excel; nearly everyone uses it in some capacity. The second thing I noticed was that the overwhelming majority of people have an extremely limited view of what the software can do, and how they can use it to make their jobs easier. Despite everyone having different responsibilities and educational backgrounds, we all need to use the same tools to do our jobs.
While many companies offer training opportunities to better learn these tools, few will be as comprehensive as a formal class. Furthermore, having an advanced knowledge of these tools before entering the work force puts you at an advantage right from the start. A portion of my job requires me to pull information from a computer-generated spreadsheet and convert the information in to a more easily readable format. Usually there are a few hundred entries in the spreadsheet I am working on. Another part of this is that I have to go through a list and figure out which department is responsible for the items on that list.
If I hadn’t taken any tech classes during my time at ISU, that task would have taken me forever to do manually. Fortunately, in those classes we went over Excel, and there were units which worked out how to automate this sort of thing. Rather than have to go through each data field one at a time and format everything the way it needs to be, I can simply copy and paste the data in to a spreadsheet that is set up with a few formulas and scripts which allow the new spreadsheet to automatically interpret the data from the old one. The new spreadsheet will then pretty much fill itself out and be ready to go in just a few seconds. The beauty of Excel is that it can interpret information from databases. Because Excel is such a powerful tool for interpreting data, you’re able to tell each cell exactly what to do. One of the awesome time-saving ways I use this feature is that I have a list of tasks that need to be done, and I have a list of departments who have to do them. Some departments have 3 of the tasks, some have 50. Doing this manually is very tedious.
I set up my spreadsheet to look through the entire list of tasks, and output which department is responsible for the task in the list. Doing this required me to have over 100 nested If/Or statements in each cell of the output column. Setting up the spreadsheet the first time did take a bit of time, but now the process is super fast.
Having taken advantage of the opportunity to better learn how to use this software, I was able to save a lot of time doing this task and it gave me time to gain other responsibilities at work. Having a solid understanding of the tools you will need to use in most jobs will set you apart from your peers. I absolutely recommend taking a few tech classes during your time here at ISU. Even if you don’t end up in a tech related job, you’ll still be able to use what you learned in most other jobs, or even in your personal life for finances, etc.
How would one define Information Technology? A formal definition would state that it is an application of computers to store, retrieve, transmit, and manipulate data. Most would not find this an exciting concept but taking a deeper look may prove otherwise. We as end users only see the finished products without thinking of the raw data or its implications. With a little help from you, the boring data tables and numbers can be far more than just numbers and tables.
What you may not know is how important information can be found almost anywhere. In this example I will take an otherwise boring set of data and show you how IT professionals turned it into something most would enjoy. Think about your personal fitness and the machines at the gym. While you are running on the treadmill, its tracking and displaying information like distance, time, and possible calories burnt. This is useful information but not in the most useful place. What if you could track all of this and more just from walking up three flights of stairs to your class or even taking a longer route to your car at the end of the day? One such example is a company called “Misfit Wearables”. They have aimed at creating a product that monitors this information from your daily routine and syncs to your smart phone to let you know how active you actually are.
Maybe this still doesn’t excite you. Maybe working out at the gym or jogging isn’t really your thing. This very same information can also pique interest by conveying it to you in a more entertaining atmosphere. Take my previous example and then imagine a game that places you inside of a zombie apocalypse but instead of a game pad for a controller, you are jogging away from zombies by actually jogging. This game does exist and you can find it by the name “Zombies, Run! 2” on the android store. It provides a similar purpose of tracking your activity and creates a fun and motivational way to manipulate that very same information.
These are just a couple of the many examples a data set can be utilized and turned into something entertaining. The exciting part of IT is not the information or even the technology by itself. It is the ideas you come up with to convey it. You can apply it in both your personal and professional lives whether it be in the form of a excel spreadsheet displaying graphical data for a meeting or a game that encourages you and your friends to become more active.
You may be thinking that this is great and all but I have no idea how to write programs or use Excel. Fortunately information technology has you covered. If you are interested, one of the best ways to start learning a topic in IT is to search tutorials on Google (YouTube is an excellent starting point). If you start finding yourself enjoying it then take a few IT classes or make it your major. I once knew a girl who after taking her first java class (with no prior IT experience), compiled her grandmother’s old cooking recipes into an app just as smartphones began to hit the market. Last I heard from her, she was making five figures a year (from her apps alone) while attending college for something entirely unrelated to IT.
The point is that IT is for everyone and you do not have to be a computer guru to get involved. It’s only a matter of conveying some information in a useful or entertaining way. While the formal and less fun definition of IT exist, it does little to show you what it can be capable of. So now it is up to you to think about what you could do with boring data tables or even possibly your grandmother’s old recipe cards you found in the attic.
Imagine yourself walking into Watterson and there is a large crowd in the lobby waiting to go into the elevator. You think to yourself “What is going on?”, then someone tells you that there is only 1 working elevator and the stairs are just as full. Now what goes through your mind? F*%^*@$&#T right?
After your first experience with those damn elevators, you’re probably going to race back and try to get in one before everyone else does. No one likes to awkwardly wait for the next elevator to come. There are just not enough elevators for all of us to get in that’s not awkward. Maybe, someday, Watterson will finally receive the remodeling it deserves; then we won’t feel like rats in a labyrinth.
As I was reading articles trying to find an idea interesting enough to write about, I came across an article that would just do the job. Nicolas Fontaine is an optical engineer at Bell Labs. He has figured out a way to solve this Watterson elevator problem but through fiber optic wire instead.
Here is a quick crash course on what fiber wire is for those who are technologically challenged. Fiber optic cable is a network cable that contains strands of glass fibers inside a casing. Pretty much, it is like your basic cable wire but instead of copper, there is glass. Fiber optic cable is fairly new and is used to transfer data faster and longer distances. So every time you send a Facebook message, tweet, Snapchat through your computer, phone, tablet etc. Also, since there is glass in fiber optic cables, it uses light to transfer all the information you send through the internet.
Now we get back to the article I was telling you about. Nicolas Fontaine and his team developed a device that would send multiple devices into a single optical fiber. This device would help avoid future bottlenecks in the information superhighway known as the internet. This multiplexer is like having 5 times the regular Watterson elevators that are even bigger going a lot faster. This means when you are attaching one of your many 20 page papers, instead of taking a minute, it’ll take probably a second or two.
If you would like to learn more about interesting topics such as this one and possibly major in something that involves it, you should check out the Computers Systems Technology program. By taking an introduction class, you will see what you will be dealing with throughout your college career.
ISU MAT 120 students! Don’t forget to take your quiz about this blog post on ReggieNet. That’s the only way you can show your interest in the blog and have your evaluation of it recorded.
Feel free to leave comments if you have anything to say.
Illinois State University, Senior
Computer Systems Technology Major
Business Administration Minor
Here is the link to the article I read if you want to read it for yourself.
To lSU MAT 120 students–welcome to this term’s blog! To all our other readers thanks for checking us out again. We’re back, and will be posting until late November. So, with that said, let’s get started with something that might interest you.
I was surprised to learn that more than 500,000 babies are born prematurely every year in the US. That probably means some of you who are reading this post were born prematurely, and survived, and some have siblings who were premature. Being born prematurely raises the risk of major health problems for the baby even death. So, this can be a big deal.
In most US hospitals, there is a special unit that evaluates and monitors premature babies. The continuous monitoring uses sensors attached to the babies, to measure things like heart rate, respiration rate, and blood pressure. For years, this data has been quickly scanned by doctors, courses of treatment were determined, and this process helped to save the health of the babies. But the process is time-consuming, and it is easily possible that subtle signs of impending health issues get missed.
Lately, computer scientists like Dr. Suchi Saria have been developing a more accurate and more helpful way to do this monitoring, using IT. They have been feeding massive amounts of old monitoring data from many premature babies into computers for analysis. Along with the monitoring data, they also feed data about how well the babies did, and what problems the babies encountered. Then, they are using the principles of machine learning to analyze the data, letting the computers “discover” patterns of association between the various pieces of data.
The amazing thing is that they are not telling the computers what specific patterns to look for. So, these computers are not programmed in the way that people usually think computers are programmed. Instead, the machines are programmed to search on their own through the mountains of data looking for any significant patterns that relate the monitoring data to the health situations of the babies. In this way the machines learn what patterns of sensor data are significant for predicting health problems of the babies. Since the computers know what the health outcomes of each baby were, they can look for any hidden patterns in the monitoring data that would have predicted those health outcomes. Doing things this way, the machines might discover patterns that were previously not known to be significant.
Everyone knows that computers can store and keep in memory huge amounts of data, but it is not generally known that they also can also be designed to analyze large amounts of data so as to learn things about that data on their own. Most people don’t know computers are capable of that kind of learning. Of course, at the present time, it all depends on someone telling the computer how to go about learning significant things.
Once the computers have learned what patterns predict important possible health problems for the babies, knowledge about those patterns can be transferred to any computer that is hooked up to the sensors on newly born premature babies. Once that computer is programmed to look for those patterns, it is constantly fed live data from the sensors, and it will look for any occurrence of the significant patterns that were discovered previously by machine learning. Then, if any of those patterns occur, the computer issues alerts to let doctors know how the babies are doing, and what problems are beginning to develop. These alerts may well come earlier than they would have if the monitoring were done in the old way, and it is less likely that something bad will be missed.
This new approach has been shown to be a more accurate and efficient way of handling the care of premature babies, saving some from serious problems by catching the hidden development of health problems early on, before they would have been detected by the old methods in which doctors and nurses would periodically check the sensor data, looking for clues about how the baby is doing.
Machine learning has many applications in other fields, from marketing to crime fighting. But I found this particular application in the field of health to be especially interesting. It is probably not too hard to imagine other applications of machine learning in the field of nursing and health, or other fields — any time it would be useful to be able to find hidden patterns in mountains of data. Roughly speaking, when you don’t know what patterns to look for, let the machine figure it out for you.
If you want to find out how to make a computer learn things on its own, study computer science. If you want to know what machine learning is like, and get some sense of how it might be used in a field like marketing, nursing, manufacturing, or whatever, get a background in some of the more technical aspects of computing.
ISU MAT 120 students, don’t forget to take your quiz about this blog post on ReggieNet. That’s the only way you can show your interest in the blog and have your evaluation of it recorded.
Non-spam, relevant comments from anyone are welcome, below.
PS: Student bloggers will begin posting here later this week.
Learn about Machine Learning at: http://robotics.stanford.edu/~nilsson/mlbook.html.
Or you might want to take a look at the scientific paper regarding the PhysiScore premature baby monitoring at: http://stm.sciencemag.org/content/2/48/48ra65.abstract.