<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://homeostasis.scs.carleton.ca/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Omi</id>
	<title>Soma-notes - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://homeostasis.scs.carleton.ca/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Omi"/>
	<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php/Special:Contributions/Omi"/>
	<updated>2026-05-13T12:07:05Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.42.1</generator>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=Internet_Attribution:_Between_Privacy_and_Cruciality&amp;diff=9468</id>
		<title>Internet Attribution: Between Privacy and Cruciality</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=Internet_Attribution:_Between_Privacy_and_Cruciality&amp;diff=9468"/>
		<updated>2011-04-12T01:37:25Z</updated>

		<summary type="html">&lt;p&gt;Omi: /* Requirements for an Internet Attribution System */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;b&amp;gt;Abstract&amp;lt;/b&amp;gt;&amp;lt;br/&amp;gt;&lt;br /&gt;
Present and past situations show a need for improved attribution systems, and arguably, scientific basis for properly functioning attribution systems are not yet defined. Lots of research have been focusing on attributing documents to authors for the sake of securing authorship rights and rapid identification of plagiarism. Many of those were revolving around the notion of using machine learning for linking articles to humans. Others proposed text classification and feature selection as a means of detecting the author of a document. Unfortunately, not that much research is addressing the problem of lack of robust attribution system over the internet. Authentication, as a means of attribution, has proved its efficiency but, needless to say, it is not applicable to authenticate every single packet hopping over the intermediate systems. This paper presents limits and advances in the attribution of actions to agents over the internet. It reviews current attribution technologies as well as the limits of those technologies. It also identifies the requirements of a proper attribution system and proposes a distributed (yet cooperative) approach for performing attribution over the internet.&lt;br /&gt;
&lt;br /&gt;
=Introduction=&lt;br /&gt;
Currently the Internet&#039;s infrastructure provides users partial anonymity. Unfortunately, that anonymity weakens the security for its users, because it entices advanced users to exploit that feature. The lack of online identification married with bad intentions entices criminals to commit a number of &amp;lt;i&amp;gt;Cyber Crimes&amp;lt;/i&amp;gt; without being caught, crimes which include: fraud, theft, forgery, impersonation, the distribution of Malware (and hence, botnets), traffic tampering, DoS, bandwidth hogging, etc. Consequently, internet attribution is a highly sensitive field that constitutes a cornerstone position within internet security. Needless to say, current solutions don&#039;t guarantee sufficient attribution nor are considered always applicable most of the time, hence, current system suffers the lack of a relatively robust attribution mechanism. In the light of this context, we need better methodologies for reaching an acceptable success level for attributing actions over the internet.&lt;br /&gt;
&lt;br /&gt;
In principle, attribution can be defined as the mechanism of binding a system-defined act to an agent. An agent is typically an entity that has the ability to commit what constitutes as an act. Within our focus, an agent could either be a person or a machine. It can also be defined as &amp;quot;determining the identity or location of an attacker or an attacker’s intermediary&amp;quot;&amp;lt;ref&amp;gt; [Institute for Defense Analyses, 2003]&amp;lt;/ref&amp;gt;. Problems like IP address spoofing, lack of interoperability in intermediate systems, dynamic nature of IP addresses, unawareness of system users with lots of &amp;lt;i&amp;gt;unknown&amp;lt;/i&amp;gt; packets sneaking to their machines and poor efficiency of firewalls and IDSs make this determination operation considerably difficult. In addition, some types of attacks are carried out to conceal the real agent behind an act. For instance, malware distribution (and hence the creation of botnets), and stepping stones aim to inflict vagueness around the correct &amp;lt;i&amp;gt;human&amp;lt;/i&amp;gt; source behind the scene.&lt;br /&gt;
&lt;br /&gt;
In this paper, we focus on defining what it takes to achieve an acceptably working attribution mechanism over the internet. To do that, we review past research works in attribution and discuss their common limitations as well as flaws and what can be done in common to enhance such schemes. We also argue that the lack of a globally deployed registration system that registers system users and grants them LICENSED access to the system enfeebles proper attribution and motivates illegitimate intrusions and irregular behavior. We show that employing the mentioned system would reduce the incentive of irregular behavior as well as remove the blaze of tempting anonymity, putting attackers under the risk of being easily caught. We also discuss how privacy, as a counter force to attribution, plays a big role in the internet and within its users and propose a framework that achieves relatively robust attribution mechanism and retains the privacy of users.&lt;br /&gt;
&lt;br /&gt;
Much of the research done in literature focuses on attribution that is done for keeping track of authorship, i.e., attributing text to authors. In this paper, we don&#039;t question the cruciality of attribution in this field, but rather we address a higher level of attribution of all possible actions to agents, which is sadly deemed slightly obsolete from the current research perspective.&lt;br /&gt;
&lt;br /&gt;
This paper starts with a quick background discussion on the current forms of attribution. Consequently, section 3 presents the dilemma of attribution, resolving the tension between attribution and privacy. Section 4 presents a fundamental set of requirements for achieving an acceptable level of attribution over the internet. In section 5, we propose an abstract framework for achieving attribution that mimics attribution in the real world. And finally, a conclusion is presented in section 6.&lt;br /&gt;
&lt;br /&gt;
==What is Attribution==&lt;br /&gt;
&#039;&#039;The act of attributing, especially the act of establishing a particular person as the creator of a work of art.&#039;&#039;&amp;lt;ref&amp;gt; The American Heritage® Dictionary of the English Language, Fourth Edition copyright ©2000 by Houghton Mifflin Company. Updated in 2009. Published by Houghton Mifflin Company.&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
We are concerned with one particular type of attribution; binding an act to a person. This may include intermediate attributions to other agents, for example (software, device, etc.) and then attribution from that agent to a person. Narrowing the problem further, we&#039;re only concerned about attribution in large, dynamic networks, and as such focusing on the internet. For sake of simplicity, in this paper, whenever we make mention of &amp;quot;attribution,&amp;quot; we will do so with reference to  &amp;quot;binding an act to a person on the internet&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
==Problem Statement==&lt;br /&gt;
The anonymity of the Internet makes it virtually impossible most of the time to properly identify who is who online. This is a double-ended sword as it not only provides a high level of privacy, but also makes it hard to identify people with malicious intent and cyber attackers.&lt;br /&gt;
&lt;br /&gt;
==Problem Motivation==&lt;br /&gt;
In today&#039;s world there is a growing need for strong attribution over the Internet mainly due to increased numbers of cyber attacks since its introduction in the 90’s. Many attackers have succeeded in causing both physical and financial damage to many companies over the Internet and going &amp;quot;Scott free&amp;quot;; due to the anonymity of the Internet, the attackers cannot be identified.&lt;br /&gt;
&lt;br /&gt;
==Scope==&lt;br /&gt;
In this paper we are addressing the issue of attribution by providing a list of requirements that need to be met in order to have a fully stable and efficient attribution system over the Internet.&lt;br /&gt;
&lt;br /&gt;
Although this is not a technical paper, a basic knowledge of computer science or computer systems will be required to fully understand some of the concepts and terminology discussed within this paper.&lt;br /&gt;
&lt;br /&gt;
=Background=&lt;br /&gt;
&lt;br /&gt;
The problem of attribution is not one that just came up; it has been around for decades, but mostly to address identification issues as it pertained to websites or Internet Service Providers. A lot of different approaches towards attribution have been taken, but mainly just to the extent of what that particular system stems to achieve. &lt;br /&gt;
This section gives an introduction to three of todays current attribution systems and discusses their pros and cons as they pertain to the type of global attribution we discuss in this paper.&lt;br /&gt;
&lt;br /&gt;
==Cookies==&lt;br /&gt;
Websites will sometimes need to remember information about a visit or a visitor in order to improve viewer experience. Cookies are text files that are created by a web server, and stored by a web browser on the user&#039;s computer. Cookies are used for many reasons; mainly authentication, remembering shopping cart information, and storing site preference. In actuality, they can be used to store any type of information that can be stored in a text file. When a page is requested the users web browser sends the request with the webserver’s cookie in the header part of the request packet. All this is an automated process between the web browser and web server.  &lt;br /&gt;
&lt;br /&gt;
If at all the webserver receives a request without a cookie attached to it, it takes it as the first access that that browser is making to the server and sends one as part of the response, which will be saved by the browser and resent on the next request. Cookies are usually encrypted in order for data security and information privacy, however they are still subject to the users control as they can be decrypted, modified, and even deleted completely. It is also possible for a user to change their browser setting to not accept cookies at all. &lt;br /&gt;
&lt;br /&gt;
Cookies can either have an expiration date or not; this is the date that the browser deletes the cookie. Cookies without an expiration date are deleted when the browser is closed. Some browsers allow you to automatically set how long you want cookies to be stored.&lt;br /&gt;
&lt;br /&gt;
===Cookies as an Attribution System===&lt;br /&gt;
Looking at cookies as the type of attribution system we are looking for over the Internet, we will be able to achieve high precision on identifying computers that access a web server. However, The biggest draw back cookies have is that they can be deleted and manipulated. As such, cookies are not an effective attribution system.&lt;br /&gt;
&lt;br /&gt;
==IP Addresses==&lt;br /&gt;
IP or Internet Protocol Addresses are 32 bit numerical identifiers for devices (computer, printer, scanner, etc) on a network. The users Internet Service Provider (ISP) provide this number. The Internet Assigned Numbers Authority (IANA) is responsible for managing IP Address space allocation globally. It does this with the help of five Regional Internet Registries (RIRs), responsible for allocating IP address blocks to their assigned regions ISPs, who in turn allocates them to their users.&lt;br /&gt;
&lt;br /&gt;
Any device that goes online and communicates using IP needs an IP address. Over the years there has been a growing number of users going online and a number of devices owned by the users to go online. One of the more common examples of this is the increase of Internet ready mobile phones. Our current addressing system used by our current Internet Protocol Version 4 (IPv4) contains only 32bits which means it is only able to uniquely address 4,294,967,296 addresses which is less than the number of people on this planet today. The very last batch of IP addresses were assigned out to the five RIRs early February 2011&amp;lt;ref&amp;gt;http://arstechnica.com/tech-policy/news/2011/02/river-of-ipv4-addresses-officially-runs-dry.ars&amp;lt;/ref&amp;gt;. This address depletion was foreseen since the 90s, and sprung the development of a new Internet Protocol version, IPv6, which uses a 128bit addressing system. &lt;br /&gt;
&lt;br /&gt;
IP addresses can either be static or dynamic. A static IP address is an address permanently assigned to a user due to specific configuration. A dynamic IP address is one in which a new address is assigned at every boot up. A Dynamic Host Configuration Protocol (DHCP) Server is usually responsible for assigning dynamic IP addresses to users. There are two main advantages for dynamic addressing; it eliminates the administrative cost involved with assigning static IP addresses, and it helps solve the issue of limited addressing space by allowing many devices “share” a single address if they go online at different times. Given the limited addressing space the ISPs have to work with, and to save administration costs, most ISPs assign dynamic IP addresses as standard a offer static IP address at a higher fee. &lt;br /&gt;
&lt;br /&gt;
===IP Addresses as an Attribution System===&lt;br /&gt;
In the ideal world, every action on the internet could be bound to a machine and thus to a person. This is done by examining the source IP printed on each moving packet, locating the geographical location of this IP, consulting the ISP covering the location and identifying the person. If an act requires strict attribution (like checking and sending emails), authentication is used. &lt;br /&gt;
There are many existing methods that attempt to identify the source of an act, like IP traceback. There are problems with trying to identify the source by its IP address. For instance, it can be spoofed, which leads to misleading or inconclusive geographical location. Dynamic IP addresses are not permanently bound to a single account, which makes linking IP to the appropriate person not concrete. IP traceback can be improved but that would require global cooperation of intermediate system, which currently does not exist.&lt;br /&gt;
&lt;br /&gt;
==Authentication Systems==&lt;br /&gt;
In order for a website to make sure of the identity of who ever is visiting some pages, it provides an authentication system. This is usually a login name and password either assigned by the web server or chosen by the user. The biggest advantage to authentication systems is that it can provide attribution across different computers. The task of storing and securing login information is left to the web server, which is subject to attackers hacking into the server to stealing login information. &lt;br /&gt;
&lt;br /&gt;
Login systems are usually attached to user accounts, and sometime require private information in order to be setup. If the web server’s security is not good enough, security breeches may in turn lead to identity theft. &lt;br /&gt;
&lt;br /&gt;
The process behind authentication systems is simple; using a typical web banking authentication system for instance, the process may go as follows. A user requests for a web account or one is automatically assigned to the user. The user sets up a password for accessing the account. When the user now goes to the website he is requested to “identify himself”, the user enters in his personal login information, the web server verifies this information with what it has stored in its database and either grants or denies access to the users personal page. &lt;br /&gt;
&lt;br /&gt;
Authentication systems are only ever used when it involves the users wanting some privacy on the webserver, or when the user wishes to store some form of private information on the web server. So in essence, it always has something to do with privacy.&lt;br /&gt;
&lt;br /&gt;
===Authentication Systems as an Attribution System===&lt;br /&gt;
Authentication systems are very precise in the identification of people over the Internet across multiple devices, and as such used by many companies. However it will have a serious privacy drawback if it were to be used as a global identification system, or attribution system. It will mean that virtually every web server will need to hold enough information about you to be able to identify you as an attacker. This would mean that to even a user randomly searching for a cooking recipe online, would need to login somehow to access the web server. People generally like the anonymity of surfing the web and a system like this will completely destroy that.&lt;br /&gt;
&lt;br /&gt;
=The Attribution Dilemma=&lt;br /&gt;
&lt;br /&gt;
There are many facets to designing an attribution system, besides the technological aspects. In addition to the technologies and/or infrastructure available, one must also consider the issue of privacy, because when trying to achieve strong attribution, personal privacy is compromised. Any system must try to find a balance between strong attribution and privacy. The balance is influenced by the application of the system. For instance, in the case of financial institutions, the clients, as well as the institute will place more emphasis on attribution. Such institutes would like to establish unassailable authorization and authentication systems, so as to guarantee (to some degree) that agents involved in the transactions are who they claim they are. On the opposite side of the spectrum, are situations where privacy takes precedence. Political dissidents and whistle-blowers are relatively protected because there is no strong attribution system in place, which allows them to distribute information (regardless of actual usefulness or goodness of it) and keep their identity secret. It is clear that single universal set of rules cannot satisfy these two cases. It is also clear that, in a pretty abstract fashion, privacy is inversely proportional to attribution. While designing an attribution system one needs not only to decide on this ration for some particular case, but rather make this ratio dynamically changed depending on the case. &lt;br /&gt;
&lt;br /&gt;
Assuming such a ratio is found, another issue arises. Can the use of private information to track or punish a person be completely justified? Especially if it oversteps their privacy. One might think that this question is a little bit out of the scope of this paper. However, such ethical arguments must be addressed prior to the design of an attribution system, because a system that compromises individual privacy and protection, should not be utilized. &lt;br /&gt;
&lt;br /&gt;
Before designing an attribution system for the Internet, many questions need to be answered, some of which are: Who should have the authority to attribute? What information can they attributed and why do they need it? How is attribution achieved or measured? How much can intermediate systems&#039; cooperation contribute to achieving attribution? How do you deal with misleading data sources hiding behind botnets and concealing identities via stepping stones? &lt;br /&gt;
&lt;br /&gt;
==Why do we need Attribution==&lt;br /&gt;
&lt;br /&gt;
An attribution system will have many useful applications. The identification property can be useful at establishing the client’s identity for Online Banking, identifying the involving party in eCommerce transaction, and can be taken advantage by marketers for more targeting Web advertisements.&lt;br /&gt;
&lt;br /&gt;
Financial matters are not the only incentive for a strong attribution system. Establishing strong identification mechanism can provide better protection against cyber attacks. When the source of an attack can be recognized, then the proper authorities can prosecute the perpetrators of such crimes as: DoS, DDos, computer fraud, forgery and identity theft, sniffing private traffic, distributing illegal traffic and malware, spam,  illegal and undesirable intrusions.&lt;br /&gt;
&lt;br /&gt;
==Why is it difficult to achieve Attribution?==&lt;br /&gt;
&lt;br /&gt;
This problem arises largely due to how the Internet is designed. It does not have strong identification mechanisms, which in turn provides users with a certain level of anonymity. Moreover, most current solutions are based on the same structure and work within the same scope, thus, can only reduce the number of potentially destructive acts or just deal with the consequences. Of course, no system can completely prevent against destructive attempts, but a good attribution system should make such attempts highly undesirable and &amp;quot;costly&amp;quot; for an attacker.&lt;br /&gt;
 &lt;br /&gt;
The issue of lack of attribution on the web mostly arises whenever security is compromised. When you&#039;re bombarded with spam, or when a system is under a DoS attack, attribution becomes a more appealing notion. Getting a balance between security and privacy is tricky, because once attacks are tracked so will all other traffic. Also, depending on the type of the sender and receiver, different attribution policy will be required.&lt;br /&gt;
&lt;br /&gt;
In networks, users are not aware of all packets that are received by their machines, which mean users would not be aware of malware distribution, the creation of botnets and other actions taken by their machine without their approval and triggered by other network users. Firewalls and packet filters can be used to address such problems, but they are not very efficient. Also, it is not practical to authenticate every single action on the internet. &lt;br /&gt;
&lt;br /&gt;
There are attacks that designed specifically to prevent correct attribution. It is used for identity theft and distribution of malware. Stepping stone attack is a common way of attributing attacks to anonymity by using multiple public random agents(as stepping stones) to reach the victim in order to conceal the attacking source. &amp;lt;ref name=&amp;quot;ref1&amp;quot;&amp;gt;S. Staniford-Chen and L. T. Heberlein. Holding intruders accountable on the internet. In SP ’95: Proceedings of the 1995 IEEE Symposium on Security and Privacy, page 39, Washington, DC, USA, 1995. IEEE Computer Society.&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Requirements for an Internet Attribution System=&lt;br /&gt;
&lt;br /&gt;
It is hard to describe some hypothetical attribution system in detail because there are many issues and complicated dependencies. There are a lot of questions to answer, or at least to try to answer before one can even think of implementing such a system. In this section we have defined high-level requirements for a good attribution system. While definition of good attribution system is not so clear, we take into account everything we have discussed in the previous sections. The following requirements attempts to define the system in a way that avoids current problems, achieves high degree of attribution, and remains realistic. &lt;br /&gt;
&lt;br /&gt;
We have separated those requirements into three sections: general requirements, deployment requirements, and practice requirements. The general requirements define the idea and overall goal of the system in high level, abstract terms.  The deployment requirements set ground rules for deployability that makes sense in such a huge network as internet and human society. Finally, the practice requirements define the way system works, behaves and interacts with other bodies.&lt;br /&gt;
&lt;br /&gt;
==General==&lt;br /&gt;
&lt;br /&gt;
First and most obvious requirement for any system is usually put for sake of consistency: main requirement for internet attribution system is simple: it needs to attribute, or, more formally, any potentially destructive act should be traceable to an agent (person and/or organization, group, etc). It is important to consider different natures of agents, because the goal of attribution system is not necessarily to narrow down the search to one particular person, but rather to find the body responsible for an act(s) regardless of their actual structure. It might be one person after all. In other words, even though actions are done mostly by a single person, they are not necessarily the ones who&#039;s responsible for a decision to do so. A good real world analogy is an assassin and some body (person or a group) paying him. Good attribution system should not lead to assassin alone, but rather should be designed the way that responsible bodies are the ones to be discovered. Yet, we accept the notion that by the end of the day there is some person or several persons, human brings, responsible for an action. It is essential, because, as practice shows, for example, determining the source of DoS-attack is relatively simple, but most of the time this source is not the one who is responsible, but rather a victim itself.&lt;br /&gt;
&lt;br /&gt;
It is easy to imagine a system in which less crime and misuse is the only acceptable way to do things, and many writers and movie directors exploit this idea in futuristic, science fiction and anti-utopian plots. Unfortunately, applying any of this sort of ideas to real world today is not possible, because a lot of laws and moral principles are already in place, some of which are not perfect, but widely accepted and most have reasons to exist. Attribution system that we&#039;re looking for should take legal and moral issues into account, naturally, should not violate and/or contradict any of them. This important requirement comes somewhat together with incremental deployability that we&#039;re going to discuss later.&lt;br /&gt;
&lt;br /&gt;
In general, an attribution system should be universal and global, and details of these terms will be discussed later.&lt;br /&gt;
&lt;br /&gt;
==Deployment==&lt;br /&gt;
It is relatively easy to discuss the design of the system, than it is to implement the design. The deployment of they system does not need to be instant and massive. Even though a global attribution system will have a lot of pressure on it, internet should not depend on it entirely, the underlying network should still remain functional, even if the attribution system goes down. In other words, attribution system should be loosely coupled to the system it works in. &lt;br /&gt;
&lt;br /&gt;
As discussed before, (and this could be said about any global system on the internet) such a system should be incrementally deployable, so that smooth, step-by-step, subnetwork-by-subnetwork integration is possible. This is important not only because of virtual impossibility to restart or reconfigure the whole internet at once. This incremental way of embedding an attribution system should be more secure (bugs in software and mistakes in design can be fixed while on a small scale), so that by the end of cycle, when the whole internet is wired, the attribution system is field-tested and analyzed several times by different bodies. &lt;br /&gt;
&lt;br /&gt;
Very important, but controversial subject, is adoption of the system within some set of rules or laws (state laws, government regulations, corporate rules and principles, etc.). System should allow easy adoption for different cases, at the same time it should remain universal and global. It should act like a public tool any group can use, but nobody should be able to misuse it or use in non-legal way. The big decision designers will have to make is the one regarding this line between dynamic adoptability and universality. Luckily, this sort of deepness goes beyond the scope of our paper.&lt;br /&gt;
&lt;br /&gt;
Companies and organizations sometimes loose millions of dolars due to attacks and other cyber-crimes done to them, and some issues can be dealt with by spending more resources (memory, bandwidth on servers, etc), or, in other words, spending more money. The overall cost of setting up and maintaining the attribution system for a particular body (person, organization, network) should be considerably less than average losses under current lack of attribution (e.g. DoS, identity theft, etc).&lt;br /&gt;
&lt;br /&gt;
==Practice==&lt;br /&gt;
&lt;br /&gt;
Attribution mapping should not be a bijection, in other words action should map to person, but not vice versa. That it, nobody should be able to use the system to answer the question &amp;quot;what person X did/does?&amp;quot;. Not only the system should not know the answer, it should not be possible to know the answer; the question &amp;quot;who did act X&amp;quot; is the one should be answered. This can be thought of as part of requirement about not violating current laws and moral principles, but is put as a separate requirement, since it is very important to draw a line between attribution system and surveillance. The goal is not only to make attribution system attribute, but also to make it impossible to use it in other way – for surveillance, spying, etc.&lt;br /&gt;
&lt;br /&gt;
Since this global system operates on the internet, it might not be a great idea to put names of people into traceability database. It makes much more sense to assign unique IDs to everyone who is using the network. And in case a crime is committed, and the agent of some act need to be determined, then the recorded ID will be searched for in the police or government database. It should be some trusted entity (government, corporation, police, some public good-like system, etc) that stores the mapping between IDs and real names. This mapping should only be revealed when needed and when there is enough evidence or motivation to do so. Traceability information (namely, unique iDs) should be distributed and it is crucial to make it impossible to collect all the information in one place.&lt;br /&gt;
&lt;br /&gt;
Of course, it is not always the case that some trusted (by everyone) body exists, but generally we have governments and/or agencies we trust. It is important to divide the information between public and trusted body in a way allowing them to cooperate in time of need and not allowing to misuse the system from any side.&lt;br /&gt;
&lt;br /&gt;
=Proposed Framework=&lt;br /&gt;
In this section, we will propose a potential framework and argue that it is able to fulfill the requirements listed in the former section. The proposed framework works under the core principle &amp;quot;An act cannot use network resources nor can it be routed if it is anonymously bound&amp;quot;. Firstly, we start by defining some terminologies that will be used within the scope of this section:&lt;br /&gt;
* &amp;lt;i&amp;gt;Agent&amp;lt;/i&amp;gt; (Ag): the human-device pairing that sits on an end system and keeps transmitting/receiving packets.&lt;br /&gt;
* &amp;lt;i&amp;gt;Machines/Devices&amp;lt;/i&amp;gt; (Md): any piece of hardware that has access capability. It can either be a PDA, a laptop, a notebook, a PC, an Network Interface Card, or even a mere home made chip that can externally communicate wired or wireless to send or receive digital packets.&lt;br /&gt;
* &amp;lt;i&amp;gt;Identification Stamp&amp;lt;/i&amp;gt; (IS): a series of bits that binds a human unique identification (iris intricate structure or fingerprint) with a unique feature of an Md. So, for an Md like a Network Interface Card, the MAC address would be that feature. This biding is a particular representation for the official owner of the device, and who is deemed the primary responsible for any outgoing packet launched by his owned device. In other words, it is a unique identifier for an Ag.&lt;br /&gt;
* &amp;lt;i&amp;gt;Intermediate System Services&amp;lt;/i&amp;gt; (ISS): Services provided by intermediate systems (routers). For e.g., routing (main service), error checking, etc.&lt;br /&gt;
* &amp;lt;i&amp;gt;Globally Distributed Database&amp;lt;/i&amp;gt; (GDDB): a global DNS-like world-wide distributed storage system with an encrypted LUT that has relatively fast retrieval and update capabilities. It will be used to store ISs.&lt;br /&gt;
* &amp;lt;i&amp;gt;Licensing&amp;lt;/i&amp;gt;: a process of giving the permission to intermediate systems to provide ISS to all packets that are launched from the agent that is requesting the license. This process is simply adding new ISs to the GDDB.&lt;br /&gt;
&lt;br /&gt;
In principle, every leaping packet has a human owner that is either directly or indirectly responsible for it. Directly responsible when he is running an application that sends requests or initiates communication sessions to another end system. E.g., using the client side of applications supporting the protocols: HTTP, FTP, SIP, RTP, VoIP, etc. Indirect responsibility is when a user is running a system in the background that performs external (over the internet) system calls or is automated for periodic communication or automatic response to incoming requests. E.g., system clock synchronization (NTP), or the server side of the protocols: HTTP, FTP, etc. In addition, indirect responsibility also includes the responsibility of all packets launched by lower layer protocols that are being manipulated by higher layer ones. E.g., when a user sends an HTTP request, TCP sends connection initiation packets for handshaking schemes, ICMP packets that aims to seek and identify that status of a specific host, etc.&lt;br /&gt;
&lt;br /&gt;
The scope of this framework only addresses attribution over the internet and not any other &amp;quot;locally&amp;quot; defined networks underlying the IEEE standard definitions of the topologies PAN, LAN, MAN, or a WAN that do not use the global intermediate systems as their underlying infrastructure for packet delivery.&lt;br /&gt;
&lt;br /&gt;
The following sections show the assumptions for this framework to operate, the methodology of its operation, a list of pros, cons and vulnerabilities of the system and wrap up by a discussion on the proposed framework.&lt;br /&gt;
==Assumptions==&lt;br /&gt;
For starters: Jurisdiction. This frame work assumes the presence of a globally trustful entity(s) (e.g., government). This entity should act as the Internet&#039;s law enforcement, which will be deemed as the primary inspector and also the jurisdiction for regulating all kinds of cyber crimes and misbehavior. This entity may either be centralized or distributed. A centralized entity would be easier to deploy, but it will suffer from a single point of failure. A distributed entity would obviously perform better as it will be able to scale with the growth of the system users as well as conform to diverse regional laws, regulations, customs and traditions.&lt;br /&gt;
&lt;br /&gt;
Secondly: &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt;. We assume that a &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt; is deployed, which acts as a &amp;quot;database&amp;quot; for storing &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt;s. Symmetric key encryption should be used to protect that system as it will only be accessed through two types of users. Routers, which should be able to access this database ONLY for read operations. And the trustful entity (defined in the previous assumption) which should be able to access for read/write operations. Both users must be strictly authenticated, for being able to decrypt the contents or to append. In addition, this distributed system must guarantee almost zero latency in the read operations as it will be heavily relied on for every single hop made by a packet at the Internet intermediate system. A standardization protocol would be required to define the syntax and semantics as well as the nature of the way that the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt; subsystems would communicate with.&lt;br /&gt;
&lt;br /&gt;
Thirdly: Ownership. We assume that every &amp;lt;i&amp;gt;Md&amp;lt;/i&amp;gt; should be officially owned by a human. This owner is deemed as the official responsible for that &amp;lt;i&amp;gt;Md&amp;lt;/i&amp;gt;, and who would also be accused if his &amp;lt;i&amp;gt;Md&amp;lt;/i&amp;gt; found to misbehave or to launch malicious packets. The owning relationship between persons and machines is one-to-many. That is to say, a person can officially own one or more machines but a machine can only be owned by one person.&lt;br /&gt;
&lt;br /&gt;
Finally: IP packets. Our proposed frame work assumes that within the frame format of the IP packets, a header is added by the network layer that includes the &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; of the &amp;lt;i&amp;gt;Ag&amp;lt;/i&amp;gt; owning the packet.&lt;br /&gt;
&lt;br /&gt;
==Methodology==&lt;br /&gt;
Basically, this framework works by stalling the propagation of a packet that is either unattributed or forged with a fake &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt;. A fake &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; is defined as:&lt;br /&gt;
* Either having a false unique chip identifier that refers to an imaginary &amp;lt;i&amp;gt;Md&amp;lt;/i&amp;gt;.&lt;br /&gt;
* Or having a false unique human identifier that refers to an imaginary human.&lt;br /&gt;
* Or having a misleading binding of a human to a machine. i.e., claiming that some machine &amp;quot;X&amp;quot; belongs to some human &amp;quot;Y&amp;quot;, but in reality, &amp;quot;Y&amp;quot; is not the owner of &amp;quot;X&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Noticeably, the routers, as primary constituents to the intermediate systems, should refrain from routing any data packets that are not fully attributed. As they are the main driving power behind delivering all malicious or benign packets, they should have great responsibility in achieving highly reliable attribution mechanism.&lt;br /&gt;
&lt;br /&gt;
A description of the system, based on the chronological order, is as follows. First, any newly bought machine or even a home made device, must be licensed from the trustful entity. The trustful entity generates the &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt;, accesses the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt; for adding it and provides the user with his &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; for being able to add it to the header of his launched packets. The user should preserve his unique &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; in a secret place and should deal with it exactly the same way he does with his credit card numbers and social insurance numbers. If a device is not licensed (i.e., its &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; was not inserted to the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt;), it doesn&#039;t not benefit from &amp;lt;i&amp;gt;ISS&amp;lt;/i&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
From the intermediate system&#039;s perspective, when a router receives a packet, it verifies its &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt;. This is done by consulting the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt; which is in turn done by sending a copy of the &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; printed on the packet to the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt;. If a packet is found to be not having an &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt;, the packet is prevented from benefiting from &amp;lt;i&amp;gt;ISS&amp;lt;/i&amp;gt; and is simply dropped. If the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt; replies with an invalid &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt;, again, the packet is dropped. If the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt; replies with a success, this will mean that the packet&#039;s printed &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; is verified. Thus, the packet benefits from the &amp;lt;i&amp;gt;ISS&amp;lt;/i&amp;gt; and gets routed throughout the way.&lt;br /&gt;
&lt;br /&gt;
==Pros==&lt;br /&gt;
&lt;br /&gt;
* It succeeds to perform an acceptable level of attribution relative to the one achieved in the real world.&lt;br /&gt;
* It avoids anonymous attacks since a non-attributed packet will fail to reach its destination.&lt;br /&gt;
* Attribution information is not publicly available to everyone, only available to trustful entities.&lt;br /&gt;
** Hence, it retains personal privacy.&lt;br /&gt;
* The system enjoys full automation. According to the system&#039;s theory of operation, &amp;lt;i&amp;gt;ISS&amp;lt;/i&amp;gt; are either provided or not based on the validation of the &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; printed on each packet.&lt;br /&gt;
* The system avoids all forms of cyber crimes that are executed by unknown &amp;lt;i&amp;gt;Ag&amp;lt;/i&amp;gt;s.&lt;br /&gt;
&lt;br /&gt;
==Cons==&lt;br /&gt;
&lt;br /&gt;
* The verification process of the &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; on each packet creates undesirable delays potential bottlenecks at the routers.&lt;br /&gt;
* The framework is not considered easy to deploy since the assumptions are deemed relatively complex.&lt;br /&gt;
* Since attribution is not public to everyone, custom content generation cannot be achievable.&lt;br /&gt;
* Large number of &amp;lt;i&amp;gt;Md&amp;lt;/i&amp;gt;s in University Laboratories, Incorporations, Hospitals, Schools, etc should all be licensed before being able to be used. Normally, in these cases, &amp;lt;i&amp;gt;Md&amp;lt;/i&amp;gt;s would be bound to one single person.&lt;br /&gt;
* For security purposes, licenses should be periodically renewable, however, this is not considered an easy topic.&lt;br /&gt;
&lt;br /&gt;
==Vulnerabilities==&lt;br /&gt;
&lt;br /&gt;
* Botnets&lt;br /&gt;
** The system requires full user awareness with what lies under the hood. Since they are the sole responsible persons for their &amp;lt;i&amp;gt;Md&amp;lt;/i&amp;gt;s, they should be aware with all packets sneaking into their machines for avoiding the distribution of malware, and the later formation of botnets.&lt;br /&gt;
** Users are responsible for strictly securing their &amp;lt;i&amp;gt;Md&amp;lt;/i&amp;gt;s exactly the same they do when they lock their care after leaving it in a car park.&lt;br /&gt;
* A successful attack on the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt; would cause whole system failure. If this attack succeeds to alter, the attacker can append an imaginary &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt;. If the attack succeeds to read, the attacker can choose to declare his malicious packets under the responsibility of some other &amp;lt;i&amp;gt;Ag&amp;lt;/i&amp;gt;, forgery.&lt;br /&gt;
&lt;br /&gt;
==Discussion==&lt;br /&gt;
The proposed framework&#039;s main focus is to ensure that any leaping packet is moving because it is known who does it belong to. Recalling that in the real world, if a person doesn&#039;t have an identity (like a social insurance number), he can&#039;t benefit from services. For instance, he can&#039;t open a bank account, can&#039;t buy a house, can&#039;t trade, nor can he even get a job. Obviously, the proposed system mimics the behavior of the real world. Of course, the real world is not ideal in criminal tracing and law enforcement, however, it&#039;s level of attribution would definitely beat that of the Internet in the meantime. We can say that current internet attribution in comparison to the real world attribution is considered a failure. An acceptable form of internet attribution would be considered basically acceptable if it, at least, provides as much attribution as the real world attribution does. We could say that the proposed framework would guarantee such level.&lt;br /&gt;
&lt;br /&gt;
The proposed framework succeeds to fulfill all of the general requirements. Clearly, any potentially destructive act is definitely traceable to an &amp;lt;i&amp;gt;Ag&amp;lt;/i&amp;gt; or else, it will not take place. The framework also omits violation to any privacy related laws since the attribution information are not publicly available. More specifically, they are only available to the agreed on trusted entity. The framework also fulfills all of the deployment requirements. As can be seen, the more areas the system is deployed in, the better for the public good, hence, it is incrementally deployable. The framework is not very loosely coupled but can still allow the Internet to operate if it is suppressed. It is also adaptable to different rules and regulations since it leaves the punishment decision to the jurisdiction of the country with the source of the crime committer. Whatever the cost is to deploy that system, it should still be less than the cost of the losses due to cyber crimes. That is because the cost of losses due to unknown &amp;quot;future&amp;quot; attacks cannot be easily determined. As for the practice requirements, the proposed framework theory of operation doesn&#039;t permit mapping of a certain &amp;lt;i&amp;gt;Ag&amp;lt;/i&amp;gt; to a set of actions, it only permits the mapping of a set of actions to an &amp;lt;i&amp;gt;Ag&amp;lt;/i&amp;gt;, which satisfies non-bijection. Also, because of the distributed nature of the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt;, all traceability information is impossible to collect at one place. The trusted entities are only the ones that generate the &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; from the personal data, hence, they are the only ones having this piece of information. To conclude, the framework successfully satisfies all the requirements.&lt;br /&gt;
&lt;br /&gt;
=Conclusion=&lt;br /&gt;
The human nature refuses any change at the first sight. In 1769, Jonathan Holguinisburg finalized the invention of the first Cugnot Steam Trolly &amp;lt;ref&amp;gt;ckermann, Erik (2001). World History of the Automobile. SAE Press, p.14. [Online]. Available: http://books.google.com/books?id=yLZeQwqNmdgC&amp;amp;printsec=frontcover&amp;amp;source=gbs_ge_summary_r&amp;amp;cad=0#v=onepage&amp;amp;q&amp;amp;f=false &amp;lt;/ref&amp;gt; which became nowadays automobiles. In 1903, car licensing began in North America, that is 134 years after Holguinishburg invention. Licensing started when people began realizing that a car could act as a lethal weapon, which therefore must be approved by the government to be driven by some person, and must also be formally linked to an owner who is considered the primary responsible for it.&lt;br /&gt;
&lt;br /&gt;
Meanwhile, the Internet is passing through the same phase. People would blindly deny, refuse and object such &amp;quot;wicked&amp;quot; attribution systems, but later on, Internet licensing will be part of everyone&#039;s life, just like their driving license. Needless to say, the Internet is becoming more crucial to many applications and in the same time more vulnerable to different types of attacks. Obviously, it is being injected in the &amp;quot;blood&amp;quot; of a vast, yet exponentially growing, number of applications which are time and data sensitive, and which don&#039;t leave room for cyber crimes, unauthorized intrusion, traffic tampering, bandwidth hogging, etc. In addition, much of the industry and technology based applications are now build over the Internet as their underlying infrastructure, and cannot tolerate being threatened all the time by a completely anonymous person behind the seen seeking the proper moment to strike. Meanwhile, Internet Attribution is no longer an add-on, but an obligation.&lt;br /&gt;
&lt;br /&gt;
In this paper, we have presented some formal definitions of attribution, why is it crucial to attribute, level of attribution would be considered acceptable and where the roots of difficulty lies behind achieving such level. Moreover, we have proposed a background about current attribution systems and a brief discussion about the reason of their survival and their point of failure as well. We also populated a list of requirements that must be fulfilled by any system aiming to acquire Internet attribution. Finally, we proposed a potential framework for a system that has that should  fulfills the mentioned requirements and that should have the ability to achieve an acceptable level of Internet attribution. Pros, and Vulnerabilities of the proposed framework are also discussed.&lt;br /&gt;
&lt;br /&gt;
=References=&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;/div&gt;</summary>
		<author><name>Omi</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=Internet_Attribution:_Between_Privacy_and_Cruciality&amp;diff=9465</id>
		<title>Internet Attribution: Between Privacy and Cruciality</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=Internet_Attribution:_Between_Privacy_and_Cruciality&amp;diff=9465"/>
		<updated>2011-04-12T01:23:35Z</updated>

		<summary type="html">&lt;p&gt;Omi: /* IP Addresses */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;b&amp;gt;Abstract&amp;lt;/b&amp;gt;&amp;lt;br/&amp;gt;&lt;br /&gt;
Present and past situations show a need for improved attribution systems, and arguably, scientific basis for properly functioning attribution systems are not yet defined. Lots of research have been focusing on attributing documents to authors for the sake of securing authorship rights and rapid identification of plagiarism. Many of those were revolving around the notion of using machine learning for linking articles to humans. Others proposed text classification and feature selection as a means of detecting the author of a document. Unfortunately, not that much research is addressing the problem of lack of robust attribution system over the internet. Authentication, as a means of attribution, has proved its efficiency but, needless to say, it is not applicable to authenticate every single packet hopping over the intermediate systems. This paper presents limits and advances in the attribution of actions to agents over the internet. It reviews current attribution technologies as well as the limits of those technologies. It also identifies the requirements of a proper attribution system and proposes a distributed (yet cooperative) approach for performing attribution over the internet.&lt;br /&gt;
&lt;br /&gt;
=Introduction=&lt;br /&gt;
Currently the Internet&#039;s infrastructure provides users partial anonymity. Unfortunately, that anonymity weakens the security for its users, because it entices advanced users to exploit that feature. The lack of online identification married with bad intentions entices criminals to commit a number of &amp;lt;i&amp;gt;Cyber Crimes&amp;lt;/i&amp;gt; without being caught, crimes which include: fraud, theft, forgery, impersonation, the distribution of Malware (and hence, botnets), traffic tampering, DoS, bandwidth hogging, etc. Consequently, internet attribution is a highly sensitive field that constitutes a cornerstone position within internet security. Needless to say, current solutions don&#039;t guarantee sufficient attribution nor are considered always applicable most of the time, hence, current system suffers the lack of a relatively robust attribution mechanism. In the light of this context, we need better methodologies for reaching an acceptable success level for attributing actions over the internet.&lt;br /&gt;
&lt;br /&gt;
In principle, attribution can be defined as the mechanism of binding a system-defined act to an agent. An agent is typically an entity that has the ability to commit what constitutes as an act. Within our focus, an agent could either be a person or a machine. It can also be defined as &amp;quot;determining the identity or location of an attacker or an attacker’s intermediary&amp;quot;&amp;lt;ref&amp;gt; [Institute for Defense Analyses, 2003]&amp;lt;/ref&amp;gt;. Problems like IP address spoofing, lack of interoperability in intermediate systems, dynamic nature of IP addresses, unawareness of system users with lots of &amp;lt;i&amp;gt;unknown&amp;lt;/i&amp;gt; packets sneaking to their machines and poor efficiency of firewalls and IDSs make this determination operation considerably difficult. In addition, some types of attacks are carried out to conceal the real agent behind an act. For instance, malware distribution (and hence the creation of botnets), and stepping stones aim to inflict vagueness around the correct &amp;lt;i&amp;gt;human&amp;lt;/i&amp;gt; source behind the scene.&lt;br /&gt;
&lt;br /&gt;
In this paper, we focus on defining what it takes to achieve an acceptably working attribution mechanism over the internet. To do that, we review past research works in attribution and discuss their common limitations as well as flaws and what can be done in common to enhance such schemes. We also argue that the lack of a globally deployed registration system that registers system users and grants them LICENSED access to the system enfeebles proper attribution and motivates illegitimate intrusions and irregular behavior. We show that employing the mentioned system would reduce the incentive of irregular behavior as well as remove the blaze of tempting anonymity, putting attackers under the risk of being easily caught. We also discuss how privacy, as a counter force to attribution, plays a big role in the internet and within its users and propose a framework that achieves relatively robust attribution mechanism and retains the privacy of users.&lt;br /&gt;
&lt;br /&gt;
Much of the research done in literature focuses on attribution that is done for keeping track of authorship, i.e., attributing text to authors. In this paper, we don&#039;t question the cruciality of attribution in this field, but rather we address a higher level of attribution of all possible actions to agents, which is sadly deemed slightly obsolete from the current research perspective.&lt;br /&gt;
&lt;br /&gt;
This paper starts with a quick background discussion on the current forms of attribution. Consequently, section 3 presents the dilemma of attribution, resolving the tension between attribution and privacy. Section 4 presents a fundamental set of requirements for achieving an acceptable level of attribution over the internet. In section 5, we propose an abstract framework for achieving attribution that mimics attribution in the real world. And finally, a conclusion is presented in section 6.&lt;br /&gt;
&lt;br /&gt;
==What is Attribution==&lt;br /&gt;
&#039;&#039;The act of attributing, especially the act of establishing a particular person as the creator of a work of art.&#039;&#039;&amp;lt;ref&amp;gt; The American Heritage® Dictionary of the English Language, Fourth Edition copyright ©2000 by Houghton Mifflin Company. Updated in 2009. Published by Houghton Mifflin Company.&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
We are concerned with one particular type of attribution; binding an act to a person. This may include intermediate attributions to other agents, for example (software, device, etc.) and then attribution from that agent to a person. Narrowing the problem further, we&#039;re only concerned about attribution in large, dynamic networks, and as such focusing on the internet. For sake of simplicity, in this paper, whenever we make mention of &amp;quot;attribution,&amp;quot; we will do so with reference to  &amp;quot;binding an act to a person on the internet&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
==Problem Statement==&lt;br /&gt;
The anonymity of the Internet makes it virtually impossible most of the time to properly identify who is who online. This is a double-ended sword as it not only provides a high level of privacy, but also makes it hard to identify people with malicious intent and cyber attackers.&lt;br /&gt;
&lt;br /&gt;
==Problem Motivation==&lt;br /&gt;
In today&#039;s world there is a growing need for strong attribution over the Internet mainly due to increased numbers of cyber attacks since its introduction in the 90’s. Many attackers have succeeded in causing both physical and financial damage to many companies over the Internet and going &amp;quot;Scott free&amp;quot;; due to the anonymity of the Internet, the attackers cannot be identified.&lt;br /&gt;
&lt;br /&gt;
==Scope==&lt;br /&gt;
In this paper we are addressing the issue of attribution by providing a list of requirements that need to be met in order to have a fully stable and efficient attribution system over the Internet.&lt;br /&gt;
&lt;br /&gt;
Although this is not a technical paper, a basic knowledge of computer science or computer systems will be required to fully understand some of the concepts and terminology discussed within this paper.&lt;br /&gt;
&lt;br /&gt;
=Background=&lt;br /&gt;
&lt;br /&gt;
The problem of attribution is not one that just came up; it has been around for decades, but mostly to address identification issues as it pertained to websites or Internet Service Providers. A lot of different approaches towards attribution have been taken, but mainly just to the extent of what that particular system stems to achieve. &lt;br /&gt;
This section gives an introduction to three of todays current attribution systems and discusses their pros and cons as they pertain to the type of global attribution we discuss in this paper.&lt;br /&gt;
&lt;br /&gt;
==Cookies==&lt;br /&gt;
Websites will sometimes need to remember information about a visit or a visitor in order to improve viewer experience. Cookies are text files that are created by a web server, and stored by a web browser on the user&#039;s computer. Cookies are used for many reasons; mainly authentication, remembering shopping cart information, and storing site preference. In actuality, they can be used to store any type of information that can be stored in a text file. When a page is requested the users web browser sends the request with the webserver’s cookie in the header part of the request packet. All this is an automated process between the web browser and web server.  &lt;br /&gt;
&lt;br /&gt;
If at all the webserver receives a request without a cookie attached to it, it takes it as the first access that that browser is making to the server and sends one as part of the response, which will be saved by the browser and resent on the next request. Cookies are usually encrypted in order for data security and information privacy, however they are still subject to the users control as they can be decrypted, modified, and even deleted completely. It is also possible for a user to change their browser setting to not accept cookies at all. &lt;br /&gt;
&lt;br /&gt;
Cookies can either have an expiration date or not; this is the date that the browser deletes the cookie. Cookies without an expiration date are deleted when the browser is closed. Some browsers allow you to automatically set how long you want cookies to be stored.&lt;br /&gt;
&lt;br /&gt;
===Cookies as an Attribution System===&lt;br /&gt;
Looking at cookies as the type of attribution system we are looking for over the Internet, we will be able to achieve high precision on identifying computers that access a web server. However, The biggest draw back cookies have is that they can be deleted and manipulated. As such, cookies are not an effective attribution system.&lt;br /&gt;
&lt;br /&gt;
==IP Addresses==&lt;br /&gt;
IP or Internet Protocol Addresses are 32 bit numerical identifiers for devices (computer, printer, scanner, etc) on a network. The users Internet Service Provider (ISP) provide this number. The Internet Assigned Numbers Authority (IANA) is responsible for managing IP Address space allocation globally. It does this with the help of five Regional Internet Registries (RIRs), responsible for allocating IP address blocks to their assigned regions ISPs, who in turn allocates them to their users.&lt;br /&gt;
&lt;br /&gt;
Any device that goes online and communicates using IP needs an IP address. Over the years there has been a growing number of users going online and a number of devices owned by the users to go online. One of the more common examples of this is the increase of Internet ready mobile phones. Our current addressing system used by our current Internet Protocol Version 4 (IPv4) contains only 32bits which means it is only able to uniquely address 4,294,967,296 addresses which is less than the number of people on this planet today. The very last batch of IP addresses were assigned out to the five RIRs early February 2011&amp;lt;ref&amp;gt;http://arstechnica.com/tech-policy/news/2011/02/river-of-ipv4-addresses-officially-runs-dry.ars&amp;lt;/ref&amp;gt;. This address depletion was foreseen since the 90s, and sprung the development of a new Internet Protocol version, IPv6, which uses a 128bit addressing system. &lt;br /&gt;
&lt;br /&gt;
IP addresses can either be static or dynamic. A static IP address is an address permanently assigned to a user due to specific configuration. A dynamic IP address is one in which a new address is assigned at every boot up. A Dynamic Host Configuration Protocol (DHCP) Server is usually responsible for assigning dynamic IP addresses to users. There are two main advantages for dynamic addressing; it eliminates the administrative cost involved with assigning static IP addresses, and it helps solve the issue of limited addressing space by allowing many devices “share” a single address if they go online at different times. Given the limited addressing space the ISPs have to work with, and to save administration costs, most ISPs assign dynamic IP addresses as standard a offer static IP address at a higher fee. &lt;br /&gt;
&lt;br /&gt;
===IP Addresses as an Attribution System===&lt;br /&gt;
In the ideal world, every action on the internet could be bound to a machine and thus to a person. This is done by examining the source IP printed on each moving packet, locating the geographical location of this IP, consulting the ISP covering the location and identifying the person. If an act requires strict attribution (like checking and sending emails), authentication is used. &lt;br /&gt;
There are many existing methods that attempt to identify the source of an act, like IP traceback. There are problems with trying to identify the source by its IP address. For instance, it can be spoofed, which leads to misleading or inconclusive geographical location. Dynamic IP addresses are not permanently bound to a single account, which makes linking IP to the appropriate person not concrete. IP traceback can be improved but that would require global cooperation of intermediate system, which currently does not exist.&lt;br /&gt;
&lt;br /&gt;
==Authentication Systems==&lt;br /&gt;
In order for a website to make sure of the identity of who ever is visiting some pages, it provides an authentication system. This is usually a login name and password either assigned by the web server or chosen by the user. The biggest advantage to authentication systems is that it can provide attribution across different computers. The task of storing and securing login information is left to the web server, which is subject to attackers hacking into the server to stealing login information. &lt;br /&gt;
&lt;br /&gt;
Login systems are usually attached to user accounts, and sometime require private information in order to be setup. If the web server’s security is not good enough, security breeches may in turn lead to identity theft. &lt;br /&gt;
&lt;br /&gt;
The process behind authentication systems is simple; using a typical web banking authentication system for instance, the process may go as follows. A user requests for a web account or one is automatically assigned to the user. The user sets up a password for accessing the account. When the user now goes to the website he is requested to “identify himself”, the user enters in his personal login information, the web server verifies this information with what it has stored in its database and either grants or denies access to the users personal page. &lt;br /&gt;
&lt;br /&gt;
Authentication systems are only ever used when it involves the users wanting some privacy on the webserver, or when the user wishes to store some form of private information on the web server. So in essence, it always has something to do with privacy.&lt;br /&gt;
&lt;br /&gt;
===Authentication Systems as an Attribution System===&lt;br /&gt;
Authentication systems are very precise in the identification of people over the Internet across multiple devices, and as such used by many companies. However it will have a serious privacy drawback if it were to be used as a global identification system, or attribution system. It will mean that virtually every web server will need to hold enough information about you to be able to identify you as an attacker. This would mean that to even a user randomly searching for a cooking recipe online, would need to login somehow to access the web server. People generally like the anonymity of surfing the web and a system like this will completely destroy that.&lt;br /&gt;
&lt;br /&gt;
=The Attribution Dilemma=&lt;br /&gt;
&lt;br /&gt;
There are many facets to designing an attribution system, besides the technological aspects. In addition to the technologies and/or infrastructure available, one must also consider the issue of privacy, because when trying to achieve strong attribution, personal privacy is compromised. Any system must try to find a balance between strong attribution and privacy. The balance is influenced by the application of the system. For instance, in the case of financial institutions, the clients, as well as the institute will place more emphasis on attribution. Such institutes would like to establish unassailable authorization and authentication systems, so as to guarantee (to some degree) that agents involved in the transactions are who they claim they are. On the opposite side of the spectrum, are situations where privacy takes precedence. Political dissidents and whistle-blowers are relatively protected because there is no strong attribution system in place, which allows them to distribute information (regardless of actual usefulness or goodness of it) and keep their identity secret. It is clear that single universal set of rules cannot satisfy these two cases. It is also clear that, in a pretty abstract fashion, privacy is inversely proportional to attribution. While designing an attribution system one needs not only to decide on this ration for some particular case, but rather make this ratio dynamically changed depending on the case. &lt;br /&gt;
&lt;br /&gt;
Assuming such a ratio is found, another issue arises. Can the use of private information to track or punish a person be completely justified? Especially if it oversteps their privacy. One might think that this question is a little bit out of the scope of this paper. However, such ethical arguments must be addressed prior to the design of an attribution system, because a system that compromises individual privacy and protection, should not be utilized. &lt;br /&gt;
&lt;br /&gt;
Before designing an attribution system for the Internet, many questions need to be answered, some of which are: Who should have the authority to attribute? What information can they attributed and why do they need it? How is attribution achieved or measured? How much can intermediate systems&#039; cooperation contribute to achieving attribution? How do you deal with misleading data sources hiding behind botnets and concealing identities via stepping stones? &lt;br /&gt;
&lt;br /&gt;
==Why do we need Attribution==&lt;br /&gt;
&lt;br /&gt;
An attribution system will have many useful applications. The identification property can be useful at establishing the client’s identity for Online Banking, identifying the involving party in eCommerce transaction, and can be taken advantage by marketers for more targeting Web advertisements.&lt;br /&gt;
&lt;br /&gt;
Financial matters are not the only incentive for a strong attribution system. Establishing strong identification mechanism can provide better protection against cyber attacks. When the source of an attack can be recognized, then the proper authorities can prosecute the perpetrators of such crimes as: DoS, DDos, computer fraud, forgery and identity theft, sniffing private traffic, distributing illegal traffic and malware, spam,  illegal and undesirable intrusions.&lt;br /&gt;
&lt;br /&gt;
==Why is it difficult to achieve Attribution?==&lt;br /&gt;
&lt;br /&gt;
This problem arises largely due to how the Internet is designed. It does not have strong identification mechanisms, which in turn provides users with a certain level of anonymity. Moreover, most current solutions are based on the same structure and work within the same scope, thus, can only reduce the number of potentially destructive acts or just deal with the consequences. Of course, no system can completely prevent against destructive attempts, but a good attribution system should make such attempts highly undesirable and &amp;quot;costly&amp;quot; for an attacker.&lt;br /&gt;
 &lt;br /&gt;
The issue of lack of attribution on the web mostly arises whenever security is compromised. When you&#039;re bombarded with spam, or when a system is under a DoS attack, attribution becomes a more appealing notion. Getting a balance between security and privacy is tricky, because once attacks are tracked so will all other traffic. Also, depending on the type of the sender and receiver, different attribution policy will be required.&lt;br /&gt;
&lt;br /&gt;
In networks, users are not aware of all packets that are received by their machines, which mean users would not be aware of malware distribution, the creation of botnets and other actions taken by their machine without their approval and triggered by other network users. Firewalls and packet filters can be used to address such problems, but they are not very efficient. Also, it is not practical to authenticate every single action on the internet. &lt;br /&gt;
&lt;br /&gt;
There are attacks that designed specifically to prevent correct attribution. It is used for identity theft and distribution of malware. Stepping stone attack is a common way of attributing attacks to anonymity by using multiple public random agents(as stepping stones) to reach the victim in order to conceal the attacking source. &amp;lt;ref name=&amp;quot;ref1&amp;quot;&amp;gt;S. Staniford-Chen and L. T. Heberlein. Holding intruders accountable on the internet. In SP ’95: Proceedings of the 1995 IEEE Symposium on Security and Privacy, page 39, Washington, DC, USA, 1995. IEEE Computer Society.&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Requirements for an Internet Attribution System=&lt;br /&gt;
&lt;br /&gt;
It is hard to describe some hypothetical attribution system in detail, because there are many issues and complicated dependencies, and a lot of questions to answer or at least to try to answer before one can even think of implementing such a system. In this section we are trying to define high-level requirements for a good attribution system, while definition of good attribution system is not so clear, we take into account everything we have talked above. That is, the following requirements try to define the system in a way that avoids current problems, achieves high degree of attribution and remains realistic. &lt;br /&gt;
&lt;br /&gt;
We have separated those requirements in three sections: general requirements define the idea and overall goal of the system in high level, abstract terms. Deployment requirements set ground rules for deployability that makes sense in such a huge network as internet and human society Practice requirements define the way system works, behaves and interacts with other bodies.&lt;br /&gt;
&lt;br /&gt;
==General==&lt;br /&gt;
&lt;br /&gt;
First and most obvious requirement for any system is usually put for sake of consistency: main requirement for internet attribution system is simple: it needs to attribute, or, more formally, any potentially destructive act should be traceable to an agent (person and/or organization, group, etc). It is important to consider different natures of agents, because the goal of attribution system is not necessarily to narrow down the search to one particular person, but rather to find the body responsible for an act(s) regardless of their actual structure. It might be one person after all. In other words, even though actions are done mostly by a single person, they are not necessarily the ones who&#039;s responsible for a decision to do so. A good real world analogy is an assassin and some body (person or a group) paying him. Good attribution system should not lead to assassin alone, but rather should be designed the way that responsible bodies are the ones to be discovered. Yet, we accept the notion that by the end of the day there is some person or several persons, human brings, responsible for an action. It is essential, because, as practice shows, for example, determining the source of DoS-attack is relatively simple, but most of the time this source is not the one who is responsible, but rather a victim itself.&lt;br /&gt;
&lt;br /&gt;
It is easy to imagine a system in which less crime and misuse is the only acceptable way to do things, and many writers and movie directors exploit this idea in futuristic, science fiction and anti-utopian plots. Unfortunately, applying any of this sort of ideas to real world today is not possible, because a lot of laws and moral principles are already in place, some of which are not perfect, but widely accepted and most have reasons to exist. Attribution system that we&#039;re looking for should take legal and moral issues into account, naturally, should not violate and/or contradict any of them. This important requirement comes somewhat together with incremental deployability that we&#039;re going to discuss later.&lt;br /&gt;
&lt;br /&gt;
In general, an attribution system should be universal and global, and details of these terms will be discussed later.&lt;br /&gt;
&lt;br /&gt;
==Deployment==&lt;br /&gt;
It is relatively easy to discuss the design of the system, than it is to implement the design. The deployment of they system does not need to be instant and massive. Even though a global attribution system will have a lot of pressure on it, internet should not depend on it entirely, the underlying network should still remain functional, even if the attribution system goes down. In other words, attribution system should be loosely coupled to the system it works in. &lt;br /&gt;
&lt;br /&gt;
As discussed before, (and this could be said about any global system on the internet) such a system should be incrementally deployable, so that smooth, step-by-step, subnetwork-by-subnetwork integration is possible. This is important not only because of virtual impossibility to restart or reconfigure the whole internet at once. This incremental way of embedding an attribution system should be more secure (bugs in software and mistakes in design can be fixed while on a small scale), so that by the end of cycle, when the whole internet is wired, the attribution system is field-tested and analyzed several times by different bodies. &lt;br /&gt;
&lt;br /&gt;
Very important, but controversial subject, is adoption of the system within some set of rules or laws (state laws, government regulations, corporate rules and principles, etc.). System should allow easy adoption for different cases, at the same time it should remain universal and global. It should act like a public tool any group can use, but nobody should be able to misuse it or use in non-legal way. The big decision designers will have to make is the one regarding this line between dynamic adoptability and universality. Luckily, this sort of deepness goes beyond the scope of our paper.&lt;br /&gt;
&lt;br /&gt;
Companies and organizations sometimes loose millions of dolars due to attacks and other cyber-crimes done to them, and some issues can be dealt with by spending more resources (memory, bandwidth on servers, etc), or, in other words, spending more money. The overall cost of setting up and maintaining the attribution system for a particular body (person, organization, network) should be considerably less than average losses under current lack of attribution (e.g. DoS, identity theft, etc).&lt;br /&gt;
&lt;br /&gt;
==Practice==&lt;br /&gt;
&lt;br /&gt;
Attribution mapping should not be a bijection, in other words action should map to person, but not vice versa. That it, nobody should be able to use the system to answer the question &amp;quot;what person X did/does?&amp;quot;. Not only the system should not know the answer, it should not be possible to know the answer; the question &amp;quot;who did act X&amp;quot; is the one should be answered. This can be thought of as part of requirement about not violating current laws and moral principles, but is put as a separate requirement, since it is very important to draw a line between attribution system and surveillance. The goal is not only to make attribution system attribute, but also to make it impossible to use it in other way – for surveillance, spying, etc.&lt;br /&gt;
&lt;br /&gt;
Since this global system operates on the internet, it might not be a great idea to put names of people into traceability database. It makes much more sense to assign unique IDs to everyone who is using the network. And in case a crime is committed, and the agent of some act need to be determined, then the recorded ID will be searched for in the police or government database. It should be some trusted entity (government, corporation, police, some public good-like system, etc) that stores the mapping between IDs and real names. This mapping should only be revealed when needed and when there is enough evidence or motivation to do so. Traceability information (namely, unique iDs) should be distributed and it is crucial to make it impossible to collect all the information in one place.&lt;br /&gt;
&lt;br /&gt;
Of course, it is not always the case that some trusted (by everyone) body exists, but generally we have governments and/or agencies we trust. It is important to divide the information between public and trusted body in a way allowing them to cooperate in time of need and not allowing to misuse the system from any side.&lt;br /&gt;
&lt;br /&gt;
=Proposed Framework=&lt;br /&gt;
In this section, we will propose a potential framework and argue that it is able to fulfill the requirements listed in the former section. The proposed framework works under the core principle &amp;quot;An act cannot use network resources nor can it be routed if it is anonymously bound&amp;quot;. Firstly, we start by defining some terminologies that will be used within the scope of this section:&lt;br /&gt;
* &amp;lt;i&amp;gt;Agent&amp;lt;/i&amp;gt; (Ag): the human-device pairing that sits on an end system and keeps transmitting/receiving packets.&lt;br /&gt;
* &amp;lt;i&amp;gt;Machines/Devices&amp;lt;/i&amp;gt; (Md): any piece of hardware that has access capability. It can either be a PDA, a laptop, a notebook, a PC, an Network Interface Card, or even a mere home made chip that can externally communicate wired or wireless to send or receive digital packets.&lt;br /&gt;
* &amp;lt;i&amp;gt;Identification Stamp&amp;lt;/i&amp;gt; (IS): a series of bits that binds a human unique identification (iris intricate structure or fingerprint) with a unique feature of an Md. So, for an Md like a Network Interface Card, the MAC address would be that feature. This biding is a particular representation for the official owner of the device, and who is deemed the primary responsible for any outgoing packet launched by his owned device. In other words, it is a unique identifier for an Ag.&lt;br /&gt;
* &amp;lt;i&amp;gt;Intermediate System Services&amp;lt;/i&amp;gt; (ISS): Services provided by intermediate systems (routers). For e.g., routing (main service), error checking, etc.&lt;br /&gt;
* &amp;lt;i&amp;gt;Globally Distributed Database&amp;lt;/i&amp;gt; (GDDB): a global DNS-like world-wide distributed storage system with an encrypted LUT that has relatively fast retrieval and update capabilities. It will be used to store ISs.&lt;br /&gt;
* &amp;lt;i&amp;gt;Licensing&amp;lt;/i&amp;gt;: a process of giving the permission to intermediate systems to provide ISS to all packets that are launched from the agent that is requesting the license. This process is simply adding new ISs to the GDDB.&lt;br /&gt;
&lt;br /&gt;
In principle, every leaping packet has a human owner that is either directly or indirectly responsible for it. Directly responsible when he is running an application that sends requests or initiates communication sessions to another end system. E.g., using the client side of applications supporting the protocols: HTTP, FTP, SIP, RTP, VoIP, etc. Indirect responsibility is when a user is running a system in the background that performs external (over the internet) system calls or is automated for periodic communication or automatic response to incoming requests. E.g., system clock synchronization (NTP), or the server side of the protocols: HTTP, FTP, etc. In addition, indirect responsibility also includes the responsibility of all packets launched by lower layer protocols that are being manipulated by higher layer ones. E.g., when a user sends an HTTP request, TCP sends connection initiation packets for handshaking schemes, ICMP packets that aims to seek and identify that status of a specific host, etc.&lt;br /&gt;
&lt;br /&gt;
The scope of this framework only addresses attribution over the internet and not any other &amp;quot;locally&amp;quot; defined networks underlying the IEEE standard definitions of the topologies PAN, LAN, MAN, or a WAN that do not use the global intermediate systems as their underlying infrastructure for packet delivery.&lt;br /&gt;
&lt;br /&gt;
The following sections show the assumptions for this framework to operate, the methodology of its operation, a list of pros, cons and vulnerabilities of the system and wrap up by a discussion on the proposed framework.&lt;br /&gt;
==Assumptions==&lt;br /&gt;
For starters: Jurisdiction. This frame work assumes the presence of a globally trustful entity(s) (e.g., government). This entity should act as the Internet&#039;s law enforcement, which will be deemed as the primary inspector and also the jurisdiction for regulating all kinds of cyber crimes and misbehavior. This entity may either be centralized or distributed. A centralized entity would be easier to deploy, but it will suffer from a single point of failure. A distributed entity would obviously perform better as it will be able to scale with the growth of the system users as well as conform to diverse regional laws, regulations, customs and traditions.&lt;br /&gt;
&lt;br /&gt;
Secondly: &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt;. We assume that a &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt; is deployed, which acts as a &amp;quot;database&amp;quot; for storing &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt;s. Symmetric key encryption should be used to protect that system as it will only be accessed through two types of users. Routers, which should be able to access this database ONLY for read operations. And the trustful entity (defined in the previous assumption) which should be able to access for read/write operations. Both users must be strictly authenticated, for being able to decrypt the contents or to append. In addition, this distributed system must guarantee almost zero latency in the read operations as it will be heavily relied on for every single hop made by a packet at the Internet intermediate system. A standardization protocol would be required to define the syntax and semantics as well as the nature of the way that the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt; subsystems would communicate with.&lt;br /&gt;
&lt;br /&gt;
Thirdly: Ownership. We assume that every &amp;lt;i&amp;gt;Md&amp;lt;/i&amp;gt; should be officially owned by a human. This owner is deemed as the official responsible for that &amp;lt;i&amp;gt;Md&amp;lt;/i&amp;gt;, and who would also be accused if his &amp;lt;i&amp;gt;Md&amp;lt;/i&amp;gt; found to misbehave or to launch malicious packets. The owning relationship between persons and machines is one-to-many. That is to say, a person can officially own one or more machines but a machine can only be owned by one person.&lt;br /&gt;
&lt;br /&gt;
Finally: IP packets. Our proposed frame work assumes that within the frame format of the IP packets, a header is added by the network layer that includes the &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; of the &amp;lt;i&amp;gt;Ag&amp;lt;/i&amp;gt; owning the packet.&lt;br /&gt;
&lt;br /&gt;
==Methodology==&lt;br /&gt;
Basically, this framework works by stalling the propagation of a packet that is either unattributed or forged with a fake &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt;. A fake &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; is defined as:&lt;br /&gt;
* Either having a false unique chip identifier that refers to an imaginary &amp;lt;i&amp;gt;Md&amp;lt;/i&amp;gt;.&lt;br /&gt;
* Or having a false unique human identifier that refers to an imaginary human.&lt;br /&gt;
* Or having a misleading binding of a human to a machine. i.e., claiming that some machine &amp;quot;X&amp;quot; belongs to some human &amp;quot;Y&amp;quot;, but in reality, &amp;quot;Y&amp;quot; is not the owner of &amp;quot;X&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Noticeably, the routers, as primary constituents to the intermediate systems, should refrain from routing any data packets that are not fully attributed. As they are the main driving power behind delivering all malicious or benign packets, they should have great responsibility in achieving highly reliable attribution mechanism.&lt;br /&gt;
&lt;br /&gt;
A description of the system, based on the chronological order, is as follows. First, any newly bought machine or even a home made device, must be licensed from the trustful entity. The trustful entity generates the &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt;, accesses the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt; for adding it and provides the user with his &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; for being able to add it to the header of his launched packets. The user should preserve his unique &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; in a secret place and should deal with it exactly the same way he does with his credit card numbers and social insurance numbers. If a device is not licensed (i.e., its &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; was not inserted to the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt;), it doesn&#039;t not benefit from &amp;lt;i&amp;gt;ISS&amp;lt;/i&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
From the intermediate system&#039;s perspective, when a router receives a packet, it verifies its &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt;. This is done by consulting the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt; which is in turn done by sending a copy of the &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; printed on the packet to the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt;. If a packet is found to be not having an &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt;, the packet is prevented from benefiting from &amp;lt;i&amp;gt;ISS&amp;lt;/i&amp;gt; and is simply dropped. If the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt; replies with an invalid &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt;, again, the packet is dropped. If the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt; replies with a success, this will mean that the packet&#039;s printed &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; is verified. Thus, the packet benefits from the &amp;lt;i&amp;gt;ISS&amp;lt;/i&amp;gt; and gets routed throughout the way.&lt;br /&gt;
&lt;br /&gt;
==Pros==&lt;br /&gt;
&lt;br /&gt;
* It succeeds to perform an acceptable level of attribution relative to the one achieved in the real world.&lt;br /&gt;
* It avoids anonymous attacks since a non-attributed packet will fail to reach its destination.&lt;br /&gt;
* Attribution information is not publicly available to everyone, only available to trustful entities.&lt;br /&gt;
** Hence, it retains personal privacy.&lt;br /&gt;
* The system enjoys full automation. According to the system&#039;s theory of operation, &amp;lt;i&amp;gt;ISS&amp;lt;/i&amp;gt; are either provided or not based on the validation of the &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; printed on each packet.&lt;br /&gt;
* The system avoids all forms of cyber crimes that are executed by unknown &amp;lt;i&amp;gt;Ag&amp;lt;/i&amp;gt;s.&lt;br /&gt;
&lt;br /&gt;
==Cons==&lt;br /&gt;
&lt;br /&gt;
* The verification process of the &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; on each packet creates undesirable delays potential bottlenecks at the routers.&lt;br /&gt;
* The framework is not considered easy to deploy since the assumptions are deemed relatively complex.&lt;br /&gt;
* Since attribution is not public to everyone, custom content generation cannot be achievable.&lt;br /&gt;
* Large number of &amp;lt;i&amp;gt;Md&amp;lt;/i&amp;gt;s in University Laboratories, Incorporations, Hospitals, Schools, etc should all be licensed before being able to be used. Normally, in these cases, &amp;lt;i&amp;gt;Md&amp;lt;/i&amp;gt;s would be bound to one single person.&lt;br /&gt;
* For security purposes, licenses should be periodically renewable, however, this is not considered an easy topic.&lt;br /&gt;
&lt;br /&gt;
==Vulnerabilities==&lt;br /&gt;
&lt;br /&gt;
* Botnets&lt;br /&gt;
** The system requires full user awareness with what lies under the hood. Since they are the sole responsible persons for their &amp;lt;i&amp;gt;Md&amp;lt;/i&amp;gt;s, they should be aware with all packets sneaking into their machines for avoiding the distribution of malware, and the later formation of botnets.&lt;br /&gt;
** Users are responsible for strictly securing their &amp;lt;i&amp;gt;Md&amp;lt;/i&amp;gt;s exactly the same they do when they lock their care after leaving it in a car park.&lt;br /&gt;
* A successful attack on the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt; would cause whole system failure. If this attack succeeds to alter, the attacker can append an imaginary &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt;. If the attack succeeds to read, the attacker can choose to declare his malicious packets under the responsibility of some other &amp;lt;i&amp;gt;Ag&amp;lt;/i&amp;gt;, forgery.&lt;br /&gt;
&lt;br /&gt;
==Discussion==&lt;br /&gt;
The proposed framework&#039;s main focus is to ensure that any leaping packet is moving because it is known who does it belong to. Recalling that in the real world, if a person doesn&#039;t have an identity (like a social insurance number), he can&#039;t benefit from services. For instance, he can&#039;t open a bank account, can&#039;t buy a house, can&#039;t trade, nor can he even get a job. Obviously, the proposed system mimics the behavior of the real world. Of course, the real world is not ideal in criminal tracing and law enforcement, however, it&#039;s level of attribution would definitely beat that of the Internet in the meantime. We can say that current internet attribution in comparison to the real world attribution is considered a failure. An acceptable form of internet attribution would be considered basically acceptable if it, at least, provides as much attribution as the real world attribution does. We could say that the proposed framework would guarantee such level.&lt;br /&gt;
&lt;br /&gt;
The proposed framework succeeds to fulfill all of the general requirements. Clearly, any potentially destructive act is definitely traceable to an &amp;lt;i&amp;gt;Ag&amp;lt;/i&amp;gt; or else, it will not take place. The framework also omits violation to any privacy related laws since the attribution information are not publicly available. More specifically, they are only available to the agreed on trusted entity. The framework also fulfills all of the deployment requirements. As can be seen, the more areas the system is deployed in, the better for the public good, hence, it is incrementally deployable. The framework is not very loosely coupled but can still allow the Internet to operate if it is suppressed. It is also adaptable to different rules and regulations since it leaves the punishment decision to the jurisdiction of the country with the source of the crime committer. Whatever the cost is to deploy that system, it should still be less than the cost of the losses due to cyber crimes. That is because the cost of losses due to unknown &amp;quot;future&amp;quot; attacks cannot be easily determined. As for the practice requirements, the proposed framework theory of operation doesn&#039;t permit mapping of a certain &amp;lt;i&amp;gt;Ag&amp;lt;/i&amp;gt; to a set of actions, it only permits the mapping of a set of actions to an &amp;lt;i&amp;gt;Ag&amp;lt;/i&amp;gt;, which satisfies non-bijection. Also, because of the distributed nature of the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt;, all traceability information is impossible to collect at one place. The trusted entities are only the ones that generate the &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; from the personal data, hence, they are the only ones having this piece of information. To conclude, the framework successfully satisfies all the requirements.&lt;br /&gt;
&lt;br /&gt;
=Conclusion=&lt;br /&gt;
The human nature refuses any change at the first sight. In 1769, Jonathan Holguinisburg finalized the invention of the first Cugnot Steam Trolly &amp;lt;ref&amp;gt;ckermann, Erik (2001). World History of the Automobile. SAE Press, p.14. [Online]. Available: http://books.google.com/books?id=yLZeQwqNmdgC&amp;amp;printsec=frontcover&amp;amp;source=gbs_ge_summary_r&amp;amp;cad=0#v=onepage&amp;amp;q&amp;amp;f=false &amp;lt;/ref&amp;gt; which became nowadays automobiles. In 1903, car licensing began in North America, that is 134 years after Holguinishburg invention. Licensing started when people began realizing that a car could act as a lethal weapon, which therefore must be approved by the government to be driven by some person, and must also be formally linked to an owner who is considered the primary responsible for it.&lt;br /&gt;
&lt;br /&gt;
Meanwhile, the Internet is passing through the same phase. People would blindly deny, refuse and object such &amp;quot;wicked&amp;quot; attribution systems, but later on, Internet licensing will be part of everyone&#039;s life, just like their driving license. Needless to say, the Internet is becoming more crucial to many applications and in the same time more vulnerable to different types of attacks. Obviously, it is being injected in the &amp;quot;blood&amp;quot; of a vast, yet exponentially growing, number of applications which are time and data sensitive, and which don&#039;t leave room for cyber crimes, unauthorized intrusion, traffic tampering, bandwidth hogging, etc. In addition, much of the industry and technology based applications are now build over the Internet as their underlying infrastructure, and cannot tolerate being threatened all the time by a completely anonymous person behind the seen seeking the proper moment to strike. Meanwhile, Internet Attribution is no longer an add-on, but an obligation.&lt;br /&gt;
&lt;br /&gt;
In this paper, we have presented some formal definitions of attribution, why is it crucial to attribute, level of attribution would be considered acceptable and where the roots of difficulty lies behind achieving such level. Moreover, we have proposed a background about current attribution systems and a brief discussion about the reason of their survival and their point of failure as well. We also populated a list of requirements that must be fulfilled by any system aiming to acquire Internet attribution. Finally, we proposed a potential framework for a system that has that should  fulfills the mentioned requirements and that should have the ability to achieve an acceptable level of Internet attribution. Pros, and Vulnerabilities of the proposed framework are also discussed.&lt;br /&gt;
&lt;br /&gt;
=References=&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;/div&gt;</summary>
		<author><name>Omi</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=Internet_Attribution:_Between_Privacy_and_Cruciality&amp;diff=9464</id>
		<title>Internet Attribution: Between Privacy and Cruciality</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=Internet_Attribution:_Between_Privacy_and_Cruciality&amp;diff=9464"/>
		<updated>2011-04-12T01:20:48Z</updated>

		<summary type="html">&lt;p&gt;Omi: /* The Attribution Dilemma */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;b&amp;gt;Abstract&amp;lt;/b&amp;gt;&amp;lt;br/&amp;gt;&lt;br /&gt;
Present and past situations show a need for improved attribution systems, and arguably, scientific basis for properly functioning attribution systems are not yet defined. Lots of research have been focusing on attributing documents to authors for the sake of securing authorship rights and rapid identification of plagiarism. Many of those were revolving around the notion of using machine learning for linking articles to humans. Others proposed text classification and feature selection as a means of detecting the author of a document. Unfortunately, not that much research is addressing the problem of lack of robust attribution system over the internet. Authentication, as a means of attribution, has proved its efficiency but, needless to say, it is not applicable to authenticate every single packet hopping over the intermediate systems. This paper presents limits and advances in the attribution of actions to agents over the internet. It reviews current attribution technologies as well as the limits of those technologies. It also identifies the requirements of a proper attribution system and proposes a distributed (yet cooperative) approach for performing attribution over the internet.&lt;br /&gt;
&lt;br /&gt;
=Introduction=&lt;br /&gt;
Currently the Internet&#039;s infrastructure provides users partial anonymity. Unfortunately, that anonymity weakens the security for its users, because it entices advanced users to exploit that feature. The lack of online identification married with bad intentions entices criminals to commit a number of &amp;lt;i&amp;gt;Cyber Crimes&amp;lt;/i&amp;gt; without being caught, crimes which include: fraud, theft, forgery, impersonation, the distribution of Malware (and hence, botnets), traffic tampering, DoS, bandwidth hogging, etc. Consequently, internet attribution is a highly sensitive field that constitutes a cornerstone position within internet security. Needless to say, current solutions don&#039;t guarantee sufficient attribution nor are considered always applicable most of the time, hence, current system suffers the lack of a relatively robust attribution mechanism. In the light of this context, we need better methodologies for reaching an acceptable success level for attributing actions over the internet.&lt;br /&gt;
&lt;br /&gt;
In principle, attribution can be defined as the mechanism of binding a system-defined act to an agent. An agent is typically an entity that has the ability to commit what constitutes as an act. Within our focus, an agent could either be a person or a machine. It can also be defined as &amp;quot;determining the identity or location of an attacker or an attacker’s intermediary&amp;quot;&amp;lt;ref&amp;gt; [Institute for Defense Analyses, 2003]&amp;lt;/ref&amp;gt;. Problems like IP address spoofing, lack of interoperability in intermediate systems, dynamic nature of IP addresses, unawareness of system users with lots of &amp;lt;i&amp;gt;unknown&amp;lt;/i&amp;gt; packets sneaking to their machines and poor efficiency of firewalls and IDSs make this determination operation considerably difficult. In addition, some types of attacks are carried out to conceal the real agent behind an act. For instance, malware distribution (and hence the creation of botnets), and stepping stones aim to inflict vagueness around the correct &amp;lt;i&amp;gt;human&amp;lt;/i&amp;gt; source behind the scene.&lt;br /&gt;
&lt;br /&gt;
In this paper, we focus on defining what it takes to achieve an acceptably working attribution mechanism over the internet. To do that, we review past research works in attribution and discuss their common limitations as well as flaws and what can be done in common to enhance such schemes. We also argue that the lack of a globally deployed registration system that registers system users and grants them LICENSED access to the system enfeebles proper attribution and motivates illegitimate intrusions and irregular behavior. We show that employing the mentioned system would reduce the incentive of irregular behavior as well as remove the blaze of tempting anonymity, putting attackers under the risk of being easily caught. We also discuss how privacy, as a counter force to attribution, plays a big role in the internet and within its users and propose a framework that achieves relatively robust attribution mechanism and retains the privacy of users.&lt;br /&gt;
&lt;br /&gt;
Much of the research done in literature focuses on attribution that is done for keeping track of authorship, i.e., attributing text to authors. In this paper, we don&#039;t question the cruciality of attribution in this field, but rather we address a higher level of attribution of all possible actions to agents, which is sadly deemed slightly obsolete from the current research perspective.&lt;br /&gt;
&lt;br /&gt;
This paper starts with a quick background discussion on the current forms of attribution. Consequently, section 3 presents the dilemma of attribution, resolving the tension between attribution and privacy. Section 4 presents a fundamental set of requirements for achieving an acceptable level of attribution over the internet. In section 5, we propose an abstract framework for achieving attribution that mimics attribution in the real world. And finally, a conclusion is presented in section 6.&lt;br /&gt;
&lt;br /&gt;
==What is Attribution==&lt;br /&gt;
&#039;&#039;The act of attributing, especially the act of establishing a particular person as the creator of a work of art.&#039;&#039;&amp;lt;ref&amp;gt; The American Heritage® Dictionary of the English Language, Fourth Edition copyright ©2000 by Houghton Mifflin Company. Updated in 2009. Published by Houghton Mifflin Company.&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
We are concerned with one particular type of attribution; binding an act to a person. This may include intermediate attributions to other agents, for example (software, device, etc.) and then attribution from that agent to a person. Narrowing the problem further, we&#039;re only concerned about attribution in large, dynamic networks, and as such focusing on the internet. For sake of simplicity, in this paper, whenever we make mention of &amp;quot;attribution,&amp;quot; we will do so with reference to  &amp;quot;binding an act to a person on the internet&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
==Problem Statement==&lt;br /&gt;
The anonymity of the Internet makes it virtually impossible most of the time to properly identify who is who online. This is a double-ended sword as it not only provides a high level of privacy, but also makes it hard to identify people with malicious intent and cyber attackers.&lt;br /&gt;
&lt;br /&gt;
==Problem Motivation==&lt;br /&gt;
In today&#039;s world there is a growing need for strong attribution over the Internet mainly due to increased numbers of cyber attacks since its introduction in the 90’s. Many attackers have succeeded in causing both physical and financial damage to many companies over the Internet and going &amp;quot;Scott free&amp;quot;; due to the anonymity of the Internet, the attackers cannot be identified.&lt;br /&gt;
&lt;br /&gt;
==Scope==&lt;br /&gt;
In this paper we are addressing the issue of attribution by providing a list of requirements that need to be met in order to have a fully stable and efficient attribution system over the Internet.&lt;br /&gt;
&lt;br /&gt;
Although this is not a technical paper, a basic knowledge of computer science or computer systems will be required to fully understand some of the concepts and terminology discussed within this paper.&lt;br /&gt;
&lt;br /&gt;
=Background=&lt;br /&gt;
&lt;br /&gt;
The problem of attribution is not one that just came up; it has been around for decades, but mostly to address identification issues as it pertained to websites or Internet Service Providers. A lot of different approaches towards attribution have been taken, but mainly just to the extent of what that particular system stems to achieve. &lt;br /&gt;
This section gives an introduction to three of todays current attribution systems and discusses their pros and cons as they pertain to the type of global attribution we discuss in this paper.&lt;br /&gt;
&lt;br /&gt;
==Cookies==&lt;br /&gt;
Websites will sometimes need to remember information about a visit or a visitor in order to improve viewer experience. Cookies are text files that are created by a web server, and stored by a web browser on the user&#039;s computer. Cookies are used for many reasons; mainly authentication, remembering shopping cart information, and storing site preference. In actuality, they can be used to store any type of information that can be stored in a text file. When a page is requested the users web browser sends the request with the webserver’s cookie in the header part of the request packet. All this is an automated process between the web browser and web server.  &lt;br /&gt;
&lt;br /&gt;
If at all the webserver receives a request without a cookie attached to it, it takes it as the first access that that browser is making to the server and sends one as part of the response, which will be saved by the browser and resent on the next request. Cookies are usually encrypted in order for data security and information privacy, however they are still subject to the users control as they can be decrypted, modified, and even deleted completely. It is also possible for a user to change their browser setting to not accept cookies at all. &lt;br /&gt;
&lt;br /&gt;
Cookies can either have an expiration date or not; this is the date that the browser deletes the cookie. Cookies without an expiration date are deleted when the browser is closed. Some browsers allow you to automatically set how long you want cookies to be stored.&lt;br /&gt;
&lt;br /&gt;
===Cookies as an Attribution System===&lt;br /&gt;
Looking at cookies as the type of attribution system we are looking for over the Internet, we will be able to achieve high precision on identifying computers that access a web server. However, The biggest draw back cookies have is that they can be deleted and manipulated. As such, cookies are not an effective attribution system.&lt;br /&gt;
&lt;br /&gt;
==IP Addresses==&lt;br /&gt;
IP or Internet Protocol Addresses are 32 bit numerical identifiers for devices (computer, printer, scanner, etc) on a network. The users Internet Service Provider (ISP) provide this number. The Internet Assigned Numbers Authority (IANA) is responsible for managing IP Address space allocation globally. It does this with the help of five Regional Internet Registries (RIRs), responsible for allocating IP address blocks to their assigned regions ISPs, who in turn allocates them to their users.&lt;br /&gt;
&lt;br /&gt;
Any device that goes online and communicates using IP needs an IP address. Over the years there has been a growing number of users going online and a number of devices owned by the users to go online. One of the more common examples of this is the increase of Internet ready mobile phones. Our current addressing system used by our current Internet Protocol Version 4 (IPv4) contains only 32bits which means it is only able to uniquely address 4,294,967,296 addresses which is less than the number of people on this planet today. The very last batch of IP addresses were assigned out to the five RIRs early February 2011&amp;lt;ref&amp;gt;http://arstechnica.com/tech-policy/news/2011/02/river-of-ipv4-addresses-officially-runs-dry.ars&amp;lt;/ref&amp;gt;. This address depletion was foreseen since the 90s, and sprung the development of a new Internet Protocol version, IPv6, which uses a 128bit addressing system. &lt;br /&gt;
&lt;br /&gt;
IP addresses can either be static or dynamic. A static IP address is an address permanently assigned to a user due to specific configuration. A dynamic IP address is one in which a new address is assigned at every boot up. A Dynamic Host Configuration Protocol (DHCP) Server is usually responsible for assigning dynamic IP addresses to users. There are two main advantages for dynamic addressing; it eliminates the administrative cost involved with assigning static IP addresses, and it helps solve the issue of limited addressing space by allowing many devices “share” a single address if they go online at different times. Given the limited addressing space the ISPs have to work with, and to save administration costs, most ISPs assign dynamic IP addresses as standard a offer static IP address at a higher fee. &lt;br /&gt;
&lt;br /&gt;
===IP Addresses as an Attribution System===&lt;br /&gt;
Although IP addresses can be used to attribute packets to its sender, it will fail as an effective attribution system for a few reasons, but mainly that attackers can spoof their IP addresses. Spoofing IP addresses will even foil the efforts of IP trace backs.&lt;br /&gt;
&lt;br /&gt;
==Authentication Systems==&lt;br /&gt;
In order for a website to make sure of the identity of who ever is visiting some pages, it provides an authentication system. This is usually a login name and password either assigned by the web server or chosen by the user. The biggest advantage to authentication systems is that it can provide attribution across different computers. The task of storing and securing login information is left to the web server, which is subject to attackers hacking into the server to stealing login information. &lt;br /&gt;
&lt;br /&gt;
Login systems are usually attached to user accounts, and sometime require private information in order to be setup. If the web server’s security is not good enough, security breeches may in turn lead to identity theft. &lt;br /&gt;
&lt;br /&gt;
The process behind authentication systems is simple; using a typical web banking authentication system for instance, the process may go as follows. A user requests for a web account or one is automatically assigned to the user. The user sets up a password for accessing the account. When the user now goes to the website he is requested to “identify himself”, the user enters in his personal login information, the web server verifies this information with what it has stored in its database and either grants or denies access to the users personal page. &lt;br /&gt;
&lt;br /&gt;
Authentication systems are only ever used when it involves the users wanting some privacy on the webserver, or when the user wishes to store some form of private information on the web server. So in essence, it always has something to do with privacy.&lt;br /&gt;
&lt;br /&gt;
===Authentication Systems as an Attribution System===&lt;br /&gt;
Authentication systems are very precise in the identification of people over the Internet across multiple devices, and as such used by many companies. However it will have a serious privacy drawback if it were to be used as a global identification system, or attribution system. It will mean that virtually every web server will need to hold enough information about you to be able to identify you as an attacker. This would mean that to even a user randomly searching for a cooking recipe online, would need to login somehow to access the web server. People generally like the anonymity of surfing the web and a system like this will completely destroy that.&lt;br /&gt;
&lt;br /&gt;
=The Attribution Dilemma=&lt;br /&gt;
&lt;br /&gt;
There are many facets to designing an attribution system, besides the technological aspects. In addition to the technologies and/or infrastructure available, one must also consider the issue of privacy, because when trying to achieve strong attribution, personal privacy is compromised. Any system must try to find a balance between strong attribution and privacy. The balance is influenced by the application of the system. For instance, in the case of financial institutions, the clients, as well as the institute will place more emphasis on attribution. Such institutes would like to establish unassailable authorization and authentication systems, so as to guarantee (to some degree) that agents involved in the transactions are who they claim they are. On the opposite side of the spectrum, are situations where privacy takes precedence. Political dissidents and whistle-blowers are relatively protected because there is no strong attribution system in place, which allows them to distribute information (regardless of actual usefulness or goodness of it) and keep their identity secret. It is clear that single universal set of rules cannot satisfy these two cases. It is also clear that, in a pretty abstract fashion, privacy is inversely proportional to attribution. While designing an attribution system one needs not only to decide on this ration for some particular case, but rather make this ratio dynamically changed depending on the case. &lt;br /&gt;
&lt;br /&gt;
Assuming such a ratio is found, another issue arises. Can the use of private information to track or punish a person be completely justified? Especially if it oversteps their privacy. One might think that this question is a little bit out of the scope of this paper. However, such ethical arguments must be addressed prior to the design of an attribution system, because a system that compromises individual privacy and protection, should not be utilized. &lt;br /&gt;
&lt;br /&gt;
Before designing an attribution system for the Internet, many questions need to be answered, some of which are: Who should have the authority to attribute? What information can they attributed and why do they need it? How is attribution achieved or measured? How much can intermediate systems&#039; cooperation contribute to achieving attribution? How do you deal with misleading data sources hiding behind botnets and concealing identities via stepping stones? &lt;br /&gt;
&lt;br /&gt;
==Why do we need Attribution==&lt;br /&gt;
&lt;br /&gt;
An attribution system will have many useful applications. The identification property can be useful at establishing the client’s identity for Online Banking, identifying the involving party in eCommerce transaction, and can be taken advantage by marketers for more targeting Web advertisements.&lt;br /&gt;
&lt;br /&gt;
Financial matters are not the only incentive for a strong attribution system. Establishing strong identification mechanism can provide better protection against cyber attacks. When the source of an attack can be recognized, then the proper authorities can prosecute the perpetrators of such crimes as: DoS, DDos, computer fraud, forgery and identity theft, sniffing private traffic, distributing illegal traffic and malware, spam,  illegal and undesirable intrusions.&lt;br /&gt;
&lt;br /&gt;
==Why is it difficult to achieve Attribution?==&lt;br /&gt;
&lt;br /&gt;
This problem arises largely due to how the Internet is designed. It does not have strong identification mechanisms, which in turn provides users with a certain level of anonymity. Moreover, most current solutions are based on the same structure and work within the same scope, thus, can only reduce the number of potentially destructive acts or just deal with the consequences. Of course, no system can completely prevent against destructive attempts, but a good attribution system should make such attempts highly undesirable and &amp;quot;costly&amp;quot; for an attacker.&lt;br /&gt;
 &lt;br /&gt;
The issue of lack of attribution on the web mostly arises whenever security is compromised. When you&#039;re bombarded with spam, or when a system is under a DoS attack, attribution becomes a more appealing notion. Getting a balance between security and privacy is tricky, because once attacks are tracked so will all other traffic. Also, depending on the type of the sender and receiver, different attribution policy will be required.&lt;br /&gt;
&lt;br /&gt;
In networks, users are not aware of all packets that are received by their machines, which mean users would not be aware of malware distribution, the creation of botnets and other actions taken by their machine without their approval and triggered by other network users. Firewalls and packet filters can be used to address such problems, but they are not very efficient. Also, it is not practical to authenticate every single action on the internet. &lt;br /&gt;
&lt;br /&gt;
There are attacks that designed specifically to prevent correct attribution. It is used for identity theft and distribution of malware. Stepping stone attack is a common way of attributing attacks to anonymity by using multiple public random agents(as stepping stones) to reach the victim in order to conceal the attacking source. &amp;lt;ref name=&amp;quot;ref1&amp;quot;&amp;gt;S. Staniford-Chen and L. T. Heberlein. Holding intruders accountable on the internet. In SP ’95: Proceedings of the 1995 IEEE Symposium on Security and Privacy, page 39, Washington, DC, USA, 1995. IEEE Computer Society.&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Requirements for an Internet Attribution System=&lt;br /&gt;
&lt;br /&gt;
It is hard to describe some hypothetical attribution system in detail, because there are many issues and complicated dependencies, and a lot of questions to answer or at least to try to answer before one can even think of implementing such a system. In this section we are trying to define high-level requirements for a good attribution system, while definition of good attribution system is not so clear, we take into account everything we have talked above. That is, the following requirements try to define the system in a way that avoids current problems, achieves high degree of attribution and remains realistic. &lt;br /&gt;
&lt;br /&gt;
We have separated those requirements in three sections: general requirements define the idea and overall goal of the system in high level, abstract terms. Deployment requirements set ground rules for deployability that makes sense in such a huge network as internet and human society Practice requirements define the way system works, behaves and interacts with other bodies.&lt;br /&gt;
&lt;br /&gt;
==General==&lt;br /&gt;
&lt;br /&gt;
First and most obvious requirement for any system is usually put for sake of consistency: main requirement for internet attribution system is simple: it needs to attribute, or, more formally, any potentially destructive act should be traceable to an agent (person and/or organization, group, etc). It is important to consider different natures of agents, because the goal of attribution system is not necessarily to narrow down the search to one particular person, but rather to find the body responsible for an act(s) regardless of their actual structure. It might be one person after all. In other words, even though actions are done mostly by a single person, they are not necessarily the ones who&#039;s responsible for a decision to do so. A good real world analogy is an assassin and some body (person or a group) paying him. Good attribution system should not lead to assassin alone, but rather should be designed the way that responsible bodies are the ones to be discovered. Yet, we accept the notion that by the end of the day there is some person or several persons, human brings, responsible for an action. It is essential, because, as practice shows, for example, determining the source of DoS-attack is relatively simple, but most of the time this source is not the one who is responsible, but rather a victim itself.&lt;br /&gt;
&lt;br /&gt;
It is easy to imagine a system in which less crime and misuse is the only acceptable way to do things, and many writers and movie directors exploit this idea in futuristic, science fiction and anti-utopian plots. Unfortunately, applying any of this sort of ideas to real world today is not possible, because a lot of laws and moral principles are already in place, some of which are not perfect, but widely accepted and most have reasons to exist. Attribution system that we&#039;re looking for should take legal and moral issues into account, naturally, should not violate and/or contradict any of them. This important requirement comes somewhat together with incremental deployability that we&#039;re going to discuss later.&lt;br /&gt;
&lt;br /&gt;
In general, an attribution system should be universal and global, and details of these terms will be discussed later.&lt;br /&gt;
&lt;br /&gt;
==Deployment==&lt;br /&gt;
It is relatively easy to discuss the design of the system, than it is to implement the design. The deployment of they system does not need to be instant and massive. Even though a global attribution system will have a lot of pressure on it, internet should not depend on it entirely, the underlying network should still remain functional, even if the attribution system goes down. In other words, attribution system should be loosely coupled to the system it works in. &lt;br /&gt;
&lt;br /&gt;
As discussed before, (and this could be said about any global system on the internet) such a system should be incrementally deployable, so that smooth, step-by-step, subnetwork-by-subnetwork integration is possible. This is important not only because of virtual impossibility to restart or reconfigure the whole internet at once. This incremental way of embedding an attribution system should be more secure (bugs in software and mistakes in design can be fixed while on a small scale), so that by the end of cycle, when the whole internet is wired, the attribution system is field-tested and analyzed several times by different bodies. &lt;br /&gt;
&lt;br /&gt;
Very important, but controversial subject, is adoption of the system within some set of rules or laws (state laws, government regulations, corporate rules and principles, etc.). System should allow easy adoption for different cases, at the same time it should remain universal and global. It should act like a public tool any group can use, but nobody should be able to misuse it or use in non-legal way. The big decision designers will have to make is the one regarding this line between dynamic adoptability and universality. Luckily, this sort of deepness goes beyond the scope of our paper.&lt;br /&gt;
&lt;br /&gt;
Companies and organizations sometimes loose millions of dolars due to attacks and other cyber-crimes done to them, and some issues can be dealt with by spending more resources (memory, bandwidth on servers, etc), or, in other words, spending more money. The overall cost of setting up and maintaining the attribution system for a particular body (person, organization, network) should be considerably less than average losses under current lack of attribution (e.g. DoS, identity theft, etc).&lt;br /&gt;
&lt;br /&gt;
==Practice==&lt;br /&gt;
&lt;br /&gt;
Attribution mapping should not be a bijection, in other words action should map to person, but not vice versa. That it, nobody should be able to use the system to answer the question &amp;quot;what person X did/does?&amp;quot;. Not only the system should not know the answer, it should not be possible to know the answer; the question &amp;quot;who did act X&amp;quot; is the one should be answered. This can be thought of as part of requirement about not violating current laws and moral principles, but is put as a separate requirement, since it is very important to draw a line between attribution system and surveillance. The goal is not only to make attribution system attribute, but also to make it impossible to use it in other way – for surveillance, spying, etc.&lt;br /&gt;
&lt;br /&gt;
Since this global system operates on the internet, it might not be a great idea to put names of people into traceability database. It makes much more sense to assign unique IDs to everyone who is using the network. And in case a crime is committed, and the agent of some act need to be determined, then the recorded ID will be searched for in the police or government database. It should be some trusted entity (government, corporation, police, some public good-like system, etc) that stores the mapping between IDs and real names. This mapping should only be revealed when needed and when there is enough evidence or motivation to do so. Traceability information (namely, unique iDs) should be distributed and it is crucial to make it impossible to collect all the information in one place.&lt;br /&gt;
&lt;br /&gt;
Of course, it is not always the case that some trusted (by everyone) body exists, but generally we have governments and/or agencies we trust. It is important to divide the information between public and trusted body in a way allowing them to cooperate in time of need and not allowing to misuse the system from any side.&lt;br /&gt;
&lt;br /&gt;
=Proposed Framework=&lt;br /&gt;
In this section, we will propose a potential framework and argue that it is able to fulfill the requirements listed in the former section. The proposed framework works under the core principle &amp;quot;An act cannot use network resources nor can it be routed if it is anonymously bound&amp;quot;. Firstly, we start by defining some terminologies that will be used within the scope of this section:&lt;br /&gt;
* &amp;lt;i&amp;gt;Agent&amp;lt;/i&amp;gt; (Ag): the human-device pairing that sits on an end system and keeps transmitting/receiving packets.&lt;br /&gt;
* &amp;lt;i&amp;gt;Machines/Devices&amp;lt;/i&amp;gt; (Md): any piece of hardware that has access capability. It can either be a PDA, a laptop, a notebook, a PC, an Network Interface Card, or even a mere home made chip that can externally communicate wired or wireless to send or receive digital packets.&lt;br /&gt;
* &amp;lt;i&amp;gt;Identification Stamp&amp;lt;/i&amp;gt; (IS): a series of bits that binds a human unique identification (iris intricate structure or fingerprint) with a unique feature of an Md. So, for an Md like a Network Interface Card, the MAC address would be that feature. This biding is a particular representation for the official owner of the device, and who is deemed the primary responsible for any outgoing packet launched by his owned device. In other words, it is a unique identifier for an Ag.&lt;br /&gt;
* &amp;lt;i&amp;gt;Intermediate System Services&amp;lt;/i&amp;gt; (ISS): Services provided by intermediate systems (routers). For e.g., routing (main service), error checking, etc.&lt;br /&gt;
* &amp;lt;i&amp;gt;Globally Distributed Database&amp;lt;/i&amp;gt; (GDDB): a global DNS-like world-wide distributed storage system with an encrypted LUT that has relatively fast retrieval and update capabilities. It will be used to store ISs.&lt;br /&gt;
* &amp;lt;i&amp;gt;Licensing&amp;lt;/i&amp;gt;: a process of giving the permission to intermediate systems to provide ISS to all packets that are launched from the agent that is requesting the license. This process is simply adding new ISs to the GDDB.&lt;br /&gt;
&lt;br /&gt;
In principle, every leaping packet has a human owner that is either directly or indirectly responsible for it. Directly responsible when he is running an application that sends requests or initiates communication sessions to another end system. E.g., using the client side of applications supporting the protocols: HTTP, FTP, SIP, RTP, VoIP, etc. Indirect responsibility is when a user is running a system in the background that performs external (over the internet) system calls or is automated for periodic communication or automatic response to incoming requests. E.g., system clock synchronization (NTP), or the server side of the protocols: HTTP, FTP, etc. In addition, indirect responsibility also includes the responsibility of all packets launched by lower layer protocols that are being manipulated by higher layer ones. E.g., when a user sends an HTTP request, TCP sends connection initiation packets for handshaking schemes, ICMP packets that aims to seek and identify that status of a specific host, etc.&lt;br /&gt;
&lt;br /&gt;
The scope of this framework only addresses attribution over the internet and not any other &amp;quot;locally&amp;quot; defined networks underlying the IEEE standard definitions of the topologies PAN, LAN, MAN, or a WAN that do not use the global intermediate systems as their underlying infrastructure for packet delivery.&lt;br /&gt;
&lt;br /&gt;
The following sections show the assumptions for this framework to operate, the methodology of its operation, a list of pros, cons and vulnerabilities of the system and wrap up by a discussion on the proposed framework.&lt;br /&gt;
==Assumptions==&lt;br /&gt;
For starters: Jurisdiction. This frame work assumes the presence of a globally trustful entity(s) (e.g., government). This entity should act as the Internet&#039;s law enforcement, which will be deemed as the primary inspector and also the jurisdiction for regulating all kinds of cyber crimes and misbehavior. This entity may either be centralized or distributed. A centralized entity would be easier to deploy, but it will suffer from a single point of failure. A distributed entity would obviously perform better as it will be able to scale with the growth of the system users as well as conform to diverse regional laws, regulations, customs and traditions.&lt;br /&gt;
&lt;br /&gt;
Secondly: &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt;. We assume that a &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt; is deployed, which acts as a &amp;quot;database&amp;quot; for storing &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt;s. Symmetric key encryption should be used to protect that system as it will only be accessed through two types of users. Routers, which should be able to access this database ONLY for read operations. And the trustful entity (defined in the previous assumption) which should be able to access for read/write operations. Both users must be strictly authenticated, for being able to decrypt the contents or to append. In addition, this distributed system must guarantee almost zero latency in the read operations as it will be heavily relied on for every single hop made by a packet at the Internet intermediate system. A standardization protocol would be required to define the syntax and semantics as well as the nature of the way that the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt; subsystems would communicate with.&lt;br /&gt;
&lt;br /&gt;
Thirdly: Ownership. We assume that every &amp;lt;i&amp;gt;Md&amp;lt;/i&amp;gt; should be officially owned by a human. This owner is deemed as the official responsible for that &amp;lt;i&amp;gt;Md&amp;lt;/i&amp;gt;, and who would also be accused if his &amp;lt;i&amp;gt;Md&amp;lt;/i&amp;gt; found to misbehave or to launch malicious packets. The owning relationship between persons and machines is one-to-many. That is to say, a person can officially own one or more machines but a machine can only be owned by one person.&lt;br /&gt;
&lt;br /&gt;
Finally: IP packets. Our proposed frame work assumes that within the frame format of the IP packets, a header is added by the network layer that includes the &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; of the &amp;lt;i&amp;gt;Ag&amp;lt;/i&amp;gt; owning the packet.&lt;br /&gt;
&lt;br /&gt;
==Methodology==&lt;br /&gt;
Basically, this framework works by stalling the propagation of a packet that is either unattributed or forged with a fake &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt;. A fake &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; is defined as:&lt;br /&gt;
* Either having a false unique chip identifier that refers to an imaginary &amp;lt;i&amp;gt;Md&amp;lt;/i&amp;gt;.&lt;br /&gt;
* Or having a false unique human identifier that refers to an imaginary human.&lt;br /&gt;
* Or having a misleading binding of a human to a machine. i.e., claiming that some machine &amp;quot;X&amp;quot; belongs to some human &amp;quot;Y&amp;quot;, but in reality, &amp;quot;Y&amp;quot; is not the owner of &amp;quot;X&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Noticeably, the routers, as primary constituents to the intermediate systems, should refrain from routing any data packets that are not fully attributed. As they are the main driving power behind delivering all malicious or benign packets, they should have great responsibility in achieving highly reliable attribution mechanism.&lt;br /&gt;
&lt;br /&gt;
A description of the system, based on the chronological order, is as follows. First, any newly bought machine or even a home made device, must be licensed from the trustful entity. The trustful entity generates the &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt;, accesses the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt; for adding it and provides the user with his &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; for being able to add it to the header of his launched packets. The user should preserve his unique &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; in a secret place and should deal with it exactly the same way he does with his credit card numbers and social insurance numbers. If a device is not licensed (i.e., its &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; was not inserted to the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt;), it doesn&#039;t not benefit from &amp;lt;i&amp;gt;ISS&amp;lt;/i&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
From the intermediate system&#039;s perspective, when a router receives a packet, it verifies its &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt;. This is done by consulting the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt; which is in turn done by sending a copy of the &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; printed on the packet to the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt;. If a packet is found to be not having an &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt;, the packet is prevented from benefiting from &amp;lt;i&amp;gt;ISS&amp;lt;/i&amp;gt; and is simply dropped. If the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt; replies with an invalid &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt;, again, the packet is dropped. If the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt; replies with a success, this will mean that the packet&#039;s printed &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; is verified. Thus, the packet benefits from the &amp;lt;i&amp;gt;ISS&amp;lt;/i&amp;gt; and gets routed throughout the way.&lt;br /&gt;
&lt;br /&gt;
==Pros==&lt;br /&gt;
&lt;br /&gt;
* It succeeds to perform an acceptable level of attribution relative to the one achieved in the real world.&lt;br /&gt;
* It avoids anonymous attacks since a non-attributed packet will fail to reach its destination.&lt;br /&gt;
* Attribution information is not publicly available to everyone, only available to trustful entities.&lt;br /&gt;
** Hence, it retains personal privacy.&lt;br /&gt;
* The system enjoys full automation. According to the system&#039;s theory of operation, &amp;lt;i&amp;gt;ISS&amp;lt;/i&amp;gt; are either provided or not based on the validation of the &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; printed on each packet.&lt;br /&gt;
* The system avoids all forms of cyber crimes that are executed by unknown &amp;lt;i&amp;gt;Ag&amp;lt;/i&amp;gt;s.&lt;br /&gt;
&lt;br /&gt;
==Cons==&lt;br /&gt;
&lt;br /&gt;
* The verification process of the &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; on each packet creates undesirable delays potential bottlenecks at the routers.&lt;br /&gt;
* The framework is not considered easy to deploy since the assumptions are deemed relatively complex.&lt;br /&gt;
* Since attribution is not public to everyone, custom content generation cannot be achievable.&lt;br /&gt;
* Large number of &amp;lt;i&amp;gt;Md&amp;lt;/i&amp;gt;s in University Laboratories, Incorporations, Hospitals, Schools, etc should all be licensed before being able to be used. Normally, in these cases, &amp;lt;i&amp;gt;Md&amp;lt;/i&amp;gt;s would be bound to one single person.&lt;br /&gt;
* For security purposes, licenses should be periodically renewable, however, this is not considered an easy topic.&lt;br /&gt;
&lt;br /&gt;
==Vulnerabilities==&lt;br /&gt;
&lt;br /&gt;
* Botnets&lt;br /&gt;
** The system requires full user awareness with what lies under the hood. Since they are the sole responsible persons for their &amp;lt;i&amp;gt;Md&amp;lt;/i&amp;gt;s, they should be aware with all packets sneaking into their machines for avoiding the distribution of malware, and the later formation of botnets.&lt;br /&gt;
** Users are responsible for strictly securing their &amp;lt;i&amp;gt;Md&amp;lt;/i&amp;gt;s exactly the same they do when they lock their care after leaving it in a car park.&lt;br /&gt;
* A successful attack on the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt; would cause whole system failure. If this attack succeeds to alter, the attacker can append an imaginary &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt;. If the attack succeeds to read, the attacker can choose to declare his malicious packets under the responsibility of some other &amp;lt;i&amp;gt;Ag&amp;lt;/i&amp;gt;, forgery.&lt;br /&gt;
&lt;br /&gt;
==Discussion==&lt;br /&gt;
The proposed framework&#039;s main focus is to ensure that any leaping packet is moving because it is known who does it belong to. Recalling that in the real world, if a person doesn&#039;t have an identity (like a social insurance number), he can&#039;t benefit from services. For instance, he can&#039;t open a bank account, can&#039;t buy a house, can&#039;t trade, nor can he even get a job. Obviously, the proposed system mimics the behavior of the real world. Of course, the real world is not ideal in criminal tracing and law enforcement, however, it&#039;s level of attribution would definitely beat that of the Internet in the meantime. We can say that current internet attribution in comparison to the real world attribution is considered a failure. An acceptable form of internet attribution would be considered basically acceptable if it, at least, provides as much attribution as the real world attribution does. We could say that the proposed framework would guarantee such level.&lt;br /&gt;
&lt;br /&gt;
The proposed framework succeeds to fulfill all of the general requirements. Clearly, any potentially destructive act is definitely traceable to an &amp;lt;i&amp;gt;Ag&amp;lt;/i&amp;gt; or else, it will not take place. The framework also omits violation to any privacy related laws since the attribution information are not publicly available. More specifically, they are only available to the agreed on trusted entity. The framework also fulfills all of the deployment requirements. As can be seen, the more areas the system is deployed in, the better for the public good, hence, it is incrementally deployable. The framework is not very loosely coupled but can still allow the Internet to operate if it is suppressed. It is also adaptable to different rules and regulations since it leaves the punishment decision to the jurisdiction of the country with the source of the crime committer. Whatever the cost is to deploy that system, it should still be less than the cost of the losses due to cyber crimes. That is because the cost of losses due to unknown &amp;quot;future&amp;quot; attacks cannot be easily determined. As for the practice requirements, the proposed framework theory of operation doesn&#039;t permit mapping of a certain &amp;lt;i&amp;gt;Ag&amp;lt;/i&amp;gt; to a set of actions, it only permits the mapping of a set of actions to an &amp;lt;i&amp;gt;Ag&amp;lt;/i&amp;gt;, which satisfies non-bijection. Also, because of the distributed nature of the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt;, all traceability information is impossible to collect at one place. The trusted entities are only the ones that generate the &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; from the personal data, hence, they are the only ones having this piece of information. To conclude, the framework successfully satisfies all the requirements.&lt;br /&gt;
&lt;br /&gt;
=Conclusion=&lt;br /&gt;
The human nature refuses any change at the first sight. In 1769, Jonathan Holguinisburg finalized the invention of the first Cugnot Steam Trolly &amp;lt;ref&amp;gt;ckermann, Erik (2001). World History of the Automobile. SAE Press, p.14. [Online]. Available: http://books.google.com/books?id=yLZeQwqNmdgC&amp;amp;printsec=frontcover&amp;amp;source=gbs_ge_summary_r&amp;amp;cad=0#v=onepage&amp;amp;q&amp;amp;f=false &amp;lt;/ref&amp;gt; which became nowadays automobiles. In 1903, car licensing began in North America, that is 134 years after Holguinishburg invention. Licensing started when people began realizing that a car could act as a lethal weapon, which therefore must be approved by the government to be driven by some person, and must also be formally linked to an owner who is considered the primary responsible for it.&lt;br /&gt;
&lt;br /&gt;
Meanwhile, the Internet is passing through the same phase. People would blindly deny, refuse and object such &amp;quot;wicked&amp;quot; attribution systems, but later on, Internet licensing will be part of everyone&#039;s life, just like their driving license. Needless to say, the Internet is becoming more crucial to many applications and in the same time more vulnerable to different types of attacks. Obviously, it is being injected in the &amp;quot;blood&amp;quot; of a vast, yet exponentially growing, number of applications which are time and data sensitive, and which don&#039;t leave room for cyber crimes, unauthorized intrusion, traffic tampering, bandwidth hogging, etc. In addition, much of the industry and technology based applications are now build over the Internet as their underlying infrastructure, and cannot tolerate being threatened all the time by a completely anonymous person behind the seen seeking the proper moment to strike. Meanwhile, Internet Attribution is no longer an add-on, but an obligation.&lt;br /&gt;
&lt;br /&gt;
In this paper, we have presented some formal definitions of attribution, why is it crucial to attribute, level of attribution would be considered acceptable and where the roots of difficulty lies behind achieving such level. Moreover, we have proposed a background about current attribution systems and a brief discussion about the reason of their survival and their point of failure as well. We also populated a list of requirements that must be fulfilled by any system aiming to acquire Internet attribution. Finally, we proposed a potential framework for a system that has that should  fulfills the mentioned requirements and that should have the ability to achieve an acceptable level of Internet attribution. Pros, and Vulnerabilities of the proposed framework are also discussed.&lt;br /&gt;
&lt;br /&gt;
=References=&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;/div&gt;</summary>
		<author><name>Omi</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=Internet_Attribution:_Between_Privacy_and_Cruciality&amp;diff=9453</id>
		<title>Internet Attribution: Between Privacy and Cruciality</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=Internet_Attribution:_Between_Privacy_and_Cruciality&amp;diff=9453"/>
		<updated>2011-04-12T00:25:35Z</updated>

		<summary type="html">&lt;p&gt;Omi: /* Background */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;b&amp;gt;Abstract&amp;lt;/b&amp;gt;&amp;lt;br/&amp;gt;&lt;br /&gt;
Present and past situations show a need for improved attribution systems, and arguably, scientific basis for properly functioning attribution systems are not yet defined. Lots of research have been focusing on attributing documents to authors for the sake of securing authorship rights and rapid identification of plagiarism. Many of those were revolving around the notion of using machine learning for linking articles to humans. Others proposed text classification and feature selection as a means of detecting the author of a document. Unfortunately, not that much research is addressing the problem of lack of robust attribution system over the internet. Authentication, as a means of attribution, has proved its efficiency but, needless to say, it is not applicable to authenticate every single packet hopping over the intermediate systems. This paper presents limits and advances in the attribution of actions to agents over the internet. It reviews current attribution technologies as well as the limits of those technologies. It also identifies the requirements of a proper attribution system and proposes a distributed (yet cooperative) approach for performing attribution over the internet.&lt;br /&gt;
&lt;br /&gt;
=Introduction=&lt;br /&gt;
Currently the Internet&#039;s infrastructure provides users partial anonymity. Unfortunately, that anonymity weakens the security for its users, because it entices advanced users to exploit that feature. The lack of online identification married with bad intentions entices criminals to commit a number of &amp;lt;i&amp;gt;Cyber Crimes&amp;lt;/i&amp;gt; without being caught, crimes which include: fraud, theft, forgery, impersonation, the distribution of Malware (and hence, botnets), traffic tampering, DoS, bandwidth hogging, etc. Consequently, internet attribution is a highly sensitive field that constitutes a cornerstone position within internet security. Needless to say, current solutions don&#039;t guarantee sufficient attribution nor are considered always applicable most of the time, hence, current system suffers the lack of a relatively robust attribution mechanism. In the light of this context, we need better methodologies for reaching an acceptable success level for attributing actions over the internet.&lt;br /&gt;
&lt;br /&gt;
In principle, attribution can be defined as the mechanism of binding a system-defined act to an agent. An agent is typically an entity that has the ability to commit what constitutes as an act. Within our focus, an agent could either be a person or a machine. It can also be defined as &amp;quot;determining the identity or location of an attacker or an attacker’s intermediary&amp;quot;&amp;lt;ref&amp;gt; [Institute for Defense Analyses, 2003]&amp;lt;/ref&amp;gt;. Problems like IP address spoofing, lack of interoperability in intermediate systems, dynamic nature of IP addresses, unawareness of system users with lots of &amp;lt;i&amp;gt;unknown&amp;lt;/i&amp;gt; packets sneaking to their machines and poor efficiency of firewalls and IDSs make this determination operation considerably difficult. In addition, some types of attacks are carried out to conceal the real agent behind an act. For instance, malware distribution (and hence the creation of botnets), and stepping stones aim to inflict vagueness around the correct &amp;lt;i&amp;gt;human&amp;lt;/i&amp;gt; source behind the scene.&lt;br /&gt;
&lt;br /&gt;
In this paper, we focus on defining what it takes to achieve an acceptably working attribution mechanism over the internet. To do that, we review past research works in attribution and discuss their common limitations as well as flaws and what can be done in common to enhance such schemes. We also argue that the lack of a globally deployed registration system that registers system users and grants them LICENSED access to the system enfeebles proper attribution and motivates illegitimate intrusions and irregular behavior. We show that employing the mentioned system would reduce the incentive of irregular behavior as well as remove the blaze of tempting anonymity, putting attackers under the risk of being easily caught. We also discuss how privacy, as a counter force to attribution, plays a big role in the internet and within its users and propose a framework that achieves relatively robust attribution mechanism and retains the privacy of users.&lt;br /&gt;
&lt;br /&gt;
Much of the research done in literature focuses on attribution that is done for keeping track of authorship, i.e., attributing text to authors. In this paper, we don&#039;t question the cruciality of attribution in this field, but rather we address a higher level of attribution of all possible actions to agents, which is sadly deemed slightly obsolete from the current research perspective.&lt;br /&gt;
&lt;br /&gt;
This paper starts with a quick background discussion on the current forms of attribution. Consequently, section 3 presents the dilemma of attribution, resolving the tension between attribution and privacy. Section 4 presents a fundamental set of requirements for achieving an acceptable level of attribution over the internet. In section 5, we propose an abstract framework for achieving attribution that mimics attribution in the real world. And finally, a conclusion is presented in section 6.&lt;br /&gt;
&lt;br /&gt;
==What is Attribution==&lt;br /&gt;
&#039;&#039;The act of attributing, especially the act of establishing a particular person as the creator of a work of art.&#039;&#039;&amp;lt;ref&amp;gt; The American Heritage® Dictionary of the English Language, Fourth Edition copyright ©2000 by Houghton Mifflin Company. Updated in 2009. Published by Houghton Mifflin Company.&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
We are concerned with one particular type of attribution; binding an act to a person. This may include intermediate attributions to other agents, for example (software, device, etc.) and then attribution from that agent to a person. Narrowing the problem further, we&#039;re only concerned about attribution in large, dynamic networks, and as such focusing on the internet. For sake of simplicity, in this paper, whenever we make mention of &amp;quot;attribution,&amp;quot; we will do so with reference to  &amp;quot;binding an act to a person on the internet&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
==Problem Statement==&lt;br /&gt;
The anonymity of the Internet makes it virtually impossible most of the time to properly identify who is who online. This is a double-ended sword as it not only provides a high level of privacy, but also makes it hard to identify people with malicious intent and cyber attackers.&lt;br /&gt;
&lt;br /&gt;
==Problem Motivation==&lt;br /&gt;
In today&#039;s world there is a growing need for strong attribution over the Internet mainly due to increased numbers of cyber attacks since its introduction in the 90’s. Many attackers have succeeded in causing both physical and financial damage to many companies over the Internet and going &amp;quot;Scott free&amp;quot;; due to the anonymity of the Internet, the attackers cannot be identified.&lt;br /&gt;
&lt;br /&gt;
==Scope==&lt;br /&gt;
In this paper we are addressing the issue of attribution by providing a list of requirements that need to be met in order to have a fully stable and efficient attribution system over the Internet.&lt;br /&gt;
&lt;br /&gt;
Although this is not a technical paper, a basic knowledge of computer science or computer systems will be required to fully understand some of the concepts and terminology discussed within this paper.&lt;br /&gt;
&lt;br /&gt;
=Background=&lt;br /&gt;
&lt;br /&gt;
The problem of attribution is not one that just came up; it has been around for decades, but mostly to address identification issues as it pertained to websites or Internet Service Providers. A lot of different approaches towards attribution have been taken, but mainly just to the extent of what that particular system stems to achieve. &lt;br /&gt;
This section gives an introduction to three of todays current attribution systems and discusses their pros and cons as they pertain to the type of global attribution we discuss in this paper.&lt;br /&gt;
&lt;br /&gt;
==Cookies==&lt;br /&gt;
Websites will sometimes need to remember information about a visit or a visitor in order to improve viewer experience. Cookies are text files that are created by a web server, and stored by a web browser on the user&#039;s computer. Cookies are used for many reasons; mainly authentication, remembering shopping cart information, and storing site preference. In actuality, they can be used to store any type of information that can be stored in a text file. When a page is requested the users web browser sends the request with the webserver’s cookie in the header part of the request packet. All this is an automated process between the web browser and web server.  &lt;br /&gt;
&lt;br /&gt;
If at all the webserver receives a request without a cookie attached to it, it takes it as the first access that that browser is making to the server and sends one as part of the response, which will be saved by the browser and resent on the next request. Cookies are usually encrypted in order for data security and information privacy, however they are still subject to the users control as they can be decrypted, modified, and even deleted completely. It is also possible for a user to change their browser setting to not accept cookies at all. &lt;br /&gt;
&lt;br /&gt;
Cookies can either have an expiration date or not; this is the date that the browser deletes the cookie. Cookies without an expiration date are deleted when the browser is closed. Some browsers allow you to automatically set how long you want cookies to be stored.&lt;br /&gt;
&lt;br /&gt;
===Cookies as an Attribution System===&lt;br /&gt;
Looking at cookies as the type of attribution system we are looking for over the Internet, we will be able to achieve high precision on identifying computers that access a web server. However, The biggest draw back cookies have is that they can be deleted and manipulated. As such, cookies are not an effective attribution system.&lt;br /&gt;
&lt;br /&gt;
==IP Addresses==&lt;br /&gt;
IP or Internet Protocol Addresses are 32 bit numerical identifiers for devices (computer, printer, scanner, etc) on a network. The users Internet Service Provider (ISP) provide this number. The Internet Assigned Numbers Authority (IANA) is responsible for managing IP Address space allocation globally. It does this with the help of five Regional Internet Registries (RIRs), responsible for allocating IP address blocks to their assigned regions ISPs, who in turn allocates them to their users.&lt;br /&gt;
&lt;br /&gt;
Any device that goes online and communicates using IP needs an IP address. Over the years there has been a growing number of users going online and a number of devices owned by the users to go online. One of the more common examples of this is the increase of Internet ready mobile phones. Our current addressing system used by our current Internet Protocol Version 4 (IPv4) contains only 32bits which means it is only able to uniquely address 4,294,967,296 addresses which is less than the number of people on this planet today. The very last batch of IP addresses were assigned out to the five RIRs early February 2011&amp;lt;ref&amp;gt;http://arstechnica.com/tech-policy/news/2011/02/river-of-ipv4-addresses-officially-runs-dry.ars&amp;lt;/ref&amp;gt;. This address depletion was foreseen since the 90s, and sprung the development of a new Internet Protocol version, IPv6, which uses a 128bit addressing system. &lt;br /&gt;
&lt;br /&gt;
IP addresses can either be static or dynamic. A static IP address is an address permanently assigned to a user due to specific configuration. A dynamic IP address is one in which a new address is assigned at every boot up. A Dynamic Host Configuration Protocol (DHCP) Server is usually responsible for assigning dynamic IP addresses to users. There are two main advantages for dynamic addressing; it eliminates the administrative cost involved with assigning static IP addresses, and it helps solve the issue of limited addressing space by allowing many devices “share” a single address if they go online at different times. Given the limited addressing space the ISPs have to work with, and to save administration costs, most ISPs assign dynamic IP addresses as standard a offer static IP address at a higher fee. &lt;br /&gt;
&lt;br /&gt;
===IP Addresses as an Attribution System===&lt;br /&gt;
Although IP addresses can be used to attribute packets to its sender, it will fail as an effective attribution system for a few reasons, but mainly that attackers can spoof their IP addresses. Spoofing IP addresses will even foil the efforts of IP trace backs.&lt;br /&gt;
&lt;br /&gt;
==Authentication Systems==&lt;br /&gt;
In order for a website to make sure of the identity of who ever is visiting some pages, it provides an authentication system. This is usually a login name and password either assigned by the web server or chosen by the user. The biggest advantage to authentication systems is that it can provide attribution across different computers. The task of storing and securing login information is left to the web server, which is subject to attackers hacking into the server to stealing login information. &lt;br /&gt;
&lt;br /&gt;
Login systems are usually attached to user accounts, and sometime require private information in order to be setup. If the web server’s security is not good enough, security breeches may in turn lead to identity theft. &lt;br /&gt;
&lt;br /&gt;
The process behind authentication systems is simple; using a typical web banking authentication system for instance, the process may go as follows. A user requests for a web account or one is automatically assigned to the user. The user sets up a password for accessing the account. When the user now goes to the website he is requested to “identify himself”, the user enters in his personal login information, the web server verifies this information with what it has stored in its database and either grants or denies access to the users personal page. &lt;br /&gt;
&lt;br /&gt;
Authentication systems are only ever used when it involves the users wanting some privacy on the webserver, or when the user wishes to store some form of private information on the web server. So in essence, it always has something to do with privacy.&lt;br /&gt;
&lt;br /&gt;
===Authentication Systems as an Attribution System===&lt;br /&gt;
Authentication systems are very precise in the identification of people over the Internet across multiple devices, and as such used by many companies. However it will have a serious privacy drawback if it were to be used as a global identification system, or attribution system. It will mean that virtually every web server will need to hold enough information about you to be able to identify you as an attacker. This would mean that to even a user randomly searching for a cooking recipe online, would need to login somehow to access the web server. People generally like the anonymity of surfing the web and a system like this will completely destroy that.&lt;br /&gt;
&lt;br /&gt;
=The Attribution Dilemma=&lt;br /&gt;
&lt;br /&gt;
There are many facets to designing an attribution system, besides the technological aspects. In addition to the technologies and/or infrastructure available, one must also consider the issue of privacy, because when trying to achieve strong attribution personal privacy is compromised. Any system must try to find a balance between strong attribution and privacy. The balance is influenced by the application of the system. For instance, in the case of financial institutions, the clients as well as the institute will place more emphasis on attribution. Such institutes would like to establish unassailable authorization and authentication systems, so as to guarantee (to some degree) that agents involved in the transactions are who they claim they are. On the opposite side of the spectrum, are situations where privacy takes precedence. Political dissidents and whistle-blowers are relatively protected because there is no strong attribution system in place, which allows them to distribute information (regardless of actual usefulness or goodness of it) and keep their identity secret. It is clear that single universal set of rules cannot satisfy these two cases. It is also clear that, in pretty abstract fashion, privacy is inversely proportional to attribution. While designing an attribution system one needs not only to decide on this ration for some particular case, but rather make this ratio dynamically changed depending on the case. &lt;br /&gt;
&lt;br /&gt;
Assuming such a ratio is found, another issue arises. Can the use of private information to track or punish a person be completely justified? Especially if it oversteps their privacy. One might think that this question is a little bit out of the scope of our paper. However, such ethical arguments must be addressed prior to designing, because a system that compromises individual privacy and protection can not be utilized. &lt;br /&gt;
&lt;br /&gt;
There are other topics that attribution system must answer. Who should have the authority to attribute? What information can they attributed? And why do they need it? How is attribution achieved or measured?  How accurate are IP-traceback, stepping stone authentications, link identifications and packet filtering in wedging packets to agents? How much can intermediate systems&#039; cooperation contribute to achieving attribution? How to deal with misleading data sources hiding behind botnets and concealing identities via stepping stones? &lt;br /&gt;
&lt;br /&gt;
==Why do we need Attribution==&lt;br /&gt;
&lt;br /&gt;
Attribution system has many useful applications. The identification property can useful at establishing the client’s identity for Online Banking, identifying the involving party in eCommerce transaction, and can be taken advantage by marketers for more targeting Web advertisements.&lt;br /&gt;
&lt;br /&gt;
Financial matters are not the only incentive for a strong attribution system. Establishing strong identification mechanism can provide better protection against cyber attacks. When the source of an attack can be recognize, then the proper authorities can prosecute the perpetrators of such crimes as: DoS, DDos, computer fraud, forgery and identity theft, sniffing private traffic, distributing illegal traffic and malware, spam,  illegal and undesirable intrusions.&lt;br /&gt;
&lt;br /&gt;
==Why is it difficult to achieve Attribution?==&lt;br /&gt;
&lt;br /&gt;
The problem rise largely due to how the Internet is designed. It does not have strong identification mechanisms, which makes it relatively anonymous for users. Moreover, most current solutions are based on the same structure and work within the same scope, thus, can only reduce the number of potentially destructive acts or just deal with the consequences. Of course, no system can completely prevent against destructive attempts, but some potentially good attribution system should make such attempts highly undesirable and &amp;quot;costly&amp;quot; for an attacker.&lt;br /&gt;
 &lt;br /&gt;
The issue of lack of attribution on the web mostly arises whenever security is compromised. When you&#039;re bombarded with spam, or when a system is under a DoS attack attribution becomes a more appealing notion. Getting a balance between security and privacy is tricky, because once attacks are tracked so will all other traffic. Also, depending on the type of the senders and receivers, different attribution policy will be required.&lt;br /&gt;
&lt;br /&gt;
In the ideal world, every action on the internet could be bound to a machine and thus to a person. This is done by examining the source IP printed on each moving packet, locating the geographical location of this IP, consulting the ISP covering the location and identifying the person. If an act requires strict attribution (like checking and sending emails), authentication is used. &lt;br /&gt;
There are many existing methods that attempt to identify the source of an act, like IP traceback. There are problems with trying to identify the source by its IP address. For instance, it can be spoofed, which leads to misleads or inconclusive geographical location. IP addresses are not permanently bound to a single account, which makes linking IP to the appropriate person not concrete. IP traceback can be improved but that would require global cooperation of intermediate system, which currently does not exist.&lt;br /&gt;
&lt;br /&gt;
In networks, users are not aware of all packets that are received by their machines, which mean users would not be aware of malware distribution, the creation of botnets and other actions taken by their machine without their approval and triggered by other a network user. Firewalls and packet filters can be used to address such problems, but they are not very efficient. Also, it is not practical to authenticate every single action on the internet. &lt;br /&gt;
&lt;br /&gt;
There are attacks that designed specifically to prevent correct attribution. It is used for identity theft and distribution of malware. Stepping stone attack is a common way of attributing attacks to anonymity by using multiple public random agents(as stepping stones) to reach the victim in order to conceal the attacking source. &amp;lt;ref name=&amp;quot;ref1&amp;quot;&amp;gt;S. Staniford-Chen and L. T. Heberlein. Holding intruders accountable on the internet. In SP ’95: Proceedings of the 1995 IEEE Symposium on Security and Privacy, page 39, Washington, DC, USA, 1995. IEEE Computer Society.&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Requirements for an Internet Attribution System=&lt;br /&gt;
&lt;br /&gt;
It is hard to describe some hypothetical attribution system in detail, because there are many issues and complicated dependencies, and a lot of questions to answer or at least to try to answer before one can even think of implementing such a system. In this section we are trying to define high-level requirements for a good attribution system, while definition of good attribution system is not so clear, we take into account everything we have talked above. That is, the following requirements try to define the system in a way that avoids current problems, achieves high degree of attribution and remains realistic. &lt;br /&gt;
&lt;br /&gt;
We have separated those requirements in three sections: general requirements define the idea and overall goal of the system in high level, abstract terms. Deployment requirements set ground rules for deployability that makes sense in such a huge network as internet and human society Practice requirements define the way system works, behaves and interacts with other bodies.&lt;br /&gt;
&lt;br /&gt;
==General==&lt;br /&gt;
&lt;br /&gt;
First and most obvious requirement for any system is usually put for sake of consistency: main requirement for internet attribution system is simple: it needs to attribute, or, more formally, any potentially destructive act should be traceable to an agent (person and/or organization, group, etc). It is important to consider different natures of agents, because the goal of attribution system is not necessarily to narrow down the search to one particular person, but rather to find the body responsible for an act(s) regardless of their actual structure. It might be one person after all. In other words, even though actions are done mostly by a single person, they are not necessarily the ones who&#039;s responsible for a decision to do so. A good real world analogy is an assassin and some body (person or a group) paying him. Good attribution system should not lead to assassin alone, but rather should be designed the way that responsible bodies are the ones to be discovered. Yet, we accept the notion that by the end of the day there is some person or several persons, human brings, responsible for an action. It is essential, because, as practice shows, for example, determining the source of DoS-attack is relatively simple, but most of the time this source is not the one who is responsible, but rather a victim itself.&lt;br /&gt;
&lt;br /&gt;
It is easy to imagine a system in which less crime and misuse is the only acceptable way to do things, and many writers and movie directors exploit this idea in futuristic, science fiction and anti-utopian plots. Unfortunately, applying any of this sort of ideas to real world today is not possible, because a lot of laws and moral principles are already in place, some of which are not perfect, but widely accepted and most have reasons to exist. Attribution system that we&#039;re looking for should take legal and moral issues into account, naturally, should not violate and/or contradict any of them. This important requirement comes somewhat together with incremental deployability that we&#039;re going to discuss later.&lt;br /&gt;
&lt;br /&gt;
In general, an attribution system should be universal and global, and details of these terms will be discussed later.&lt;br /&gt;
&lt;br /&gt;
==Deployment==&lt;br /&gt;
It is relatively easy to discuss the design of the system, than it is to implement the design. The deployment of they system does not need to be instant and massive. Even though a global attribution system will have a lot of pressure on it, internet should not depend on it entirely, the underlying network should still remain functional, even if the attribution system goes down. In other words, attribution system should be loosely coupled to the system it works in. &lt;br /&gt;
&lt;br /&gt;
As discussed before, (and this could be said about any global system on the internet) such a system should be incrementally deployable, so that smooth, step-by-step, subnetwork-by-subnetwork integration is possible. This is important not only because of virtual impossibility to restart or reconfigure the whole internet at once. This incremental way of embedding an attribution system should be more secure (bugs in software and mistakes in design can be fixed while on a small scale), so that by the end of cycle, when the whole internet is wired, the attribution system is field-tested and analyzed several times by different bodies. &lt;br /&gt;
&lt;br /&gt;
Very important, but controversial subject, is adoption of the system within some set of rules or laws (state laws, government regulations, corporate rules and principles, etc.). System should allow easy adoption for different cases, at the same time it should remain universal and global. It should act like a public tool any group can use, but nobody should be able to misuse it or use in non-legal way. The big decision designers will have to make is the one regarding this line between dynamic adoptability and universality. Luckily, this sort of deepness goes beyond the scope of our paper.&lt;br /&gt;
&lt;br /&gt;
Companies and organizations sometimes loose millions of dolars due to attacks and other cyber-crimes done to them, and some issues can be dealt with by spending more resources (memory, bandwidth on servers, etc), or, in other words, spending more money. The overall cost of setting up and maintaining the attribution system for a particular body (person, organization, network) should be considerably less than average losses under current lack of attribution (e.g. DoS, identity theft, etc).&lt;br /&gt;
&lt;br /&gt;
==Practice==&lt;br /&gt;
&lt;br /&gt;
Attribution mapping should not be a bijection, in other words action should map to person, but not vice versa. That it, nobody should be able to use the system to answer the question &amp;quot;what person X did/does?&amp;quot;. Not only the system should not know the answer, it should not be possible to know the answer; the question &amp;quot;who did act X&amp;quot; is the one should be answered. This can be thought of as part of requirement about not violating current laws and moral principles, but is put as a separate requirement, since it is very important to draw a line between attribution system and surveillance. The goal is not only to make attribution system attribute, but also to make it impossible to use it in other way – for surveillance, spying, etc.&lt;br /&gt;
&lt;br /&gt;
Since this global system operates on the internet, it might not be a great idea to put names of people into traceability database. It makes much more sense to assign unique IDs to everyone who is using the network. And in case a crime is committed, and the agent of some act need to be determined, then the recorded ID will be searched for in the police or government database. It should be some trusted entity (government, corporation, police, some public good-like system, etc) that stores the mapping between IDs and real names. This mapping should only be revealed when needed and when there is enough evidence or motivation to do so. Traceability information (namely, unique iDs) should be distributed and it is crucial to make it impossible to collect all the information in one place.&lt;br /&gt;
&lt;br /&gt;
Of course, it is not always the case that some trusted (by everyone) body exists, but generally we have governments and/or agencies we trust. It is important to divide the information between public and trusted body in a way allowing them to cooperate in time of need and not allowing to misuse the system from any side.&lt;br /&gt;
&lt;br /&gt;
=Proposed Framework=&lt;br /&gt;
In this section, we will propose a potential framework and argue that it is able to fulfill the requirements listed in the former section. The proposed framework works under the core principle &amp;quot;An act cannot use network resources nor can it be routed if it is anonymously bound&amp;quot;. Firstly, we start by defining some terminologies that will be used within the scope of this section:&lt;br /&gt;
* &amp;lt;i&amp;gt;Agent&amp;lt;/i&amp;gt; (Ag): the human-device pairing that sits on an end system and keeps transmitting/receiving packets.&lt;br /&gt;
* &amp;lt;i&amp;gt;Machines/Devices&amp;lt;/i&amp;gt; (Md): any piece of hardware that has access capability. It can either be a PDA, a laptop, a notebook, a PC, an Network Interface Card, or even a mere home made chip that can externally communicate wired or wireless to send or receive digital packets.&lt;br /&gt;
* &amp;lt;i&amp;gt;Identification Stamp&amp;lt;/i&amp;gt; (IS): a series of bits that binds a human unique identification (iris intricate structure or fingerprint) with a unique feature of an Md. So, for an Md like a Network Interface Card, the MAC address would be that feature. This biding is a particular representation for the official owner of the device, and who is deemed the primary responsible for any outgoing packet launched by his owned device. In other words, it is a unique identifier for an Ag.&lt;br /&gt;
* &amp;lt;i&amp;gt;Intermediate System Services&amp;lt;/i&amp;gt; (ISS): Services provided by intermediate systems (routers). For e.g., routing (main service), error checking, etc.&lt;br /&gt;
* &amp;lt;i&amp;gt;Globally Distributed Database&amp;lt;/i&amp;gt; (GDDB): a global DNS-like world-wide distributed storage system with an encrypted LUT that has relatively fast retrieval and update capabilities. It will be used to store ISs.&lt;br /&gt;
* &amp;lt;i&amp;gt;Licensing&amp;lt;/i&amp;gt;: a process of giving the permission to intermediate systems to provide ISS to all packets that are launched from the agent that is requesting the license. This process is simply adding new ISs to the GDDB.&lt;br /&gt;
&lt;br /&gt;
In principle, every leaping packet has a human owner that is either directly or indirectly responsible for it. Directly responsible when he is running an application that sends requests or initiates communication sessions to another end system. E.g., using the client side of applications supporting the protocols: HTTP, FTP, SIP, RTP, VoIP, etc. Indirect responsibility is when a user is running a system in the background that performs external (over the internet) system calls or is automated for periodic communication or automatic response to incoming requests. E.g., system clock synchronization (NTP), or the server side of the protocols: HTTP, FTP, etc. In addition, indirect responsibility also includes the responsibility of all packets launched by lower layer protocols that are being manipulated by higher layer ones. E.g., when a user sends an HTTP request, TCP sends connection initiation packets for handshaking schemes, ICMP packets that aims to seek and identify that status of a specific host, etc.&lt;br /&gt;
&lt;br /&gt;
The scope of this framework only addresses attribution over the internet and not any other &amp;quot;locally&amp;quot; defined networks underlying the IEEE standard definitions of the topologies PAN, LAN, MAN, or a WAN that do not use the global intermediate systems as their underlying infrastructure for packet delivery.&lt;br /&gt;
&lt;br /&gt;
The following sections show the assumptions for this framework to operate, the methodology of its operation, a list of pros, cons and vulnerabilities of the system and wrap up by a discussion on the proposed framework.&lt;br /&gt;
==Assumptions==&lt;br /&gt;
For starters: Jurisdiction. This frame work assumes the presence of a globally trustful entity(s) (e.g., government). This entity should act as the Internet&#039;s law enforcement, which will be deemed as the primary inspector and also the jurisdiction for regulating all kinds of cyber crimes and misbehavior. This entity may either be centralized or distributed. A centralized entity would be easier to deploy, but it will suffer from a single point of failure. A distributed entity would obviously perform better as it will be able to scale with the growth of the system users as well as conform to diverse regional laws, regulations, customs and traditions.&lt;br /&gt;
&lt;br /&gt;
Secondly: &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt;. We assume that a &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt; is deployed, which acts as a &amp;quot;database&amp;quot; for storing &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt;s. Symmetric key encryption should be used to protect that system as it will only be accessed through two types of users. Routers, which should be able to access this database ONLY for read operations. And the trustful entity (defined in the previous assumption) which should be able to access for read/write operations. Both users must be strictly authenticated, for being able to decrypt the contents or to append. In addition, this distributed system must guarantee almost zero latency in the read operations as it will be heavily relied on for every single hop made by a packet at the Internet intermediate system. A standardization protocol would be required to define the syntax and semantics as well as the nature of the way that the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt; subsystems would communicate with.&lt;br /&gt;
&lt;br /&gt;
Thirdly: Ownership. We assume that every &amp;lt;i&amp;gt;Md&amp;lt;/i&amp;gt; should be officially owned by a human. This owner is deemed as the official responsible for that &amp;lt;i&amp;gt;Md&amp;lt;/i&amp;gt;, and who would also be accused if his &amp;lt;i&amp;gt;Md&amp;lt;/i&amp;gt; found to misbehave or to launch malicious packets. The owning relationship between persons and machines is one-to-many. That is to say, a person can officially own one or more machines but a machine can only be owned by one person.&lt;br /&gt;
&lt;br /&gt;
Finally: IP packets. Our proposed frame work assumes that within the frame format of the IP packets, a header is added by the network layer that includes the &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; of the &amp;lt;i&amp;gt;Ag&amp;lt;/i&amp;gt; owning the packet.&lt;br /&gt;
&lt;br /&gt;
==Methodology==&lt;br /&gt;
Basically, this framework works by stalling the propagation of a packet that is either unattributed or forged with a fake &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt;. A fake &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; is defined as:&lt;br /&gt;
* Either having a false unique chip identifier that refers to an imaginary &amp;lt;i&amp;gt;Md&amp;lt;/i&amp;gt;.&lt;br /&gt;
* Or having a false unique human identifier that refers to an imaginary human.&lt;br /&gt;
* Or having a misleading binding of a human to a machine. i.e., claiming that some machine &amp;quot;X&amp;quot; belongs to some human &amp;quot;Y&amp;quot;, but in reality, &amp;quot;Y&amp;quot; is not the owner of &amp;quot;X&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Noticeably, the routers, as primary constituents to the intermediate systems, should refrain from routing any data packets that are not fully attributed. As they are the main driving power behind delivering all malicious or benign packets, they should have great responsibility in achieving highly reliable attribution mechanism.&lt;br /&gt;
&lt;br /&gt;
A description of the system, based on the chronological order, is as follows. First, any newly bought machine or even a home made device, must be licensed from the trustful entity. The trustful entity generates the &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt;, accesses the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt; for adding it and provides the user with his &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; for being able to add it to the header of his launched packets. The user should preserve his unique &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; in a secret place and should deal with it exactly the same way he does with his credit card numbers and social insurance numbers. If a device is not licensed (i.e., its &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; was not inserted to the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt;), it doesn&#039;t not benefit from &amp;lt;i&amp;gt;ISS&amp;lt;/i&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
From the intermediate system&#039;s perspective, when a router receives a packet, it verifies its &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt;. This is done by consulting the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt; which is in turn done by sending a copy of the &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; printed on the packet to the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt;. If a packet is found to be not having an &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt;, the packet is prevented from benefiting from &amp;lt;i&amp;gt;ISS&amp;lt;/i&amp;gt; and is simply dropped. If the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt; replies with an invalid &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt;, again, the packet is dropped. If the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt; replies with a success, this will mean that the packet&#039;s printed &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; is verified. Thus, the packet benefits from the &amp;lt;i&amp;gt;ISS&amp;lt;/i&amp;gt; and gets routed throughout the way.&lt;br /&gt;
&lt;br /&gt;
==Pros==&lt;br /&gt;
&lt;br /&gt;
* It succeeds to perform an acceptable level of attribution relative to the one achieved in the real world.&lt;br /&gt;
* It avoids anonymous attacks since a non-attributed packet will fail to reach its destination.&lt;br /&gt;
* Attribution information is not publicly available to everyone, only available to trustful entities.&lt;br /&gt;
** Hence, it retains personal privacy.&lt;br /&gt;
* The system enjoys full automation. According to the system&#039;s theory of operation, &amp;lt;i&amp;gt;ISS&amp;lt;/i&amp;gt; are either provided or not based on the validation of the &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; printed on each packet.&lt;br /&gt;
* The system avoids all forms of cyber crimes that are executed by unknown &amp;lt;i&amp;gt;Ag&amp;lt;/i&amp;gt;s.&lt;br /&gt;
&lt;br /&gt;
==Cons==&lt;br /&gt;
&lt;br /&gt;
* The verification process of the &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; on each packet creates undesirable delays potential bottlenecks at the routers.&lt;br /&gt;
* The framework is not considered easy to deploy since the assumptions are deemed relatively complex.&lt;br /&gt;
* Since attribution is not public to everyone, custom content generation cannot be achievable.&lt;br /&gt;
* Large number of &amp;lt;i&amp;gt;Md&amp;lt;/i&amp;gt;s in University Laboratories, Incorporations, Hospitals, Schools, etc should all be licensed before being able to be used. Normally, in these cases, &amp;lt;i&amp;gt;Md&amp;lt;/i&amp;gt;s would be bound to one single person.&lt;br /&gt;
* For security purposes, licenses should be periodically renewable, however, this is not considered an easy topic.&lt;br /&gt;
&lt;br /&gt;
==Vulnerabilities==&lt;br /&gt;
&lt;br /&gt;
* Botnets&lt;br /&gt;
** The system requires full user awareness with what lies under the hood. Since they are the sole responsible persons for their &amp;lt;i&amp;gt;Md&amp;lt;/i&amp;gt;s, they should be aware with all packets sneaking into their machines for avoiding the distribution of malware, and the later formation of botnets.&lt;br /&gt;
** Users are responsible for strictly securing their &amp;lt;i&amp;gt;Md&amp;lt;/i&amp;gt;s exactly the same they do when they lock their care after leaving it in a car park.&lt;br /&gt;
* A successful attack on the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt; would cause whole system failure. If this attack succeeds to alter, the attacker can append an imaginary &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt;. If the attack succeeds to read, the attacker can choose to declare his malicious packets under the responsibility of some other &amp;lt;i&amp;gt;Ag&amp;lt;/i&amp;gt;, forgery.&lt;br /&gt;
&lt;br /&gt;
==Discussion==&lt;br /&gt;
The proposed framework&#039;s main focus is to ensure that any leaping packet is moving because it is known who does it belong to. Recalling that in the real world, if a person doesn&#039;t have an identity (like a social insurance number), he can&#039;t benefit from services. For instance, he can&#039;t open a bank account, can&#039;t buy a house, can&#039;t trade, nor can he even get a job. Obviously, the proposed system mimics the behavior of the real world. Of course, the real world is not ideal in criminal tracing and law enforcement, however, it&#039;s level of attribution would definitely beat that of the Internet in the meantime. We can say that current internet attribution in comparison to the real world attribution is considered a failure. An acceptable form of internet attribution would be considered basically acceptable if it, at least, provides as much attribution as the real world attribution does. We could say that the proposed framework would guarantee such level.&lt;br /&gt;
&lt;br /&gt;
The proposed framework succeeds to fulfill all of the general requirements. Clearly, any potentially destructive act is definitely traceable to an &amp;lt;i&amp;gt;Ag&amp;lt;/i&amp;gt; or else, it will not take place. The framework also omits violation to any privacy related laws since the attribution information are not publicly available. More specifically, they are only available to the agreed on trusted entity. The framework also fulfills all of the deployment requirements. As can be seen, the more areas the system is deployed in, the better for the public good, hence, it is incrementally deployable. The framework is not very loosely coupled but can still allow the Internet to operate if it is suppressed. It is also adaptable to different rules and regulations since it leaves the punishment decision to the jurisdiction of the country with the source of the crime committer. Whatever the cost is to deploy that system, it should still be less than the cost of the losses due to cyber crimes. That is because the cost of losses due to unknown &amp;quot;future&amp;quot; attacks cannot be easily determined. As for the practice requirements, the proposed framework theory of operation doesn&#039;t permit mapping of a certain &amp;lt;i&amp;gt;Ag&amp;lt;/i&amp;gt; to a set of actions, it only permits the mapping of a set of actions to an &amp;lt;i&amp;gt;Ag&amp;lt;/i&amp;gt;, which satisfies non-bijection. Also, because of the distributed nature of the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt;, all traceability information is impossible to collect at one place. The trusted entities are only the ones that generate the &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; from the personal data, hence, they are the only ones having this piece of information. To conclude, the framework successfully satisfies all the requirements.&lt;br /&gt;
&lt;br /&gt;
=Conclusion=&lt;br /&gt;
The human nature refuses any change at the first sight. In 1769, Jonathan Holguinisburg finalized the invention of the first Cugnot Steam Trolly &amp;lt;ref&amp;gt;ckermann, Erik (2001). World History of the Automobile. SAE Press, p.14. [Online]. Available: http://books.google.com/books?id=yLZeQwqNmdgC&amp;amp;printsec=frontcover&amp;amp;source=gbs_ge_summary_r&amp;amp;cad=0#v=onepage&amp;amp;q&amp;amp;f=false &amp;lt;/ref&amp;gt; which became nowadays automobiles. In 1903, car licensing began in North America, that is 134 years after Holguinishburg invention. Licensing started when people began realizing that a car could act as a lethal weapon, which therefore must be approved by the government to be driven by some person, and must also be formally linked to an owner who is considered the primary responsible for it.&lt;br /&gt;
&lt;br /&gt;
Meanwhile, the Internet is passing through the same phase. People would blindly deny, refuse and object such &amp;quot;wicked&amp;quot; attribution systems, but later on, Internet licensing will be part of everyone&#039;s life, just like their driving license. Needless to say, the Internet is becoming more crucial to many applications and in the same time more vulnerable to different types of attacks. Obviously, it is being injected in the &amp;quot;blood&amp;quot; of a vast, yet exponentially growing, number of applications which are time and data sensitive, and which don&#039;t leave room for cyber crimes, unauthorized intrusion, traffic tampering, bandwidth hogging, etc. In addition, much of the industry and technology based applications are now build over the Internet as their underlying infrastructure, and cannot tolerate being threatened all the time by a completely anonymous person behind the seen seeking the proper moment to strike. Meanwhile, Internet Attribution is no longer an add-on, but an obligation.&lt;br /&gt;
&lt;br /&gt;
In this paper, we have presented some formal definitions of attribution, why is it crucial to attribute, level of attribution would be considered acceptable and where the roots of difficulty lies behind achieving such level. Moreover, we have proposed a background about current attribution systems and a brief discussion about the reason of their survival and their point of failure as well. We also populated a list of requirements that must be fulfilled by any system aiming to acquire Internet attribution. Finally, we proposed a potential framework for a system that has that should  fulfills the mentioned requirements and that should have the ability to achieve an acceptable level of Internet attribution. Pros, and Vulnerabilities of the proposed framework are also discussed.&lt;br /&gt;
&lt;br /&gt;
=References=&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;/div&gt;</summary>
		<author><name>Omi</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=Internet_Attribution:_Between_Privacy_and_Cruciality&amp;diff=9450</id>
		<title>Internet Attribution: Between Privacy and Cruciality</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=Internet_Attribution:_Between_Privacy_and_Cruciality&amp;diff=9450"/>
		<updated>2011-04-11T23:41:49Z</updated>

		<summary type="html">&lt;p&gt;Omi: /* Introduction */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;b&amp;gt;Abstract&amp;lt;/b&amp;gt;&amp;lt;br/&amp;gt;&lt;br /&gt;
Present and past situations show a need for improved attribution systems, and arguably, scientific basis for properly functioning attribution systems are not yet defined. Lots of research have been focusing on attributing documents to authors for the sake of securing authorship rights and rapid identification of plagiarism. Many of those were revolving around the notion of using machine learning for linking articles to humans. Others proposed text classification and feature selection as a means of detecting the author of a document. Unfortunately, not that much research is addressing the problem of lack of robust attribution system over the internet. Authentication, as a means of attribution, has proved its efficiency but, needless to say, it is not applicable to authenticate every single packet hopping over the intermediate systems. This paper presents limits and advances in the attribution of actions to agents over the internet. It reviews current attribution technologies as well as the limits of those technologies. It also identifies the requirements of a proper attribution system and proposes a distributed (yet cooperative) approach for performing attribution over the internet.&lt;br /&gt;
&lt;br /&gt;
=Introduction=&lt;br /&gt;
Currently the Internet&#039;s infrastructure provides users partial anonymity. Unfortunately, that anonymity weakens the security for its users, because it entices advanced users to exploit that feature. The lack of online identification married with bad intentions entices criminals to commit a number of &amp;lt;i&amp;gt;Cyber Crimes&amp;lt;/i&amp;gt; without being caught, crimes which include: fraud, theft, forgery, impersonation, the distribution of Malware (and hence, botnets), traffic tampering, DoS, bandwidth hogging, etc. Consequently, internet attribution is a highly sensitive field that constitutes a cornerstone position within internet security. Needless to say, current solutions don&#039;t guarantee sufficient attribution nor are considered always applicable most of the time, hence, current system suffers the lack of a relatively robust attribution mechanism. In the light of this context, we need better methodologies for reaching an acceptable success level for attributing actions over the internet.&lt;br /&gt;
&lt;br /&gt;
In principle, attribution can be defined as the mechanism of binding a system-defined act to an agent. An agent is typically an entity that has the ability to commit what constitutes as an act. Within our focus, an agent could either be a person or a machine. It can also be defined as &amp;quot;determining the identity or location of an attacker or an attacker’s intermediary&amp;quot;&amp;lt;ref&amp;gt; [Institute for Defense Analyses, 2003]&amp;lt;/ref&amp;gt;. Problems like IP address spoofing, lack of interoperability in intermediate systems, dynamic nature of IP addresses, unawareness of system users with lots of &amp;lt;i&amp;gt;unknown&amp;lt;/i&amp;gt; packets sneaking to their machines and poor efficiency of firewalls and IDSs make this determination operation considerably difficult. In addition, some types of attacks are carried out to conceal the real agent behind an act. For instance, malware distribution (and hence the creation of botnets), and stepping stones aim to inflict vagueness around the correct &amp;lt;i&amp;gt;human&amp;lt;/i&amp;gt; source behind the scene.&lt;br /&gt;
&lt;br /&gt;
In this paper, we focus on defining what it takes to achieve an acceptably working attribution mechanism over the internet. To do that, we review past research works in attribution and discuss their common limitations as well as flaws and what can be done in common to enhance such schemes. We also argue that the lack of a globally deployed registration system that registers system users and grants them LICENSED access to the system enfeebles proper attribution and motivates illegitimate intrusions and irregular behavior. We show that employing the mentioned system would reduce the incentive of irregular behavior as well as remove the blaze of tempting anonymity, putting attackers under the risk of being easily caught. We also discuss how privacy, as a counter force to attribution, plays a big role in the internet and within its users and propose a framework that achieves relatively robust attribution mechanism and retains the privacy of users.&lt;br /&gt;
&lt;br /&gt;
Much of the research done in literature focuses on attribution that is done for keeping track of authorship, i.e., attributing text to authors. In this paper, we don&#039;t question the cruciality of attribution in this field, but rather we address a higher level of attribution of all possible actions to agents, which is sadly deemed slightly obsolete from the current research perspective.&lt;br /&gt;
&lt;br /&gt;
This paper starts with a quick background discussion on the current forms of attribution. Consequently, section 3 presents the dilemma of attribution, resolving the tension between attribution and privacy. Section 4 presents a fundamental set of requirements for achieving an acceptable level of attribution over the internet. In section 5, we propose an abstract framework for achieving attribution that mimics attribution in the real world. And finally, a conclusion is presented in section 6.&lt;br /&gt;
&lt;br /&gt;
==What is Attribution==&lt;br /&gt;
&#039;&#039;The act of attributing, especially the act of establishing a particular person as the creator of a work of art.&#039;&#039;&amp;lt;ref&amp;gt; The American Heritage® Dictionary of the English Language, Fourth Edition copyright ©2000 by Houghton Mifflin Company. Updated in 2009. Published by Houghton Mifflin Company.&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
We are concerned with one particular type of attribution; binding an act to a person. This may include intermediate attributions to other agents, for example (software, device, etc.) and then attribution from that agent to a person. Narrowing the problem further, we&#039;re only concerned about attribution in large, dynamic networks, and as such focusing on the internet. For sake of simplicity, in this paper, whenever we make mention of &amp;quot;attribution,&amp;quot; we will do so with reference to  &amp;quot;binding an act to a person on the internet&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
==Problem Statement==&lt;br /&gt;
The anonymity of the Internet makes it virtually impossible most of the time to properly identify who is who online. This is a double-ended sword as it not only provides a high level of privacy, but also makes it hard to identify people with malicious intent and cyber attackers.&lt;br /&gt;
&lt;br /&gt;
==Problem Motivation==&lt;br /&gt;
In today&#039;s world there is a growing need for strong attribution over the Internet mainly due to increased numbers of cyber attacks since its introduction in the 90’s. Many attackers have succeeded in causing both physical and financial damage to many companies over the Internet and going &amp;quot;Scott free&amp;quot;; due to the anonymity of the Internet, the attackers cannot be identified.&lt;br /&gt;
&lt;br /&gt;
==Scope==&lt;br /&gt;
In this paper we are addressing the issue of attribution by providing a list of requirements that need to be met in order to have a fully stable and efficient attribution system over the Internet.&lt;br /&gt;
&lt;br /&gt;
Although this is not a technical paper, a basic knowledge of computer science or computer systems will be required to fully understand some of the concepts and terminology discussed within this paper.&lt;br /&gt;
&lt;br /&gt;
=Background=&lt;br /&gt;
&lt;br /&gt;
The problem of attribution is not one that just came up; it has been around for decades but mostly to address identification issues as it pertained to websites or Internet service providers. A lot of different approaches towards attribution have been taken but mainly just to the extent of what that particular system stems to achieve. &lt;br /&gt;
This section gives an introduction to three of todays current attribution systems and discusses their pros and cons as they pertain to the type of global attribution we discuss in this paper.&lt;br /&gt;
&lt;br /&gt;
==Cookies==&lt;br /&gt;
Websites will sometimes need to remember information about a visit or a visitor in order to improve viewer experience. Cookies are text files that are created by a web server, and stored by a web browser on the user&#039;s computer. Cookies are used for many reasons; mainly authentication, remembering shopping cart information, and storing site preference. In actuality, they can be used to store any type of information that can be stored in a text file. When a page is requested the users web browser sends the request with the webserver’s cookie in the header part of the packet. All this is an automated process between the web browser and web server.  &lt;br /&gt;
&lt;br /&gt;
If at all the webserver receives a request without a cookie attached to it, it takes it as the first access that the browser is making to the server and sends one as part of the response which will be saved by the browser and resent on the next request. Cookies are usually encrypted in order for data security and information privacy, however they are still subject to the users control as they can be decrypted, modified and even deleted completely. It is also possible for a user to change their browser setting to not accept cookies at all. &lt;br /&gt;
&lt;br /&gt;
Cookies can either have an expiration date or not; this is the date that the browser deletes the cookie. Cookies without an expiration date are deleted when the browser is closed. Some browsers allow you to automatically set how long you want cookies to be stored.&lt;br /&gt;
&lt;br /&gt;
===Cookies as an Attribution System===&lt;br /&gt;
Looking at cookies as the type of attribution system we are looking for over the Internet, we will be able to achieve high precision on identifying computers that access a web server. However, The biggest draw back cookies have is that they can be deleted and manipulated. As such the use of cookies is not an effective attribution system.&lt;br /&gt;
&lt;br /&gt;
==IP Addresses==&lt;br /&gt;
IP or Internet Protocol Addresses are 32 bit numerical identifiers for devices (ie computer, printer, scanner etc..) on a network. The users Internet Service Provider (ISP) provide this number. The Internet Assigned Numbers Authority (IANA) is responsible for managing IP Address space allocation globally. It does this with the help of five Regional Internet registries (RIRs), responsible for allocating IP address blocks to their assigned regions ISPs, who in turn allocates them to their users.&lt;br /&gt;
&lt;br /&gt;
Any device that goes online and communicates using IP needs an IP address. Over the years there has been a growing number of users going online and a number of devices owned by the users to go online. One of the more common examples of this is the increase of Internet ready mobile phones. Our current addressing system used by our current Internet Protocol Version 4 (IPv4) contains only 32bits which means it is only able to uniquely address 232 addresses (4,294,967,296) which is less that the number of people on this planet today. The very last batch of IP addresses was assigned out to the five RIRs early February 2011&amp;lt;ref&amp;gt;http://arstechnica.com/tech-policy/news/2011/02/river-of-ipv4-addresses-officially-runs-dry.ars&amp;lt;/ref&amp;gt;. This was foreseen since the 90s, which sprung the development of a new Internet Protocol version, IPv6, which uses a 128bit addressing system began. &lt;br /&gt;
&lt;br /&gt;
IP addresses can either be static or dynamic. Static IP address is an address permanently assigned to a user due to configuration. A dynamic IP address is one in which a new address is assigned at every boot up. A Dynamic Host Configuration Protocol (DHCP) Server is usually responsible for assigning dynamic IP addresses to users. There are two main advantages for dynamic addressing; it eliminates the administrative cost involved with assigning static IP addresses, and it helps solve the issue of limited addressing space by allowing many devices “share” a single address if they go online at different times. Given the limited addressing space the ISPs have to work with, and to save administration costs, most ISPs assign dynamic IP addresses as standard a offer static IP address for a higher fee. &lt;br /&gt;
&lt;br /&gt;
===IP Addresses as an Attribution System===&lt;br /&gt;
Although Internet addresses can be used to attribute packets to its sender, it will fail as an effective attribution system for a few reasons, but mainly that attackers can spoof their IP addresses. Spoofing IP addresses will even foil the efforts of IP trace backs.&lt;br /&gt;
&lt;br /&gt;
==Authentication Systems==&lt;br /&gt;
In order for a website to make sure of the identity of who ever is visiting some pages, it provides an authentication system. This is usually a login name and password either assigned by the web server or chosen by the user. The biggest advantage this has is that now, attribution can be performed across different computers. The task of storing and securing login information is left to the web server, which is subject to attackers hacking into the server to stealing login information. &lt;br /&gt;
&lt;br /&gt;
Login systems are attached to user accounts that sometime require private information in order to be setup. If the web server’s security is not good enough, security breeches may in turn lead to identity theft. &lt;br /&gt;
&lt;br /&gt;
The process behind authentication systems is simple; using a typical web banking authentication system for instance, the process may go as follows. A user requests for a web account or one is automatically assigned to the user. The user sets up a password for accessing the account. When the user now goes to the website he is requested to “identify himself”, the user enters in his personal login information, the web server verifies this information with what it has stored in its database and either grants or denies access to the users personal page. &lt;br /&gt;
&lt;br /&gt;
Authentication systems are only ever used when it involves the users wanting some privacy on the webserver, or when the user wishes to store some form of information on the web server. &lt;br /&gt;
&lt;br /&gt;
===Authentication Systems as an Attribution System===&lt;br /&gt;
Authentication systems are very precise in the identification of people over the Internet and as such used by many companies. However it will have a serious privacy drawback if it were to be used as a global identification system. It will mean that virtually every web server will need to hold enough information about you to be able to identify you as an attacker. This would mean that to even a user randomly search for a cooking recipe online would need to login somehow to access the web server. People generally like the anonymity of surfing the web and a system like this will completely destroy this.&lt;br /&gt;
&lt;br /&gt;
=The Attribution Dilemma=&lt;br /&gt;
&lt;br /&gt;
There are many facets to designing an attribution system, besides the technological aspects. In addition to the technologies and/or infrastructure available, one must also consider the issue of privacy, because when trying to achieve strong attribution personal privacy is compromised. Any system must try to find a balance between strong attribution and privacy. The balance is influenced by the application of the system. For instance, in the case of financial institutions, the clients as well as the institute will place more emphasis on attribution. Such institutes would like to establish unassailable authorization and authentication systems, so as to guarantee (to some degree) that agents involved in the transactions are who they claim they are. On the opposite side of the spectrum, are situations where privacy takes precedence. Political dissidents and whistle-blowers are relatively protected because there is no strong attribution system in place, which allows them to distribute information (regardless of actual usefulness or goodness of it) and keep their identity secret. It is clear that single universal set of rules cannot satisfy these two cases. It is also clear that, in pretty abstract fashion, privacy is inversely proportional to attribution. While designing an attribution system one needs not only to decide on this ration for some particular case, but rather make this ratio dynamically changed depending on the case. &lt;br /&gt;
&lt;br /&gt;
Assuming such a ratio is found, another issue arises. Can the use of private information to track or punish a person be completely justified? Especially if it oversteps their privacy. One might think that this question is a little bit out of the scope of our paper. However, such ethical arguments must be addressed prior to designing, because a system that compromises individual privacy and protection can not be utilized. &lt;br /&gt;
&lt;br /&gt;
There are other topics that attribution system must answer. Who should have the authority to attribute? What information can they attributed? And why do they need it? How is attribution achieved or measured?  How accurate are IP-traceback, stepping stone authentications, link identifications and packet filtering in wedging packets to agents? How much can intermediate systems&#039; cooperation contribute to achieving attribution? How to deal with misleading data sources hiding behind botnets and concealing identities via stepping stones? &lt;br /&gt;
&lt;br /&gt;
==Why do we need Attribution==&lt;br /&gt;
&lt;br /&gt;
Attribution system has many useful applications. The identification property can useful at establishing the client’s identity for Online Banking, identifying the involving party in eCommerce transaction, and can be taken advantage by marketers for more targeting Web advertisements.&lt;br /&gt;
&lt;br /&gt;
Financial matters are not the only incentive for a strong attribution system. Establishing strong identification mechanism can provide better protection against cyber attacks. When the source of an attack can be recognize, then the proper authorities can prosecute the perpetrators of such crimes as: DoS, DDos, computer fraud, forgery and identity theft, sniffing private traffic, distributing illegal traffic and malware, spam,  illegal and undesirable intrusions.&lt;br /&gt;
&lt;br /&gt;
==Why is it difficult to achieve Attribution?==&lt;br /&gt;
&lt;br /&gt;
The problem rise largely due to how the Internet is designed. It does not have strong identification mechanisms, which makes it relatively anonymous for users. Moreover, most current solutions are based on the same structure and work within the same scope, thus, can only reduce the number of potentially destructive acts or just deal with the consequences. Of course, no system can completely prevent against destructive attempts, but some potentially good attribution system should make such attempts highly undesirable and &amp;quot;costly&amp;quot; for an attacker.&lt;br /&gt;
 &lt;br /&gt;
The issue of lack of attribution on the web mostly arises whenever security is compromised. When you&#039;re bombarded with spam, or when a system is under a DoS attack attribution becomes a more appealing notion. Getting a balance between security and privacy is tricky, because once attacks are tracked so will all other traffic. Also, depending on the type of the senders and receivers, different attribution policy will be required.&lt;br /&gt;
&lt;br /&gt;
In the ideal world, every action on the internet could be bound to a machine and thus to a person. This is done by examining the source IP printed on each moving packet, locating the geographical location of this IP, consulting the ISP covering the location and identifying the person. If an act requires strict attribution (like checking and sending emails), authentication is used. &lt;br /&gt;
There are many existing methods that attempt to identify the source of an act, like IP traceback. There are problems with trying to identify the source by its IP address. For instance, it can be spoofed, which leads to misleads or inconclusive geographical location. IP addresses are not permanently bound to a single account, which makes linking IP to the appropriate person not concrete. IP traceback can be improved but that would require global cooperation of intermediate system, which currently does not exist.&lt;br /&gt;
&lt;br /&gt;
In networks, users are not aware of all packets that are received by their machines, which mean users would not be aware of malware distribution, the creation of botnets and other actions taken by their machine without their approval and triggered by other a network user. Firewalls and packet filters can be used to address such problems, but they are not very efficient. Also, it is not practical to authenticate every single action on the internet. &lt;br /&gt;
&lt;br /&gt;
There are attacks that designed specifically to prevent correct attribution. It is used for identity theft and distribution of malware. Stepping stone attack is a common way of attributing attacks to anonymity by using multiple public random agents(as stepping stones) to reach the victim in order to conceal the attacking source. &amp;lt;ref name=&amp;quot;ref1&amp;quot;&amp;gt;S. Staniford-Chen and L. T. Heberlein. Holding intruders accountable on the internet. In SP ’95: Proceedings of the 1995 IEEE Symposium on Security and Privacy, page 39, Washington, DC, USA, 1995. IEEE Computer Society.&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Requirements for an Internet Attribution System=&lt;br /&gt;
&lt;br /&gt;
It is hard to describe some hypothetical attribution system in detail, because there are many issues and complicated dependencies, and a lot of questions to answer or at least to try to answer before one can even think of implementing such a system. In this section we are trying to define high-level requirements for a good attribution system, while definition of good attribution system is not so clear, we take into account everything we have talked above. That is, the following requirements try to define the system in a way that avoids current problems, achieves high degree of attribution and remains realistic. &lt;br /&gt;
&lt;br /&gt;
We have separated those requirements in three sections: general requirements define the idea and overall goal of the system in high level, abstract terms. Deployment requirements set ground rules for deployability that makes sense in such a huge network as internet and human society Practice requirements define the way system works, behaves and interacts with other bodies.&lt;br /&gt;
&lt;br /&gt;
==General==&lt;br /&gt;
&lt;br /&gt;
First and most obvious requirement for any system is usually put for sake of consistency: main requirement for internet attribution system is simple: it needs to attribute, or, more formally, any potentially destructive act should be traceable to an agent (person and/or organization, group, etc). It is important to consider different natures of agents, because the goal of attribution system is not necessarily to narrow down the search to one particular person, but rather to find the body responsible for an act(s) regardless of their actual structure. It might be one person after all. In other words, even though actions are done mostly by a single person, they are not necessarily the ones who&#039;s responsible for a decision to do so. A good real world analogy is an assassin and some body (person or a group) paying him. Good attribution system should not lead to assassin alone, but rather should be designed the way that responsible bodies are the ones to be discovered. Yet, we accept the notion that by the end of the day there is some person or several persons, human brings, responsible for an action. It is essential, because, as practice shows, for example, determining the source of DoS-attack is relatively simple, but most of the time this source is not the one who is responsible, but rather a victim itself.&lt;br /&gt;
&lt;br /&gt;
It is easy to imagine a system in which less crime and misuse is the only acceptable way to do things, and many writers and movie directors exploit this idea in futuristic, science fiction and anti-utopian plots. Unfortunately, applying any of this sort of ideas to real world today is not possible, because a lot of laws and moral principles are already in place, some of which are not perfect, but widely accepted and most have reasons to exist. Attribution system that we&#039;re looking for should take legal and moral issues into account, naturally, should not violate and/or contradict any of them. This important requirement comes somewhat together with incremental deployability that we&#039;re going to discuss later.&lt;br /&gt;
&lt;br /&gt;
In general, an attribution system should be universal and global, and details of these terms will be discussed later.&lt;br /&gt;
&lt;br /&gt;
==Deployment==&lt;br /&gt;
It is relatively easy to discuss the design of the system, than it is to implement the design. The deployment of they system does not need to be instant and massive. Even though a global attribution system will have a lot of pressure on it, internet should not depend on it entirely, the underlying network should still remain functional, even if the attribution system goes down. In other words, attribution system should be loosely coupled to the system it works in. &lt;br /&gt;
&lt;br /&gt;
As discussed before, (and this could be said about any global system on the internet) such a system should be incrementally deployable, so that smooth, step-by-step, subnetwork-by-subnetwork integration is possible. This is important not only because of virtual impossibility to restart or reconfigure the whole internet at once. This incremental way of embedding an attribution system should be more secure (bugs in software and mistakes in design can be fixed while on a small scale), so that by the end of cycle, when the whole internet is wired, the attribution system is field-tested and analyzed several times by different bodies. &lt;br /&gt;
&lt;br /&gt;
Very important, but controversial subject, is adoption of the system within some set of rules or laws (state laws, government regulations, corporate rules and principles, etc.). System should allow easy adoption for different cases, at the same time it should remain universal and global. It should act like a public tool any group can use, but nobody should be able to misuse it or use in non-legal way. The big decision designers will have to make is the one regarding this line between dynamic adoptability and universality. Luckily, this sort of deepness goes beyond the scope of our paper.&lt;br /&gt;
&lt;br /&gt;
Companies and organizations sometimes loose millions of dolars due to attacks and other cyber-crimes done to them, and some issues can be dealt with by spending more resources (memory, bandwidth on servers, etc), or, in other words, spending more money. The overall cost of setting up and maintaining the attribution system for a particular body (person, organization, network) should be considerably less than average losses under current lack of attribution (e.g. DoS, identity theft, etc).&lt;br /&gt;
&lt;br /&gt;
==Practice==&lt;br /&gt;
&lt;br /&gt;
Attribution mapping should not be a bijection, in other words action should map to person, but not vice versa. That it, nobody should be able to use the system to answer the question &amp;quot;what person X did/does?&amp;quot;. Not only the system should not know the answer, it should not be possible to know the answer; the question &amp;quot;who did act X&amp;quot; is the one should be answered. This can be thought of as part of requirement about not violating current laws and moral principles, but is put as a separate requirement, since it is very important to draw a line between attribution system and surveillance. The goal is not only to make attribution system attribute, but also to make it impossible to use it in other way – for surveillance, spying, etc.&lt;br /&gt;
&lt;br /&gt;
Since this global system operates on the internet, it might not be a great idea to put names of people into traceability database. It makes much more sense to assign unique IDs to everyone who is using the network. And in case a crime is committed, and the agent of some act need to be determined, then the recorded ID will be searched for in the police or government database. It should be some trusted entity (government, corporation, police, some public good-like system, etc) that stores the mapping between IDs and real names. This mapping should only be revealed when needed and when there is enough evidence or motivation to do so. Traceability information (namely, unique iDs) should be distributed and it is crucial to make it impossible to collect all the information in one place.&lt;br /&gt;
&lt;br /&gt;
Of course, it is not always the case that some trusted (by everyone) body exists, but generally we have governments and/or agencies we trust. It is important to divide the information between public and trusted body in a way allowing them to cooperate in time of need and not allowing to misuse the system from any side.&lt;br /&gt;
&lt;br /&gt;
=Proposed Framework=&lt;br /&gt;
In this section, we will propose a potential framework and argue that it is able to fulfill the requirements listed in the former section. The proposed framework works under the core principle &amp;quot;An act cannot use network resources nor can it be routed if it is anonymously bound&amp;quot;. Firstly, we start by defining some terminologies that will be used within the scope of this section:&lt;br /&gt;
* &amp;lt;i&amp;gt;Agent&amp;lt;/i&amp;gt; (Ag): the human-device pairing that sits on an end system and keeps transmitting/receiving packets.&lt;br /&gt;
* &amp;lt;i&amp;gt;Machines/Devices&amp;lt;/i&amp;gt; (Md): any piece of hardware that has access capability. It can either be a PDA, a laptop, a notebook, a PC, an Network Interface Card, or even a mere home made chip that can externally communicate wired or wireless to send or receive digital packets.&lt;br /&gt;
* &amp;lt;i&amp;gt;Identification Stamp&amp;lt;/i&amp;gt; (IS): a series of bits that binds a human unique identification (iris intricate structure or fingerprint) with a unique feature of an Md. So, for an Md like a Network Interface Card, the MAC address would be that feature. This biding is a particular representation for the official owner of the device, and who is deemed the primary responsible for any outgoing packet launched by his owned device. In other words, it is a unique identifier for an Ag.&lt;br /&gt;
* &amp;lt;i&amp;gt;Intermediate System Services&amp;lt;/i&amp;gt; (ISS): Services provided by intermediate systems (routers). For e.g., routing (main service), error checking, etc.&lt;br /&gt;
* &amp;lt;i&amp;gt;Globally Distributed Database&amp;lt;/i&amp;gt; (GDDB): a global DNS-like world-wide distributed storage system with an encrypted LUT that has relatively fast retrieval and update capabilities. It will be used to store ISs.&lt;br /&gt;
* &amp;lt;i&amp;gt;Licensing&amp;lt;/i&amp;gt;: a process of giving the permission to intermediate systems to provide ISS to all packets that are launched from the agent that is requesting the license. This process is simply adding new ISs to the GDDB.&lt;br /&gt;
&lt;br /&gt;
In principle, every leaping packet has a human owner that is either directly or indirectly responsible for it. Directly responsible when he is running an application that sends requests or initiates communication sessions to another end system. E.g., using the client side of applications supporting the protocols: HTTP, FTP, SIP, RTP, VoIP, etc. Indirect responsibility is when a user is running a system in the background that performs external (over the internet) system calls or is automated for periodic communication or automatic response to incoming requests. E.g., system clock synchronization (NTP), or the server side of the protocols: HTTP, FTP, etc. In addition, indirect responsibility also includes the responsibility of all packets launched by lower layer protocols that are being manipulated by higher layer ones. E.g., when a user sends an HTTP request, TCP sends connection initiation packets for handshaking schemes, ICMP packets that aims to seek and identify that status of a specific host, etc.&lt;br /&gt;
&lt;br /&gt;
The scope of this framework only addresses attribution over the internet and not any other &amp;quot;locally&amp;quot; defined networks underlying the IEEE standard definitions of the topologies PAN, LAN, MAN, or a WAN that do not use the global intermediate systems as their underlying infrastructure for packet delivery.&lt;br /&gt;
&lt;br /&gt;
The following sections show the assumptions for this framework to operate, the methodology of its operation, a list of pros, cons and vulnerabilities of the system and wrap up by a discussion on the proposed framework.&lt;br /&gt;
==Assumptions==&lt;br /&gt;
For starters: Jurisdiction. This frame work assumes the presence of a globally trustful entity(s) (e.g., government). This entity should act as the Internet&#039;s law enforcement, which will be deemed as the primary inspector and also the jurisdiction for regulating all kinds of cyber crimes and misbehavior. This entity may either be centralized or distributed. A centralized entity would be easier to deploy, but it will suffer from a single point of failure. A distributed entity would obviously perform better as it will be able to scale with the growth of the system users as well as conform to diverse regional laws, regulations, customs and traditions.&lt;br /&gt;
&lt;br /&gt;
Secondly: &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt;. We assume that a &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt; is deployed, which acts as a &amp;quot;database&amp;quot; for storing &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt;s. Symmetric key encryption should be used to protect that system as it will only be accessed through two types of users. Routers, which should be able to access this database ONLY for read operations. And the trustful entity (defined in the previous assumption) which should be able to access for read/write operations. Both users must be strictly authenticated, for being able to decrypt the contents or to append. In addition, this distributed system must guarantee almost zero latency in the read operations as it will be heavily relied on for every single hop made by a packet at the Internet intermediate system. A standardization protocol would be required to define the syntax and semantics as well as the nature of the way that the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt; subsystems would communicate with.&lt;br /&gt;
&lt;br /&gt;
Thirdly: Ownership. We assume that every &amp;lt;i&amp;gt;Md&amp;lt;/i&amp;gt; should be officially owned by a human. This owner is deemed as the official responsible for that &amp;lt;i&amp;gt;Md&amp;lt;/i&amp;gt;, and who would also be accused if his &amp;lt;i&amp;gt;Md&amp;lt;/i&amp;gt; found to misbehave or to launch malicious packets. The owning relationship between persons and machines is one-to-many. That is to say, a person can officially own one or more machines but a machine can only be owned by one person.&lt;br /&gt;
&lt;br /&gt;
Finally: IP packets. Our proposed frame work assumes that within the frame format of the IP packets, a header is added by the network layer that includes the &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; of the &amp;lt;i&amp;gt;Ag&amp;lt;/i&amp;gt; owning the packet.&lt;br /&gt;
&lt;br /&gt;
==Methodology==&lt;br /&gt;
Basically, this framework works by stalling the propagation of a packet that is either unattributed or forged with a fake &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt;. A fake &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; is defined as:&lt;br /&gt;
* Either having a false unique chip identifier that refers to an imaginary &amp;lt;i&amp;gt;Md&amp;lt;/i&amp;gt;.&lt;br /&gt;
* Or having a false unique human identifier that refers to an imaginary human.&lt;br /&gt;
* Or having a misleading binding of a human to a machine. i.e., claiming that some machine &amp;quot;X&amp;quot; belongs to some human &amp;quot;Y&amp;quot;, but in reality, &amp;quot;Y&amp;quot; is not the owner of &amp;quot;X&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Noticeably, the routers, as primary constituents to the intermediate systems, should refrain from routing any data packets that are not fully attributed. As they are the main driving power behind delivering all malicious or benign packets, they should have great responsibility in achieving highly reliable attribution mechanism.&lt;br /&gt;
&lt;br /&gt;
A description of the system, based on the chronological order, is as follows. First, any newly bought machine or even a home made device, must be licensed from the trustful entity. The trustful entity generates the &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt;, accesses the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt; for adding it and provides the user with his &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; for being able to add it to the header of his launched packets. The user should preserve his unique &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; in a secret place and should deal with it exactly the same way he does with his credit card numbers and social insurance numbers. If a device is not licensed (i.e., its &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; was not inserted to the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt;), it doesn&#039;t not benefit from &amp;lt;i&amp;gt;ISS&amp;lt;/i&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
From the intermediate system&#039;s perspective, when a router receives a packet, it verifies its &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt;. This is done by consulting the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt; which is in turn done by sending a copy of the &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; printed on the packet to the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt;. If a packet is found to be not having an &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt;, the packet is prevented from benefiting from &amp;lt;i&amp;gt;ISS&amp;lt;/i&amp;gt; and is simply dropped. If the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt; replies with an invalid &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt;, again, the packet is dropped. If the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt; replies with a success, this will mean that the packet&#039;s printed &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; is verified. Thus, the packet benefits from the &amp;lt;i&amp;gt;ISS&amp;lt;/i&amp;gt; and gets routed throughout the way.&lt;br /&gt;
&lt;br /&gt;
==Pros==&lt;br /&gt;
&lt;br /&gt;
* It succeeds to perform an acceptable level of attribution relative to the one achieved in the real world.&lt;br /&gt;
* It avoids anonymous attacks since a non-attributed packet will fail to reach its destination.&lt;br /&gt;
* Attribution information is not publicly available to everyone, only available to trustful entities.&lt;br /&gt;
** Hence, it retains personal privacy.&lt;br /&gt;
* The system enjoys full automation. According to the system&#039;s theory of operation, &amp;lt;i&amp;gt;ISS&amp;lt;/i&amp;gt; are either provided or not based on the validation of the &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; printed on each packet.&lt;br /&gt;
* The system avoids all forms of cyber crimes that are executed by unknown &amp;lt;i&amp;gt;Ag&amp;lt;/i&amp;gt;s.&lt;br /&gt;
&lt;br /&gt;
==Cons==&lt;br /&gt;
&lt;br /&gt;
* The verification process of the &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; on each packet creates undesirable delays potential bottlenecks at the routers.&lt;br /&gt;
* The framework is not considered easy to deploy since the assumptions are deemed relatively complex.&lt;br /&gt;
* Since attribution is not public to everyone, custom content generation cannot be achievable.&lt;br /&gt;
* Large number of &amp;lt;i&amp;gt;Md&amp;lt;/i&amp;gt;s in University Laboratories, Incorporations, Hospitals, Schools, etc should all be licensed before being able to be used. Normally, in these cases, &amp;lt;i&amp;gt;Md&amp;lt;/i&amp;gt;s would be bound to one single person.&lt;br /&gt;
* For security purposes, licenses should be periodically renewable, however, this is not considered an easy topic.&lt;br /&gt;
&lt;br /&gt;
==Vulnerabilities==&lt;br /&gt;
&lt;br /&gt;
* Botnets&lt;br /&gt;
** The system requires full user awareness with what lies under the hood. Since they are the sole responsible persons for their &amp;lt;i&amp;gt;Md&amp;lt;/i&amp;gt;s, they should be aware with all packets sneaking into their machines for avoiding the distribution of malware, and the later formation of botnets.&lt;br /&gt;
** Users are responsible for strictly securing their &amp;lt;i&amp;gt;Md&amp;lt;/i&amp;gt;s exactly the same they do when they lock their care after leaving it in a car park.&lt;br /&gt;
* A successful attack on the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt; would cause whole system failure. If this attack succeeds to alter, the attacker can append an imaginary &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt;. If the attack succeeds to read, the attacker can choose to declare his malicious packets under the responsibility of some other &amp;lt;i&amp;gt;Ag&amp;lt;/i&amp;gt;, forgery.&lt;br /&gt;
&lt;br /&gt;
==Discussion==&lt;br /&gt;
The proposed framework&#039;s main focus is to ensure that any leaping packet is moving because it is known who does it belong to. Recalling that in the real world, if a person doesn&#039;t have an identity (like a social insurance number), he can&#039;t benefit from services. For instance, he can&#039;t open a bank account, can&#039;t buy a house, can&#039;t trade, nor can he even get a job. Obviously, the proposed system mimics the behavior of the real world. Of course, the real world is not ideal in criminal tracing and law enforcement, however, it&#039;s level of attribution would definitely beat that of the Internet in the meantime. We can say that current internet attribution in comparison to the real world attribution is considered a failure. An acceptable form of internet attribution would be considered basically acceptable if it, at least, provides as much attribution as the real world attribution does. We could say that the proposed framework would guarantee such level.&lt;br /&gt;
&lt;br /&gt;
The proposed framework succeeds to fulfill all of the general requirements. Clearly, any potentially destructive act is definitely traceable to an &amp;lt;i&amp;gt;Ag&amp;lt;/i&amp;gt; or else, it will not take place. The framework also omits violation to any privacy related laws since the attribution information are not publicly available. More specifically, they are only available to the agreed on trusted entity. The framework also fulfills all of the deployment requirements. As can be seen, the more areas the system is deployed in, the better for the public good, hence, it is incrementally deployable. The framework is not very loosely coupled but can still allow the Internet to operate if it is suppressed. It is also adaptable to different rules and regulations since it leaves the punishment decision to the jurisdiction of the country with the source of the crime committer. Whatever the cost is to deploy that system, it should still be less than the cost of the losses due to cyber crimes. That is because the cost of losses due to unknown &amp;quot;future&amp;quot; attacks cannot be easily determined. As for the practice requirements, the proposed framework theory of operation doesn&#039;t permit mapping of a certain &amp;lt;i&amp;gt;Ag&amp;lt;/i&amp;gt; to a set of actions, it only permits the mapping of a set of actions to an &amp;lt;i&amp;gt;Ag&amp;lt;/i&amp;gt;, which satisfies non-bijection. Also, because of the distributed nature of the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt;, all traceability information is impossible to collect at one place. The trusted entities are only the ones that generate the &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; from the personal data, hence, they are the only ones having this piece of information. To conclude, the framework successfully satisfies all the requirements.&lt;br /&gt;
&lt;br /&gt;
=Conclusion=&lt;br /&gt;
The human nature refuses any change at the first sight. In 1769, Jonathan Holguinisburg finalized the invention of the first Cugnot Steam Trolly &amp;lt;ref&amp;gt;ckermann, Erik (2001). World History of the Automobile. SAE Press, p.14. [Online]. Available: http://books.google.com/books?id=yLZeQwqNmdgC&amp;amp;printsec=frontcover&amp;amp;source=gbs_ge_summary_r&amp;amp;cad=0#v=onepage&amp;amp;q&amp;amp;f=false &amp;lt;/ref&amp;gt; which became nowadays automobiles. In 1903, car licensing began in North America, that is 134 years after Holguinishburg invention. Licensing started when people began realizing that a car could act as a lethal weapon, which therefore must be approved by the government to be driven by some person, and must also be formally linked to an owner who is considered the primary responsible for it.&lt;br /&gt;
&lt;br /&gt;
Meanwhile, the Internet is passing through the same phase. People would blindly deny, refuse and object such &amp;quot;wicked&amp;quot; attribution systems, but later on, Internet licensing will be part of everyone&#039;s life, just like their driving license. Needless to say, the Internet is becoming more crucial to many applications and in the same time more vulnerable to different types of attacks. Obviously, it is being injected in the &amp;quot;blood&amp;quot; of a vast, yet exponentially growing, number of applications which are time and data sensitive, and which don&#039;t leave room for cyber crimes, unauthorized intrusion, traffic tampering, bandwidth hogging, etc. In addition, much of the industry and technology based applications are now build over the Internet as their underlying infrastructure, and cannot tolerate being threatened all the time by a completely anonymous person behind the seen seeking the proper moment to strike. Meanwhile, Internet Attribution is no longer an add-on, but an obligation.&lt;br /&gt;
&lt;br /&gt;
In this paper, we have presented some formal definitions of attribution, why is it crucial to attribute, level of attribution would be considered acceptable and where the roots of difficulty lies behind achieving such level. Moreover, we have proposed a background about current attribution systems and a brief discussion about the reason of their survival and their point of failure as well. We also populated a list of requirements that must be fulfilled by any system aiming to acquire Internet attribution. Finally, we proposed a potential framework for a system that has that should  fulfills the mentioned requirements and that should have the ability to achieve an acceptable level of Internet attribution. Pros, and Vulnerabilities of the proposed framework are also discussed.&lt;br /&gt;
&lt;br /&gt;
=References=&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;/div&gt;</summary>
		<author><name>Omi</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=Internet_Attribution:_Between_Privacy_and_Cruciality&amp;diff=9444</id>
		<title>Internet Attribution: Between Privacy and Cruciality</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=Internet_Attribution:_Between_Privacy_and_Cruciality&amp;diff=9444"/>
		<updated>2011-04-11T23:10:46Z</updated>

		<summary type="html">&lt;p&gt;Omi: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;b&amp;gt;Abstract&amp;lt;/b&amp;gt;&amp;lt;br/&amp;gt;&lt;br /&gt;
Present and past situations show a need for improved attribution systems, and arguably, scientific basis for properly functioning attribution systems are not yet defined. Lots of research have been focusing on attributing documents to authors for the sake of securing authorship rights and rapid identification of plagiarism. Many of those were revolving around the notion of using machine learning for linking articles to humans. Others proposed text classification and feature selection as a means of detecting the author of a document. Unfortunately, not that much research is addressing the problem of lack of robust attribution system over the internet. Authentication, as a means of attribution, has proved its efficiency but, needless to say, it is not applicable to authenticate every single packet hopping over the intermediate systems. This paper presents limits and advances in the attribution of actions to agents over the internet. It reviews current attribution technologies as well as the limits of those technologies. It also identifies the requirements of a proper attribution system and proposes a distributed (yet cooperative) approach for performing attribution over the internet.&lt;br /&gt;
&lt;br /&gt;
=Introduction=&lt;br /&gt;
Currently the Internet infrastructure provides users partial anonymity. Unfortunately, that anonymity weakens the security for its users, because it incites advance users to exploit that feature. The lack of online identification married with bad intentions entices criminals to commit a number of &amp;lt;i&amp;gt;Cyber Crimes&amp;lt;/i&amp;gt; without being caught, crimes which include: fraud, theft, forgery, impersonation, the distribution of Malware (and hence, botnets), traffic tampering, DoS, bandwidth hogging, etc. Consequently, internet attribution is a highly sensitive field that constitutes a cornerstone position within internet security. Needless to say, current solutions don&#039;t guarantee sufficient attribution nor are considered always applicable in most of the time, hence, current system suffers the lack of a relatively robust attribution mechanism. In the light of this context, we need better methodologies for reaching an acceptable success level for attributing actions to persons.&lt;br /&gt;
&lt;br /&gt;
In principle, attribution can be defined as the mechanism of binding a system-defined act to an agent. An agent is typically an entity that has the ability to commit what constitutes an act. Within our focus, an agent could either be a person or a machine. It can also be defined as &amp;quot;determining the identity or location of an attacker or an attacker’s intermediary&amp;quot;&amp;lt;ref&amp;gt; [Institute for Defense Analyses, 2003]&amp;lt;/ref&amp;gt;. Problems like IP address spoofing, lack of interoperability in intermediate systems, dynamic nature of IP addresses, unawareness of system users with lots of &amp;lt;i&amp;gt;unknown&amp;lt;/i&amp;gt; packets sneaking to their machines and poor efficiency of firewalls and IDSs make this determination operation considerably difficult. In addition, some types of attacks are carried out to conceal the real agent behind an act. For instance, malware distribution (and hence the creation of botnets), and stepping stones aim to inflict vagueness around the correct &amp;lt;i&amp;gt;human&amp;lt;/i&amp;gt; source behind the scene.&lt;br /&gt;
&lt;br /&gt;
In this paper, we focus on defining what it takes to achieve an acceptably working attribution mechanism over the internet. To do that, we review past research works in attribution and discuss their common limitations as well as flaws and what can be done in common to enhance such schemes. We also argue that the lack of a globally deployed registration system that registers system users and grants them LICENSED access to the system enfeebles proper attribution and motivates illegitimate intrusions and irregular behavior. We show that employing the mentioned system would reduce the incentive of irregular behavior as well as remove the blaze of tempting anonymity, putting attackers under the risk of being easily caught. We also discuss how privacy, as a counter force to attribution, plays a big role in the internet and within its users and propose a framework that achieves relatively robust attribution mechanism and retains the privacy of users.&lt;br /&gt;
&lt;br /&gt;
Much of the research done in literature focuses on attribution that is done for keeping track of authorship, i.e., attributing text to authors. In this paper, we don&#039;t question the cruciality of attribution in this field, but rather we address a higher level of attribution of all possible actions to agents, which is sadly deemed slightly obsolete from the current research perspective.&lt;br /&gt;
&lt;br /&gt;
This paper starts by a quick background discussion on the current forms of attribution. Consequently, section 3 presents the dilemma of attribution, resolving the tension between attribution and privacy. Section 4 presents a fundamental set of requirements for achieving an acceptable level of attribution over the internet. In section 5, we propose an abstract framework for achieving attribution that mimics attribution in the real world. And finally, a conclusion is presented in section 6.&lt;br /&gt;
&lt;br /&gt;
==What is Attribution==&lt;br /&gt;
&#039;&#039;The act of attributing, especially the act of establishing a particular person as the creator of a work of art.&#039;&#039;&amp;lt;ref&amp;gt; The American Heritage® Dictionary of the English Language, Fourth Edition copyright ©2000 by Houghton Mifflin Company. Updated in 2009. Published by Houghton Mifflin Company.&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
We are concerned with one particular type of attribution - binding an act to a person. This may include intermediate attributions, for example, an act to an agent (software, device, etc.) and then attribution of an agent to person. Narrowing the problem further, we&#039;re only concerned about attribution in large, dynamic networks, like internet. For sake of simplicity, in this paper we&#039;re going to reference to &amp;quot;binding an act to a person on the internet&amp;quot; as &amp;quot;attribution&amp;quot;, while other types of attributing will be defined separately.&lt;br /&gt;
&lt;br /&gt;
==Problem Statement==&lt;br /&gt;
The anonymity of the Internet makes it virtually impossible most of the time to properly identify who is who online. This is a double-ended sword as it not only provides a high level of privacy, but also makes it hard to identify people with malicious intent and cyber attackers.&lt;br /&gt;
&lt;br /&gt;
==Problem Motivation==&lt;br /&gt;
In today&#039;s world there is a growing need for strong attribution over the Internet mainly due to increased numbers of cyber attacks since its introduction in the 90’s. Many attackers have succeeded in causing both physical and financial damage to many companies over the Internet and going Scott free; due to the anonymity of the Internet, the attackers cannot be identified.&lt;br /&gt;
&lt;br /&gt;
==Scope==&lt;br /&gt;
In this paper we are addressing the issue of attribution by providing a list of requirements that need to be met in order to have a fully stable and efficient attribution system over the Internet.&lt;br /&gt;
&lt;br /&gt;
Although this is not a technical paper, a basic knowledge of computer science or computer systems will be required, to fully understand some of the concepts and terminology discussed within this paper,&lt;br /&gt;
&lt;br /&gt;
=Background=&lt;br /&gt;
&lt;br /&gt;
The problem of attribution is not one that just came up; it has been around for decades but mostly to address identification issues as it pertained to websites or Internet service providers. A lot of different approaches towards attribution have been taken but mainly just to the extent of what that particular system stems to achieve. &lt;br /&gt;
This section gives an introduction to three of todays current attribution systems and discusses their pros and cons as they pertain to the type of global attribution we discuss in this paper.&lt;br /&gt;
&lt;br /&gt;
==Cookies==&lt;br /&gt;
Websites will sometimes need to remember information about a visit or a visitor in order to improve viewer experience. Cookies are text files that are created by a web server, and stored by a web browser on the user&#039;s computer. Cookies are used for many reasons; mainly authentication, remembering shopping cart information, and storing site preference. In actuality, they can be used to store any type of information that can be stored in a text file. When a page is requested the users web browser sends the request with the webserver’s cookie in the header part of the packet. All this is an automated process between the web browser and web server.  &lt;br /&gt;
&lt;br /&gt;
If at all the webserver receives a request without a cookie attached to it, it takes it as the first access that the browser is making to the server and sends one as part of the response which will be saved by the browser and resent on the next request. Cookies are usually encrypted in order for data security and information privacy, however they are still subject to the users control as they can be decrypted, modified and even deleted completely. It is also possible for a user to change their browser setting to not accept cookies at all. &lt;br /&gt;
&lt;br /&gt;
Cookies can either have an expiration date or not; this is the date that the browser deletes the cookie. Cookies without an expiration date are deleted when the browser is closed. Some browsers allow you to automatically set how long you want cookies to be stored.&lt;br /&gt;
&lt;br /&gt;
===Cookies as an Attribution System===&lt;br /&gt;
Looking at cookies as the type of attribution system we are looking for over the Internet, we will be able to achieve high precision on identifying computers that access a web server. However, The biggest draw back cookies have is that they can be deleted and manipulated. As such the use of cookies is not an effective attribution system.&lt;br /&gt;
&lt;br /&gt;
==IP Addresses==&lt;br /&gt;
IP or Internet Protocol Addresses are 32 bit numerical identifiers for devices (ie computer, printer, scanner etc..) on a network. The users Internet Service Provider (ISP) provide this number. The Internet Assigned Numbers Authority (IANA) is responsible for managing IP Address space allocation globally. It does this with the help of five Regional Internet registries (RIRs), responsible for allocating IP address blocks to their assigned regions ISPs, who in turn allocates them to their users.&lt;br /&gt;
&lt;br /&gt;
Any device that goes online and communicates using IP needs an IP address. Over the years there has been a growing number of users going online and a number of devices owned by the users to go online. One of the more common examples of this is the increase of Internet ready mobile phones. Our current addressing system used by our current Internet Protocol Version 4 (IPv4) contains only 32bits which means it is only able to uniquely address 232 addresses (4,294,967,296) which is less that the number of people on this planet today. The very last batch of IP addresses was assigned out to the five RIRs early February 2011&amp;lt;ref&amp;gt;http://arstechnica.com/tech-policy/news/2011/02/river-of-ipv4-addresses-officially-runs-dry.ars&amp;lt;/ref&amp;gt;. This was foreseen since the 90s, which sprung the development of a new Internet Protocol version, IPv6, which uses a 128bit addressing system began. &lt;br /&gt;
&lt;br /&gt;
IP addresses can either be static or dynamic. Static IP address is an address permanently assigned to a user due to configuration. A dynamic IP address is one in which a new address is assigned at every boot up. A Dynamic Host Configuration Protocol (DHCP) Server is usually responsible for assigning dynamic IP addresses to users. There are two main advantages for dynamic addressing; it eliminates the administrative cost involved with assigning static IP addresses, and it helps solve the issue of limited addressing space by allowing many devices “share” a single address if they go online at different times. Given the limited addressing space the ISPs have to work with, and to save administration costs, most ISPs assign dynamic IP addresses as standard a offer static IP address for a higher fee. &lt;br /&gt;
&lt;br /&gt;
===IP Addresses as an Attribution System===&lt;br /&gt;
Although Internet addresses can be used to attribute packets to its sender, it will fail as an effective attribution system for a few reasons, but mainly that attackers can spoof their IP addresses. Spoofing IP addresses will even foil the efforts of IP trace backs.&lt;br /&gt;
&lt;br /&gt;
==Authentication Systems==&lt;br /&gt;
In order for a website to make sure of the identity of who ever is visiting some pages, it provides an authentication system. This is usually a login name and password either assigned by the web server or chosen by the user. The biggest advantage this has is that now, attribution can be performed across different computers. The task of storing and securing login information is left to the web server, which is subject to attackers hacking into the server to stealing login information. &lt;br /&gt;
&lt;br /&gt;
Login systems are attached to user accounts that sometime require private information in order to be setup. If the web server’s security is not good enough, security breeches may in turn lead to identity theft. &lt;br /&gt;
&lt;br /&gt;
The process behind authentication systems is simple; using a typical web banking authentication system for instance, the process may go as follows. A user requests for a web account or one is automatically assigned to the user. The user sets up a password for accessing the account. When the user now goes to the website he is requested to “identify himself”, the user enters in his personal login information, the web server verifies this information with what it has stored in its database and either grants or denies access to the users personal page. &lt;br /&gt;
&lt;br /&gt;
Authentication systems are only ever used when it involves the users wanting some privacy on the webserver, or when the user wishes to store some form of information on the web server. &lt;br /&gt;
&lt;br /&gt;
===Authentication Systems as an Attribution System===&lt;br /&gt;
Authentication systems are very precise in the identification of people over the Internet and as such used by many companies. However it will have a serious privacy drawback if it were to be used as a global identification system. It will mean that virtually every web server will need to hold enough information about you to be able to identify you as an attacker. This would mean that to even a user randomly search for a cooking recipe online would need to login somehow to access the web server. People generally like the anonymity of surfing the web and a system like this will completely destroy this.&lt;br /&gt;
&lt;br /&gt;
=The Attribution Dilemma=&lt;br /&gt;
&lt;br /&gt;
There are many facets to designing an attribution system, besides the technological aspects. In addition to the technologies and/or infrastructure available, one must also consider the issue of privacy, because when trying to achieve strong attribution personal privacy is compromised. Any system must try to find a balance between strong attribution and privacy. The balance is influenced by the application of the system. For instance, in the case of financial institutions, the clients as well as the institute will place more emphasis on attribution. Such institutes would like to establish unassailable authorization and authentication systems, so as to guarantee (to some degree) that agents involved in the transactions are who they claim they are. On the opposite side of the spectrum, are situations where privacy takes precedence. Political dissidents and whistle-blowers are relatively protected because there is no strong attribution system in place, which allows them to distribute information (regardless of actual usefulness or goodness of it) and keep their identity secret. It is clear that single universal set of rules cannot satisfy these two cases. It is also clear that, in pretty abstract fashion, privacy is inversely proportional to attribution. While designing an attribution system one needs not only to decide on this ration for some particular case, but rather make this ratio dynamically changed depending on the case. &lt;br /&gt;
&lt;br /&gt;
Assuming such a ratio is found, another issue arises. Can the use of private information to track or punish a person be completely justified? Especially if it oversteps their privacy. One might think that this question is a little bit out of the scope of our paper. However, such ethical arguments must be addressed prior to designing, because a system that compromises individual privacy and protection can not be utilized. &lt;br /&gt;
&lt;br /&gt;
There are other topics that attribution system must answer. Who should have the authority to attribute? What information can they attributed? And why do they need it? How is attribution achieved or measured?  How accurate are IP-traceback, stepping stone authentications, link identifications and packet filtering in wedging packets to agents? How much can intermediate systems&#039; cooperation contribute to achieving attribution? How to deal with misleading data sources hiding behind botnets and concealing identities via stepping stones? &lt;br /&gt;
&lt;br /&gt;
==Why do we need Attribution==&lt;br /&gt;
&lt;br /&gt;
Attribution system has many useful applications. The identification property can useful at establishing the client’s identity for Online Banking, identifying the involving party in eCommerce transaction, and can be taken advantage by marketers for more targeting Web advertisements.&lt;br /&gt;
&lt;br /&gt;
Financial matters are not the only incentive for a strong attribution system. Establishing strong identification mechanism can provide better protection against cyber attacks. When the source of an attack can be recognize, then the proper authorities can prosecute the perpetrators of such crimes as: DoS, DDos, computer fraud, forgery and identity theft, sniffing private traffic, distributing illegal traffic and malware, spam,  illegal and undesirable intrusions.&lt;br /&gt;
&lt;br /&gt;
==Why is it difficult to achieve Attribution?==&lt;br /&gt;
&lt;br /&gt;
The problem rise largely due to how the Internet is designed. It does not have strong identification mechanisms, which makes it relatively anonymous for users. Moreover, most current solutions are based on the same structure and work within the same scope, thus, can only reduce the number of potentially destructive acts or just deal with the consequences. Of course, no system can completely prevent against destructive attempts, but some potentially good attribution system should make such attempts highly undesirable and &amp;quot;costly&amp;quot; for an attacker.&lt;br /&gt;
 &lt;br /&gt;
The issue of lack of attribution on the web mostly arises whenever security is compromised. When you&#039;re bombarded with spam, or when a system is under a DoS attack attribution becomes a more appealing notion. Getting a balance between security and privacy is tricky, because once attacks are tracked so will all other traffic. Also, depending on the type of the senders and receivers, different attribution policy will be required.&lt;br /&gt;
&lt;br /&gt;
In the ideal world, every action on the internet could be bound to a machine and thus to a person. This is done by examining the source IP printed on each moving packet, locating the geographical location of this IP, consulting the ISP covering the location and identifying the person. If an act requires strict attribution (like checking and sending emails), authentication is used. &lt;br /&gt;
There are many existing methods that attempt to identify the source of an act, like IP traceback. There are problems with trying to identify the source by its IP address. For instance, it can be spoofed, which leads to misleads or inconclusive geographical location. IP addresses are not permanently bound to a single account, which makes linking IP to the appropriate person not concrete. IP traceback can be improved but that would require global cooperation of intermediate system, which currently does not exist.&lt;br /&gt;
&lt;br /&gt;
In networks, users are not aware of all packets that are received by their machines, which mean users would not be aware of malware distribution, the creation of botnets and other actions taken by their machine without their approval and triggered by other a network user. Firewalls and packet filters can be used to address such problems, but they are not very efficient. Also, it is not practical to authenticate every single action on the internet. &lt;br /&gt;
&lt;br /&gt;
There are attacks that designed specifically to prevent correct attribution. It is used for identity theft and distribution of malware. Stepping stone attack is a common way of attributing attacks to anonymity by using multiple public random agents(as stepping stones) to reach the victim in order to conceal the attacking source. &amp;lt;ref name=&amp;quot;ref1&amp;quot;&amp;gt;S. Staniford-Chen and L. T. Heberlein. Holding intruders accountable on the internet. In SP ’95: Proceedings of the 1995 IEEE Symposium on Security and Privacy, page 39, Washington, DC, USA, 1995. IEEE Computer Society.&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Requirements for an Internet Attribution System=&lt;br /&gt;
&lt;br /&gt;
It is hard to describe some hypothetical attribution system in detail, because there are many issues and complicated dependencies, and a lot of questions to answer or at least to try to answer before one can even think of implementing such a system. In this section we are trying to define high-level requirements for a good attribution system, while definition of good attribution system is not so clear, we take into account everything we have talked above. That is, the following requirements try to define the system in a way that avoids current problems, achieves high degree of attribution and remains realistic. &lt;br /&gt;
&lt;br /&gt;
We have separated those requirements in three sections: general requirements define the idea and overall goal of the system in high level, abstract terms. Deployment requirements set ground rules for deployability that makes sense in such a huge network as internet and human society Practice requirements define the way system works, behaves and interacts with other bodies.&lt;br /&gt;
&lt;br /&gt;
==General==&lt;br /&gt;
&lt;br /&gt;
First and most obvious requirement for any system is usually put for sake of consistency: main requirement for internet attribution system is simple: it needs to attribute, or, more formally, any potentially destructive act should be traceable to an agent (person and/or organization, group, etc). It is important to consider different natures of agents, because the goal of attribution system is not necessarily to narrow down the search to one particular person, but rather to find the body responsible for an act(s) regardless of their actual structure. It might be one person after all. In other words, even though actions are done mostly by a single person, they are not necessarily the ones who&#039;s responsible for a decision to do so. A good real world analogy is an assassin and some body (person or a group) paying him. Good attribution system should not lead to assassin alone, but rather should be designed the way that responsible bodies are the ones to be discovered. Yet, we accept the notion that by the end of the day there is some person or several persons, human brings, responsible for an action. It is essential, because, as practice shows, for example, determining the source of DoS-attack is relatively simple, but most of the time this source is not the one who is responsible, but rather a victim itself.&lt;br /&gt;
&lt;br /&gt;
It is easy to imagine a system in which less crime and misuse is the only acceptable way to do things, and many writers and movie directors exploit this idea in futuristic, science fiction and anti-utopian plots. Unfortunately, applying any of this sort of ideas to real world today is not possible, because a lot of laws and moral principles are already in place, some of which are not perfect, but widely accepted and most have reasons to exist. Attribution system that we&#039;re looking for should take legal and moral issues into account, naturally, should not violate and/or contradict any of them. This important requirement comes somewhat together with incremental deployability that we&#039;re going to discuss later.&lt;br /&gt;
&lt;br /&gt;
In general, an attribution system should be universal and global, and details of these terms will be discussed later.&lt;br /&gt;
&lt;br /&gt;
==Deployment==&lt;br /&gt;
It is relatively easy to discuss the design of the system, than it is to implement the design. The deployment of they system does not need to be instant and massive. Even though a global attribution system will have a lot of pressure on it, internet should not depend on it entirely, the underlying network should still remain functional, even if the attribution system goes down. In other words, attribution system should be loosely coupled to the system it works in. &lt;br /&gt;
&lt;br /&gt;
As discussed before, (and this could be said about any global system on the internet) such a system should be incrementally deployable, so that smooth, step-by-step, subnetwork-by-subnetwork integration is possible. This is important not only because of virtual impossibility to restart or reconfigure the whole internet at once. This incremental way of embedding an attribution system should be more secure (bugs in software and mistakes in design can be fixed while on a small scale), so that by the end of cycle, when the whole internet is wired, the attribution system is field-tested and analyzed several times by different bodies. &lt;br /&gt;
&lt;br /&gt;
Very important, but controversial subject, is adoption of the system within some set of rules or laws (state laws, government regulations, corporate rules and principles, etc.). System should allow easy adoption for different cases, at the same time it should remain universal and global. It should act like a public tool any group can use, but nobody should be able to misuse it or use in non-legal way. The big decision designers will have to make is the one regarding this line between dynamic adoptability and universality. Luckily, this sort of deepness goes beyond the scope of our paper.&lt;br /&gt;
&lt;br /&gt;
Companies and organizations sometimes loose millions of dolars due to attacks and other cyber-crimes done to them, and some issues can be dealt with by spending more resources (memory, bandwidth on servers, etc), or, in other words, spending more money. The overall cost of setting up and maintaining the attribution system for a particular body (person, organization, network) should be considerably less than average losses under current lack of attribution (e.g. DoS, identity theft, etc).&lt;br /&gt;
&lt;br /&gt;
==Practice==&lt;br /&gt;
&lt;br /&gt;
Attribution mapping should not be a bijection, in other words action should map to person, but not vice versa. That it, nobody should be able to use the system to answer the question &amp;quot;what person X did/does?&amp;quot;. Not only the system should not know the answer, it should not be possible to know the answer; the question &amp;quot;who did act X&amp;quot; is the one should be answered. This can be thought of as part of requirement about not violating current laws and moral principles, but is put as a separate requirement, since it is very important to draw a line between attribution system and surveillance. The goal is not only to make attribution system attribute, but also to make it impossible to use it in other way – for surveillance, spying, etc.&lt;br /&gt;
&lt;br /&gt;
Since this global system operates on the internet, it might not be a great idea to put names of people into traceability database. It makes much more sense to assign unique IDs to everyone who is using the network. And in case a crime is committed, and the agent of some act need to be determined, then the recorded ID will be searched for in the police or government database. It should be some trusted entity (government, corporation, police, some public good-like system, etc) that stores the mapping between IDs and real names. This mapping should only be revealed when needed and when there is enough evidence or motivation to do so. Traceability information (namely, unique iDs) should be distributed and it is crucial to make it impossible to collect all the information in one place.&lt;br /&gt;
&lt;br /&gt;
Of course, it is not always the case that some trusted (by everyone) body exists, but generally we have governments and/or agencies we trust. It is important to divide the information between public and trusted body in a way allowing them to cooperate in time of need and not allowing to misuse the system from any side.&lt;br /&gt;
&lt;br /&gt;
=Proposed Framework=&lt;br /&gt;
In this section, we will propose a potential framework and argue that it is able to fulfill the requirements listed in the former section. The proposed framework works under the core principle &amp;quot;An act cannot use network resources nor can it be routed if it is anonymously bound&amp;quot;. Firstly, we start by defining some terminologies that will be used within the scope of this section:&lt;br /&gt;
* &amp;lt;i&amp;gt;Agent&amp;lt;/i&amp;gt; (Ag): the human-device pairing that sits on an end system and keeps transmitting/receiving packets.&lt;br /&gt;
* &amp;lt;i&amp;gt;Machines/Devices&amp;lt;/i&amp;gt; (Md): any piece of hardware that has access capability. It can either be a PDA, a laptop, a notebook, a PC, an Network Interface Card, or even a mere home made chip that can externally communicate wired or wireless to send or receive digital packets.&lt;br /&gt;
* &amp;lt;i&amp;gt;Identification Stamp&amp;lt;/i&amp;gt; (IS): a series of bits that binds a human unique identification (iris intricate structure or fingerprint) with a unique feature of an Md. So, for an Md like a Network Interface Card, the MAC address would be that feature. This biding is a particular representation for the official owner of the device, and who is deemed the primary responsible for any outgoing packet launched by his owned device. In other words, it is a unique identifier for an Ag.&lt;br /&gt;
* &amp;lt;i&amp;gt;Intermediate System Services&amp;lt;/i&amp;gt; (ISS): Services provided by intermediate systems (routers). For e.g., routing (main service), error checking, etc.&lt;br /&gt;
* &amp;lt;i&amp;gt;Globally Distributed Database&amp;lt;/i&amp;gt; (GDDB): a global DNS-like world-wide distributed storage system with an encrypted LUT that has relatively fast retrieval and update capabilities. It will be used to store ISs.&lt;br /&gt;
* &amp;lt;i&amp;gt;Licensing&amp;lt;/i&amp;gt;: a process of giving the permission to intermediate systems to provide ISS to all packets that are launched from the agent that is requesting the license. This process is simply adding new ISs to the GDDB.&lt;br /&gt;
&lt;br /&gt;
In principle, every leaping packet has a human owner that is either directly or indirectly responsible for it. Directly responsible when he is running an application that sends requests or initiates communication sessions to another end system. E.g., using the client side of applications supporting the protocols: HTTP, FTP, SIP, RTP, VoIP, etc. Indirect responsibility is when a user is running a system in the background that performs external (over the internet) system calls or is automated for periodic communication or automatic response to incoming requests. E.g., system clock synchronization (NTP), or the server side of the protocols: HTTP, FTP, etc. In addition, indirect responsibility also includes the responsibility of all packets launched by lower layer protocols that are being manipulated by higher layer ones. E.g., when a user sends an HTTP request, TCP sends connection initiation packets for handshaking schemes, ICMP packets that aims to seek and identify that status of a specific host, etc.&lt;br /&gt;
&lt;br /&gt;
The scope of this framework only addresses attribution over the internet and not any other &amp;quot;locally&amp;quot; defined networks underlying the IEEE standard definitions of the topologies PAN, LAN, MAN, or a WAN that do not use the global intermediate systems as their underlying infrastructure for packet delivery.&lt;br /&gt;
&lt;br /&gt;
The following sections show the assumptions for this framework to operate, the methodology of its operation, a list of pros, cons and vulnerabilities of the system and wrap up by a discussion on the proposed framework.&lt;br /&gt;
==Assumptions==&lt;br /&gt;
For starters: Jurisdiction. This frame work assumes the presence of a globally trustful entity(s) (e.g., government). This entity should act as the Internet&#039;s law enforcement, which will be deemed as the primary inspector and also the jurisdiction for regulating all kinds of cyber crimes and misbehavior. This entity may either be centralized or distributed. A centralized entity would be easier to deploy, but it will suffer from a single point of failure. A distributed entity would obviously perform better as it will be able to scale with the growth of the system users as well as conform to diverse regional laws, regulations, customs and traditions.&lt;br /&gt;
&lt;br /&gt;
Secondly: &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt;. We assume that a &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt; is deployed, which acts as a &amp;quot;database&amp;quot; for storing &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt;s. Symmetric key encryption should be used to protect that system as it will only be accessed through two types of users. Routers, which should be able to access this database ONLY for read operations. And the trustful entity (defined in the previous assumption) which should be able to access for read/write operations. Both users must be strictly authenticated, for being able to decrypt the contents or to append. In addition, this distributed system must guarantee almost zero latency in the read operations as it will be heavily relied on for every single hop made by a packet at the Internet intermediate system. A standardization protocol would be required to define the syntax and semantics as well as the nature of the way that the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt; subsystems would communicate with.&lt;br /&gt;
&lt;br /&gt;
Thirdly: Ownership. We assume that every &amp;lt;i&amp;gt;Md&amp;lt;/i&amp;gt; should be officially owned by a human. This owner is deemed as the official responsible for that &amp;lt;i&amp;gt;Md&amp;lt;/i&amp;gt;, and who would also be accused if his &amp;lt;i&amp;gt;Md&amp;lt;/i&amp;gt; found to misbehave or to launch malicious packets. The owning relationship between persons and machines is one-to-many. That is to say, a person can officially own one or more machines but a machine can only be owned by one person.&lt;br /&gt;
&lt;br /&gt;
Finally: IP packets. Our proposed frame work assumes that within the frame format of the IP packets, a header is added by the network layer that includes the &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; of the &amp;lt;i&amp;gt;Ag&amp;lt;/i&amp;gt; owning the packet.&lt;br /&gt;
&lt;br /&gt;
==Methodology==&lt;br /&gt;
Basically, this framework works by stalling the propagation of a packet that is either unattributed or forged with a fake &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt;. A fake &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; is defined as:&lt;br /&gt;
* Either having a false unique chip identifier that refers to an imaginary &amp;lt;i&amp;gt;Md&amp;lt;/i&amp;gt;.&lt;br /&gt;
* Or having a false unique human identifier that refers to an imaginary human.&lt;br /&gt;
* Or having a misleading binding of a human to a machine. i.e., claiming that some machine &amp;quot;X&amp;quot; belongs to some human &amp;quot;Y&amp;quot;, but in reality, &amp;quot;Y&amp;quot; is not the owner of &amp;quot;X&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Noticeably, the routers, as primary constituents to the intermediate systems, should refrain from routing any data packets that are not fully attributed. As they are the main driving power behind delivering all malicious or benign packets, they should have great responsibility in achieving highly reliable attribution mechanism.&lt;br /&gt;
&lt;br /&gt;
A description of the system, based on the chronological order, is as follows. First, any newly bought machine or even a home made device, must be licensed from the trustful entity. The trustful entity generates the &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt;, accesses the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt; for adding it and provides the user with his &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; for being able to add it to the header of his launched packets. The user should preserve his unique &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; in a secret place and should deal with it exactly the same way he does with his credit card numbers and social insurance numbers. If a device is not licensed (i.e., its &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; was not inserted to the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt;), it doesn&#039;t not benefit from &amp;lt;i&amp;gt;ISS&amp;lt;/i&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
From the intermediate system&#039;s perspective, when a router receives a packet, it verifies its &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt;. This is done by consulting the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt; which is in turn done by sending a copy of the &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; printed on the packet to the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt;. If a packet is found to be not having an &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt;, the packet is prevented from benefiting from &amp;lt;i&amp;gt;ISS&amp;lt;/i&amp;gt; and is simply dropped. If the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt; replies with an invalid &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt;, again, the packet is dropped. If the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt; replies with a success, this will mean that the packet&#039;s printed &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; is verified. Thus, the packet benefits from the &amp;lt;i&amp;gt;ISS&amp;lt;/i&amp;gt; and gets routed throughout the way.&lt;br /&gt;
&lt;br /&gt;
==Pros==&lt;br /&gt;
&lt;br /&gt;
* It succeeds to perform an acceptable level of attribution relative to the one achieved in the real world.&lt;br /&gt;
* It avoids anonymous attacks since a non-attributed packet will fail to reach its destination.&lt;br /&gt;
* Attribution information is not publicly available to everyone, only available to trustful entities.&lt;br /&gt;
** Hence, it retains personal privacy.&lt;br /&gt;
* The system enjoys full automation. According to the system&#039;s theory of operation, &amp;lt;i&amp;gt;ISS&amp;lt;/i&amp;gt; are either provided or not based on the validation of the &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; printed on each packet.&lt;br /&gt;
* The system avoids all forms of cyber crimes that are executed by unknown &amp;lt;i&amp;gt;Ag&amp;lt;/i&amp;gt;s.&lt;br /&gt;
&lt;br /&gt;
==Cons==&lt;br /&gt;
&lt;br /&gt;
* The verification process of the &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; on each packet creates undesirable delays potential bottlenecks at the routers.&lt;br /&gt;
* The framework is not considered easy to deploy since the assumptions are deemed relatively complex.&lt;br /&gt;
* Since attribution is not public to everyone, custom content generation cannot be achievable.&lt;br /&gt;
* Large number of &amp;lt;i&amp;gt;Md&amp;lt;/i&amp;gt;s in University Laboratories, Incorporations, Hospitals, Schools, etc should all be licensed before being able to be used. Normally, in these cases, &amp;lt;i&amp;gt;Md&amp;lt;/i&amp;gt;s would be bound to one single person.&lt;br /&gt;
* For security purposes, licenses should be periodically renewable, however, this is not considered an easy topic.&lt;br /&gt;
&lt;br /&gt;
==Vulnerabilities==&lt;br /&gt;
&lt;br /&gt;
* Botnets&lt;br /&gt;
** The system requires full user awareness with what lies under the hood. Since they are the sole responsible persons for their &amp;lt;i&amp;gt;Md&amp;lt;/i&amp;gt;s, they should be aware with all packets sneaking into their machines for avoiding the distribution of malware, and the later formation of botnets.&lt;br /&gt;
** Users are responsible for strictly securing their &amp;lt;i&amp;gt;Md&amp;lt;/i&amp;gt;s exactly the same they do when they lock their care after leaving it in a car park.&lt;br /&gt;
* A successful attack on the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt; would cause whole system failure. If this attack succeeds to alter, the attacker can append an imaginary &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt;. If the attack succeeds to read, the attacker can choose to declare his malicious packets under the responsibility of some other &amp;lt;i&amp;gt;Ag&amp;lt;/i&amp;gt;, forgery.&lt;br /&gt;
&lt;br /&gt;
==Discussion==&lt;br /&gt;
The proposed framework&#039;s main focus is to ensure that any leaping packet is moving because it is known who does it belong to. Recalling that in the real world, if a person doesn&#039;t have an identity (like a social insurance number), he can&#039;t benefit from services. For instance, he can&#039;t open a bank account, can&#039;t buy a house, can&#039;t trade, nor can he even get a job. Obviously, the proposed system mimics the behavior of the real world. Of course, the real world is not ideal in criminal tracing and law enforcement, however, it&#039;s level of attribution would definitely beat that of the Internet in the meantime. We can say that current internet attribution in comparison to the real world attribution is considered a failure. An acceptable form of internet attribution would be considered basically acceptable if it, at least, provides as much attribution as the real world attribution does. We could say that the proposed framework would guarantee such level.&lt;br /&gt;
&lt;br /&gt;
The proposed framework succeeds to fulfill all of the general requirements. Clearly, any potentially destructive act is definitely traceable to an &amp;lt;i&amp;gt;Ag&amp;lt;/i&amp;gt; or else, it will not take place. The framework also omits violation to any privacy related laws since the attribution information are not publicly available. More specifically, they are only available to the agreed on trusted entity. The framework also fulfills all of the deployment requirements. As can be seen, the more areas the system is deployed in, the better for the public good, hence, it is incrementally deployable. The framework is not very loosely coupled but can still allow the Internet to operate if it is suppressed. It is also adaptable to different rules and regulations since it leaves the punishment decision to the jurisdiction of the country with the source of the crime committer. Whatever the cost is to deploy that system, it should still be less than the cost of the losses due to cyber crimes. That is because the cost of losses due to unknown &amp;quot;future&amp;quot; attacks cannot be easily determined. As for the practice requirements, the proposed framework theory of operation doesn&#039;t permit mapping of a certain &amp;lt;i&amp;gt;Ag&amp;lt;/i&amp;gt; to a set of actions, it only permits the mapping of a set of actions to an &amp;lt;i&amp;gt;Ag&amp;lt;/i&amp;gt;, which satisfies non-bijection. Also, because of the distributed nature of the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt;, all traceability information is impossible to collect at one place. The trusted entities are only the ones that generate the &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; from the personal data, hence, they are the only ones having this piece of information. To conclude, the framework successfully satisfies all the requirements.&lt;br /&gt;
&lt;br /&gt;
=Conclusion=&lt;br /&gt;
The human nature refuses any change at the first sight. In 1769, Jonathan Holguinisburg finalized the invention of the first Cugnot Steam Trolly &amp;lt;ref&amp;gt;ckermann, Erik (2001). World History of the Automobile. SAE Press, p.14. [Online]. Available: http://books.google.com/books?id=yLZeQwqNmdgC&amp;amp;printsec=frontcover&amp;amp;source=gbs_ge_summary_r&amp;amp;cad=0#v=onepage&amp;amp;q&amp;amp;f=false &amp;lt;/ref&amp;gt; which became nowadays automobiles. In 1903, car licensing began in North America, that is 134 years after Holguinishburg invention. Licensing started when people began realizing that a car could act as a lethal weapon, which therefore must be approved by the government to be driven by some person, and must also be formally linked to an owner who is considered the primary responsible for it.&lt;br /&gt;
&lt;br /&gt;
Meanwhile, the Internet is passing through the same phase. People would blindly deny, refuse and object such &amp;quot;wicked&amp;quot; attribution systems, but later on, Internet licensing will be part of everyone&#039;s life, just like their driving license. Needless to say, the Internet is becoming more crucial to many applications and in the same time more vulnerable to different types of attacks. Obviously, it is being injected in the &amp;quot;blood&amp;quot; of a vast, yet exponentially growing, number of applications which are time and data sensitive, and which don&#039;t leave room for cyber crimes, unauthorized intrusion, traffic tampering, bandwidth hogging, etc. In addition, much of the industry and technology based applications are now build over the Internet as their underlying infrastructure, and cannot tolerate being threatened all the time by a completely anonymous person behind the seen seeking the proper moment to strike. Meanwhile, Internet Attribution is no longer an add-on, but an obligation.&lt;br /&gt;
&lt;br /&gt;
In this paper, we have presented some formal definitions of attribution, why is it crucial to attribute, level of attribution would be considered acceptable and where the roots of difficulty lies behind achieving such level. Moreover, we have proposed a background about current attribution systems and a brief discussion about the reason of their survival and their point of failure as well. We also populated a list of requirements that must be fulfilled by any system aiming to acquire Internet attribution. Finally, we proposed a potential framework for a system that has that should  fulfills the mentioned requirements and that should have the ability to achieve an acceptable level of Internet attribution. Pros, and Vulnerabilities of the proposed framework are also discussed.&lt;br /&gt;
&lt;br /&gt;
=References=&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;/div&gt;</summary>
		<author><name>Omi</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=Internet_Attribution:_Between_Privacy_and_Cruciality&amp;diff=9443</id>
		<title>Internet Attribution: Between Privacy and Cruciality</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=Internet_Attribution:_Between_Privacy_and_Cruciality&amp;diff=9443"/>
		<updated>2011-04-11T22:56:31Z</updated>

		<summary type="html">&lt;p&gt;Omi: /* Pros, Cons and Vulnerabilities */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;b&amp;gt;Abstract&amp;lt;/b&amp;gt;&amp;lt;br/&amp;gt;&lt;br /&gt;
Present and past situations show a need for improved attribution systems, and arguably, scientific basis for properly functioning attribution systems are not yet defined. Lots of research have been focusing on attributing documents to authors for the sake of securing authorship rights and rapid identification of plagiarism. Many of those were revolving around the notion of using machine learning for linking articles to humans. Others proposed text classification and feature selection as a mean of detecting the author of a document. Unfortunately, not that much research is addressing the problem of lack of robust attribution system over the internet. Authentication, as a mean of attribution, has proved its efficiency but, needless to say, it is not applicable to authenticate every single packet hopping over the intermediate systems. This paper presents limits and advances in the attribution of actions to agents over the internet. It reviews current attribution technologies as well as the limits of those technologies. It also identifies the requirements of a proper attribution system and proposes a distributed (yet cooperative) approach for performing attribution over the internet.&lt;br /&gt;
&lt;br /&gt;
=Introduction=&lt;br /&gt;
Currently the Internet infrastructure provides users partial anonymity. Unfortunately, that anonymity weakens the security for its users, because it incites advance users to exploit that feature. The lack of online identification married with bad intentions entices criminals to commit a number of &amp;lt;i&amp;gt;Cyber Crimes&amp;lt;/i&amp;gt; without being caught, crimes which include: fraud, theft, forgery, impersonation, the distribution of Malware (and hence, botnets), traffic tampering, DoS, bandwidth hogging, etc. Consequently, internet attribution is a highly sensitive field that constitutes a cornerstone position within internet security. Needless to say, current solutions don&#039;t guarantee sufficient attribution nor are considered always applicable in most of the time, hence, current system suffers the lack of a relatively robust attribution mechanism. In the light of this context, we need better methodologies for reaching an acceptable success level for attributing actions to persons.&lt;br /&gt;
&lt;br /&gt;
In principle, attribution can be defined as the mechanism of binding a system-defined act to an agent. An agent is typically an entity that has the ability to commit what constitutes an act. Within our focus, an agent could either be a person or a machine. It can also be defined as &amp;quot;determining the identity or location of an attacker or an attacker’s intermediary&amp;quot;&amp;lt;ref&amp;gt; [Institute for Defense Analyses, 2003]&amp;lt;/ref&amp;gt;. Problems like IP address spoofing, lack of interoperability in intermediate systems, dynamic nature of IP addresses, unawareness of system users with lots of &amp;lt;i&amp;gt;unknown&amp;lt;/i&amp;gt; packets sneaking to their machines and poor efficiency of firewalls and IDSs make this determination operation considerably difficult. In addition, some types of attacks are carried out to conceal the real agent behind an act. For instance, malware distribution (and hence the creation of botnets), and stepping stones aim to inflict vagueness around the correct &amp;lt;i&amp;gt;human&amp;lt;/i&amp;gt; source behind the scene.&lt;br /&gt;
&lt;br /&gt;
In this paper, we focus on defining what it takes to achieve an acceptably working attribution mechanism over the internet. To do that, we review past research works in attribution and discuss their common limitations as well as flaws and what can be done in common to enhance such schemes. We also argue that the lack of a globally deployed registration system that registers system users and grants them LICENSED access to the system enfeebles proper attribution and motivates illegitimate intrusions and irregular behavior. We show that employing the mentioned system would reduce the incentive of irregular behavior as well as remove the blaze of tempting anonymity, putting attackers under the risk of being easily caught. We also discuss how privacy, as a counter force to attribution, plays a big role in the internet and within its users and propose a framework that achieves relatively robust attribution mechanism and retains the privacy of users.&lt;br /&gt;
&lt;br /&gt;
Much of the research done in literature focuses on attribution that is done for keeping track of authorship, i.e., attributing text to authors. In this paper, we don&#039;t question the cruciality of attribution in this field, but rather we address a higher level of attribution of all possible actions to agents, which is sadly deemed slightly obsolete from the current research perspective.&lt;br /&gt;
&lt;br /&gt;
This paper starts by a quick background discussion on the current forms of attribution. Consequently, section 3 presents the dilemma of attribution, resolving the tension between attribution and privacy. Section 4 presents a fundamental set of requirements for achieving an acceptable level of attribution over the internet. In section 5, we propose an abstract framework for achieving attribution that mimics attribution in the real world. And finally, a conclusion is presented in section 6.&lt;br /&gt;
&lt;br /&gt;
==What is Attribution==&lt;br /&gt;
&#039;&#039;The act of attributing, especially the act of establishing a particular person as the creator of a work of art.&#039;&#039;&amp;lt;ref&amp;gt; The American Heritage® Dictionary of the English Language, Fourth Edition copyright ©2000 by Houghton Mifflin Company. Updated in 2009. Published by Houghton Mifflin Company.&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
We are concerned with one particular type of attribution - binding an act to a person. This may include intermediate attributions, for example, an act to an agent (software, device, etc.) and then attribution of an agent to person. Narrowing the problem further, we&#039;re only concerned about attribution in large, dynamic networks, like internet. For sake of simplicity, in this paper we&#039;re going to reference to &amp;quot;binding an act to a person on the internet&amp;quot; as &amp;quot;attribution&amp;quot;, while other types of attributing will be defined separately.&lt;br /&gt;
&lt;br /&gt;
==Problem Statement==&lt;br /&gt;
The anonymity of the Internet makes it virtually impossible most of the time to properly identify who is who online. This is a double-ended sword as it not only provides a high level of privacy, but also makes it hard to identify people with malicious intent and cyber attackers.&lt;br /&gt;
&lt;br /&gt;
==Problem Motivation==&lt;br /&gt;
In today&#039;s world there is a growing need for strong attribution over the Internet mainly due to increased numbers of cyber attacks since its introduction in the 90’s. Many attackers have succeeded in causing both physical and financial damage to many companies over the Internet and going Scott free; due to the anonymity of the Internet, the attackers cannot be identified.&lt;br /&gt;
&lt;br /&gt;
==Scope==&lt;br /&gt;
In this paper we are addressing the issue of attribution by providing a list of requirements that need to be met in order to have a fully stable and efficient attribution system over the Internet.&lt;br /&gt;
&lt;br /&gt;
Although this is not a technical paper, a basic knowledge of computer science or computer systems will be required, to fully understand some of the concepts and terminology discussed within this paper,&lt;br /&gt;
&lt;br /&gt;
=Background=&lt;br /&gt;
&lt;br /&gt;
The problem of attribution is not one that just came up; it has been around for decades but mostly to address identification issues as it pertained to websites or Internet service providers. A lot of different approaches towards attribution have been taken but mainly just to the extent of what that particular system stems to achieve. &lt;br /&gt;
This section gives an introduction to three of todays current attribution systems and discusses their pros and cons as they pertain to the type of global attribution we discuss in this paper.&lt;br /&gt;
&lt;br /&gt;
==Cookies==&lt;br /&gt;
Websites will sometimes need to remember information about a visit or a visitor in order to improve viewer experience. Cookies are text files that are created by a web server, and stored by a web browser on the user&#039;s computer. Cookies are used for many reasons; mainly authentication, remembering shopping cart information, and storing site preference. In actuality, they can be used to store any type of information that can be stored in a text file. When a page is requested the users web browser sends the request with the webserver’s cookie in the header part of the packet. All this is an automated process between the web browser and web server.  &lt;br /&gt;
&lt;br /&gt;
If at all the webserver receives a request without a cookie attached to it, it takes it as the first access that the browser is making to the server and sends one as part of the response which will be saved by the browser and resent on the next request. Cookies are usually encrypted in order for data security and information privacy, however they are still subject to the users control as they can be decrypted, modified and even deleted completely. It is also possible for a user to change their browser setting to not accept cookies at all. &lt;br /&gt;
&lt;br /&gt;
Cookies can either have an expiration date or not; this is the date that the browser deletes the cookie. Cookies without an expiration date are deleted when the browser is closed. Some browsers allow you to automatically set how long you want cookies to be stored.&lt;br /&gt;
&lt;br /&gt;
===Cookies as an Attribution System===&lt;br /&gt;
Looking at cookies as the type of attribution system we are looking for over the Internet, we will be able to achieve high precision on identifying computers that access a web server. However, The biggest draw back cookies have is that they can be deleted and manipulated. As such the use of cookies is not an effective attribution system.&lt;br /&gt;
&lt;br /&gt;
==IP Addresses==&lt;br /&gt;
IP or Internet Protocol Addresses are 32 bit numerical identifiers for devices (ie computer, printer, scanner etc..) on a network. The users Internet Service Provider (ISP) provide this number. The Internet Assigned Numbers Authority (IANA) is responsible for managing IP Address space allocation globally. It does this with the help of five Regional Internet registries (RIRs), responsible for allocating IP address blocks to their assigned regions ISPs, who in turn allocates them to their users.&lt;br /&gt;
&lt;br /&gt;
Any device that goes online and communicates using IP needs an IP address. Over the years there has been a growing number of users going online and a number of devices owned by the users to go online. One of the more common examples of this is the increase of Internet ready mobile phones. Our current addressing system used by our current Internet Protocol Version 4 (IPv4) contains only 32bits which means it is only able to uniquely address 232 addresses (4,294,967,296) which is less that the number of people on this planet today. The very last batch of IP addresses was assigned out to the five RIRs early February 2011&amp;lt;ref&amp;gt;http://arstechnica.com/tech-policy/news/2011/02/river-of-ipv4-addresses-officially-runs-dry.ars&amp;lt;/ref&amp;gt;. This was foreseen since the 90s, which sprung the development of a new Internet Protocol version, IPv6, which uses a 128bit addressing system began. &lt;br /&gt;
&lt;br /&gt;
IP addresses can either be static or dynamic. Static IP address is an address permanently assigned to a user due to configuration. A dynamic IP address is one in which a new address is assigned at every boot up. A Dynamic Host Configuration Protocol (DHCP) Server is usually responsible for assigning dynamic IP addresses to users. There are two main advantages for dynamic addressing; it eliminates the administrative cost involved with assigning static IP addresses, and it helps solve the issue of limited addressing space by allowing many devices “share” a single address if they go online at different times. Given the limited addressing space the ISPs have to work with, and to save administration costs, most ISPs assign dynamic IP addresses as standard a offer static IP address for a higher fee. &lt;br /&gt;
&lt;br /&gt;
===IP Addresses as an Attribution System===&lt;br /&gt;
Although Internet addresses can be used to attribute packets to its sender, it will fail as an effective attribution system for a few reasons, but mainly that attackers can spoof their IP addresses. Spoofing IP addresses will even foil the efforts of IP trace backs.&lt;br /&gt;
&lt;br /&gt;
==Authentication Systems==&lt;br /&gt;
In order for a website to make sure of the identity of who ever is visiting some pages, it provides an authentication system. This is usually a login name and password either assigned by the web server or chosen by the user. The biggest advantage this has is that now, attribution can be performed across different computers. The task of storing and securing login information is left to the web server, which is subject to attackers hacking into the server to stealing login information. &lt;br /&gt;
&lt;br /&gt;
Login systems are attached to user accounts that sometime require private information in order to be setup. If the web server’s security is not good enough, security breeches may in turn lead to identity theft. &lt;br /&gt;
&lt;br /&gt;
The process behind authentication systems is simple; using a typical web banking authentication system for instance, the process may go as follows. A user requests for a web account or one is automatically assigned to the user. The user sets up a password for accessing the account. When the user now goes to the website he is requested to “identify himself”, the user enters in his personal login information, the web server verifies this information with what it has stored in its database and either grants or denies access to the users personal page. &lt;br /&gt;
&lt;br /&gt;
Authentication systems are only ever used when it involves the users wanting some privacy on the webserver, or when the user wishes to store some form of information on the web server. &lt;br /&gt;
&lt;br /&gt;
===Authentication Systems as an Attribution System===&lt;br /&gt;
Authentication systems are very precise in the identification of people over the Internet and as such used by many companies. However it will have a serious privacy drawback if it were to be used as a global identification system. It will mean that virtually every web server will need to hold enough information about you to be able to identify you as an attacker. This would mean that to even a user randomly search for a cooking recipe online would need to login somehow to access the web server. People generally like the anonymity of surfing the web and a system like this will completely destroy this.&lt;br /&gt;
&lt;br /&gt;
=The Attribution Dilemma=&lt;br /&gt;
&lt;br /&gt;
There are many facets to designing an attribution system, besides the technological aspects. In addition to the technologies and/or infrastructure available, one must also consider the issue of privacy, because when trying to achieve strong attribution personal privacy is compromised. Any system must try to find a balance between strong attribution and privacy. The balance is influenced by the application of the system. For instance, in the case of financial institutions, the clients as well as the institute will place more emphasis on attribution. Such institutes would like to establish unassailable authorization and authentication systems, so as to guarantee (to some degree) that agents involved in the transactions are who they claim they are. On the opposite side of the spectrum, are situations where privacy takes precedence. Political dissidents and whistle-blowers are relatively protected because there is no strong attribution system in place, which allows them to distribute information (regardless of actual usefulness or goodness of it) and keep their identity secret. It is clear that single universal set of rules cannot satisfy these two cases. It is also clear that, in pretty abstract fashion, privacy is inversely proportional to attribution. While designing an attribution system one needs not only to decide on this ration for some particular case, but rather make this ratio dynamically changed depending on the case. &lt;br /&gt;
&lt;br /&gt;
Assuming such a ratio is found, another issue arises. Can the use of private information to track or punish a person be completely justified? Especially if it oversteps their privacy. One might think that this question is a little bit out of the scope of our paper. However, such ethical arguments must be addressed prior to designing, because a system that compromises individual privacy and protection can not be utilized. &lt;br /&gt;
&lt;br /&gt;
There are other topics that attribution system must answer. Who should have the authority to attribute? What information can they attributed? And why do they need it? How is attribution achieved or measured?  How accurate are IP-traceback, stepping stone authentications, link identifications and packet filtering in wedging packets to agents? How much can intermediate systems&#039; cooperation contribute to achieving attribution? How to deal with misleading data sources hiding behind botnets and concealing identities via stepping stones? &lt;br /&gt;
&lt;br /&gt;
==Why do we need Attribution==&lt;br /&gt;
&lt;br /&gt;
Attribution system has many useful applications. The identification property can useful at establishing the client’s identity for Online Banking, identifying the involving party in eCommerce transaction, and can be taken advantage by marketers for more targeting Web advertisements.&lt;br /&gt;
&lt;br /&gt;
Financial matters are not the only incentive for a strong attribution system. Establishing strong identification mechanism can provide better protection against cyber attacks. When the source of an attack can be recognize, then the proper authorities can prosecute the perpetrators of such crimes as: DoS, DDos, computer fraud, forgery and identity theft, sniffing private traffic, distributing illegal traffic and malware, spam,  illegal and undesirable intrusions.&lt;br /&gt;
&lt;br /&gt;
==Why is it difficult to achieve Attribution?==&lt;br /&gt;
&lt;br /&gt;
The problem rise largely due to how the Internet is designed. It does not have strong identification mechanisms, which makes it relatively anonymous for users. Moreover, most current solutions are based on the same structure and work within the same scope, thus, can only reduce the number of potentially destructive acts or just deal with the consequences. Of course, no system can completely prevent against destructive attempts, but some potentially good attribution system should make such attempts highly undesirable and &amp;quot;costly&amp;quot; for an attacker.&lt;br /&gt;
 &lt;br /&gt;
The issue of lack of attribution on the web mostly arises whenever security is compromised. When you&#039;re bombarded with spam, or when a system is under a DoS attack attribution becomes a more appealing notion. Getting a balance between security and privacy is tricky, because once attacks are tracked so will all other traffic. Also, depending on the type of the senders and receivers, different attribution policy will be required.&lt;br /&gt;
&lt;br /&gt;
In the ideal world, every action on the internet could be bound to a machine and thus to a person. This is done by examining the source IP printed on each moving packet, locating the geographical location of this IP, consulting the ISP covering the location and identifying the person. If an act requires strict attribution (like checking and sending emails), authentication is used. &lt;br /&gt;
There are many existing methods that attempt to identify the source of an act, like IP traceback. There are problems with trying to identify the source by its IP address. For instance, it can be spoofed, which leads to misleads or inconclusive geographical location. IP addresses are not permanently bound to a single account, which makes linking IP to the appropriate person not concrete. IP traceback can be improved but that would require global cooperation of intermediate system, which currently does not exist.&lt;br /&gt;
&lt;br /&gt;
In networks, users are not aware of all packets that are received by their machines, which mean users would not be aware of malware distribution, the creation of botnets and other actions taken by their machine without their approval and triggered by other a network user. Firewalls and packet filters can be used to address such problems, but they are not very efficient. Also, it is not practical to authenticate every single action on the internet. &lt;br /&gt;
&lt;br /&gt;
There are attacks that designed specifically to prevent correct attribution. It is used for identity theft and distribution of malware. Stepping stone attack is a common way of attributing attacks to anonymity by using multiple public random agents(as stepping stones) to reach the victim in order to conceal the attacking source. &amp;lt;ref name=&amp;quot;ref1&amp;quot;&amp;gt;S. Staniford-Chen and L. T. Heberlein. Holding intruders accountable on the internet. In SP ’95: Proceedings of the 1995 IEEE Symposium on Security and Privacy, page 39, Washington, DC, USA, 1995. IEEE Computer Society.&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Requirements for an Internet Attribution System=&lt;br /&gt;
&lt;br /&gt;
It is hard to describe some hypothetical attribution system in detail, because there are many issues and complicated dependencies, and a lot of questions to answer or at least to try to answer before one can even think of implementing such a system. In this section we are trying to define high-level requirements for a good attribution system, while definition of good attribution system is not so clear, we take into account everything we have talked above. That is, the following requirements try to define the system in a way that avoids current problems, achieves high degree of attribution and remains realistic. &lt;br /&gt;
&lt;br /&gt;
We have separated those requirements in three sections: general requirements define the idea and overall goal of the system in high level, abstract terms. Deployment requirements set ground rules for deployability that makes sense in such a huge network as internet and human society Practice requirements define the way system works, behaves and interacts with other bodies.&lt;br /&gt;
&lt;br /&gt;
==General==&lt;br /&gt;
&lt;br /&gt;
First and most obvious requirement for any system is usually put for sake of consistency: main requirement for internet attribution system is simple: it needs to attribute, or, more formally, any potentially destructive act should be traceable to an agent (person and/or organization, group, etc). It is important to consider different natures of agents, because the goal of attribution system is not necessarily to narrow down the search to one particular person, but rather to find the body responsible for an act(s) regardless of their actual structure. It might be one person after all. In other words, even though actions are done mostly by a single person, they are not necessarily the ones who&#039;s responsible for a decision to do so. A good real world analogy is an assassin and some body (person or a group) paying him. Good attribution system should not lead to assassin alone, but rather should be designed the way that responsible bodies are the ones to be discovered. Yet, we accept the notion that by the end of the day there is some person or several persons, human brings, responsible for an action. It is essential, because, as practice shows, for example, determining the source of DoS-attack is relatively simple, but most of the time this source is not the one who is responsible, but rather a victim itself.&lt;br /&gt;
&lt;br /&gt;
It is easy to imagine a system in which less crime and misuse is the only acceptable way to do things, and many writers and movie directors exploit this idea in futuristic, science fiction and anti-utopian plots. Unfortunately, applying any of this sort of ideas to real world today is not possible, because a lot of laws and moral principles are already in place, some of which are not perfect, but widely accepted and most have reasons to exist. Attribution system that we&#039;re looking for should take legal and moral issues into account, naturally, should not violate and/or contradict any of them. This important requirement comes somewhat together with incremental deployability that we&#039;re going to discuss later.&lt;br /&gt;
&lt;br /&gt;
In general, an attribution system should be universal and global, and details of these terms will be discussed later.&lt;br /&gt;
&lt;br /&gt;
==Deployment==&lt;br /&gt;
It is relatively easy to discuss the design of the system, than it is to implement the design. The deployment of they system does not need to be instant and massive. Even though a global attribution system will have a lot of pressure on it, internet should not depend on it entirely, the underlying network should still remain functional, even if the attribution system goes down. In other words, attribution system should be loosely coupled to the system it works in. &lt;br /&gt;
&lt;br /&gt;
As discussed before, (and this could be said about any global system on the internet) such a system should be incrementally deployable, so that smooth, step-by-step, subnetwork-by-subnetwork integration is possible. This is important not only because of virtual impossibility to restart or reconfigure the whole internet at once. This incremental way of embedding an attribution system should be more secure (bugs in software and mistakes in design can be fixed while on a small scale), so that by the end of cycle, when the whole internet is wired, the attribution system is field-tested and analyzed several times by different bodies. &lt;br /&gt;
&lt;br /&gt;
Very important, but controversial subject, is adoption of the system within some set of rules or laws (state laws, government regulations, corporate rules and principles, etc.). System should allow easy adoption for different cases, at the same time it should remain universal and global. It should act like a public tool any group can use, but nobody should be able to misuse it or use in non-legal way. The big decision designers will have to make is the one regarding this line between dynamic adoptability and universality. Luckily, this sort of deepness goes beyond the scope of our paper.&lt;br /&gt;
&lt;br /&gt;
Companies and organizations sometimes loose millions of dolars due to attacks and other cyber-crimes done to them, and some issues can be dealt with by spending more resources (memory, bandwidth on servers, etc), or, in other words, spending more money. The overall cost of setting up and maintaining the attribution system for a particular body (person, organization, network) should be considerably less than average losses under current lack of attribution (e.g. DoS, identity theft, etc).&lt;br /&gt;
&lt;br /&gt;
==Practice==&lt;br /&gt;
&lt;br /&gt;
Attribution mapping should not be a bijection, in other words action should map to person, but not vice versa. That it, nobody should be able to use the system to answer the question &amp;quot;what person X did/does?&amp;quot;. Not only the system should not know the answer, it should not be possible to know the answer; the question &amp;quot;who did act X&amp;quot; is the one should be answered. This can be thought of as part of requirement about not violating current laws and moral principles, but is put as a separate requirement, since it is very important to draw a line between attribution system and surveillance. The goal is not only to make attribution system attribute, but also to make it impossible to use it in other way – for surveillance, spying, etc.&lt;br /&gt;
&lt;br /&gt;
Since this global system operates on the internet, it might not be a great idea to put names of people into traceability database. It makes much more sense to assign unique IDs to everyone who is using the network. And in case a crime is committed, and the agent of some act need to be determined, then the recorded ID will be searched for in the police or government database. It should be some trusted entity (government, corporation, police, some public good-like system, etc) that stores the mapping between IDs and real names. This mapping should only be revealed when needed and when there is enough evidence or motivation to do so. Traceability information (namely, unique iDs) should be distributed and it is crucial to make it impossible to collect all the information in one place.&lt;br /&gt;
&lt;br /&gt;
Of course, it is not always the case that some trusted (by everyone) body exists, but generally we have governments and/or agencies we trust. It is important to divide the information between public and trusted body in a way allowing them to cooperate in time of need and not allowing to misuse the system from any side.&lt;br /&gt;
&lt;br /&gt;
=Proposed Framework=&lt;br /&gt;
In this section, we will propose a potential framework and argue that it is able to fulfill the requirements listed in the former section. The proposed framework works under the core principle &amp;quot;An act cannot use network resources nor can it be routed if it is anonymously bound&amp;quot;. Firstly, we start by defining some terminologies that will be used within the scope of this section:&lt;br /&gt;
* &amp;lt;i&amp;gt;Agent&amp;lt;/i&amp;gt; (Ag): the human-device pairing that sits on an end system and keeps transmitting/receiving packets.&lt;br /&gt;
* &amp;lt;i&amp;gt;Machines/Devices&amp;lt;/i&amp;gt; (Md): any piece of hardware that has access capability. It can either be a PDA, a laptop, a notebook, a PC, an Network Interface Card, or even a mere home made chip that can externally communicate wired or wireless to send or receive digital packets.&lt;br /&gt;
* &amp;lt;i&amp;gt;Identification Stamp&amp;lt;/i&amp;gt; (IS): a series of bits that binds a human unique identification (iris intricate structure or fingerprint) with a unique feature of an Md. So, for an Md like a Network Interface Card, the MAC address would be that feature. This biding is a particular representation for the official owner of the device, and who is deemed the primary responsible for any outgoing packet launched by his owned device. In other words, it is a unique identifier for an Ag.&lt;br /&gt;
* &amp;lt;i&amp;gt;Intermediate System Services&amp;lt;/i&amp;gt; (ISS): Services provided by intermediate systems (routers). For e.g., routing (main service), error checking, etc.&lt;br /&gt;
* &amp;lt;i&amp;gt;Globally Distributed Database&amp;lt;/i&amp;gt; (GDDB): a global DNS-like world-wide distributed storage system with an encrypted LUT that has relatively fast retrieval and update capabilities. It will be used to store ISs.&lt;br /&gt;
* &amp;lt;i&amp;gt;Licensing&amp;lt;/i&amp;gt;: a process of giving the permission to intermediate systems to provide ISS to all packets that are launched from the agent that is requesting the license. This process is simply adding new ISs to the GDDB.&lt;br /&gt;
&lt;br /&gt;
In principle, every leaping packet has a human owner that is either directly or indirectly responsible for it. Directly responsible when he is running an application that sends requests or initiates communication sessions to another end system. E.g., using the client side of applications supporting the protocols: HTTP, FTP, SIP, RTP, VoIP, etc. Indirect responsibility is when a user is running a system in the background that performs external (over the internet) system calls or is automated for periodic communication or automatic response to incoming requests. E.g., system clock synchronization (NTP), or the server side of the protocols: HTTP, FTP, etc. In addition, indirect responsibility also includes the responsibility of all packets launched by lower layer protocols that are being manipulated by higher layer ones. E.g., when a user sends an HTTP request, TCP sends connection initiation packets for handshaking schemes, ICMP packets that aims to seek and identify that status of a specific host, etc.&lt;br /&gt;
&lt;br /&gt;
The scope of this framework only addresses attribution over the internet and not any other &amp;quot;locally&amp;quot; defined networks underlying the IEEE standard definitions of the topologies PAN, LAN, MAN, or a WAN that do not use the global intermediate systems as their underlying infrastructure for packet delivery.&lt;br /&gt;
&lt;br /&gt;
The following sections show the assumptions for this framework to operate, the methodology of its operation, a list of pros, cons and vulnerabilities of the system and wrap up by a discussion on the proposed framework.&lt;br /&gt;
==Assumptions==&lt;br /&gt;
For starters: Jurisdiction. This frame work assumes the presence of a globally trustful entity(s) (e.g., government). This entity should act as the Internet&#039;s law enforcement, which will be deemed as the primary inspector and also the jurisdiction for regulating all kinds of cyber crimes and misbehavior. This entity may either be centralized or distributed. A centralized entity would be easier to deploy, but it will suffer from a single point of failure. A distributed entity would obviously perform better as it will be able to scale with the growth of the system users as well as conform to diverse regional laws, regulations, customs and traditions.&lt;br /&gt;
&lt;br /&gt;
Secondly: &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt;. We assume that a &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt; is deployed, which acts as a &amp;quot;database&amp;quot; for storing &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt;s. Symmetric key encryption should be used to protect that system as it will only be accessed through two types of users. Routers, which should be able to access this database ONLY for read operations. And the trustful entity (defined in the previous assumption) which should be able to access for read/write operations. Both users must be strictly authenticated, for being able to decrypt the contents or to append. In addition, this distributed system must guarantee almost zero latency in the read operations as it will be heavily relied on for every single hop made by a packet at the Internet intermediate system. A standardization protocol would be required to define the syntax and semantics as well as the nature of the way that the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt; subsystems would communicate with.&lt;br /&gt;
&lt;br /&gt;
Thirdly: Ownership. We assume that every &amp;lt;i&amp;gt;Md&amp;lt;/i&amp;gt; should be officially owned by a human. This owner is deemed as the official responsible for that &amp;lt;i&amp;gt;Md&amp;lt;/i&amp;gt;, and who would also be accused if his &amp;lt;i&amp;gt;Md&amp;lt;/i&amp;gt; found to misbehave or to launch malicious packets. The owning relationship between persons and machines is one-to-many. That is to say, a person can officially own one or more machines but a machine can only be owned by one person.&lt;br /&gt;
&lt;br /&gt;
Finally: IP packets. Our proposed frame work assumes that within the frame format of the IP packets, a header is added by the network layer that includes the &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; of the &amp;lt;i&amp;gt;Ag&amp;lt;/i&amp;gt; owning the packet.&lt;br /&gt;
&lt;br /&gt;
==Methodology==&lt;br /&gt;
Basically, this framework works by stalling the propagation of a packet that is either unattributed or forged with a fake &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt;. A fake &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; is defined as:&lt;br /&gt;
* Either having a false unique chip identifier that refers to an imaginary &amp;lt;i&amp;gt;Md&amp;lt;/i&amp;gt;.&lt;br /&gt;
* Or having a false unique human identifier that refers to an imaginary human.&lt;br /&gt;
* Or having a misleading binding of a human to a machine. i.e., claiming that some machine &amp;quot;X&amp;quot; belongs to some human &amp;quot;Y&amp;quot;, but in reality, &amp;quot;Y&amp;quot; is not the owner of &amp;quot;X&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Noticeably, the routers, as primary constituents to the intermediate systems, should refrain from routing any data packets that are not fully attributed. As they are the main driving power behind delivering all malicious or benign packets, they should have great responsibility in achieving highly reliable attribution mechanism.&lt;br /&gt;
&lt;br /&gt;
A description of the system, based on the chronological order, is as follows. First, any newly bought machine or even a home made device, must be licensed from the trustful entity. The trustful entity generates the &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt;, accesses the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt; for adding it and provides the user with his &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; for being able to add it to the header of his launched packets. The user should preserve his unique &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; in a secret place and should deal with it exactly the same way he does with his credit card numbers and social insurance numbers. If a device is not licensed (i.e., its &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; was not inserted to the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt;), it doesn&#039;t not benefit from &amp;lt;i&amp;gt;ISS&amp;lt;/i&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
From the intermediate system&#039;s perspective, when a router receives a packet, it verifies its &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt;. This is done by consulting the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt; which is in turn done by sending a copy of the &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; printed on the packet to the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt;. If a packet is found to be not having an &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt;, the packet is prevented from benefiting from &amp;lt;i&amp;gt;ISS&amp;lt;/i&amp;gt; and is simply dropped. If the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt; replies with an invalid &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt;, again, the packet is dropped. If the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt; replies with a success, this will mean that the packet&#039;s printed &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; is verified. Thus, the packet benefits from the &amp;lt;i&amp;gt;ISS&amp;lt;/i&amp;gt; and gets routed throughout the way.&lt;br /&gt;
&lt;br /&gt;
==Pros==&lt;br /&gt;
&lt;br /&gt;
* It succeeds to perform an acceptable level of attribution relative to the one achieved in the real world.&lt;br /&gt;
* It avoids anonymous attacks since a non-attributed packet will fail to reach its destination.&lt;br /&gt;
* Attribution information is not publicly available to everyone, only available to trustful entities.&lt;br /&gt;
** Hence, it retains personal privacy.&lt;br /&gt;
* The system enjoys full automation. According to the system&#039;s theory of operation, &amp;lt;i&amp;gt;ISS&amp;lt;/i&amp;gt; are either provided or not based on the validation of the &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; printed on each packet.&lt;br /&gt;
* The system avoids all forms of cyber crimes that are executed by unknown &amp;lt;i&amp;gt;Ag&amp;lt;/i&amp;gt;s.&lt;br /&gt;
&lt;br /&gt;
==Cons==&lt;br /&gt;
&lt;br /&gt;
* The verification process of the &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; on each packet creates undesirable delays potential bottlenecks at the routers.&lt;br /&gt;
* The framework is not considered easy to deploy since the assumptions are deemed relatively complex.&lt;br /&gt;
* Since attribution is not public to everyone, custom content generation cannot be achievable.&lt;br /&gt;
* Large number of &amp;lt;i&amp;gt;Md&amp;lt;/i&amp;gt;s in University Laboratories, Incorporations, Hospitals, Schools, etc should all be licensed before being able to be used. Normally, in these cases, &amp;lt;i&amp;gt;Md&amp;lt;/i&amp;gt;s would be bound to one single person.&lt;br /&gt;
* For security purposes, licenses should be periodically renewable, however, this is not considered an easy topic.&lt;br /&gt;
&lt;br /&gt;
==Vulnerabilities==&lt;br /&gt;
&lt;br /&gt;
* Botnets&lt;br /&gt;
** The system requires full user awareness with what lies under the hood. Since they are the sole responsible persons for their &amp;lt;i&amp;gt;Md&amp;lt;/i&amp;gt;s, they should be aware with all packets sneaking into their machines for avoiding the distribution of malware, and the later formation of botnets.&lt;br /&gt;
** Users are responsible for strictly securing their &amp;lt;i&amp;gt;Md&amp;lt;/i&amp;gt;s exactly the same they do when they lock their care after leaving it in a car park.&lt;br /&gt;
* A successful attack on the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt; would cause whole system failure. If this attack succeeds to alter, the attacker can append an imaginary &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt;. If the attack succeeds to read, the attacker can choose to declare his malicious packets under the responsibility of some other &amp;lt;i&amp;gt;Ag&amp;lt;/i&amp;gt;, forgery.&lt;br /&gt;
&lt;br /&gt;
==Discussion==&lt;br /&gt;
The proposed framework&#039;s main focus is to ensure that any leaping packet is moving because it is known who does it belong to. Recalling that in the real world, if a person doesn&#039;t have an identity (like a social insurance number), he can&#039;t benefit from services. For instance, he can&#039;t open a bank account, can&#039;t buy a house, can&#039;t trade, nor can he even get a job. Obviously, the proposed system mimics the behavior of the real world. Of course, the real world is not ideal in criminal tracing and law enforcement, however, it&#039;s level of attribution would definitely beat that of the Internet in the meantime. We can say that current internet attribution in comparison to the real world attribution is considered a failure. An acceptable form of internet attribution would be considered basically acceptable if it, at least, provides as much attribution as the real world attribution does. We could say that the proposed framework would guarantee such level.&lt;br /&gt;
&lt;br /&gt;
The proposed framework succeeds to fulfill all of the general requirements. Clearly, any potentially destructive act is definitely traceable to an &amp;lt;i&amp;gt;Ag&amp;lt;/i&amp;gt; or else, it will not take place. The framework also omits violation to any privacy related laws since the attribution information are not publicly available. More specifically, they are only available to the agreed on trusted entity. The framework also fulfills all of the deployment requirements. As can be seen, the more areas the system is deployed in, the better for the public good, hence, it is incrementally deployable. The framework is not very loosely coupled but can still allow the Internet to operate if it is suppressed. It is also adaptable to different rules and regulations since it leaves the punishment decision to the jurisdiction of the country with the source of the crime committer. Whatever the cost is to deploy that system, it should still be less than the cost of the losses due to cyber crimes. That is because the cost of losses due to unknown &amp;quot;future&amp;quot; attacks cannot be easily determined. As for the practice requirements, the proposed framework theory of operation doesn&#039;t permit mapping of a certain &amp;lt;i&amp;gt;Ag&amp;lt;/i&amp;gt; to a set of actions, it only permits the mapping of a set of actions to an &amp;lt;i&amp;gt;Ag&amp;lt;/i&amp;gt;, which satisfies non-bijection. Also, because of the distributed nature of the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt;, all traceability information is impossible to collect at one place. The trusted entities are only the ones that generate the &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; from the personal data, hence, they are the only ones having this piece of information. To conclude, the framework successfully satisfies all the requirements.&lt;br /&gt;
&lt;br /&gt;
=Conclusion=&lt;br /&gt;
The human nature refuses any change at the first sight. In 1769, Jonathan Holguinisburg finalized the invention of the first Cugnot Steam Trolly &amp;lt;ref&amp;gt;ckermann, Erik (2001). World History of the Automobile. SAE Press, p.14. [Online]. Available: http://books.google.com/books?id=yLZeQwqNmdgC&amp;amp;printsec=frontcover&amp;amp;source=gbs_ge_summary_r&amp;amp;cad=0#v=onepage&amp;amp;q&amp;amp;f=false &amp;lt;/ref&amp;gt; which became nowadays automobiles. In 1903, car licensing began in North America, that is 134 years after Holguinishburg invention. Licensing started when people began realizing that a car could act as a lethal weapon, which therefore must be approved by the government to be driven by some person, and must also be formally linked to an owner who is considered the primary responsible for it.&lt;br /&gt;
&lt;br /&gt;
Meanwhile, the Internet is passing through the same phase. People would blindly deny, refuse and object such &amp;quot;wicked&amp;quot; attribution systems, but later on, Internet licensing will be part of everyone&#039;s life, just like their driving license. Needless to say, the Internet is becoming more crucial to many applications and in the same time more vulnerable to different types of attacks. Obviously, it is being injected in the &amp;quot;blood&amp;quot; of a vast, yet exponentially growing, number of applications which are time and data sensitive, and which don&#039;t leave room for cyber crimes, unauthorized intrusion, traffic tampering, bandwidth hogging, etc. In addition, much of the industry and technology based applications are now build over the Internet as their underlying infrastructure, and cannot tolerate being threatened all the time by a completely anonymous person behind the seen seeking the proper moment to strike. Meanwhile, Internet Attribution is no longer an add-on, but an obligation.&lt;br /&gt;
&lt;br /&gt;
In this paper, we have presented some formal definitions of attribution, why is it crucial to attribute, level of attribution would be considered acceptable and where the roots of difficulty lies behind achieving such level. Moreover, we have proposed a background about current attribution systems and a brief discussion about the reason of their survival and their point of failure as well. We also populated a list of requirements that must be fulfilled by any system aiming to acquire Internet attribution. Finally, we proposed a potential framework for a system that has that should  fulfills the mentioned requirements and that should have the ability to achieve an acceptable level of Internet attribution. Pros, and Vulnerabilities of the proposed framework are also discussed.&lt;br /&gt;
&lt;br /&gt;
=References=&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;/div&gt;</summary>
		<author><name>Omi</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=Internet_Attribution:_Between_Privacy_and_Cruciality&amp;diff=9442</id>
		<title>Internet Attribution: Between Privacy and Cruciality</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=Internet_Attribution:_Between_Privacy_and_Cruciality&amp;diff=9442"/>
		<updated>2011-04-11T22:53:19Z</updated>

		<summary type="html">&lt;p&gt;Omi: /* Requirements for internet attribution system */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;b&amp;gt;Abstract&amp;lt;/b&amp;gt;&amp;lt;br/&amp;gt;&lt;br /&gt;
Present and past situations show a need for improved attribution systems, and arguably, scientific basis for properly functioning attribution systems are not yet defined. Lots of research have been focusing on attributing documents to authors for the sake of securing authorship rights and rapid identification of plagiarism. Many of those were revolving around the notion of using machine learning for linking articles to humans. Others proposed text classification and feature selection as a mean of detecting the author of a document. Unfortunately, not that much research is addressing the problem of lack of robust attribution system over the internet. Authentication, as a mean of attribution, has proved its efficiency but, needless to say, it is not applicable to authenticate every single packet hopping over the intermediate systems. This paper presents limits and advances in the attribution of actions to agents over the internet. It reviews current attribution technologies as well as the limits of those technologies. It also identifies the requirements of a proper attribution system and proposes a distributed (yet cooperative) approach for performing attribution over the internet.&lt;br /&gt;
&lt;br /&gt;
=Introduction=&lt;br /&gt;
Currently the Internet infrastructure provides users partial anonymity. Unfortunately, that anonymity weakens the security for its users, because it incites advance users to exploit that feature. The lack of online identification married with bad intentions entices criminals to commit a number of &amp;lt;i&amp;gt;Cyber Crimes&amp;lt;/i&amp;gt; without being caught, crimes which include: fraud, theft, forgery, impersonation, the distribution of Malware (and hence, botnets), traffic tampering, DoS, bandwidth hogging, etc. Consequently, internet attribution is a highly sensitive field that constitutes a cornerstone position within internet security. Needless to say, current solutions don&#039;t guarantee sufficient attribution nor are considered always applicable in most of the time, hence, current system suffers the lack of a relatively robust attribution mechanism. In the light of this context, we need better methodologies for reaching an acceptable success level for attributing actions to persons.&lt;br /&gt;
&lt;br /&gt;
In principle, attribution can be defined as the mechanism of binding a system-defined act to an agent. An agent is typically an entity that has the ability to commit what constitutes an act. Within our focus, an agent could either be a person or a machine. It can also be defined as &amp;quot;determining the identity or location of an attacker or an attacker’s intermediary&amp;quot;&amp;lt;ref&amp;gt; [Institute for Defense Analyses, 2003]&amp;lt;/ref&amp;gt;. Problems like IP address spoofing, lack of interoperability in intermediate systems, dynamic nature of IP addresses, unawareness of system users with lots of &amp;lt;i&amp;gt;unknown&amp;lt;/i&amp;gt; packets sneaking to their machines and poor efficiency of firewalls and IDSs make this determination operation considerably difficult. In addition, some types of attacks are carried out to conceal the real agent behind an act. For instance, malware distribution (and hence the creation of botnets), and stepping stones aim to inflict vagueness around the correct &amp;lt;i&amp;gt;human&amp;lt;/i&amp;gt; source behind the scene.&lt;br /&gt;
&lt;br /&gt;
In this paper, we focus on defining what it takes to achieve an acceptably working attribution mechanism over the internet. To do that, we review past research works in attribution and discuss their common limitations as well as flaws and what can be done in common to enhance such schemes. We also argue that the lack of a globally deployed registration system that registers system users and grants them LICENSED access to the system enfeebles proper attribution and motivates illegitimate intrusions and irregular behavior. We show that employing the mentioned system would reduce the incentive of irregular behavior as well as remove the blaze of tempting anonymity, putting attackers under the risk of being easily caught. We also discuss how privacy, as a counter force to attribution, plays a big role in the internet and within its users and propose a framework that achieves relatively robust attribution mechanism and retains the privacy of users.&lt;br /&gt;
&lt;br /&gt;
Much of the research done in literature focuses on attribution that is done for keeping track of authorship, i.e., attributing text to authors. In this paper, we don&#039;t question the cruciality of attribution in this field, but rather we address a higher level of attribution of all possible actions to agents, which is sadly deemed slightly obsolete from the current research perspective.&lt;br /&gt;
&lt;br /&gt;
This paper starts by a quick background discussion on the current forms of attribution. Consequently, section 3 presents the dilemma of attribution, resolving the tension between attribution and privacy. Section 4 presents a fundamental set of requirements for achieving an acceptable level of attribution over the internet. In section 5, we propose an abstract framework for achieving attribution that mimics attribution in the real world. And finally, a conclusion is presented in section 6.&lt;br /&gt;
&lt;br /&gt;
==What is Attribution==&lt;br /&gt;
&#039;&#039;The act of attributing, especially the act of establishing a particular person as the creator of a work of art.&#039;&#039;&amp;lt;ref&amp;gt; The American Heritage® Dictionary of the English Language, Fourth Edition copyright ©2000 by Houghton Mifflin Company. Updated in 2009. Published by Houghton Mifflin Company.&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
We are concerned with one particular type of attribution - binding an act to a person. This may include intermediate attributions, for example, an act to an agent (software, device, etc.) and then attribution of an agent to person. Narrowing the problem further, we&#039;re only concerned about attribution in large, dynamic networks, like internet. For sake of simplicity, in this paper we&#039;re going to reference to &amp;quot;binding an act to a person on the internet&amp;quot; as &amp;quot;attribution&amp;quot;, while other types of attributing will be defined separately.&lt;br /&gt;
&lt;br /&gt;
==Problem Statement==&lt;br /&gt;
The anonymity of the Internet makes it virtually impossible most of the time to properly identify who is who online. This is a double-ended sword as it not only provides a high level of privacy, but also makes it hard to identify people with malicious intent and cyber attackers.&lt;br /&gt;
&lt;br /&gt;
==Problem Motivation==&lt;br /&gt;
In today&#039;s world there is a growing need for strong attribution over the Internet mainly due to increased numbers of cyber attacks since its introduction in the 90’s. Many attackers have succeeded in causing both physical and financial damage to many companies over the Internet and going Scott free; due to the anonymity of the Internet, the attackers cannot be identified.&lt;br /&gt;
&lt;br /&gt;
==Scope==&lt;br /&gt;
In this paper we are addressing the issue of attribution by providing a list of requirements that need to be met in order to have a fully stable and efficient attribution system over the Internet.&lt;br /&gt;
&lt;br /&gt;
Although this is not a technical paper, a basic knowledge of computer science or computer systems will be required, to fully understand some of the concepts and terminology discussed within this paper,&lt;br /&gt;
&lt;br /&gt;
=Background=&lt;br /&gt;
&lt;br /&gt;
The problem of attribution is not one that just came up; it has been around for decades but mostly to address identification issues as it pertained to websites or Internet service providers. A lot of different approaches towards attribution have been taken but mainly just to the extent of what that particular system stems to achieve. &lt;br /&gt;
This section gives an introduction to three of todays current attribution systems and discusses their pros and cons as they pertain to the type of global attribution we discuss in this paper.&lt;br /&gt;
&lt;br /&gt;
==Cookies==&lt;br /&gt;
Websites will sometimes need to remember information about a visit or a visitor in order to improve viewer experience. Cookies are text files that are created by a web server, and stored by a web browser on the user&#039;s computer. Cookies are used for many reasons; mainly authentication, remembering shopping cart information, and storing site preference. In actuality, they can be used to store any type of information that can be stored in a text file. When a page is requested the users web browser sends the request with the webserver’s cookie in the header part of the packet. All this is an automated process between the web browser and web server.  &lt;br /&gt;
&lt;br /&gt;
If at all the webserver receives a request without a cookie attached to it, it takes it as the first access that the browser is making to the server and sends one as part of the response which will be saved by the browser and resent on the next request. Cookies are usually encrypted in order for data security and information privacy, however they are still subject to the users control as they can be decrypted, modified and even deleted completely. It is also possible for a user to change their browser setting to not accept cookies at all. &lt;br /&gt;
&lt;br /&gt;
Cookies can either have an expiration date or not; this is the date that the browser deletes the cookie. Cookies without an expiration date are deleted when the browser is closed. Some browsers allow you to automatically set how long you want cookies to be stored.&lt;br /&gt;
&lt;br /&gt;
===Cookies as an Attribution System===&lt;br /&gt;
Looking at cookies as the type of attribution system we are looking for over the Internet, we will be able to achieve high precision on identifying computers that access a web server. However, The biggest draw back cookies have is that they can be deleted and manipulated. As such the use of cookies is not an effective attribution system.&lt;br /&gt;
&lt;br /&gt;
==IP Addresses==&lt;br /&gt;
IP or Internet Protocol Addresses are 32 bit numerical identifiers for devices (ie computer, printer, scanner etc..) on a network. The users Internet Service Provider (ISP) provide this number. The Internet Assigned Numbers Authority (IANA) is responsible for managing IP Address space allocation globally. It does this with the help of five Regional Internet registries (RIRs), responsible for allocating IP address blocks to their assigned regions ISPs, who in turn allocates them to their users.&lt;br /&gt;
&lt;br /&gt;
Any device that goes online and communicates using IP needs an IP address. Over the years there has been a growing number of users going online and a number of devices owned by the users to go online. One of the more common examples of this is the increase of Internet ready mobile phones. Our current addressing system used by our current Internet Protocol Version 4 (IPv4) contains only 32bits which means it is only able to uniquely address 232 addresses (4,294,967,296) which is less that the number of people on this planet today. The very last batch of IP addresses was assigned out to the five RIRs early February 2011&amp;lt;ref&amp;gt;http://arstechnica.com/tech-policy/news/2011/02/river-of-ipv4-addresses-officially-runs-dry.ars&amp;lt;/ref&amp;gt;. This was foreseen since the 90s, which sprung the development of a new Internet Protocol version, IPv6, which uses a 128bit addressing system began. &lt;br /&gt;
&lt;br /&gt;
IP addresses can either be static or dynamic. Static IP address is an address permanently assigned to a user due to configuration. A dynamic IP address is one in which a new address is assigned at every boot up. A Dynamic Host Configuration Protocol (DHCP) Server is usually responsible for assigning dynamic IP addresses to users. There are two main advantages for dynamic addressing; it eliminates the administrative cost involved with assigning static IP addresses, and it helps solve the issue of limited addressing space by allowing many devices “share” a single address if they go online at different times. Given the limited addressing space the ISPs have to work with, and to save administration costs, most ISPs assign dynamic IP addresses as standard a offer static IP address for a higher fee. &lt;br /&gt;
&lt;br /&gt;
===IP Addresses as an Attribution System===&lt;br /&gt;
Although Internet addresses can be used to attribute packets to its sender, it will fail as an effective attribution system for a few reasons, but mainly that attackers can spoof their IP addresses. Spoofing IP addresses will even foil the efforts of IP trace backs.&lt;br /&gt;
&lt;br /&gt;
==Authentication Systems==&lt;br /&gt;
In order for a website to make sure of the identity of who ever is visiting some pages, it provides an authentication system. This is usually a login name and password either assigned by the web server or chosen by the user. The biggest advantage this has is that now, attribution can be performed across different computers. The task of storing and securing login information is left to the web server, which is subject to attackers hacking into the server to stealing login information. &lt;br /&gt;
&lt;br /&gt;
Login systems are attached to user accounts that sometime require private information in order to be setup. If the web server’s security is not good enough, security breeches may in turn lead to identity theft. &lt;br /&gt;
&lt;br /&gt;
The process behind authentication systems is simple; using a typical web banking authentication system for instance, the process may go as follows. A user requests for a web account or one is automatically assigned to the user. The user sets up a password for accessing the account. When the user now goes to the website he is requested to “identify himself”, the user enters in his personal login information, the web server verifies this information with what it has stored in its database and either grants or denies access to the users personal page. &lt;br /&gt;
&lt;br /&gt;
Authentication systems are only ever used when it involves the users wanting some privacy on the webserver, or when the user wishes to store some form of information on the web server. &lt;br /&gt;
&lt;br /&gt;
===Authentication Systems as an Attribution System===&lt;br /&gt;
Authentication systems are very precise in the identification of people over the Internet and as such used by many companies. However it will have a serious privacy drawback if it were to be used as a global identification system. It will mean that virtually every web server will need to hold enough information about you to be able to identify you as an attacker. This would mean that to even a user randomly search for a cooking recipe online would need to login somehow to access the web server. People generally like the anonymity of surfing the web and a system like this will completely destroy this.&lt;br /&gt;
&lt;br /&gt;
=The Attribution Dilemma=&lt;br /&gt;
&lt;br /&gt;
There are many facets to designing an attribution system, besides the technological aspects. In addition to the technologies and/or infrastructure available, one must also consider the issue of privacy, because when trying to achieve strong attribution personal privacy is compromised. Any system must try to find a balance between strong attribution and privacy. The balance is influenced by the application of the system. For instance, in the case of financial institutions, the clients as well as the institute will place more emphasis on attribution. Such institutes would like to establish unassailable authorization and authentication systems, so as to guarantee (to some degree) that agents involved in the transactions are who they claim they are. On the opposite side of the spectrum, are situations where privacy takes precedence. Political dissidents and whistle-blowers are relatively protected because there is no strong attribution system in place, which allows them to distribute information (regardless of actual usefulness or goodness of it) and keep their identity secret. It is clear that single universal set of rules cannot satisfy these two cases. It is also clear that, in pretty abstract fashion, privacy is inversely proportional to attribution. While designing an attribution system one needs not only to decide on this ration for some particular case, but rather make this ratio dynamically changed depending on the case. &lt;br /&gt;
&lt;br /&gt;
Assuming such a ratio is found, another issue arises. Can the use of private information to track or punish a person be completely justified? Especially if it oversteps their privacy. One might think that this question is a little bit out of the scope of our paper. However, such ethical arguments must be addressed prior to designing, because a system that compromises individual privacy and protection can not be utilized. &lt;br /&gt;
&lt;br /&gt;
There are other topics that attribution system must answer. Who should have the authority to attribute? What information can they attributed? And why do they need it? How is attribution achieved or measured?  How accurate are IP-traceback, stepping stone authentications, link identifications and packet filtering in wedging packets to agents? How much can intermediate systems&#039; cooperation contribute to achieving attribution? How to deal with misleading data sources hiding behind botnets and concealing identities via stepping stones? &lt;br /&gt;
&lt;br /&gt;
==Why do we need Attribution==&lt;br /&gt;
&lt;br /&gt;
Attribution system has many useful applications. The identification property can useful at establishing the client’s identity for Online Banking, identifying the involving party in eCommerce transaction, and can be taken advantage by marketers for more targeting Web advertisements.&lt;br /&gt;
&lt;br /&gt;
Financial matters are not the only incentive for a strong attribution system. Establishing strong identification mechanism can provide better protection against cyber attacks. When the source of an attack can be recognize, then the proper authorities can prosecute the perpetrators of such crimes as: DoS, DDos, computer fraud, forgery and identity theft, sniffing private traffic, distributing illegal traffic and malware, spam,  illegal and undesirable intrusions.&lt;br /&gt;
&lt;br /&gt;
==Why is it difficult to achieve Attribution?==&lt;br /&gt;
&lt;br /&gt;
The problem rise largely due to how the Internet is designed. It does not have strong identification mechanisms, which makes it relatively anonymous for users. Moreover, most current solutions are based on the same structure and work within the same scope, thus, can only reduce the number of potentially destructive acts or just deal with the consequences. Of course, no system can completely prevent against destructive attempts, but some potentially good attribution system should make such attempts highly undesirable and &amp;quot;costly&amp;quot; for an attacker.&lt;br /&gt;
 &lt;br /&gt;
The issue of lack of attribution on the web mostly arises whenever security is compromised. When you&#039;re bombarded with spam, or when a system is under a DoS attack attribution becomes a more appealing notion. Getting a balance between security and privacy is tricky, because once attacks are tracked so will all other traffic. Also, depending on the type of the senders and receivers, different attribution policy will be required.&lt;br /&gt;
&lt;br /&gt;
In the ideal world, every action on the internet could be bound to a machine and thus to a person. This is done by examining the source IP printed on each moving packet, locating the geographical location of this IP, consulting the ISP covering the location and identifying the person. If an act requires strict attribution (like checking and sending emails), authentication is used. &lt;br /&gt;
There are many existing methods that attempt to identify the source of an act, like IP traceback. There are problems with trying to identify the source by its IP address. For instance, it can be spoofed, which leads to misleads or inconclusive geographical location. IP addresses are not permanently bound to a single account, which makes linking IP to the appropriate person not concrete. IP traceback can be improved but that would require global cooperation of intermediate system, which currently does not exist.&lt;br /&gt;
&lt;br /&gt;
In networks, users are not aware of all packets that are received by their machines, which mean users would not be aware of malware distribution, the creation of botnets and other actions taken by their machine without their approval and triggered by other a network user. Firewalls and packet filters can be used to address such problems, but they are not very efficient. Also, it is not practical to authenticate every single action on the internet. &lt;br /&gt;
&lt;br /&gt;
There are attacks that designed specifically to prevent correct attribution. It is used for identity theft and distribution of malware. Stepping stone attack is a common way of attributing attacks to anonymity by using multiple public random agents(as stepping stones) to reach the victim in order to conceal the attacking source. &amp;lt;ref name=&amp;quot;ref1&amp;quot;&amp;gt;S. Staniford-Chen and L. T. Heberlein. Holding intruders accountable on the internet. In SP ’95: Proceedings of the 1995 IEEE Symposium on Security and Privacy, page 39, Washington, DC, USA, 1995. IEEE Computer Society.&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Requirements for an Internet Attribution System=&lt;br /&gt;
&lt;br /&gt;
It is hard to describe some hypothetical attribution system in detail, because there are many issues and complicated dependencies, and a lot of questions to answer or at least to try to answer before one can even think of implementing such a system. In this section we are trying to define high-level requirements for a good attribution system, while definition of good attribution system is not so clear, we take into account everything we have talked above. That is, the following requirements try to define the system in a way that avoids current problems, achieves high degree of attribution and remains realistic. &lt;br /&gt;
&lt;br /&gt;
We have separated those requirements in three sections: general requirements define the idea and overall goal of the system in high level, abstract terms. Deployment requirements set ground rules for deployability that makes sense in such a huge network as internet and human society Practice requirements define the way system works, behaves and interacts with other bodies.&lt;br /&gt;
&lt;br /&gt;
==General==&lt;br /&gt;
&lt;br /&gt;
First and most obvious requirement for any system is usually put for sake of consistency: main requirement for internet attribution system is simple: it needs to attribute, or, more formally, any potentially destructive act should be traceable to an agent (person and/or organization, group, etc). It is important to consider different natures of agents, because the goal of attribution system is not necessarily to narrow down the search to one particular person, but rather to find the body responsible for an act(s) regardless of their actual structure. It might be one person after all. In other words, even though actions are done mostly by a single person, they are not necessarily the ones who&#039;s responsible for a decision to do so. A good real world analogy is an assassin and some body (person or a group) paying him. Good attribution system should not lead to assassin alone, but rather should be designed the way that responsible bodies are the ones to be discovered. Yet, we accept the notion that by the end of the day there is some person or several persons, human brings, responsible for an action. It is essential, because, as practice shows, for example, determining the source of DoS-attack is relatively simple, but most of the time this source is not the one who is responsible, but rather a victim itself.&lt;br /&gt;
&lt;br /&gt;
It is easy to imagine a system in which less crime and misuse is the only acceptable way to do things, and many writers and movie directors exploit this idea in futuristic, science fiction and anti-utopian plots. Unfortunately, applying any of this sort of ideas to real world today is not possible, because a lot of laws and moral principles are already in place, some of which are not perfect, but widely accepted and most have reasons to exist. Attribution system that we&#039;re looking for should take legal and moral issues into account, naturally, should not violate and/or contradict any of them. This important requirement comes somewhat together with incremental deployability that we&#039;re going to discuss later.&lt;br /&gt;
&lt;br /&gt;
In general, an attribution system should be universal and global, and details of these terms will be discussed later.&lt;br /&gt;
&lt;br /&gt;
==Deployment==&lt;br /&gt;
It is relatively easy to discuss the design of the system, than it is to implement the design. The deployment of they system does not need to be instant and massive. Even though a global attribution system will have a lot of pressure on it, internet should not depend on it entirely, the underlying network should still remain functional, even if the attribution system goes down. In other words, attribution system should be loosely coupled to the system it works in. &lt;br /&gt;
&lt;br /&gt;
As discussed before, (and this could be said about any global system on the internet) such a system should be incrementally deployable, so that smooth, step-by-step, subnetwork-by-subnetwork integration is possible. This is important not only because of virtual impossibility to restart or reconfigure the whole internet at once. This incremental way of embedding an attribution system should be more secure (bugs in software and mistakes in design can be fixed while on a small scale), so that by the end of cycle, when the whole internet is wired, the attribution system is field-tested and analyzed several times by different bodies. &lt;br /&gt;
&lt;br /&gt;
Very important, but controversial subject, is adoption of the system within some set of rules or laws (state laws, government regulations, corporate rules and principles, etc.). System should allow easy adoption for different cases, at the same time it should remain universal and global. It should act like a public tool any group can use, but nobody should be able to misuse it or use in non-legal way. The big decision designers will have to make is the one regarding this line between dynamic adoptability and universality. Luckily, this sort of deepness goes beyond the scope of our paper.&lt;br /&gt;
&lt;br /&gt;
Companies and organizations sometimes loose millions of dolars due to attacks and other cyber-crimes done to them, and some issues can be dealt with by spending more resources (memory, bandwidth on servers, etc), or, in other words, spending more money. The overall cost of setting up and maintaining the attribution system for a particular body (person, organization, network) should be considerably less than average losses under current lack of attribution (e.g. DoS, identity theft, etc).&lt;br /&gt;
&lt;br /&gt;
==Practice==&lt;br /&gt;
&lt;br /&gt;
Attribution mapping should not be a bijection, in other words action should map to person, but not vice versa. That it, nobody should be able to use the system to answer the question &amp;quot;what person X did/does?&amp;quot;. Not only the system should not know the answer, it should not be possible to know the answer; the question &amp;quot;who did act X&amp;quot; is the one should be answered. This can be thought of as part of requirement about not violating current laws and moral principles, but is put as a separate requirement, since it is very important to draw a line between attribution system and surveillance. The goal is not only to make attribution system attribute, but also to make it impossible to use it in other way – for surveillance, spying, etc.&lt;br /&gt;
&lt;br /&gt;
Since this global system operates on the internet, it might not be a great idea to put names of people into traceability database. It makes much more sense to assign unique IDs to everyone who is using the network. And in case a crime is committed, and the agent of some act need to be determined, then the recorded ID will be searched for in the police or government database. It should be some trusted entity (government, corporation, police, some public good-like system, etc) that stores the mapping between IDs and real names. This mapping should only be revealed when needed and when there is enough evidence or motivation to do so. Traceability information (namely, unique iDs) should be distributed and it is crucial to make it impossible to collect all the information in one place.&lt;br /&gt;
&lt;br /&gt;
Of course, it is not always the case that some trusted (by everyone) body exists, but generally we have governments and/or agencies we trust. It is important to divide the information between public and trusted body in a way allowing them to cooperate in time of need and not allowing to misuse the system from any side.&lt;br /&gt;
&lt;br /&gt;
=Proposed Framework=&lt;br /&gt;
In this section, we will propose a potential framework and argue that it is able to fulfill the requirements listed in the former section. The proposed framework works under the core principle &amp;quot;An act cannot use network resources nor can it be routed if it is anonymously bound&amp;quot;. Firstly, we start by defining some terminologies that will be used within the scope of this section:&lt;br /&gt;
* &amp;lt;i&amp;gt;Agent&amp;lt;/i&amp;gt; (Ag): the human-device pairing that sits on an end system and keeps transmitting/receiving packets.&lt;br /&gt;
* &amp;lt;i&amp;gt;Machines/Devices&amp;lt;/i&amp;gt; (Md): any piece of hardware that has access capability. It can either be a PDA, a laptop, a notebook, a PC, an Network Interface Card, or even a mere home made chip that can externally communicate wired or wireless to send or receive digital packets.&lt;br /&gt;
* &amp;lt;i&amp;gt;Identification Stamp&amp;lt;/i&amp;gt; (IS): a series of bits that binds a human unique identification (iris intricate structure or fingerprint) with a unique feature of an Md. So, for an Md like a Network Interface Card, the MAC address would be that feature. This biding is a particular representation for the official owner of the device, and who is deemed the primary responsible for any outgoing packet launched by his owned device. In other words, it is a unique identifier for an Ag.&lt;br /&gt;
* &amp;lt;i&amp;gt;Intermediate System Services&amp;lt;/i&amp;gt; (ISS): Services provided by intermediate systems (routers). For e.g., routing (main service), error checking, etc.&lt;br /&gt;
* &amp;lt;i&amp;gt;Globally Distributed Database&amp;lt;/i&amp;gt; (GDDB): a global DNS-like world-wide distributed storage system with an encrypted LUT that has relatively fast retrieval and update capabilities. It will be used to store ISs.&lt;br /&gt;
* &amp;lt;i&amp;gt;Licensing&amp;lt;/i&amp;gt;: a process of giving the permission to intermediate systems to provide ISS to all packets that are launched from the agent that is requesting the license. This process is simply adding new ISs to the GDDB.&lt;br /&gt;
&lt;br /&gt;
In principle, every leaping packet has a human owner that is either directly or indirectly responsible for it. Directly responsible when he is running an application that sends requests or initiates communication sessions to another end system. E.g., using the client side of applications supporting the protocols: HTTP, FTP, SIP, RTP, VoIP, etc. Indirect responsibility is when a user is running a system in the background that performs external (over the internet) system calls or is automated for periodic communication or automatic response to incoming requests. E.g., system clock synchronization (NTP), or the server side of the protocols: HTTP, FTP, etc. In addition, indirect responsibility also includes the responsibility of all packets launched by lower layer protocols that are being manipulated by higher layer ones. E.g., when a user sends an HTTP request, TCP sends connection initiation packets for handshaking schemes, ICMP packets that aims to seek and identify that status of a specific host, etc.&lt;br /&gt;
&lt;br /&gt;
The scope of this framework only addresses attribution over the internet and not any other &amp;quot;locally&amp;quot; defined networks underlying the IEEE standard definitions of the topologies PAN, LAN, MAN, or a WAN that do not use the global intermediate systems as their underlying infrastructure for packet delivery.&lt;br /&gt;
&lt;br /&gt;
The following sections show the assumptions for this framework to operate, the methodology of its operation, a list of pros, cons and vulnerabilities of the system and wrap up by a discussion on the proposed framework.&lt;br /&gt;
==Assumptions==&lt;br /&gt;
For starters: Jurisdiction. This frame work assumes the presence of a globally trustful entity(s) (e.g., government). This entity should act as the Internet&#039;s law enforcement, which will be deemed as the primary inspector and also the jurisdiction for regulating all kinds of cyber crimes and misbehavior. This entity may either be centralized or distributed. A centralized entity would be easier to deploy, but it will suffer from a single point of failure. A distributed entity would obviously perform better as it will be able to scale with the growth of the system users as well as conform to diverse regional laws, regulations, customs and traditions.&lt;br /&gt;
&lt;br /&gt;
Secondly: &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt;. We assume that a &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt; is deployed, which acts as a &amp;quot;database&amp;quot; for storing &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt;s. Symmetric key encryption should be used to protect that system as it will only be accessed through two types of users. Routers, which should be able to access this database ONLY for read operations. And the trustful entity (defined in the previous assumption) which should be able to access for read/write operations. Both users must be strictly authenticated, for being able to decrypt the contents or to append. In addition, this distributed system must guarantee almost zero latency in the read operations as it will be heavily relied on for every single hop made by a packet at the Internet intermediate system. A standardization protocol would be required to define the syntax and semantics as well as the nature of the way that the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt; subsystems would communicate with.&lt;br /&gt;
&lt;br /&gt;
Thirdly: Ownership. We assume that every &amp;lt;i&amp;gt;Md&amp;lt;/i&amp;gt; should be officially owned by a human. This owner is deemed as the official responsible for that &amp;lt;i&amp;gt;Md&amp;lt;/i&amp;gt;, and who would also be accused if his &amp;lt;i&amp;gt;Md&amp;lt;/i&amp;gt; found to misbehave or to launch malicious packets. The owning relationship between persons and machines is one-to-many. That is to say, a person can officially own one or more machines but a machine can only be owned by one person.&lt;br /&gt;
&lt;br /&gt;
Finally: IP packets. Our proposed frame work assumes that within the frame format of the IP packets, a header is added by the network layer that includes the &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; of the &amp;lt;i&amp;gt;Ag&amp;lt;/i&amp;gt; owning the packet.&lt;br /&gt;
&lt;br /&gt;
==Methodology==&lt;br /&gt;
Basically, this framework works by stalling the propagation of a packet that is either unattributed or forged with a fake &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt;. A fake &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; is defined as:&lt;br /&gt;
* Either having a false unique chip identifier that refers to an imaginary &amp;lt;i&amp;gt;Md&amp;lt;/i&amp;gt;.&lt;br /&gt;
* Or having a false unique human identifier that refers to an imaginary human.&lt;br /&gt;
* Or having a misleading binding of a human to a machine. i.e., claiming that some machine &amp;quot;X&amp;quot; belongs to some human &amp;quot;Y&amp;quot;, but in reality, &amp;quot;Y&amp;quot; is not the owner of &amp;quot;X&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Noticeably, the routers, as primary constituents to the intermediate systems, should refrain from routing any data packets that are not fully attributed. As they are the main driving power behind delivering all malicious or benign packets, they should have great responsibility in achieving highly reliable attribution mechanism.&lt;br /&gt;
&lt;br /&gt;
A description of the system, based on the chronological order, is as follows. First, any newly bought machine or even a home made device, must be licensed from the trustful entity. The trustful entity generates the &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt;, accesses the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt; for adding it and provides the user with his &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; for being able to add it to the header of his launched packets. The user should preserve his unique &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; in a secret place and should deal with it exactly the same way he does with his credit card numbers and social insurance numbers. If a device is not licensed (i.e., its &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; was not inserted to the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt;), it doesn&#039;t not benefit from &amp;lt;i&amp;gt;ISS&amp;lt;/i&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
From the intermediate system&#039;s perspective, when a router receives a packet, it verifies its &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt;. This is done by consulting the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt; which is in turn done by sending a copy of the &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; printed on the packet to the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt;. If a packet is found to be not having an &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt;, the packet is prevented from benefiting from &amp;lt;i&amp;gt;ISS&amp;lt;/i&amp;gt; and is simply dropped. If the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt; replies with an invalid &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt;, again, the packet is dropped. If the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt; replies with a success, this will mean that the packet&#039;s printed &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; is verified. Thus, the packet benefits from the &amp;lt;i&amp;gt;ISS&amp;lt;/i&amp;gt; and gets routed throughout the way.&lt;br /&gt;
&lt;br /&gt;
==Pros, Cons and Vulnerabilities==&lt;br /&gt;
&lt;br /&gt;
The proposed framework enjoys the following advantages:&lt;br /&gt;
* It succeeds to perform an acceptable level of attribution relative to the one achieved in the real world.&lt;br /&gt;
* It avoids anonymous attacks since a non-attributed packet will fail to reach its destination.&lt;br /&gt;
* Attribution information is not publicly available to everyone, only available to trustful entities.&lt;br /&gt;
** Hence, it retains personal privacy.&lt;br /&gt;
* The system enjoys full automation. According to the system&#039;s theory of operation, &amp;lt;i&amp;gt;ISS&amp;lt;/i&amp;gt; are either provided or not based on the validation of the &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; printed on each packet.&lt;br /&gt;
* The system avoids all forms of cyber crimes that are executed by unknown &amp;lt;i&amp;gt;Ag&amp;lt;/i&amp;gt;s.&lt;br /&gt;
&lt;br /&gt;
The proposed framework suffers from the following disadvantages:&lt;br /&gt;
* The verification process of the &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; on each packet creates undesirable delays potential bottlenecks at the routers.&lt;br /&gt;
* The framework is not considered easy to deploy since the assumptions are deemed relatively complex.&lt;br /&gt;
* Since attribution is not public to everyone, custom content generation cannot be achievable.&lt;br /&gt;
* Large number of &amp;lt;i&amp;gt;Md&amp;lt;/i&amp;gt;s in University Laboratories, Incorporations, Hospitals, Schools, etc should all be licensed before being able to be used. Normally, in these cases, &amp;lt;i&amp;gt;Md&amp;lt;/i&amp;gt;s would be bound to one single person.&lt;br /&gt;
* For security purposes, licenses should be periodically renewable, however, this is not considered an easy topic.&lt;br /&gt;
&lt;br /&gt;
The proposed framework is vulnerable to:&lt;br /&gt;
* Botnets&lt;br /&gt;
** The system requires full user awareness with what lies under the hood. Since they are the sole responsible persons for their &amp;lt;i&amp;gt;Md&amp;lt;/i&amp;gt;s, they should be aware with all packets sneaking into their machines for avoiding the distribution of malware, and the later formation of botnets.&lt;br /&gt;
** Users are responsible for strictly securing their &amp;lt;i&amp;gt;Md&amp;lt;/i&amp;gt;s exactly the same they do when they lock their care after leaving it in a car park.&lt;br /&gt;
* A successful attack on the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt; would cause whole system failure. If this attack succeeds to alter, the attacker can append an imaginary &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt;. If the attack succeeds to read, the attacker can choose to declare his malicious packets under the responsibility of some other &amp;lt;i&amp;gt;Ag&amp;lt;/i&amp;gt;, forgery.&lt;br /&gt;
&lt;br /&gt;
==Discussion==&lt;br /&gt;
The proposed framework&#039;s main focus is to ensure that any leaping packet is moving because it is known who does it belong to. Recalling that in the real world, if a person doesn&#039;t have an identity (like a social insurance number), he can&#039;t benefit from services. For instance, he can&#039;t open a bank account, can&#039;t buy a house, can&#039;t trade, nor can he even get a job. Obviously, the proposed system mimics the behavior of the real world. Of course, the real world is not ideal in criminal tracing and law enforcement, however, it&#039;s level of attribution would definitely beat that of the Internet in the meantime. We can say that current internet attribution in comparison to the real world attribution is considered a failure. An acceptable form of internet attribution would be considered basically acceptable if it, at least, provides as much attribution as the real world attribution does. We could say that the proposed framework would guarantee such level.&lt;br /&gt;
&lt;br /&gt;
The proposed framework succeeds to fulfill all of the general requirements. Clearly, any potentially destructive act is definitely traceable to an &amp;lt;i&amp;gt;Ag&amp;lt;/i&amp;gt; or else, it will not take place. The framework also omits violation to any privacy related laws since the attribution information are not publicly available. More specifically, they are only available to the agreed on trusted entity. The framework also fulfills all of the deployment requirements. As can be seen, the more areas the system is deployed in, the better for the public good, hence, it is incrementally deployable. The framework is not very loosely coupled but can still allow the Internet to operate if it is suppressed. It is also adaptable to different rules and regulations since it leaves the punishment decision to the jurisdiction of the country with the source of the crime committer. Whatever the cost is to deploy that system, it should still be less than the cost of the losses due to cyber crimes. That is because the cost of losses due to unknown &amp;quot;future&amp;quot; attacks cannot be easily determined. As for the practice requirements, the proposed framework theory of operation doesn&#039;t permit mapping of a certain &amp;lt;i&amp;gt;Ag&amp;lt;/i&amp;gt; to a set of actions, it only permits the mapping of a set of actions to an &amp;lt;i&amp;gt;Ag&amp;lt;/i&amp;gt;, which satisfies non-bijection. Also, because of the distributed nature of the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt;, all traceability information is impossible to collect at one place. The trusted entities are only the ones that generate the &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; from the personal data, hence, they are the only ones having this piece of information. To conclude, the framework successfully satisfies all the requirements.&lt;br /&gt;
&lt;br /&gt;
=Conclusion=&lt;br /&gt;
The human nature refuses any change at the first sight. In 1769, Jonathan Holguinisburg finalized the invention of the first Cugnot Steam Trolly &amp;lt;ref&amp;gt;ckermann, Erik (2001). World History of the Automobile. SAE Press, p.14. [Online]. Available: http://books.google.com/books?id=yLZeQwqNmdgC&amp;amp;printsec=frontcover&amp;amp;source=gbs_ge_summary_r&amp;amp;cad=0#v=onepage&amp;amp;q&amp;amp;f=false &amp;lt;/ref&amp;gt; which became nowadays automobiles. In 1903, car licensing began in North America, that is 134 years after Holguinishburg invention. Licensing started when people began realizing that a car could act as a lethal weapon, which therefore must be approved by the government to be driven by some person, and must also be formally linked to an owner who is considered the primary responsible for it.&lt;br /&gt;
&lt;br /&gt;
Meanwhile, the Internet is passing through the same phase. People would blindly deny, refuse and object such &amp;quot;wicked&amp;quot; attribution systems, but later on, Internet licensing will be part of everyone&#039;s life, just like their driving license. Needless to say, the Internet is becoming more crucial to many applications and in the same time more vulnerable to different types of attacks. Obviously, it is being injected in the &amp;quot;blood&amp;quot; of a vast, yet exponentially growing, number of applications which are time and data sensitive, and which don&#039;t leave room for cyber crimes, unauthorized intrusion, traffic tampering, bandwidth hogging, etc. In addition, much of the industry and technology based applications are now build over the Internet as their underlying infrastructure, and cannot tolerate being threatened all the time by a completely anonymous person behind the seen seeking the proper moment to strike. Meanwhile, Internet Attribution is no longer an add-on, but an obligation.&lt;br /&gt;
&lt;br /&gt;
In this paper, we have presented some formal definitions of attribution, why is it crucial to attribute, level of attribution would be considered acceptable and where the roots of difficulty lies behind achieving such level. Moreover, we have proposed a background about current attribution systems and a brief discussion about the reason of their survival and their point of failure as well. We also populated a list of requirements that must be fulfilled by any system aiming to acquire Internet attribution. Finally, we proposed a potential framework for a system that has that should  fulfills the mentioned requirements and that should have the ability to achieve an acceptable level of Internet attribution. Pros, and Vulnerabilities of the proposed framework are also discussed.&lt;br /&gt;
&lt;br /&gt;
=References=&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;/div&gt;</summary>
		<author><name>Omi</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=Internet_Attribution:_Between_Privacy_and_Cruciality&amp;diff=9441</id>
		<title>Internet Attribution: Between Privacy and Cruciality</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=Internet_Attribution:_Between_Privacy_and_Cruciality&amp;diff=9441"/>
		<updated>2011-04-11T22:52:11Z</updated>

		<summary type="html">&lt;p&gt;Omi: /* Why is it difficult to achieve attribution? */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;b&amp;gt;Abstract&amp;lt;/b&amp;gt;&amp;lt;br/&amp;gt;&lt;br /&gt;
Present and past situations show a need for improved attribution systems, and arguably, scientific basis for properly functioning attribution systems are not yet defined. Lots of research have been focusing on attributing documents to authors for the sake of securing authorship rights and rapid identification of plagiarism. Many of those were revolving around the notion of using machine learning for linking articles to humans. Others proposed text classification and feature selection as a mean of detecting the author of a document. Unfortunately, not that much research is addressing the problem of lack of robust attribution system over the internet. Authentication, as a mean of attribution, has proved its efficiency but, needless to say, it is not applicable to authenticate every single packet hopping over the intermediate systems. This paper presents limits and advances in the attribution of actions to agents over the internet. It reviews current attribution technologies as well as the limits of those technologies. It also identifies the requirements of a proper attribution system and proposes a distributed (yet cooperative) approach for performing attribution over the internet.&lt;br /&gt;
&lt;br /&gt;
=Introduction=&lt;br /&gt;
Currently the Internet infrastructure provides users partial anonymity. Unfortunately, that anonymity weakens the security for its users, because it incites advance users to exploit that feature. The lack of online identification married with bad intentions entices criminals to commit a number of &amp;lt;i&amp;gt;Cyber Crimes&amp;lt;/i&amp;gt; without being caught, crimes which include: fraud, theft, forgery, impersonation, the distribution of Malware (and hence, botnets), traffic tampering, DoS, bandwidth hogging, etc. Consequently, internet attribution is a highly sensitive field that constitutes a cornerstone position within internet security. Needless to say, current solutions don&#039;t guarantee sufficient attribution nor are considered always applicable in most of the time, hence, current system suffers the lack of a relatively robust attribution mechanism. In the light of this context, we need better methodologies for reaching an acceptable success level for attributing actions to persons.&lt;br /&gt;
&lt;br /&gt;
In principle, attribution can be defined as the mechanism of binding a system-defined act to an agent. An agent is typically an entity that has the ability to commit what constitutes an act. Within our focus, an agent could either be a person or a machine. It can also be defined as &amp;quot;determining the identity or location of an attacker or an attacker’s intermediary&amp;quot;&amp;lt;ref&amp;gt; [Institute for Defense Analyses, 2003]&amp;lt;/ref&amp;gt;. Problems like IP address spoofing, lack of interoperability in intermediate systems, dynamic nature of IP addresses, unawareness of system users with lots of &amp;lt;i&amp;gt;unknown&amp;lt;/i&amp;gt; packets sneaking to their machines and poor efficiency of firewalls and IDSs make this determination operation considerably difficult. In addition, some types of attacks are carried out to conceal the real agent behind an act. For instance, malware distribution (and hence the creation of botnets), and stepping stones aim to inflict vagueness around the correct &amp;lt;i&amp;gt;human&amp;lt;/i&amp;gt; source behind the scene.&lt;br /&gt;
&lt;br /&gt;
In this paper, we focus on defining what it takes to achieve an acceptably working attribution mechanism over the internet. To do that, we review past research works in attribution and discuss their common limitations as well as flaws and what can be done in common to enhance such schemes. We also argue that the lack of a globally deployed registration system that registers system users and grants them LICENSED access to the system enfeebles proper attribution and motivates illegitimate intrusions and irregular behavior. We show that employing the mentioned system would reduce the incentive of irregular behavior as well as remove the blaze of tempting anonymity, putting attackers under the risk of being easily caught. We also discuss how privacy, as a counter force to attribution, plays a big role in the internet and within its users and propose a framework that achieves relatively robust attribution mechanism and retains the privacy of users.&lt;br /&gt;
&lt;br /&gt;
Much of the research done in literature focuses on attribution that is done for keeping track of authorship, i.e., attributing text to authors. In this paper, we don&#039;t question the cruciality of attribution in this field, but rather we address a higher level of attribution of all possible actions to agents, which is sadly deemed slightly obsolete from the current research perspective.&lt;br /&gt;
&lt;br /&gt;
This paper starts by a quick background discussion on the current forms of attribution. Consequently, section 3 presents the dilemma of attribution, resolving the tension between attribution and privacy. Section 4 presents a fundamental set of requirements for achieving an acceptable level of attribution over the internet. In section 5, we propose an abstract framework for achieving attribution that mimics attribution in the real world. And finally, a conclusion is presented in section 6.&lt;br /&gt;
&lt;br /&gt;
==What is Attribution==&lt;br /&gt;
&#039;&#039;The act of attributing, especially the act of establishing a particular person as the creator of a work of art.&#039;&#039;&amp;lt;ref&amp;gt; The American Heritage® Dictionary of the English Language, Fourth Edition copyright ©2000 by Houghton Mifflin Company. Updated in 2009. Published by Houghton Mifflin Company.&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
We are concerned with one particular type of attribution - binding an act to a person. This may include intermediate attributions, for example, an act to an agent (software, device, etc.) and then attribution of an agent to person. Narrowing the problem further, we&#039;re only concerned about attribution in large, dynamic networks, like internet. For sake of simplicity, in this paper we&#039;re going to reference to &amp;quot;binding an act to a person on the internet&amp;quot; as &amp;quot;attribution&amp;quot;, while other types of attributing will be defined separately.&lt;br /&gt;
&lt;br /&gt;
==Problem Statement==&lt;br /&gt;
The anonymity of the Internet makes it virtually impossible most of the time to properly identify who is who online. This is a double-ended sword as it not only provides a high level of privacy, but also makes it hard to identify people with malicious intent and cyber attackers.&lt;br /&gt;
&lt;br /&gt;
==Problem Motivation==&lt;br /&gt;
In today&#039;s world there is a growing need for strong attribution over the Internet mainly due to increased numbers of cyber attacks since its introduction in the 90’s. Many attackers have succeeded in causing both physical and financial damage to many companies over the Internet and going Scott free; due to the anonymity of the Internet, the attackers cannot be identified.&lt;br /&gt;
&lt;br /&gt;
==Scope==&lt;br /&gt;
In this paper we are addressing the issue of attribution by providing a list of requirements that need to be met in order to have a fully stable and efficient attribution system over the Internet.&lt;br /&gt;
&lt;br /&gt;
Although this is not a technical paper, a basic knowledge of computer science or computer systems will be required, to fully understand some of the concepts and terminology discussed within this paper,&lt;br /&gt;
&lt;br /&gt;
=Background=&lt;br /&gt;
&lt;br /&gt;
The problem of attribution is not one that just came up; it has been around for decades but mostly to address identification issues as it pertained to websites or Internet service providers. A lot of different approaches towards attribution have been taken but mainly just to the extent of what that particular system stems to achieve. &lt;br /&gt;
This section gives an introduction to three of todays current attribution systems and discusses their pros and cons as they pertain to the type of global attribution we discuss in this paper.&lt;br /&gt;
&lt;br /&gt;
==Cookies==&lt;br /&gt;
Websites will sometimes need to remember information about a visit or a visitor in order to improve viewer experience. Cookies are text files that are created by a web server, and stored by a web browser on the user&#039;s computer. Cookies are used for many reasons; mainly authentication, remembering shopping cart information, and storing site preference. In actuality, they can be used to store any type of information that can be stored in a text file. When a page is requested the users web browser sends the request with the webserver’s cookie in the header part of the packet. All this is an automated process between the web browser and web server.  &lt;br /&gt;
&lt;br /&gt;
If at all the webserver receives a request without a cookie attached to it, it takes it as the first access that the browser is making to the server and sends one as part of the response which will be saved by the browser and resent on the next request. Cookies are usually encrypted in order for data security and information privacy, however they are still subject to the users control as they can be decrypted, modified and even deleted completely. It is also possible for a user to change their browser setting to not accept cookies at all. &lt;br /&gt;
&lt;br /&gt;
Cookies can either have an expiration date or not; this is the date that the browser deletes the cookie. Cookies without an expiration date are deleted when the browser is closed. Some browsers allow you to automatically set how long you want cookies to be stored.&lt;br /&gt;
&lt;br /&gt;
===Cookies as an Attribution System===&lt;br /&gt;
Looking at cookies as the type of attribution system we are looking for over the Internet, we will be able to achieve high precision on identifying computers that access a web server. However, The biggest draw back cookies have is that they can be deleted and manipulated. As such the use of cookies is not an effective attribution system.&lt;br /&gt;
&lt;br /&gt;
==IP Addresses==&lt;br /&gt;
IP or Internet Protocol Addresses are 32 bit numerical identifiers for devices (ie computer, printer, scanner etc..) on a network. The users Internet Service Provider (ISP) provide this number. The Internet Assigned Numbers Authority (IANA) is responsible for managing IP Address space allocation globally. It does this with the help of five Regional Internet registries (RIRs), responsible for allocating IP address blocks to their assigned regions ISPs, who in turn allocates them to their users.&lt;br /&gt;
&lt;br /&gt;
Any device that goes online and communicates using IP needs an IP address. Over the years there has been a growing number of users going online and a number of devices owned by the users to go online. One of the more common examples of this is the increase of Internet ready mobile phones. Our current addressing system used by our current Internet Protocol Version 4 (IPv4) contains only 32bits which means it is only able to uniquely address 232 addresses (4,294,967,296) which is less that the number of people on this planet today. The very last batch of IP addresses was assigned out to the five RIRs early February 2011&amp;lt;ref&amp;gt;http://arstechnica.com/tech-policy/news/2011/02/river-of-ipv4-addresses-officially-runs-dry.ars&amp;lt;/ref&amp;gt;. This was foreseen since the 90s, which sprung the development of a new Internet Protocol version, IPv6, which uses a 128bit addressing system began. &lt;br /&gt;
&lt;br /&gt;
IP addresses can either be static or dynamic. Static IP address is an address permanently assigned to a user due to configuration. A dynamic IP address is one in which a new address is assigned at every boot up. A Dynamic Host Configuration Protocol (DHCP) Server is usually responsible for assigning dynamic IP addresses to users. There are two main advantages for dynamic addressing; it eliminates the administrative cost involved with assigning static IP addresses, and it helps solve the issue of limited addressing space by allowing many devices “share” a single address if they go online at different times. Given the limited addressing space the ISPs have to work with, and to save administration costs, most ISPs assign dynamic IP addresses as standard a offer static IP address for a higher fee. &lt;br /&gt;
&lt;br /&gt;
===IP Addresses as an Attribution System===&lt;br /&gt;
Although Internet addresses can be used to attribute packets to its sender, it will fail as an effective attribution system for a few reasons, but mainly that attackers can spoof their IP addresses. Spoofing IP addresses will even foil the efforts of IP trace backs.&lt;br /&gt;
&lt;br /&gt;
==Authentication Systems==&lt;br /&gt;
In order for a website to make sure of the identity of who ever is visiting some pages, it provides an authentication system. This is usually a login name and password either assigned by the web server or chosen by the user. The biggest advantage this has is that now, attribution can be performed across different computers. The task of storing and securing login information is left to the web server, which is subject to attackers hacking into the server to stealing login information. &lt;br /&gt;
&lt;br /&gt;
Login systems are attached to user accounts that sometime require private information in order to be setup. If the web server’s security is not good enough, security breeches may in turn lead to identity theft. &lt;br /&gt;
&lt;br /&gt;
The process behind authentication systems is simple; using a typical web banking authentication system for instance, the process may go as follows. A user requests for a web account or one is automatically assigned to the user. The user sets up a password for accessing the account. When the user now goes to the website he is requested to “identify himself”, the user enters in his personal login information, the web server verifies this information with what it has stored in its database and either grants or denies access to the users personal page. &lt;br /&gt;
&lt;br /&gt;
Authentication systems are only ever used when it involves the users wanting some privacy on the webserver, or when the user wishes to store some form of information on the web server. &lt;br /&gt;
&lt;br /&gt;
===Authentication Systems as an Attribution System===&lt;br /&gt;
Authentication systems are very precise in the identification of people over the Internet and as such used by many companies. However it will have a serious privacy drawback if it were to be used as a global identification system. It will mean that virtually every web server will need to hold enough information about you to be able to identify you as an attacker. This would mean that to even a user randomly search for a cooking recipe online would need to login somehow to access the web server. People generally like the anonymity of surfing the web and a system like this will completely destroy this.&lt;br /&gt;
&lt;br /&gt;
=The Attribution Dilemma=&lt;br /&gt;
&lt;br /&gt;
There are many facets to designing an attribution system, besides the technological aspects. In addition to the technologies and/or infrastructure available, one must also consider the issue of privacy, because when trying to achieve strong attribution personal privacy is compromised. Any system must try to find a balance between strong attribution and privacy. The balance is influenced by the application of the system. For instance, in the case of financial institutions, the clients as well as the institute will place more emphasis on attribution. Such institutes would like to establish unassailable authorization and authentication systems, so as to guarantee (to some degree) that agents involved in the transactions are who they claim they are. On the opposite side of the spectrum, are situations where privacy takes precedence. Political dissidents and whistle-blowers are relatively protected because there is no strong attribution system in place, which allows them to distribute information (regardless of actual usefulness or goodness of it) and keep their identity secret. It is clear that single universal set of rules cannot satisfy these two cases. It is also clear that, in pretty abstract fashion, privacy is inversely proportional to attribution. While designing an attribution system one needs not only to decide on this ration for some particular case, but rather make this ratio dynamically changed depending on the case. &lt;br /&gt;
&lt;br /&gt;
Assuming such a ratio is found, another issue arises. Can the use of private information to track or punish a person be completely justified? Especially if it oversteps their privacy. One might think that this question is a little bit out of the scope of our paper. However, such ethical arguments must be addressed prior to designing, because a system that compromises individual privacy and protection can not be utilized. &lt;br /&gt;
&lt;br /&gt;
There are other topics that attribution system must answer. Who should have the authority to attribute? What information can they attributed? And why do they need it? How is attribution achieved or measured?  How accurate are IP-traceback, stepping stone authentications, link identifications and packet filtering in wedging packets to agents? How much can intermediate systems&#039; cooperation contribute to achieving attribution? How to deal with misleading data sources hiding behind botnets and concealing identities via stepping stones? &lt;br /&gt;
&lt;br /&gt;
==Why do we need Attribution==&lt;br /&gt;
&lt;br /&gt;
Attribution system has many useful applications. The identification property can useful at establishing the client’s identity for Online Banking, identifying the involving party in eCommerce transaction, and can be taken advantage by marketers for more targeting Web advertisements.&lt;br /&gt;
&lt;br /&gt;
Financial matters are not the only incentive for a strong attribution system. Establishing strong identification mechanism can provide better protection against cyber attacks. When the source of an attack can be recognize, then the proper authorities can prosecute the perpetrators of such crimes as: DoS, DDos, computer fraud, forgery and identity theft, sniffing private traffic, distributing illegal traffic and malware, spam,  illegal and undesirable intrusions.&lt;br /&gt;
&lt;br /&gt;
==Why is it difficult to achieve Attribution?==&lt;br /&gt;
&lt;br /&gt;
The problem rise largely due to how the Internet is designed. It does not have strong identification mechanisms, which makes it relatively anonymous for users. Moreover, most current solutions are based on the same structure and work within the same scope, thus, can only reduce the number of potentially destructive acts or just deal with the consequences. Of course, no system can completely prevent against destructive attempts, but some potentially good attribution system should make such attempts highly undesirable and &amp;quot;costly&amp;quot; for an attacker.&lt;br /&gt;
 &lt;br /&gt;
The issue of lack of attribution on the web mostly arises whenever security is compromised. When you&#039;re bombarded with spam, or when a system is under a DoS attack attribution becomes a more appealing notion. Getting a balance between security and privacy is tricky, because once attacks are tracked so will all other traffic. Also, depending on the type of the senders and receivers, different attribution policy will be required.&lt;br /&gt;
&lt;br /&gt;
In the ideal world, every action on the internet could be bound to a machine and thus to a person. This is done by examining the source IP printed on each moving packet, locating the geographical location of this IP, consulting the ISP covering the location and identifying the person. If an act requires strict attribution (like checking and sending emails), authentication is used. &lt;br /&gt;
There are many existing methods that attempt to identify the source of an act, like IP traceback. There are problems with trying to identify the source by its IP address. For instance, it can be spoofed, which leads to misleads or inconclusive geographical location. IP addresses are not permanently bound to a single account, which makes linking IP to the appropriate person not concrete. IP traceback can be improved but that would require global cooperation of intermediate system, which currently does not exist.&lt;br /&gt;
&lt;br /&gt;
In networks, users are not aware of all packets that are received by their machines, which mean users would not be aware of malware distribution, the creation of botnets and other actions taken by their machine without their approval and triggered by other a network user. Firewalls and packet filters can be used to address such problems, but they are not very efficient. Also, it is not practical to authenticate every single action on the internet. &lt;br /&gt;
&lt;br /&gt;
There are attacks that designed specifically to prevent correct attribution. It is used for identity theft and distribution of malware. Stepping stone attack is a common way of attributing attacks to anonymity by using multiple public random agents(as stepping stones) to reach the victim in order to conceal the attacking source. &amp;lt;ref name=&amp;quot;ref1&amp;quot;&amp;gt;S. Staniford-Chen and L. T. Heberlein. Holding intruders accountable on the internet. In SP ’95: Proceedings of the 1995 IEEE Symposium on Security and Privacy, page 39, Washington, DC, USA, 1995. IEEE Computer Society.&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Requirements for internet attribution system=&lt;br /&gt;
&lt;br /&gt;
It is hard to describe some hypothetical attribution system in detail, because there are many issues and complicated dependencies, and a lot of questions to answer or at least to try to answer before one can even think of implementing such a system. In this section we are trying to define high-level requirements for a good attribution system, while definition of good attribution system is not so clear, we take into account everything we have talked above. That is, the following requirements try to define the system in a way that avoids current problems, achieves high degree of attribution and remains realistic. &lt;br /&gt;
&lt;br /&gt;
We have separated those requirements in three sections: general requirements define the idea and overall goal of the system in high level, abstract terms. Deployment requirements set ground rules for deployability that makes sense in such a huge network as internet and human society Practice requirements define the way system works, behaves and interacts with other bodies.&lt;br /&gt;
&lt;br /&gt;
==General==&lt;br /&gt;
&lt;br /&gt;
First and most obvious requirement for any system is usually put for sake of consistency: main requirement for internet attribution system is simple: it needs to attribute, or, more formally, any potentially destructive act should be traceable to an agent (person and/or organization, group, etc). It is important to consider different natures of agents, because the goal of attribution system is not necessarily to narrow down the search to one particular person, but rather to find the body responsible for an act(s) regardless of their actual structure. It might be one person after all. In other words, even though actions are done mostly by a single person, they are not necessarily the ones who&#039;s responsible for a decision to do so. A good real world analogy is an assassin and some body (person or a group) paying him. Good attribution system should not lead to assassin alone, but rather should be designed the way that responsible bodies are the ones to be discovered. Yet, we accept the notion that by the end of the day there is some person or several persons, human brings, responsible for an action. It is essential, because, as practice shows, for example, determining the source of DoS-attack is relatively simple, but most of the time this source is not the one who is responsible, but rather a victim itself.&lt;br /&gt;
&lt;br /&gt;
It is easy to imagine a system in which less crime and misuse is the only acceptable way to do things, and many writers and movie directors exploit this idea in futuristic, science fiction and anti-utopian plots. Unfortunately, applying any of this sort of ideas to real world today is not possible, because a lot of laws and moral principles are already in place, some of which are not perfect, but widely accepted and most have reasons to exist. Attribution system that we&#039;re looking for should take legal and moral issues into account, naturally, should not violate and/or contradict any of them. This important requirement comes somewhat together with incremental deployability that we&#039;re going to discuss later.&lt;br /&gt;
&lt;br /&gt;
In general, an attribution system should be universal and global, and details of these terms will be discussed later.&lt;br /&gt;
&lt;br /&gt;
==Deployment==&lt;br /&gt;
It is relatively easy to discuss the design of the system, than it is to implement the design. The deployment of they system does not need to be instant and massive. Even though a global attribution system will have a lot of pressure on it, internet should not depend on it entirely, the underlying network should still remain functional, even if the attribution system goes down. In other words, attribution system should be loosely coupled to the system it works in. &lt;br /&gt;
&lt;br /&gt;
As discussed before, (and this could be said about any global system on the internet) such a system should be incrementally deployable, so that smooth, step-by-step, subnetwork-by-subnetwork integration is possible. This is important not only because of virtual impossibility to restart or reconfigure the whole internet at once. This incremental way of embedding an attribution system should be more secure (bugs in software and mistakes in design can be fixed while on a small scale), so that by the end of cycle, when the whole internet is wired, the attribution system is field-tested and analyzed several times by different bodies. &lt;br /&gt;
&lt;br /&gt;
Very important, but controversial subject, is adoption of the system within some set of rules or laws (state laws, government regulations, corporate rules and principles, etc.). System should allow easy adoption for different cases, at the same time it should remain universal and global. It should act like a public tool any group can use, but nobody should be able to misuse it or use in non-legal way. The big decision designers will have to make is the one regarding this line between dynamic adoptability and universality. Luckily, this sort of deepness goes beyond the scope of our paper.&lt;br /&gt;
&lt;br /&gt;
Companies and organizations sometimes loose millions of dolars due to attacks and other cyber-crimes done to them, and some issues can be dealt with by spending more resources (memory, bandwidth on servers, etc), or, in other words, spending more money. The overall cost of setting up and maintaining the attribution system for a particular body (person, organization, network) should be considerably less than average losses under current lack of attribution (e.g. DoS, identity theft, etc).&lt;br /&gt;
&lt;br /&gt;
==Practice==&lt;br /&gt;
&lt;br /&gt;
Attribution mapping should not be a bijection, in other words action should map to person, but not vice versa. That it, nobody should be able to use the system to answer the question &amp;quot;what person X did/does?&amp;quot;. Not only the system should not know the answer, it should not be possible to know the answer; the question &amp;quot;who did act X&amp;quot; is the one should be answered. This can be thought of as part of requirement about not violating current laws and moral principles, but is put as a separate requirement, since it is very important to draw a line between attribution system and surveillance. The goal is not only to make attribution system attribute, but also to make it impossible to use it in other way – for surveillance, spying, etc.&lt;br /&gt;
&lt;br /&gt;
Since this global system operates on the internet, it might not be a great idea to put names of people into traceability database. It makes much more sense to assign unique IDs to everyone who is using the network. And in case a crime is committed, and the agent of some act need to be determined, then the recorded ID will be searched for in the police or government database. It should be some trusted entity (government, corporation, police, some public good-like system, etc) that stores the mapping between IDs and real names. This mapping should only be revealed when needed and when there is enough evidence or motivation to do so. Traceability information (namely, unique iDs) should be distributed and it is crucial to make it impossible to collect all the information in one place.&lt;br /&gt;
&lt;br /&gt;
Of course, it is not always the case that some trusted (by everyone) body exists, but generally we have governments and/or agencies we trust. It is important to divide the information between public and trusted body in a way allowing them to cooperate in time of need and not allowing to misuse the system from any side.&lt;br /&gt;
&lt;br /&gt;
=Proposed Framework=&lt;br /&gt;
In this section, we will propose a potential framework and argue that it is able to fulfill the requirements listed in the former section. The proposed framework works under the core principle &amp;quot;An act cannot use network resources nor can it be routed if it is anonymously bound&amp;quot;. Firstly, we start by defining some terminologies that will be used within the scope of this section:&lt;br /&gt;
* &amp;lt;i&amp;gt;Agent&amp;lt;/i&amp;gt; (Ag): the human-device pairing that sits on an end system and keeps transmitting/receiving packets.&lt;br /&gt;
* &amp;lt;i&amp;gt;Machines/Devices&amp;lt;/i&amp;gt; (Md): any piece of hardware that has access capability. It can either be a PDA, a laptop, a notebook, a PC, an Network Interface Card, or even a mere home made chip that can externally communicate wired or wireless to send or receive digital packets.&lt;br /&gt;
* &amp;lt;i&amp;gt;Identification Stamp&amp;lt;/i&amp;gt; (IS): a series of bits that binds a human unique identification (iris intricate structure or fingerprint) with a unique feature of an Md. So, for an Md like a Network Interface Card, the MAC address would be that feature. This biding is a particular representation for the official owner of the device, and who is deemed the primary responsible for any outgoing packet launched by his owned device. In other words, it is a unique identifier for an Ag.&lt;br /&gt;
* &amp;lt;i&amp;gt;Intermediate System Services&amp;lt;/i&amp;gt; (ISS): Services provided by intermediate systems (routers). For e.g., routing (main service), error checking, etc.&lt;br /&gt;
* &amp;lt;i&amp;gt;Globally Distributed Database&amp;lt;/i&amp;gt; (GDDB): a global DNS-like world-wide distributed storage system with an encrypted LUT that has relatively fast retrieval and update capabilities. It will be used to store ISs.&lt;br /&gt;
* &amp;lt;i&amp;gt;Licensing&amp;lt;/i&amp;gt;: a process of giving the permission to intermediate systems to provide ISS to all packets that are launched from the agent that is requesting the license. This process is simply adding new ISs to the GDDB.&lt;br /&gt;
&lt;br /&gt;
In principle, every leaping packet has a human owner that is either directly or indirectly responsible for it. Directly responsible when he is running an application that sends requests or initiates communication sessions to another end system. E.g., using the client side of applications supporting the protocols: HTTP, FTP, SIP, RTP, VoIP, etc. Indirect responsibility is when a user is running a system in the background that performs external (over the internet) system calls or is automated for periodic communication or automatic response to incoming requests. E.g., system clock synchronization (NTP), or the server side of the protocols: HTTP, FTP, etc. In addition, indirect responsibility also includes the responsibility of all packets launched by lower layer protocols that are being manipulated by higher layer ones. E.g., when a user sends an HTTP request, TCP sends connection initiation packets for handshaking schemes, ICMP packets that aims to seek and identify that status of a specific host, etc.&lt;br /&gt;
&lt;br /&gt;
The scope of this framework only addresses attribution over the internet and not any other &amp;quot;locally&amp;quot; defined networks underlying the IEEE standard definitions of the topologies PAN, LAN, MAN, or a WAN that do not use the global intermediate systems as their underlying infrastructure for packet delivery.&lt;br /&gt;
&lt;br /&gt;
The following sections show the assumptions for this framework to operate, the methodology of its operation, a list of pros, cons and vulnerabilities of the system and wrap up by a discussion on the proposed framework.&lt;br /&gt;
==Assumptions==&lt;br /&gt;
For starters: Jurisdiction. This frame work assumes the presence of a globally trustful entity(s) (e.g., government). This entity should act as the Internet&#039;s law enforcement, which will be deemed as the primary inspector and also the jurisdiction for regulating all kinds of cyber crimes and misbehavior. This entity may either be centralized or distributed. A centralized entity would be easier to deploy, but it will suffer from a single point of failure. A distributed entity would obviously perform better as it will be able to scale with the growth of the system users as well as conform to diverse regional laws, regulations, customs and traditions.&lt;br /&gt;
&lt;br /&gt;
Secondly: &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt;. We assume that a &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt; is deployed, which acts as a &amp;quot;database&amp;quot; for storing &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt;s. Symmetric key encryption should be used to protect that system as it will only be accessed through two types of users. Routers, which should be able to access this database ONLY for read operations. And the trustful entity (defined in the previous assumption) which should be able to access for read/write operations. Both users must be strictly authenticated, for being able to decrypt the contents or to append. In addition, this distributed system must guarantee almost zero latency in the read operations as it will be heavily relied on for every single hop made by a packet at the Internet intermediate system. A standardization protocol would be required to define the syntax and semantics as well as the nature of the way that the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt; subsystems would communicate with.&lt;br /&gt;
&lt;br /&gt;
Thirdly: Ownership. We assume that every &amp;lt;i&amp;gt;Md&amp;lt;/i&amp;gt; should be officially owned by a human. This owner is deemed as the official responsible for that &amp;lt;i&amp;gt;Md&amp;lt;/i&amp;gt;, and who would also be accused if his &amp;lt;i&amp;gt;Md&amp;lt;/i&amp;gt; found to misbehave or to launch malicious packets. The owning relationship between persons and machines is one-to-many. That is to say, a person can officially own one or more machines but a machine can only be owned by one person.&lt;br /&gt;
&lt;br /&gt;
Finally: IP packets. Our proposed frame work assumes that within the frame format of the IP packets, a header is added by the network layer that includes the &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; of the &amp;lt;i&amp;gt;Ag&amp;lt;/i&amp;gt; owning the packet.&lt;br /&gt;
&lt;br /&gt;
==Methodology==&lt;br /&gt;
Basically, this framework works by stalling the propagation of a packet that is either unattributed or forged with a fake &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt;. A fake &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; is defined as:&lt;br /&gt;
* Either having a false unique chip identifier that refers to an imaginary &amp;lt;i&amp;gt;Md&amp;lt;/i&amp;gt;.&lt;br /&gt;
* Or having a false unique human identifier that refers to an imaginary human.&lt;br /&gt;
* Or having a misleading binding of a human to a machine. i.e., claiming that some machine &amp;quot;X&amp;quot; belongs to some human &amp;quot;Y&amp;quot;, but in reality, &amp;quot;Y&amp;quot; is not the owner of &amp;quot;X&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Noticeably, the routers, as primary constituents to the intermediate systems, should refrain from routing any data packets that are not fully attributed. As they are the main driving power behind delivering all malicious or benign packets, they should have great responsibility in achieving highly reliable attribution mechanism.&lt;br /&gt;
&lt;br /&gt;
A description of the system, based on the chronological order, is as follows. First, any newly bought machine or even a home made device, must be licensed from the trustful entity. The trustful entity generates the &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt;, accesses the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt; for adding it and provides the user with his &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; for being able to add it to the header of his launched packets. The user should preserve his unique &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; in a secret place and should deal with it exactly the same way he does with his credit card numbers and social insurance numbers. If a device is not licensed (i.e., its &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; was not inserted to the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt;), it doesn&#039;t not benefit from &amp;lt;i&amp;gt;ISS&amp;lt;/i&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
From the intermediate system&#039;s perspective, when a router receives a packet, it verifies its &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt;. This is done by consulting the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt; which is in turn done by sending a copy of the &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; printed on the packet to the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt;. If a packet is found to be not having an &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt;, the packet is prevented from benefiting from &amp;lt;i&amp;gt;ISS&amp;lt;/i&amp;gt; and is simply dropped. If the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt; replies with an invalid &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt;, again, the packet is dropped. If the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt; replies with a success, this will mean that the packet&#039;s printed &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; is verified. Thus, the packet benefits from the &amp;lt;i&amp;gt;ISS&amp;lt;/i&amp;gt; and gets routed throughout the way.&lt;br /&gt;
&lt;br /&gt;
==Pros, Cons and Vulnerabilities==&lt;br /&gt;
&lt;br /&gt;
The proposed framework enjoys the following advantages:&lt;br /&gt;
* It succeeds to perform an acceptable level of attribution relative to the one achieved in the real world.&lt;br /&gt;
* It avoids anonymous attacks since a non-attributed packet will fail to reach its destination.&lt;br /&gt;
* Attribution information is not publicly available to everyone, only available to trustful entities.&lt;br /&gt;
** Hence, it retains personal privacy.&lt;br /&gt;
* The system enjoys full automation. According to the system&#039;s theory of operation, &amp;lt;i&amp;gt;ISS&amp;lt;/i&amp;gt; are either provided or not based on the validation of the &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; printed on each packet.&lt;br /&gt;
* The system avoids all forms of cyber crimes that are executed by unknown &amp;lt;i&amp;gt;Ag&amp;lt;/i&amp;gt;s.&lt;br /&gt;
&lt;br /&gt;
The proposed framework suffers from the following disadvantages:&lt;br /&gt;
* The verification process of the &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; on each packet creates undesirable delays potential bottlenecks at the routers.&lt;br /&gt;
* The framework is not considered easy to deploy since the assumptions are deemed relatively complex.&lt;br /&gt;
* Since attribution is not public to everyone, custom content generation cannot be achievable.&lt;br /&gt;
* Large number of &amp;lt;i&amp;gt;Md&amp;lt;/i&amp;gt;s in University Laboratories, Incorporations, Hospitals, Schools, etc should all be licensed before being able to be used. Normally, in these cases, &amp;lt;i&amp;gt;Md&amp;lt;/i&amp;gt;s would be bound to one single person.&lt;br /&gt;
* For security purposes, licenses should be periodically renewable, however, this is not considered an easy topic.&lt;br /&gt;
&lt;br /&gt;
The proposed framework is vulnerable to:&lt;br /&gt;
* Botnets&lt;br /&gt;
** The system requires full user awareness with what lies under the hood. Since they are the sole responsible persons for their &amp;lt;i&amp;gt;Md&amp;lt;/i&amp;gt;s, they should be aware with all packets sneaking into their machines for avoiding the distribution of malware, and the later formation of botnets.&lt;br /&gt;
** Users are responsible for strictly securing their &amp;lt;i&amp;gt;Md&amp;lt;/i&amp;gt;s exactly the same they do when they lock their care after leaving it in a car park.&lt;br /&gt;
* A successful attack on the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt; would cause whole system failure. If this attack succeeds to alter, the attacker can append an imaginary &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt;. If the attack succeeds to read, the attacker can choose to declare his malicious packets under the responsibility of some other &amp;lt;i&amp;gt;Ag&amp;lt;/i&amp;gt;, forgery.&lt;br /&gt;
&lt;br /&gt;
==Discussion==&lt;br /&gt;
The proposed framework&#039;s main focus is to ensure that any leaping packet is moving because it is known who does it belong to. Recalling that in the real world, if a person doesn&#039;t have an identity (like a social insurance number), he can&#039;t benefit from services. For instance, he can&#039;t open a bank account, can&#039;t buy a house, can&#039;t trade, nor can he even get a job. Obviously, the proposed system mimics the behavior of the real world. Of course, the real world is not ideal in criminal tracing and law enforcement, however, it&#039;s level of attribution would definitely beat that of the Internet in the meantime. We can say that current internet attribution in comparison to the real world attribution is considered a failure. An acceptable form of internet attribution would be considered basically acceptable if it, at least, provides as much attribution as the real world attribution does. We could say that the proposed framework would guarantee such level.&lt;br /&gt;
&lt;br /&gt;
The proposed framework succeeds to fulfill all of the general requirements. Clearly, any potentially destructive act is definitely traceable to an &amp;lt;i&amp;gt;Ag&amp;lt;/i&amp;gt; or else, it will not take place. The framework also omits violation to any privacy related laws since the attribution information are not publicly available. More specifically, they are only available to the agreed on trusted entity. The framework also fulfills all of the deployment requirements. As can be seen, the more areas the system is deployed in, the better for the public good, hence, it is incrementally deployable. The framework is not very loosely coupled but can still allow the Internet to operate if it is suppressed. It is also adaptable to different rules and regulations since it leaves the punishment decision to the jurisdiction of the country with the source of the crime committer. Whatever the cost is to deploy that system, it should still be less than the cost of the losses due to cyber crimes. That is because the cost of losses due to unknown &amp;quot;future&amp;quot; attacks cannot be easily determined. As for the practice requirements, the proposed framework theory of operation doesn&#039;t permit mapping of a certain &amp;lt;i&amp;gt;Ag&amp;lt;/i&amp;gt; to a set of actions, it only permits the mapping of a set of actions to an &amp;lt;i&amp;gt;Ag&amp;lt;/i&amp;gt;, which satisfies non-bijection. Also, because of the distributed nature of the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt;, all traceability information is impossible to collect at one place. The trusted entities are only the ones that generate the &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; from the personal data, hence, they are the only ones having this piece of information. To conclude, the framework successfully satisfies all the requirements.&lt;br /&gt;
&lt;br /&gt;
=Conclusion=&lt;br /&gt;
The human nature refuses any change at the first sight. In 1769, Jonathan Holguinisburg finalized the invention of the first Cugnot Steam Trolly &amp;lt;ref&amp;gt;ckermann, Erik (2001). World History of the Automobile. SAE Press, p.14. [Online]. Available: http://books.google.com/books?id=yLZeQwqNmdgC&amp;amp;printsec=frontcover&amp;amp;source=gbs_ge_summary_r&amp;amp;cad=0#v=onepage&amp;amp;q&amp;amp;f=false &amp;lt;/ref&amp;gt; which became nowadays automobiles. In 1903, car licensing began in North America, that is 134 years after Holguinishburg invention. Licensing started when people began realizing that a car could act as a lethal weapon, which therefore must be approved by the government to be driven by some person, and must also be formally linked to an owner who is considered the primary responsible for it.&lt;br /&gt;
&lt;br /&gt;
Meanwhile, the Internet is passing through the same phase. People would blindly deny, refuse and object such &amp;quot;wicked&amp;quot; attribution systems, but later on, Internet licensing will be part of everyone&#039;s life, just like their driving license. Needless to say, the Internet is becoming more crucial to many applications and in the same time more vulnerable to different types of attacks. Obviously, it is being injected in the &amp;quot;blood&amp;quot; of a vast, yet exponentially growing, number of applications which are time and data sensitive, and which don&#039;t leave room for cyber crimes, unauthorized intrusion, traffic tampering, bandwidth hogging, etc. In addition, much of the industry and technology based applications are now build over the Internet as their underlying infrastructure, and cannot tolerate being threatened all the time by a completely anonymous person behind the seen seeking the proper moment to strike. Meanwhile, Internet Attribution is no longer an add-on, but an obligation.&lt;br /&gt;
&lt;br /&gt;
In this paper, we have presented some formal definitions of attribution, why is it crucial to attribute, level of attribution would be considered acceptable and where the roots of difficulty lies behind achieving such level. Moreover, we have proposed a background about current attribution systems and a brief discussion about the reason of their survival and their point of failure as well. We also populated a list of requirements that must be fulfilled by any system aiming to acquire Internet attribution. Finally, we proposed a potential framework for a system that has that should  fulfills the mentioned requirements and that should have the ability to achieve an acceptable level of Internet attribution. Pros, and Vulnerabilities of the proposed framework are also discussed.&lt;br /&gt;
&lt;br /&gt;
=References=&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;/div&gt;</summary>
		<author><name>Omi</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=Internet_Attribution:_Between_Privacy_and_Cruciality&amp;diff=9440</id>
		<title>Internet Attribution: Between Privacy and Cruciality</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=Internet_Attribution:_Between_Privacy_and_Cruciality&amp;diff=9440"/>
		<updated>2011-04-11T22:51:52Z</updated>

		<summary type="html">&lt;p&gt;Omi: /* The attribution dilemma */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;b&amp;gt;Abstract&amp;lt;/b&amp;gt;&amp;lt;br/&amp;gt;&lt;br /&gt;
Present and past situations show a need for improved attribution systems, and arguably, scientific basis for properly functioning attribution systems are not yet defined. Lots of research have been focusing on attributing documents to authors for the sake of securing authorship rights and rapid identification of plagiarism. Many of those were revolving around the notion of using machine learning for linking articles to humans. Others proposed text classification and feature selection as a mean of detecting the author of a document. Unfortunately, not that much research is addressing the problem of lack of robust attribution system over the internet. Authentication, as a mean of attribution, has proved its efficiency but, needless to say, it is not applicable to authenticate every single packet hopping over the intermediate systems. This paper presents limits and advances in the attribution of actions to agents over the internet. It reviews current attribution technologies as well as the limits of those technologies. It also identifies the requirements of a proper attribution system and proposes a distributed (yet cooperative) approach for performing attribution over the internet.&lt;br /&gt;
&lt;br /&gt;
=Introduction=&lt;br /&gt;
Currently the Internet infrastructure provides users partial anonymity. Unfortunately, that anonymity weakens the security for its users, because it incites advance users to exploit that feature. The lack of online identification married with bad intentions entices criminals to commit a number of &amp;lt;i&amp;gt;Cyber Crimes&amp;lt;/i&amp;gt; without being caught, crimes which include: fraud, theft, forgery, impersonation, the distribution of Malware (and hence, botnets), traffic tampering, DoS, bandwidth hogging, etc. Consequently, internet attribution is a highly sensitive field that constitutes a cornerstone position within internet security. Needless to say, current solutions don&#039;t guarantee sufficient attribution nor are considered always applicable in most of the time, hence, current system suffers the lack of a relatively robust attribution mechanism. In the light of this context, we need better methodologies for reaching an acceptable success level for attributing actions to persons.&lt;br /&gt;
&lt;br /&gt;
In principle, attribution can be defined as the mechanism of binding a system-defined act to an agent. An agent is typically an entity that has the ability to commit what constitutes an act. Within our focus, an agent could either be a person or a machine. It can also be defined as &amp;quot;determining the identity or location of an attacker or an attacker’s intermediary&amp;quot;&amp;lt;ref&amp;gt; [Institute for Defense Analyses, 2003]&amp;lt;/ref&amp;gt;. Problems like IP address spoofing, lack of interoperability in intermediate systems, dynamic nature of IP addresses, unawareness of system users with lots of &amp;lt;i&amp;gt;unknown&amp;lt;/i&amp;gt; packets sneaking to their machines and poor efficiency of firewalls and IDSs make this determination operation considerably difficult. In addition, some types of attacks are carried out to conceal the real agent behind an act. For instance, malware distribution (and hence the creation of botnets), and stepping stones aim to inflict vagueness around the correct &amp;lt;i&amp;gt;human&amp;lt;/i&amp;gt; source behind the scene.&lt;br /&gt;
&lt;br /&gt;
In this paper, we focus on defining what it takes to achieve an acceptably working attribution mechanism over the internet. To do that, we review past research works in attribution and discuss their common limitations as well as flaws and what can be done in common to enhance such schemes. We also argue that the lack of a globally deployed registration system that registers system users and grants them LICENSED access to the system enfeebles proper attribution and motivates illegitimate intrusions and irregular behavior. We show that employing the mentioned system would reduce the incentive of irregular behavior as well as remove the blaze of tempting anonymity, putting attackers under the risk of being easily caught. We also discuss how privacy, as a counter force to attribution, plays a big role in the internet and within its users and propose a framework that achieves relatively robust attribution mechanism and retains the privacy of users.&lt;br /&gt;
&lt;br /&gt;
Much of the research done in literature focuses on attribution that is done for keeping track of authorship, i.e., attributing text to authors. In this paper, we don&#039;t question the cruciality of attribution in this field, but rather we address a higher level of attribution of all possible actions to agents, which is sadly deemed slightly obsolete from the current research perspective.&lt;br /&gt;
&lt;br /&gt;
This paper starts by a quick background discussion on the current forms of attribution. Consequently, section 3 presents the dilemma of attribution, resolving the tension between attribution and privacy. Section 4 presents a fundamental set of requirements for achieving an acceptable level of attribution over the internet. In section 5, we propose an abstract framework for achieving attribution that mimics attribution in the real world. And finally, a conclusion is presented in section 6.&lt;br /&gt;
&lt;br /&gt;
==What is Attribution==&lt;br /&gt;
&#039;&#039;The act of attributing, especially the act of establishing a particular person as the creator of a work of art.&#039;&#039;&amp;lt;ref&amp;gt; The American Heritage® Dictionary of the English Language, Fourth Edition copyright ©2000 by Houghton Mifflin Company. Updated in 2009. Published by Houghton Mifflin Company.&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
We are concerned with one particular type of attribution - binding an act to a person. This may include intermediate attributions, for example, an act to an agent (software, device, etc.) and then attribution of an agent to person. Narrowing the problem further, we&#039;re only concerned about attribution in large, dynamic networks, like internet. For sake of simplicity, in this paper we&#039;re going to reference to &amp;quot;binding an act to a person on the internet&amp;quot; as &amp;quot;attribution&amp;quot;, while other types of attributing will be defined separately.&lt;br /&gt;
&lt;br /&gt;
==Problem Statement==&lt;br /&gt;
The anonymity of the Internet makes it virtually impossible most of the time to properly identify who is who online. This is a double-ended sword as it not only provides a high level of privacy, but also makes it hard to identify people with malicious intent and cyber attackers.&lt;br /&gt;
&lt;br /&gt;
==Problem Motivation==&lt;br /&gt;
In today&#039;s world there is a growing need for strong attribution over the Internet mainly due to increased numbers of cyber attacks since its introduction in the 90’s. Many attackers have succeeded in causing both physical and financial damage to many companies over the Internet and going Scott free; due to the anonymity of the Internet, the attackers cannot be identified.&lt;br /&gt;
&lt;br /&gt;
==Scope==&lt;br /&gt;
In this paper we are addressing the issue of attribution by providing a list of requirements that need to be met in order to have a fully stable and efficient attribution system over the Internet.&lt;br /&gt;
&lt;br /&gt;
Although this is not a technical paper, a basic knowledge of computer science or computer systems will be required, to fully understand some of the concepts and terminology discussed within this paper,&lt;br /&gt;
&lt;br /&gt;
=Background=&lt;br /&gt;
&lt;br /&gt;
The problem of attribution is not one that just came up; it has been around for decades but mostly to address identification issues as it pertained to websites or Internet service providers. A lot of different approaches towards attribution have been taken but mainly just to the extent of what that particular system stems to achieve. &lt;br /&gt;
This section gives an introduction to three of todays current attribution systems and discusses their pros and cons as they pertain to the type of global attribution we discuss in this paper.&lt;br /&gt;
&lt;br /&gt;
==Cookies==&lt;br /&gt;
Websites will sometimes need to remember information about a visit or a visitor in order to improve viewer experience. Cookies are text files that are created by a web server, and stored by a web browser on the user&#039;s computer. Cookies are used for many reasons; mainly authentication, remembering shopping cart information, and storing site preference. In actuality, they can be used to store any type of information that can be stored in a text file. When a page is requested the users web browser sends the request with the webserver’s cookie in the header part of the packet. All this is an automated process between the web browser and web server.  &lt;br /&gt;
&lt;br /&gt;
If at all the webserver receives a request without a cookie attached to it, it takes it as the first access that the browser is making to the server and sends one as part of the response which will be saved by the browser and resent on the next request. Cookies are usually encrypted in order for data security and information privacy, however they are still subject to the users control as they can be decrypted, modified and even deleted completely. It is also possible for a user to change their browser setting to not accept cookies at all. &lt;br /&gt;
&lt;br /&gt;
Cookies can either have an expiration date or not; this is the date that the browser deletes the cookie. Cookies without an expiration date are deleted when the browser is closed. Some browsers allow you to automatically set how long you want cookies to be stored.&lt;br /&gt;
&lt;br /&gt;
===Cookies as an Attribution System===&lt;br /&gt;
Looking at cookies as the type of attribution system we are looking for over the Internet, we will be able to achieve high precision on identifying computers that access a web server. However, The biggest draw back cookies have is that they can be deleted and manipulated. As such the use of cookies is not an effective attribution system.&lt;br /&gt;
&lt;br /&gt;
==IP Addresses==&lt;br /&gt;
IP or Internet Protocol Addresses are 32 bit numerical identifiers for devices (ie computer, printer, scanner etc..) on a network. The users Internet Service Provider (ISP) provide this number. The Internet Assigned Numbers Authority (IANA) is responsible for managing IP Address space allocation globally. It does this with the help of five Regional Internet registries (RIRs), responsible for allocating IP address blocks to their assigned regions ISPs, who in turn allocates them to their users.&lt;br /&gt;
&lt;br /&gt;
Any device that goes online and communicates using IP needs an IP address. Over the years there has been a growing number of users going online and a number of devices owned by the users to go online. One of the more common examples of this is the increase of Internet ready mobile phones. Our current addressing system used by our current Internet Protocol Version 4 (IPv4) contains only 32bits which means it is only able to uniquely address 232 addresses (4,294,967,296) which is less that the number of people on this planet today. The very last batch of IP addresses was assigned out to the five RIRs early February 2011&amp;lt;ref&amp;gt;http://arstechnica.com/tech-policy/news/2011/02/river-of-ipv4-addresses-officially-runs-dry.ars&amp;lt;/ref&amp;gt;. This was foreseen since the 90s, which sprung the development of a new Internet Protocol version, IPv6, which uses a 128bit addressing system began. &lt;br /&gt;
&lt;br /&gt;
IP addresses can either be static or dynamic. Static IP address is an address permanently assigned to a user due to configuration. A dynamic IP address is one in which a new address is assigned at every boot up. A Dynamic Host Configuration Protocol (DHCP) Server is usually responsible for assigning dynamic IP addresses to users. There are two main advantages for dynamic addressing; it eliminates the administrative cost involved with assigning static IP addresses, and it helps solve the issue of limited addressing space by allowing many devices “share” a single address if they go online at different times. Given the limited addressing space the ISPs have to work with, and to save administration costs, most ISPs assign dynamic IP addresses as standard a offer static IP address for a higher fee. &lt;br /&gt;
&lt;br /&gt;
===IP Addresses as an Attribution System===&lt;br /&gt;
Although Internet addresses can be used to attribute packets to its sender, it will fail as an effective attribution system for a few reasons, but mainly that attackers can spoof their IP addresses. Spoofing IP addresses will even foil the efforts of IP trace backs.&lt;br /&gt;
&lt;br /&gt;
==Authentication Systems==&lt;br /&gt;
In order for a website to make sure of the identity of who ever is visiting some pages, it provides an authentication system. This is usually a login name and password either assigned by the web server or chosen by the user. The biggest advantage this has is that now, attribution can be performed across different computers. The task of storing and securing login information is left to the web server, which is subject to attackers hacking into the server to stealing login information. &lt;br /&gt;
&lt;br /&gt;
Login systems are attached to user accounts that sometime require private information in order to be setup. If the web server’s security is not good enough, security breeches may in turn lead to identity theft. &lt;br /&gt;
&lt;br /&gt;
The process behind authentication systems is simple; using a typical web banking authentication system for instance, the process may go as follows. A user requests for a web account or one is automatically assigned to the user. The user sets up a password for accessing the account. When the user now goes to the website he is requested to “identify himself”, the user enters in his personal login information, the web server verifies this information with what it has stored in its database and either grants or denies access to the users personal page. &lt;br /&gt;
&lt;br /&gt;
Authentication systems are only ever used when it involves the users wanting some privacy on the webserver, or when the user wishes to store some form of information on the web server. &lt;br /&gt;
&lt;br /&gt;
===Authentication Systems as an Attribution System===&lt;br /&gt;
Authentication systems are very precise in the identification of people over the Internet and as such used by many companies. However it will have a serious privacy drawback if it were to be used as a global identification system. It will mean that virtually every web server will need to hold enough information about you to be able to identify you as an attacker. This would mean that to even a user randomly search for a cooking recipe online would need to login somehow to access the web server. People generally like the anonymity of surfing the web and a system like this will completely destroy this.&lt;br /&gt;
&lt;br /&gt;
=The Attribution Dilemma=&lt;br /&gt;
&lt;br /&gt;
There are many facets to designing an attribution system, besides the technological aspects. In addition to the technologies and/or infrastructure available, one must also consider the issue of privacy, because when trying to achieve strong attribution personal privacy is compromised. Any system must try to find a balance between strong attribution and privacy. The balance is influenced by the application of the system. For instance, in the case of financial institutions, the clients as well as the institute will place more emphasis on attribution. Such institutes would like to establish unassailable authorization and authentication systems, so as to guarantee (to some degree) that agents involved in the transactions are who they claim they are. On the opposite side of the spectrum, are situations where privacy takes precedence. Political dissidents and whistle-blowers are relatively protected because there is no strong attribution system in place, which allows them to distribute information (regardless of actual usefulness or goodness of it) and keep their identity secret. It is clear that single universal set of rules cannot satisfy these two cases. It is also clear that, in pretty abstract fashion, privacy is inversely proportional to attribution. While designing an attribution system one needs not only to decide on this ration for some particular case, but rather make this ratio dynamically changed depending on the case. &lt;br /&gt;
&lt;br /&gt;
Assuming such a ratio is found, another issue arises. Can the use of private information to track or punish a person be completely justified? Especially if it oversteps their privacy. One might think that this question is a little bit out of the scope of our paper. However, such ethical arguments must be addressed prior to designing, because a system that compromises individual privacy and protection can not be utilized. &lt;br /&gt;
&lt;br /&gt;
There are other topics that attribution system must answer. Who should have the authority to attribute? What information can they attributed? And why do they need it? How is attribution achieved or measured?  How accurate are IP-traceback, stepping stone authentications, link identifications and packet filtering in wedging packets to agents? How much can intermediate systems&#039; cooperation contribute to achieving attribution? How to deal with misleading data sources hiding behind botnets and concealing identities via stepping stones? &lt;br /&gt;
&lt;br /&gt;
==Why do we need Attribution==&lt;br /&gt;
&lt;br /&gt;
Attribution system has many useful applications. The identification property can useful at establishing the client’s identity for Online Banking, identifying the involving party in eCommerce transaction, and can be taken advantage by marketers for more targeting Web advertisements.&lt;br /&gt;
&lt;br /&gt;
Financial matters are not the only incentive for a strong attribution system. Establishing strong identification mechanism can provide better protection against cyber attacks. When the source of an attack can be recognize, then the proper authorities can prosecute the perpetrators of such crimes as: DoS, DDos, computer fraud, forgery and identity theft, sniffing private traffic, distributing illegal traffic and malware, spam,  illegal and undesirable intrusions.&lt;br /&gt;
&lt;br /&gt;
==Why is it difficult to achieve attribution?==&lt;br /&gt;
&lt;br /&gt;
The problem rise largely due to how the Internet is designed. It does not have strong identification mechanisms, which makes it relatively anonymous for users. Moreover, most current solutions are based on the same structure and work within the same scope, thus, can only reduce the number of potentially destructive acts or just deal with the consequences. Of course, no system can completely prevent against destructive attempts, but some potentially good attribution system should make such attempts highly undesirable and &amp;quot;costly&amp;quot; for an attacker.&lt;br /&gt;
 &lt;br /&gt;
The issue of lack of attribution on the web mostly arises whenever security is compromised. When you&#039;re bombarded with spam, or when a system is under a DoS attack attribution becomes a more appealing notion. Getting a balance between security and privacy is tricky, because once attacks are tracked so will all other traffic. Also, depending on the type of the senders and receivers, different attribution policy will be required.&lt;br /&gt;
&lt;br /&gt;
In the ideal world, every action on the internet could be bound to a machine and thus to a person. This is done by examining the source IP printed on each moving packet, locating the geographical location of this IP, consulting the ISP covering the location and identifying the person. If an act requires strict attribution (like checking and sending emails), authentication is used. &lt;br /&gt;
There are many existing methods that attempt to identify the source of an act, like IP traceback. There are problems with trying to identify the source by its IP address. For instance, it can be spoofed, which leads to misleads or inconclusive geographical location. IP addresses are not permanently bound to a single account, which makes linking IP to the appropriate person not concrete. IP traceback can be improved but that would require global cooperation of intermediate system, which currently does not exist.&lt;br /&gt;
&lt;br /&gt;
In networks, users are not aware of all packets that are received by their machines, which mean users would not be aware of malware distribution, the creation of botnets and other actions taken by their machine without their approval and triggered by other a network user. Firewalls and packet filters can be used to address such problems, but they are not very efficient. Also, it is not practical to authenticate every single action on the internet. &lt;br /&gt;
&lt;br /&gt;
There are attacks that designed specifically to prevent correct attribution. It is used for identity theft and distribution of malware. Stepping stone attack is a common way of attributing attacks to anonymity by using multiple public random agents(as stepping stones) to reach the victim in order to conceal the attacking source. &amp;lt;ref name=&amp;quot;ref1&amp;quot;&amp;gt;S. Staniford-Chen and L. T. Heberlein. Holding intruders accountable on the internet. In SP ’95: Proceedings of the 1995 IEEE Symposium on Security and Privacy, page 39, Washington, DC, USA, 1995. IEEE Computer Society.&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Requirements for internet attribution system=&lt;br /&gt;
&lt;br /&gt;
It is hard to describe some hypothetical attribution system in detail, because there are many issues and complicated dependencies, and a lot of questions to answer or at least to try to answer before one can even think of implementing such a system. In this section we are trying to define high-level requirements for a good attribution system, while definition of good attribution system is not so clear, we take into account everything we have talked above. That is, the following requirements try to define the system in a way that avoids current problems, achieves high degree of attribution and remains realistic. &lt;br /&gt;
&lt;br /&gt;
We have separated those requirements in three sections: general requirements define the idea and overall goal of the system in high level, abstract terms. Deployment requirements set ground rules for deployability that makes sense in such a huge network as internet and human society Practice requirements define the way system works, behaves and interacts with other bodies.&lt;br /&gt;
&lt;br /&gt;
==General==&lt;br /&gt;
&lt;br /&gt;
First and most obvious requirement for any system is usually put for sake of consistency: main requirement for internet attribution system is simple: it needs to attribute, or, more formally, any potentially destructive act should be traceable to an agent (person and/or organization, group, etc). It is important to consider different natures of agents, because the goal of attribution system is not necessarily to narrow down the search to one particular person, but rather to find the body responsible for an act(s) regardless of their actual structure. It might be one person after all. In other words, even though actions are done mostly by a single person, they are not necessarily the ones who&#039;s responsible for a decision to do so. A good real world analogy is an assassin and some body (person or a group) paying him. Good attribution system should not lead to assassin alone, but rather should be designed the way that responsible bodies are the ones to be discovered. Yet, we accept the notion that by the end of the day there is some person or several persons, human brings, responsible for an action. It is essential, because, as practice shows, for example, determining the source of DoS-attack is relatively simple, but most of the time this source is not the one who is responsible, but rather a victim itself.&lt;br /&gt;
&lt;br /&gt;
It is easy to imagine a system in which less crime and misuse is the only acceptable way to do things, and many writers and movie directors exploit this idea in futuristic, science fiction and anti-utopian plots. Unfortunately, applying any of this sort of ideas to real world today is not possible, because a lot of laws and moral principles are already in place, some of which are not perfect, but widely accepted and most have reasons to exist. Attribution system that we&#039;re looking for should take legal and moral issues into account, naturally, should not violate and/or contradict any of them. This important requirement comes somewhat together with incremental deployability that we&#039;re going to discuss later.&lt;br /&gt;
&lt;br /&gt;
In general, an attribution system should be universal and global, and details of these terms will be discussed later.&lt;br /&gt;
&lt;br /&gt;
==Deployment==&lt;br /&gt;
It is relatively easy to discuss the design of the system, than it is to implement the design. The deployment of they system does not need to be instant and massive. Even though a global attribution system will have a lot of pressure on it, internet should not depend on it entirely, the underlying network should still remain functional, even if the attribution system goes down. In other words, attribution system should be loosely coupled to the system it works in. &lt;br /&gt;
&lt;br /&gt;
As discussed before, (and this could be said about any global system on the internet) such a system should be incrementally deployable, so that smooth, step-by-step, subnetwork-by-subnetwork integration is possible. This is important not only because of virtual impossibility to restart or reconfigure the whole internet at once. This incremental way of embedding an attribution system should be more secure (bugs in software and mistakes in design can be fixed while on a small scale), so that by the end of cycle, when the whole internet is wired, the attribution system is field-tested and analyzed several times by different bodies. &lt;br /&gt;
&lt;br /&gt;
Very important, but controversial subject, is adoption of the system within some set of rules or laws (state laws, government regulations, corporate rules and principles, etc.). System should allow easy adoption for different cases, at the same time it should remain universal and global. It should act like a public tool any group can use, but nobody should be able to misuse it or use in non-legal way. The big decision designers will have to make is the one regarding this line between dynamic adoptability and universality. Luckily, this sort of deepness goes beyond the scope of our paper.&lt;br /&gt;
&lt;br /&gt;
Companies and organizations sometimes loose millions of dolars due to attacks and other cyber-crimes done to them, and some issues can be dealt with by spending more resources (memory, bandwidth on servers, etc), or, in other words, spending more money. The overall cost of setting up and maintaining the attribution system for a particular body (person, organization, network) should be considerably less than average losses under current lack of attribution (e.g. DoS, identity theft, etc).&lt;br /&gt;
&lt;br /&gt;
==Practice==&lt;br /&gt;
&lt;br /&gt;
Attribution mapping should not be a bijection, in other words action should map to person, but not vice versa. That it, nobody should be able to use the system to answer the question &amp;quot;what person X did/does?&amp;quot;. Not only the system should not know the answer, it should not be possible to know the answer; the question &amp;quot;who did act X&amp;quot; is the one should be answered. This can be thought of as part of requirement about not violating current laws and moral principles, but is put as a separate requirement, since it is very important to draw a line between attribution system and surveillance. The goal is not only to make attribution system attribute, but also to make it impossible to use it in other way – for surveillance, spying, etc.&lt;br /&gt;
&lt;br /&gt;
Since this global system operates on the internet, it might not be a great idea to put names of people into traceability database. It makes much more sense to assign unique IDs to everyone who is using the network. And in case a crime is committed, and the agent of some act need to be determined, then the recorded ID will be searched for in the police or government database. It should be some trusted entity (government, corporation, police, some public good-like system, etc) that stores the mapping between IDs and real names. This mapping should only be revealed when needed and when there is enough evidence or motivation to do so. Traceability information (namely, unique iDs) should be distributed and it is crucial to make it impossible to collect all the information in one place.&lt;br /&gt;
&lt;br /&gt;
Of course, it is not always the case that some trusted (by everyone) body exists, but generally we have governments and/or agencies we trust. It is important to divide the information between public and trusted body in a way allowing them to cooperate in time of need and not allowing to misuse the system from any side.&lt;br /&gt;
&lt;br /&gt;
=Proposed Framework=&lt;br /&gt;
In this section, we will propose a potential framework and argue that it is able to fulfill the requirements listed in the former section. The proposed framework works under the core principle &amp;quot;An act cannot use network resources nor can it be routed if it is anonymously bound&amp;quot;. Firstly, we start by defining some terminologies that will be used within the scope of this section:&lt;br /&gt;
* &amp;lt;i&amp;gt;Agent&amp;lt;/i&amp;gt; (Ag): the human-device pairing that sits on an end system and keeps transmitting/receiving packets.&lt;br /&gt;
* &amp;lt;i&amp;gt;Machines/Devices&amp;lt;/i&amp;gt; (Md): any piece of hardware that has access capability. It can either be a PDA, a laptop, a notebook, a PC, an Network Interface Card, or even a mere home made chip that can externally communicate wired or wireless to send or receive digital packets.&lt;br /&gt;
* &amp;lt;i&amp;gt;Identification Stamp&amp;lt;/i&amp;gt; (IS): a series of bits that binds a human unique identification (iris intricate structure or fingerprint) with a unique feature of an Md. So, for an Md like a Network Interface Card, the MAC address would be that feature. This biding is a particular representation for the official owner of the device, and who is deemed the primary responsible for any outgoing packet launched by his owned device. In other words, it is a unique identifier for an Ag.&lt;br /&gt;
* &amp;lt;i&amp;gt;Intermediate System Services&amp;lt;/i&amp;gt; (ISS): Services provided by intermediate systems (routers). For e.g., routing (main service), error checking, etc.&lt;br /&gt;
* &amp;lt;i&amp;gt;Globally Distributed Database&amp;lt;/i&amp;gt; (GDDB): a global DNS-like world-wide distributed storage system with an encrypted LUT that has relatively fast retrieval and update capabilities. It will be used to store ISs.&lt;br /&gt;
* &amp;lt;i&amp;gt;Licensing&amp;lt;/i&amp;gt;: a process of giving the permission to intermediate systems to provide ISS to all packets that are launched from the agent that is requesting the license. This process is simply adding new ISs to the GDDB.&lt;br /&gt;
&lt;br /&gt;
In principle, every leaping packet has a human owner that is either directly or indirectly responsible for it. Directly responsible when he is running an application that sends requests or initiates communication sessions to another end system. E.g., using the client side of applications supporting the protocols: HTTP, FTP, SIP, RTP, VoIP, etc. Indirect responsibility is when a user is running a system in the background that performs external (over the internet) system calls or is automated for periodic communication or automatic response to incoming requests. E.g., system clock synchronization (NTP), or the server side of the protocols: HTTP, FTP, etc. In addition, indirect responsibility also includes the responsibility of all packets launched by lower layer protocols that are being manipulated by higher layer ones. E.g., when a user sends an HTTP request, TCP sends connection initiation packets for handshaking schemes, ICMP packets that aims to seek and identify that status of a specific host, etc.&lt;br /&gt;
&lt;br /&gt;
The scope of this framework only addresses attribution over the internet and not any other &amp;quot;locally&amp;quot; defined networks underlying the IEEE standard definitions of the topologies PAN, LAN, MAN, or a WAN that do not use the global intermediate systems as their underlying infrastructure for packet delivery.&lt;br /&gt;
&lt;br /&gt;
The following sections show the assumptions for this framework to operate, the methodology of its operation, a list of pros, cons and vulnerabilities of the system and wrap up by a discussion on the proposed framework.&lt;br /&gt;
==Assumptions==&lt;br /&gt;
For starters: Jurisdiction. This frame work assumes the presence of a globally trustful entity(s) (e.g., government). This entity should act as the Internet&#039;s law enforcement, which will be deemed as the primary inspector and also the jurisdiction for regulating all kinds of cyber crimes and misbehavior. This entity may either be centralized or distributed. A centralized entity would be easier to deploy, but it will suffer from a single point of failure. A distributed entity would obviously perform better as it will be able to scale with the growth of the system users as well as conform to diverse regional laws, regulations, customs and traditions.&lt;br /&gt;
&lt;br /&gt;
Secondly: &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt;. We assume that a &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt; is deployed, which acts as a &amp;quot;database&amp;quot; for storing &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt;s. Symmetric key encryption should be used to protect that system as it will only be accessed through two types of users. Routers, which should be able to access this database ONLY for read operations. And the trustful entity (defined in the previous assumption) which should be able to access for read/write operations. Both users must be strictly authenticated, for being able to decrypt the contents or to append. In addition, this distributed system must guarantee almost zero latency in the read operations as it will be heavily relied on for every single hop made by a packet at the Internet intermediate system. A standardization protocol would be required to define the syntax and semantics as well as the nature of the way that the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt; subsystems would communicate with.&lt;br /&gt;
&lt;br /&gt;
Thirdly: Ownership. We assume that every &amp;lt;i&amp;gt;Md&amp;lt;/i&amp;gt; should be officially owned by a human. This owner is deemed as the official responsible for that &amp;lt;i&amp;gt;Md&amp;lt;/i&amp;gt;, and who would also be accused if his &amp;lt;i&amp;gt;Md&amp;lt;/i&amp;gt; found to misbehave or to launch malicious packets. The owning relationship between persons and machines is one-to-many. That is to say, a person can officially own one or more machines but a machine can only be owned by one person.&lt;br /&gt;
&lt;br /&gt;
Finally: IP packets. Our proposed frame work assumes that within the frame format of the IP packets, a header is added by the network layer that includes the &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; of the &amp;lt;i&amp;gt;Ag&amp;lt;/i&amp;gt; owning the packet.&lt;br /&gt;
&lt;br /&gt;
==Methodology==&lt;br /&gt;
Basically, this framework works by stalling the propagation of a packet that is either unattributed or forged with a fake &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt;. A fake &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; is defined as:&lt;br /&gt;
* Either having a false unique chip identifier that refers to an imaginary &amp;lt;i&amp;gt;Md&amp;lt;/i&amp;gt;.&lt;br /&gt;
* Or having a false unique human identifier that refers to an imaginary human.&lt;br /&gt;
* Or having a misleading binding of a human to a machine. i.e., claiming that some machine &amp;quot;X&amp;quot; belongs to some human &amp;quot;Y&amp;quot;, but in reality, &amp;quot;Y&amp;quot; is not the owner of &amp;quot;X&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Noticeably, the routers, as primary constituents to the intermediate systems, should refrain from routing any data packets that are not fully attributed. As they are the main driving power behind delivering all malicious or benign packets, they should have great responsibility in achieving highly reliable attribution mechanism.&lt;br /&gt;
&lt;br /&gt;
A description of the system, based on the chronological order, is as follows. First, any newly bought machine or even a home made device, must be licensed from the trustful entity. The trustful entity generates the &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt;, accesses the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt; for adding it and provides the user with his &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; for being able to add it to the header of his launched packets. The user should preserve his unique &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; in a secret place and should deal with it exactly the same way he does with his credit card numbers and social insurance numbers. If a device is not licensed (i.e., its &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; was not inserted to the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt;), it doesn&#039;t not benefit from &amp;lt;i&amp;gt;ISS&amp;lt;/i&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
From the intermediate system&#039;s perspective, when a router receives a packet, it verifies its &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt;. This is done by consulting the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt; which is in turn done by sending a copy of the &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; printed on the packet to the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt;. If a packet is found to be not having an &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt;, the packet is prevented from benefiting from &amp;lt;i&amp;gt;ISS&amp;lt;/i&amp;gt; and is simply dropped. If the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt; replies with an invalid &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt;, again, the packet is dropped. If the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt; replies with a success, this will mean that the packet&#039;s printed &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; is verified. Thus, the packet benefits from the &amp;lt;i&amp;gt;ISS&amp;lt;/i&amp;gt; and gets routed throughout the way.&lt;br /&gt;
&lt;br /&gt;
==Pros, Cons and Vulnerabilities==&lt;br /&gt;
&lt;br /&gt;
The proposed framework enjoys the following advantages:&lt;br /&gt;
* It succeeds to perform an acceptable level of attribution relative to the one achieved in the real world.&lt;br /&gt;
* It avoids anonymous attacks since a non-attributed packet will fail to reach its destination.&lt;br /&gt;
* Attribution information is not publicly available to everyone, only available to trustful entities.&lt;br /&gt;
** Hence, it retains personal privacy.&lt;br /&gt;
* The system enjoys full automation. According to the system&#039;s theory of operation, &amp;lt;i&amp;gt;ISS&amp;lt;/i&amp;gt; are either provided or not based on the validation of the &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; printed on each packet.&lt;br /&gt;
* The system avoids all forms of cyber crimes that are executed by unknown &amp;lt;i&amp;gt;Ag&amp;lt;/i&amp;gt;s.&lt;br /&gt;
&lt;br /&gt;
The proposed framework suffers from the following disadvantages:&lt;br /&gt;
* The verification process of the &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; on each packet creates undesirable delays potential bottlenecks at the routers.&lt;br /&gt;
* The framework is not considered easy to deploy since the assumptions are deemed relatively complex.&lt;br /&gt;
* Since attribution is not public to everyone, custom content generation cannot be achievable.&lt;br /&gt;
* Large number of &amp;lt;i&amp;gt;Md&amp;lt;/i&amp;gt;s in University Laboratories, Incorporations, Hospitals, Schools, etc should all be licensed before being able to be used. Normally, in these cases, &amp;lt;i&amp;gt;Md&amp;lt;/i&amp;gt;s would be bound to one single person.&lt;br /&gt;
* For security purposes, licenses should be periodically renewable, however, this is not considered an easy topic.&lt;br /&gt;
&lt;br /&gt;
The proposed framework is vulnerable to:&lt;br /&gt;
* Botnets&lt;br /&gt;
** The system requires full user awareness with what lies under the hood. Since they are the sole responsible persons for their &amp;lt;i&amp;gt;Md&amp;lt;/i&amp;gt;s, they should be aware with all packets sneaking into their machines for avoiding the distribution of malware, and the later formation of botnets.&lt;br /&gt;
** Users are responsible for strictly securing their &amp;lt;i&amp;gt;Md&amp;lt;/i&amp;gt;s exactly the same they do when they lock their care after leaving it in a car park.&lt;br /&gt;
* A successful attack on the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt; would cause whole system failure. If this attack succeeds to alter, the attacker can append an imaginary &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt;. If the attack succeeds to read, the attacker can choose to declare his malicious packets under the responsibility of some other &amp;lt;i&amp;gt;Ag&amp;lt;/i&amp;gt;, forgery.&lt;br /&gt;
&lt;br /&gt;
==Discussion==&lt;br /&gt;
The proposed framework&#039;s main focus is to ensure that any leaping packet is moving because it is known who does it belong to. Recalling that in the real world, if a person doesn&#039;t have an identity (like a social insurance number), he can&#039;t benefit from services. For instance, he can&#039;t open a bank account, can&#039;t buy a house, can&#039;t trade, nor can he even get a job. Obviously, the proposed system mimics the behavior of the real world. Of course, the real world is not ideal in criminal tracing and law enforcement, however, it&#039;s level of attribution would definitely beat that of the Internet in the meantime. We can say that current internet attribution in comparison to the real world attribution is considered a failure. An acceptable form of internet attribution would be considered basically acceptable if it, at least, provides as much attribution as the real world attribution does. We could say that the proposed framework would guarantee such level.&lt;br /&gt;
&lt;br /&gt;
The proposed framework succeeds to fulfill all of the general requirements. Clearly, any potentially destructive act is definitely traceable to an &amp;lt;i&amp;gt;Ag&amp;lt;/i&amp;gt; or else, it will not take place. The framework also omits violation to any privacy related laws since the attribution information are not publicly available. More specifically, they are only available to the agreed on trusted entity. The framework also fulfills all of the deployment requirements. As can be seen, the more areas the system is deployed in, the better for the public good, hence, it is incrementally deployable. The framework is not very loosely coupled but can still allow the Internet to operate if it is suppressed. It is also adaptable to different rules and regulations since it leaves the punishment decision to the jurisdiction of the country with the source of the crime committer. Whatever the cost is to deploy that system, it should still be less than the cost of the losses due to cyber crimes. That is because the cost of losses due to unknown &amp;quot;future&amp;quot; attacks cannot be easily determined. As for the practice requirements, the proposed framework theory of operation doesn&#039;t permit mapping of a certain &amp;lt;i&amp;gt;Ag&amp;lt;/i&amp;gt; to a set of actions, it only permits the mapping of a set of actions to an &amp;lt;i&amp;gt;Ag&amp;lt;/i&amp;gt;, which satisfies non-bijection. Also, because of the distributed nature of the &amp;lt;i&amp;gt;GDDB&amp;lt;/i&amp;gt;, all traceability information is impossible to collect at one place. The trusted entities are only the ones that generate the &amp;lt;i&amp;gt;IS&amp;lt;/i&amp;gt; from the personal data, hence, they are the only ones having this piece of information. To conclude, the framework successfully satisfies all the requirements.&lt;br /&gt;
&lt;br /&gt;
=Conclusion=&lt;br /&gt;
The human nature refuses any change at the first sight. In 1769, Jonathan Holguinisburg finalized the invention of the first Cugnot Steam Trolly &amp;lt;ref&amp;gt;ckermann, Erik (2001). World History of the Automobile. SAE Press, p.14. [Online]. Available: http://books.google.com/books?id=yLZeQwqNmdgC&amp;amp;printsec=frontcover&amp;amp;source=gbs_ge_summary_r&amp;amp;cad=0#v=onepage&amp;amp;q&amp;amp;f=false &amp;lt;/ref&amp;gt; which became nowadays automobiles. In 1903, car licensing began in North America, that is 134 years after Holguinishburg invention. Licensing started when people began realizing that a car could act as a lethal weapon, which therefore must be approved by the government to be driven by some person, and must also be formally linked to an owner who is considered the primary responsible for it.&lt;br /&gt;
&lt;br /&gt;
Meanwhile, the Internet is passing through the same phase. People would blindly deny, refuse and object such &amp;quot;wicked&amp;quot; attribution systems, but later on, Internet licensing will be part of everyone&#039;s life, just like their driving license. Needless to say, the Internet is becoming more crucial to many applications and in the same time more vulnerable to different types of attacks. Obviously, it is being injected in the &amp;quot;blood&amp;quot; of a vast, yet exponentially growing, number of applications which are time and data sensitive, and which don&#039;t leave room for cyber crimes, unauthorized intrusion, traffic tampering, bandwidth hogging, etc. In addition, much of the industry and technology based applications are now build over the Internet as their underlying infrastructure, and cannot tolerate being threatened all the time by a completely anonymous person behind the seen seeking the proper moment to strike. Meanwhile, Internet Attribution is no longer an add-on, but an obligation.&lt;br /&gt;
&lt;br /&gt;
In this paper, we have presented some formal definitions of attribution, why is it crucial to attribute, level of attribution would be considered acceptable and where the roots of difficulty lies behind achieving such level. Moreover, we have proposed a background about current attribution systems and a brief discussion about the reason of their survival and their point of failure as well. We also populated a list of requirements that must be fulfilled by any system aiming to acquire Internet attribution. Finally, we proposed a potential framework for a system that has that should  fulfills the mentioned requirements and that should have the ability to achieve an acceptable level of Internet attribution. Pros, and Vulnerabilities of the proposed framework are also discussed.&lt;br /&gt;
&lt;br /&gt;
=References=&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;/div&gt;</summary>
		<author><name>Omi</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=A_link_to_the_paper&amp;diff=9264</id>
		<title>A link to the paper</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=A_link_to_the_paper&amp;diff=9264"/>
		<updated>2011-04-11T03:39:27Z</updated>

		<summary type="html">&lt;p&gt;Omi: /* References */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Title=&lt;br /&gt;
Proposed titles:&lt;br /&gt;
* Requirements for Attribution on the Internet&lt;br /&gt;
* Internet Attribution: Between Privacy and Cruciality&lt;br /&gt;
&lt;br /&gt;
=Abstract=&lt;br /&gt;
Present and past situations show a need for improved attribution systems, and arguably, scientific basis for properly functioning attribution systems are not yet defined. Lots of research have been focusing on attributing documents to authors for the sake of securing authorship rights and rapid identification of plagiarism. Many of those were revolving around the notion of using machine learning for linking articles to humans. Others proposed text classification and feature selection as a mean of detecting the author of a document. Unfortunately, not that much research is addressing the problem of lack of robust attribution system over the internet. Authentication, as a mean of attribution, has proved its efficiency but, needless to say, it is not applicable to authenticate every single packet hopping over the intermediate systems. This paper presents limits and advances in the attribution of actions to agents over the internet. It reviews current attribution technologies as well as the limits of those technologies. It also identifies the requirements of a proper attribution system and proposes a distributed (yet cooperative) approach for performing attribution over the internet.&lt;br /&gt;
&lt;br /&gt;
=Introduction=&lt;br /&gt;
Currently the Internet infrastructure provides users partial anonymity. Unfortunately, that anonymity weakens the security for its users, because it incites advance users to exploit that feature. The lack of online identification married with bad intentions entices criminals to commit a number of &amp;lt;i&amp;gt;Cyber Crimes&amp;lt;/i&amp;gt; without being caught, crimes which include: fraud, theft, forgery, impersonation, the distribution of Malware (and hence, botnets), traffic tampering, DoS, bandwidth hogging, etc. Consequently, internet attribution is a highly sensitive field that constitutes a cornerstone position within internet security. Needless to say, current solutions don&#039;t guarantee sufficient attribution nor are considered always applicable in most of the time, hence, current system suffers the lack of a relatively robust attribution mechanism. In the light of this context, we need better methodologies for reaching an acceptable success level for attributing actions to persons.&lt;br /&gt;
&lt;br /&gt;
In principle, attribution can be defined as the mechanism of binding a system-defined act to an agent. An agent is typically an entity that has the ability to commit what constitutes an act. Within our focus, an agent could either be a person or a machine. It can also be defined as &amp;quot;determining the identity or location of an attacker or an attacker’s intermediary&amp;quot;&amp;lt;ref&amp;gt; [Institute for Defense Analyses, 2003]&amp;lt;/ref&amp;gt;. Problems like IP address spoofing, lack of interoperability in intermediate systems, dynamic nature of IP addresses, unawareness of system users with lots of &amp;lt;i&amp;gt;unknown&amp;lt;/i&amp;gt; packets sneaking to their machines and poor efficiency of firewalls and IDSs make this determination operation considerably difficult. In addition, some types of attacks are carried out to conceal the real agent behind an act. For instance, malware distribution (and hence the creation of botnets), and stepping stones aim to inflict vagueness around the correct &amp;lt;i&amp;gt;human&amp;lt;/i&amp;gt; source behind the scene.&lt;br /&gt;
&lt;br /&gt;
In this paper, we focus on defining what it takes to achieve an acceptably working attribution mechanism over the internet. To do that, we review past research works in attribution and discuss their common limitations as well as flaws and what can be done in common to enhance such schemes. We also argue that the lack of a globally deployed registration system that registers system users and grants them LICENSED access to the system enfeebles proper attribution and motivates illegitimate intrusions and irregular behavior. We show that employing the mentioned system would reduce the incentive of irregular behavior as well as remove the blaze of tempting anonymity, putting attackers under the risk of being easily caught. We also discuss how privacy, as a counter force to attribution, plays a big role in the internet and within its users and propose a framework that achieves relatively robust attribution mechanism and retains the privacy of users.&lt;br /&gt;
&lt;br /&gt;
Much of the research done in literature focuses on attribution that is done for keeping track of authorship, i.e., attributing text to authors. In this paper, we don&#039;t question the cruciality of attribution in this field, but rather we address a higher level of attribution of all possible actions to agents, which is sadly deemed slightly obsolete from the current research perspective.&lt;br /&gt;
&lt;br /&gt;
This paper starts by a quick discussion on the dilemma of attribution, resolving the tension between attribution and privacy. Consequently, section 3 argues about the reasons behind the essentiality of implementing proper attribution systems. Section 4 presents a fundamental set of requirements for achieving an acceptable level of attribution over the internet as well as proposes an abstract framework for achieving attribution. In section 5, a review on the currently implemented systems that achieve attribution is presented as well as flaws and points of failure of the surveyed papers. In section 6, the reasons behind the difficulty of achieving a proper attribution system. And finally, a conclusion is presented in section 7.&lt;br /&gt;
&lt;br /&gt;
==What is Attribution==&lt;br /&gt;
&#039;&#039;The act of attributing, especially the act of establishing a particular person as the creator of a work of art.&#039;&#039;&amp;lt;ref&amp;gt; The American Heritage® Dictionary of the English Language, Fourth Edition copyright ©2000 by Houghton Mifflin Company. Updated in 2009. Published by Houghton Mifflin Company.&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
We are concerned with one particular type of attribution - binding an act to a person. This may include intermediate attributions, for example, an act to an agent (software, device, etc.) and then attribution of an agent to person. Narrowing the problem further, we&#039;re only concerned about attribution in large, dynamic networks, like internet. For sake of simplicity, in this paper we&#039;re going to reference to &amp;quot;binding an act to a person on the internet&amp;quot; as &amp;quot;attribution&amp;quot;, while other types of attributing will be defined separately.&lt;br /&gt;
&lt;br /&gt;
==Problem Statement==&lt;br /&gt;
The anonymity of the Internet makes it virtually impossible most of the time to properly identify who is who online. This is a double-ended sword as it not only provides a high level of privacy, but also makes it hard to identify people with malicious intent and cyber attackers.&lt;br /&gt;
&lt;br /&gt;
==Problem Motivation==&lt;br /&gt;
In todays world there grows a strong need for attribution over the Internet mainly due to increased numbers of cyber attacks since its introduction in the 90’s. Many attackers have succeeded in causing both physical and financial damage to many companies over the Internet and going Scott free; due to the anonymity of the Internet, the attackers cannot be identified.&lt;br /&gt;
&lt;br /&gt;
==Scope==&lt;br /&gt;
In this paper we are addressing the issue of attribution by providing a list of requirements that need to be met in order to have a fully stable and efficient attribution system over the Internet.&lt;br /&gt;
&lt;br /&gt;
Although this is not a technical paper, in order to fully understand some of the concepts and terminology within this paper, a small knowledge of computer science or computer systems will be required. &lt;br /&gt;
&lt;br /&gt;
=Background=&lt;br /&gt;
&lt;br /&gt;
The problem of attribution is not one that just came up; it has been around fro decades but mostly to address identification issues as it pertained to websites or Internet service providers. A lot of different approaches towards attribution have been taken but mainly just to the extent of what that particular system stems to achieve. &lt;br /&gt;
This section gives an introduction to three of todays current attribution systems and discusses their pros and cons as they pertain to the type of global attribution we discuss in this paper.&lt;br /&gt;
&lt;br /&gt;
==Cookies==&lt;br /&gt;
Websites will sometimes need to remember information about a visit or a visitor in order to improve viewer experience. Cookies are text files that are created by a web server, and stored by a web browser on the users computer. Cookies are used for many reasons; mainly authentication, remembering shopping cart information, and storing site preference. In actuality, they can be used to store any type of information that can be stored in a text file. When a page is requested the users web browser sends the request with the webserver’s cookie in the header part of the packet. All this is an automated process between the web browser and web server.  &lt;br /&gt;
&lt;br /&gt;
If at all the webserver receives a request without a cookie attached to it, it takes it as the first access that the browser is making to the server and sends one as part of the response which will be saved by the browser and resent on the next request. Cookies are usually encrypted in order for data security and information privacy, however they are still subject to the users control as they can be decrypted, modified and even deleted completely. It is also possible for a user to change their browser setting to not accept cookies at all. &lt;br /&gt;
&lt;br /&gt;
Cookies can either have an expiration date or not; this is the date that the browser deletes the cookie. Cookies without an expiration date are deleted when the browser is closed. Some browsers allow you to automatically set how long you want cookies to be stored.&lt;br /&gt;
&lt;br /&gt;
===Cookies as an Attribution System===&lt;br /&gt;
Looking at cookies as the type of attribution system we are looking for over the Internet, we will be able to achieve high precision on identifying computers that access a web server. However, The biggest draw back cookies have is that they can be deleted and manipulated. As such the use of cookies is not an effective attribution system. &lt;br /&gt;
&lt;br /&gt;
==IP Addresses==&lt;br /&gt;
IP or Internet Protocol Addresses are 32 bit numerical identifiers for devices (ie computer, printer, scanner etc..) on a network. The users Internet Service Provider (ISP) provide this number. The Internet Assigned Numbers Authority (IANA) is responsible for managing IP Address space allocation globally. It does this with the help of five Regional Internet registries (RIRs), responsible for allocating IP address blocks to their assigned regions ISPs, who in turn allocates them to their users.&lt;br /&gt;
&lt;br /&gt;
Any device that goes online and communicates using IP needs an IP address. Over the years there has been a growing number of users going online and a number of devices owned by the users to go online. One of the more common examples of this is the increase of Internet ready mobile phones. Our current addressing system used by our current Internet Protocol Version 4 (IPv4) contains only 32bits which means it is only able to uniquely address 232 addresses (4,294,967,296) which is less that the number of people on this planet today. The very last batch of IP addresses was assigned out to the five RIRs early February 2011 [1]. This was foreseen since the 90s, which sprung the development of a new Internet Protocol version, IPv6, which uses a 128bit addressing system began. &lt;br /&gt;
&lt;br /&gt;
IP addresses can either be static or dynamic. Static IP address is an address permanently assigned to a user due to configuration. A dynamic IP address is one in which a new address is assigned at every boot up. A Dynamic Host Configuration Protocol (DHCP) Server is usually responsible for assigning dynamic IP addresses to users. There are two main advantages for dynamic addressing; it eliminates the administrative cost involved with assigning static IP addresses, and it helps solve the issue of limited addressing space by allowing many devices “share” a single address if they go online at different times. Given the limited addressing space the ISPs have to work with, and to save administration costs, most ISPs assign dynamic IP addresses as standard a offer static IP address for a higher fee. &lt;br /&gt;
&lt;br /&gt;
===IP Addresses as an Attribution System===&lt;br /&gt;
Although Internet addresses can be used to attribute packets to its sender, it will fail as an effective attribution system for a few reasons, but mainly that attackers can spoof their IP addresses. Spoofing IP addresses will even foil the efforts of IP trace backs.&lt;br /&gt;
&lt;br /&gt;
==Authentication Systems==&lt;br /&gt;
In order for a website to make sure of the identity of who ever is visiting some pages, it provides an authentication system. This is usually a login name and password either assigned by the web server or chosen by the user. The biggest advantage this has is that now, attribution can be performed across different computers. The task of storing and securing login information is left to the web server, which is subject to attackers hacking into the server to stealing login information. &lt;br /&gt;
&lt;br /&gt;
Login systems are attached to user accounts that sometime require private information in order to be setup. If the web server’s security is not good enough, security breeches may in turn lead to identity theft. &lt;br /&gt;
&lt;br /&gt;
The process behind authentication systems is simple; using a typical web banking authentication system for instance, the process may go as follows. A user requests for a web account or one is automatically assigned to the user. The user sets up a password for accessing the account. When the user now goes to the website he is requested to “identify himself”, the user enters in his personal login information, the web server verifies this information with what it has stored in its database and either grants or denies access to the users personal page. &lt;br /&gt;
&lt;br /&gt;
Authentication systems are only ever used when it involves the users wanting some privacy on the webserver, or when the user wishes to store some form of information on the web server. &lt;br /&gt;
&lt;br /&gt;
===Authentication Systems as an Attribution System===&lt;br /&gt;
Authentication systems are very precise in the identification of people over the Internet and as such used by many companies. However it will have a serious privacy drawback if it were to be used as a global identification system. It will mean that virtually every web server will need to hold enough information about you to be able to identify you as an attacker. This would mean that to even a user randomly search for a cooking recipe online would need to login somehow to access the web server. People generally like the anonymity of surfing the web and a system like this will completely destroy this.&lt;br /&gt;
&lt;br /&gt;
=The attribution dilemma=&lt;br /&gt;
&lt;br /&gt;
Designing an attribution system is not a trivial task, because, regardless of technologies and/or infrastructure available, one needs to consider controversial question of balancing between strong attribution and privacy. This hypothetical line between attribution and privacy is not straight, and crucially depends on application. For instance, large financial institutions as well as its clients are interested in strong attribution system, which would solve many authorization and authentication problems, as well as will guarantee (to some degree) that agents of transactions are who they claim they are. On the other hand, political dissidents and whistle-blowers do exist primarily because there is no 100% effective attribution system in place and it is possible for them to distribute information (regardless of actual usefulness or goodness of it) and keep their identity secret. It is clear that single universal set of rules cannot satisfy these two cases. It is also clear that, in pretty abstract fashion, privacy is inversely proportional to attribution. While designing an attribution system one needs not only to decide on this ration for some particular case, but rather make this ratio dynamically changed depending on the case.&lt;br /&gt;
&lt;br /&gt;
Assuming this ratio is found, another question is when to decide to use private information to track or punish a person, as to directly intrude their privacy? One might think that this question is a little bit out of the scope of our paper. This is true, however, these and a lot of less obviously related questions should be answered prior to designing, because in such an important thing as protection and privacy, designing of solution should not make too many assumptions and should guarantee something not only to operators of the system, but for users as well. In other words, even though system should be dynamic and adaptable to all potential use cases, it should remain universal to some extent and guarantee some law-related and moral principles.&lt;br /&gt;
&lt;br /&gt;
(here go other questions. will show connection to requirements)&lt;br /&gt;
&lt;br /&gt;
* While designing an attribution system one needs to consider balancing between attribution and privacy. &lt;br /&gt;
**Sometimes non-attribution is very crucial,to protect political dissidents and whistle-blowers &lt;br /&gt;
* When to decide to track a person and when not to (so as not to intrude privacy)?&lt;br /&gt;
* How to make sure attribution is properly achieved?&lt;br /&gt;
* Who should attribute who/what and why?&lt;br /&gt;
* How far can we trust IP-traceback, stepping stone authentications, link identifications and packet filtering in wedging packets to agents?&lt;br /&gt;
* How much can intermediate systems&#039; cooperation contribute to achieving attribution?&lt;br /&gt;
* Should there be consequences upon attributing an action(s) to an agent? What are they? (punishment, rewarding, etc)&lt;br /&gt;
* How to deal with misleading data sources hiding behind botnets and concealing identities via stepping stones?&lt;br /&gt;
&lt;br /&gt;
==Why do we need Attribution==&lt;br /&gt;
&lt;br /&gt;
* For identifying purposes&lt;br /&gt;
** Web Banking&lt;br /&gt;
** eCommerce&lt;br /&gt;
** Web advertisements&lt;br /&gt;
&lt;br /&gt;
* For better protection against cyber attacks:&lt;br /&gt;
** DoS and DDos&lt;br /&gt;
** Forgery and theft&lt;br /&gt;
** Sniffing private traffic&lt;br /&gt;
** Distributing illegal content/malware&lt;br /&gt;
** Sending spam&lt;br /&gt;
** Illegal/undesired intrusion&lt;br /&gt;
&lt;br /&gt;
*For marketing purposes (privacy?)&lt;br /&gt;
** custom (client-based) content generation&lt;br /&gt;
&lt;br /&gt;
==Why is it difficult to achieve attribution?==&lt;br /&gt;
&lt;br /&gt;
The main problem I see is that the way Internet is designed makes it possible and relatively easy to act without compromising identity. Moreover, most current solutions are  based on the same structure and work within the same scope, thus, can only reduce the number of potentially destructive acts or just deal with the consequences.  Of course, no system can prevent 100% of destructive attempts, but some potentially good attribution system should make such attempts highly undesirable and &amp;quot;costly&amp;quot; for an attacker.&lt;br /&gt;
&lt;br /&gt;
*The issue of lack of attribution on the web mostly arises whenever security is compromised. When you&#039;re bombarded with spam, or when a system is under a DoS attack attribution becomes a more appealing notion. Getting a balance between security and privacy is tricky, because once attacks are tracked so will all other traffic. &lt;br /&gt;
*Depending on the type of sender and receiver, different attribution policy will be requested.&lt;br /&gt;
&lt;br /&gt;
In the ideal world, every action on the internet could be bound to a machine and thus to a person. This is done by examining the source IP printed on each moving packet, locating the geographical location of this IP, consulting the ISP covering the location and identifying the person. If an act requires strict attribution (like checking and sending emails), authentication is used. &amp;lt;b&amp;gt;Here is what goes wrong&amp;lt;/b&amp;gt;:&lt;br /&gt;
* IP addresses can be &amp;lt;b&amp;gt;spoofed&amp;lt;/b&amp;gt; and hence, misleads the geographical location.&lt;br /&gt;
* For avoiding that problem, &amp;lt;b&amp;gt;IP traceback&amp;lt;/b&amp;gt; can be performed BUT it requires global cooperation of intermediate systems... it is not there!&lt;br /&gt;
* IPs are &amp;lt;b&amp;gt;not permanently bound&amp;lt;/b&amp;gt; to personnel, so figuring out the person from the IP is not concrete.&lt;br /&gt;
* Network users are &amp;lt;b&amp;gt;not aware of all packets sneaking&amp;lt;/b&amp;gt; to their machines, which allows for malware distribution and hence, the creation of botnets... misleading attribution!&lt;br /&gt;
* &amp;lt;b&amp;gt;Firewalls&amp;lt;/b&amp;gt; and packet filters can be used for avoiding that problem, but they are not 100% efficient.&lt;br /&gt;
* It is not applicable to &amp;lt;b&amp;gt;authenticate&amp;lt;/b&amp;gt; every single action on the internet.&lt;br /&gt;
&lt;br /&gt;
===Attacks to prevent correct attribution of actions===&lt;br /&gt;
&lt;br /&gt;
* Stepping stone attack: a common way of attributing attacks to anonymity by using multiple public random agents (as stepping stones) to reach the victim in order to conceal the attacking source. &amp;lt;ref name=&amp;quot;ref1&amp;quot;&amp;gt;S. Staniford-Chen and L. T. Heberlein. Holding intruders accountable on the internet. In SP ’95: Proceedings of the 1995 IEEE Symposium on Security and Privacy, page 39, Washington, DC, USA, 1995. IEEE Computer Society.&amp;lt;/ref&amp;gt;&lt;br /&gt;
* Forgery&lt;br /&gt;
** Identity theft (impersonation)&lt;br /&gt;
** Distribution of malware&lt;br /&gt;
&lt;br /&gt;
=Requirements for internet attribution system=&lt;br /&gt;
&lt;br /&gt;
It is hard to describe some hypothetical attribution system in detail, because there are many issues and complicated dependencies, and a lot of questions to answer or at least to try to answer before one can even think of implementing such a system. In this section we are trying to define high-level requirements for a good attribution system, while definition of good attribution system is not so clear, we take into account everything we have talked above. That is, the following requirements try to define the system in a way that avoids current problems, yet remains realistic. &lt;br /&gt;
&lt;br /&gt;
We have separated those requirements in three sections: general requirements define the idea and overall goal of the system in high level, abstract terms. Deployment requirements set ground rules for deployability that makes sense in such a huge network as internet. Practice requirements define the way system works, behaves and interacts with other bodies.&lt;br /&gt;
&lt;br /&gt;
==General==&lt;br /&gt;
&lt;br /&gt;
First and most obvious requirement for any system is usually put for sake of consistency, rather than useful information, so we shall not avoid this notion neither: main requirement for internet attribution system is that it needs to attribute, or, more formally, any potentially destructive act should be traceable to an agent (person and/or organization, group, etc). It is important to consider different natures of agents, because the goal of attribution system is not necessarily to narrow down the search to one particular person, but rather to find the body responsible for an act(s) regardless of their actual structure. It might be one person after all. In other words, even though actions are done mostly by a single person, they are not necessarily the ones who&#039;s responsible for a decision to do so. A good real world analogy is an assassin and some body (person or a group) paying him. Good attribution system should not lead to assassin alone, but rather should be designed the way that responsible bodies are the ones to be discovered. Yet, we accept the notion that by the end of the day there is some person or several persons, human brings, responsible for an action. It is essential, because, as practice shows, for example, determining the source of DoS-attack is relatively simple, but most of the time this source is not the one who is responsible, but rather a victim itself.&lt;br /&gt;
&lt;br /&gt;
It is easy to imagine a system in which less crime and misuse is the only acceptable way to do things, and many writers and movie directors exploit this idea in futuristic, science fiction and anti-utopian plots. Unfortunately, applying any of this sort of ideas to real world today is not possible, because a lot of laws and moral principles are already in place, some of which are not perfect, but widely accepted and most have reasons to exist. Attribution system that we&#039;re looking for should take legal and moral issues into account, naturally, should not violate and/or contradict any of them. This important requirement comes somewhat together with incremental deployability that we&#039;re going to discuss later.&lt;br /&gt;
&lt;br /&gt;
In general, an attribution system should be universal and global, and details of these terms will be added later.&lt;br /&gt;
&lt;br /&gt;
==Deployment==&lt;br /&gt;
It is relatively easy to just design a system, it is much harder to design a system, deployment of which need not be instant and massive. Even though a global attribution system will have a lot of pressure on it, internet should not depend on it entirely and in case attribution system goes down, underlying network should still remain functional. In other words, attribution system should be loosely coupled to the system it works in. &lt;br /&gt;
&lt;br /&gt;
As discussed before, (and this could be said about any global system on the internet) such a system should be incrementally deployable, so that smooth, step-by-step, subnetwork-by-subnetwork integration is possible. This is important not only because of virtual impossibility to restart or reconfigure the whole internet at once. This incremental way of embedding an attribution system should be more secure (bugs in software and mistakes in design can be fixed while on a small scale), so that by the end of cycle, when the whole internet is wired, the attribution system is field-tested and analyzed several times by different bodies. &lt;br /&gt;
&lt;br /&gt;
Very important, but controversial subject, is adoption of the system within some set of rules or laws (state laws, government regulations, corporate rules and principles, etc.). System should allow easy adoption for different cases, at the same time it should remain universal and global. It should act like a public tool any group can use, but nobody should be able to misuse it or use in non-legal way. The big decision designers will have to make is the one regarding this line between dynamic adoptability and universality. Luckily, this sort of deepness goes beyond the scope of our paper.&lt;br /&gt;
&lt;br /&gt;
Companies and organizations sometimes loose millions of dolars due to attacks and other cyber-crimes done to them, and some issues can be dealt with by spending more resources (memory, bandwidth on servers, etc), or, in other words, spending more money. The overall cost of setting up and maintaining the attribution system for a particular body (person, organization, network) should be considerably less than average losses under current lack of attribution (e.g. DoS, identity theft, etc).&lt;br /&gt;
&lt;br /&gt;
==Practice==&lt;br /&gt;
&lt;br /&gt;
Attribution mapping should not be a bijection, in other words action should map to person, but not vice versa. That it, nobody should be able to use the system to answer the question &amp;quot;what person X did/does?&amp;quot;. Not only the system should not know the answer, it should not be possible to know the answer; the question &amp;quot;who did act X&amp;quot; is the one should be answered. This can be thought of as part of requirement about not violating current laws and moral principles, but is put as a separate requirement, since it is very important to draw a line between attribution system and surveillance. The goal is not only to make attribution system attribute, but also to make it impossible to use it in other way – for surveillance, spying, etc.&lt;br /&gt;
&lt;br /&gt;
Since this global system operates on the internet, it might not be a great idea to put names of persons into traceability database. It makes much more sense to put some unique IDs for any body, who uses the network, and in case a crime committed, or, in general, it is a case where an agent of some act should be determined, recorded ID will be searched for in police or government database. It should be some trusted entity (government, corporation, police, some public good-like system, etc) that stores the mapping between IDs and real names. This mapping should only be revealed when needed and when there is enough evidence or motivation to do so. Traceability information (namely, unique iDs) should be distributed and it is crucial to make it impossible to collect all the information in one place.&lt;br /&gt;
&lt;br /&gt;
Of course, it is not always the case that some trusted (by everyone) body exists, but generally we have governments and/or agencies we trust. It is important to divide the information between public and trusted body in a way allowing them to cooperate in time of need and not allowing to misuse the system from any side.&lt;br /&gt;
&lt;br /&gt;
=Proposed Framework=&lt;br /&gt;
In this section, we will propose a potential framework and argue that it is able to fulfill the requirements listed in the former section. The proposed framework works under the core principle &amp;quot;An act cannot use network resources nor can it be routed if it is anonymously bound&amp;quot;. Firstly, we start by defining some terminologies that will be used within the scope of this section:&lt;br /&gt;
* &amp;lt;i&amp;gt;Agent&amp;lt;/i&amp;gt; (Ag): the human-device pairing that sits on an end system and keeps transmitting/receiving packets.&lt;br /&gt;
* &amp;lt;i&amp;gt;Identification Stamp&amp;lt;/i&amp;gt; (IS): a series of bits that binds a human unique identification (iris intricate structure or fingerprint) with a unique feature of an access-capable device. So, for a device like a Network Interface Card, the MAC address would be that feature. This biding is a particular representation for the official owner of the device, and who is deemed the primary responsible for any outgoing packet launched by his owned device. In other words, it is a unique identifier for an agent.&lt;br /&gt;
* &amp;lt;i&amp;gt;Intermediate System Services&amp;lt;/i&amp;gt; (ISS): Services provided by intermediate systems (routers). For e.g., routing (main service), error checking, etc.&lt;br /&gt;
* &amp;lt;i&amp;gt;Licensing&amp;lt;/i&amp;gt;: a process of giving the permission to intermediate systems to provide ISS to all packets that are launched from the agent that is requesting the license.&lt;br /&gt;
* &amp;lt;i&amp;gt;Machines/Devices&amp;lt;/i&amp;gt; (Md): any piece of hardware that has access capability. It can either be a PDA, a laptop, a notebook, a PC, an NIC, or even a mere home made chip that can externally communicate wired or wireless to send or receive digital packets.&lt;br /&gt;
&lt;br /&gt;
In principle, every leaping packet has a human owner that is either directly or indirectly responsible for it. Directly responsible when he is running an application that sends requests or initiates communication sessions to another end system. E.g., using the client side of application supporting the protocols: HTTP, FTP, SIP, RTP, VoIP, etc. Indirect responsibility is when a user is a running a system in the background that performs external (over the internet) system calls (global clock synchronization ) or is automated for periodic communication or automatic response to incoming requests. E.g., NTP, or the server side of the protocols: HTTP, FTP, etc. In addition, indirect responsibility also includes the responsibility of all packets launched by lower layer protocols that are being manipulated by higher layer ones. E.g., TCP connection initiation packets and handshaking, ICMP packets that aims to seek and identify that status of a specific host, etc.&lt;br /&gt;
&lt;br /&gt;
The scope of this framework only addresses attribution over the internet and not any other &amp;quot;locally&amp;quot; defined networks underlying the IEEE standard definitions of the topologies PAN, LAN, MAN, or a WAN that are do not user the global intermediate systems as their underlying infrastructure for packet delivery.&lt;br /&gt;
&lt;br /&gt;
The following sections show the assumptions for this framework to operate, the methodology of its operation, a list of pros, cons and vulnerabilities of the system and wrap up by a discussion on the tradeoff between privacy and attribution regarding the proposed framework.&lt;br /&gt;
==Assumptions==&lt;br /&gt;
For starters, this frame work assumes the presence of a globally trustful entity(s) (e.g., government). This entity may either be centralized or distributed. A centralized entity would be easier to deploy, but it will suffer from a single point of failure. A distributed entity would obviously perform better as it will be able to scale with the growth of the system users as well as conform to diverse regional laws, regulations, customs and traditions. However, a standard protocol would be required to define the syntax and semantics as well as the nature of the way these distributed sub-systems would communicate.&lt;br /&gt;
&lt;br /&gt;
Second, we assume that a DNS-like world-wide distributed system is deployed. This system acts as a &amp;quot;database&amp;quot; for storing &amp;quot;identification stamps&amp;quot;. Symmetric key encryption should be used to protect that system as it will only be accessed through two types of users. Routers, which should be able to access this database ONLY for read operations. And the trustful entity (defined in the previous assumption) which should be able to access ONLY for write operations. Both users must be strictly authenticated, for being able to decrypt the contents or to append. In addition, this distributed system must guarantee almost zero latency in the read operations as it will be heavily relied on for every single hop made by a packet at the Internet intermediate system.&lt;br /&gt;
&lt;br /&gt;
Thirdly, we assume that the owning relationship between persons and machines is one-to-many. That is to say, a person can officially own one or more machines but a machine can only be owned by one person.&lt;br /&gt;
&lt;br /&gt;
Finally, our proposed frame work assumes that within the frame format of the IP packets, a header is added by the network layer that includes the &amp;quot;identification stamp&amp;quot; of the packet owner. A packet owner is the person PLUS the machine that are together responsible for launching this packet.&lt;br /&gt;
&lt;br /&gt;
==Methodology==&lt;br /&gt;
Basically, this framework works by stalling the propagation of a packet that is either unattributed or forged with a fake identification stamp. A &amp;quot;fake identification stamp&amp;quot; is defined as:&lt;br /&gt;
* Either having a false unique chip identifier that refers to an imaginary device.&lt;br /&gt;
* Or having a false unique human identifier that refers to an imaginary human.&lt;br /&gt;
* Or having a misleading binding of a human to a machine. i.e., claiming that some machine &amp;quot;X&amp;quot; belongs to some human &amp;quot;Y&amp;quot;, but in reality, &amp;quot;Y&amp;quot; is not the owner of &amp;quot;X&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Noticeably, the routers, as primary constituents to the intermediate systems, should refrain from routing any data packets that are not fully attributed. As they are the main driving power behind delivering all malicious or benign packets, they should have great responsibility in achieving highly reliable attribution mechanism.&lt;br /&gt;
&lt;br /&gt;
A description of the system, based on the chronological order, is as follows. First, any newly bought machine or even a home made device, must be licensed from the trustful entity. The trustful entity access the globally distributed database of &amp;quot;identification stamps&amp;quot; and adds the new identification stamp of the agent that asked for license. If a device is not licensed (i.e., its &amp;quot;identification stamp&amp;quot; was not inserted to the distributed database), it doesn&#039;t not benefit from ISS.&lt;br /&gt;
&lt;br /&gt;
From the intermediate system&#039;s perspective, when a router receives a packet, it verifies its IS. This is done by consulting the GDDB and sending it a copy of the IS found on the packet. If a packet founds to be not having an IS, the packet is prevented from benefiting from ISS and is simply dropped. If the GDDB replies with an invalid IS, again, the packet is dropped. If the GDDB replies with a success, this will mean that the packet&#039;s printed IS is verified. Thus, the packet benefits from the ISS and gets routed throughout the way.&lt;br /&gt;
&lt;br /&gt;
==Pros, Cons and Vulnerabilities==&lt;br /&gt;
Obviously, the proposed framework&#039;s main focus is to ensure that any leaping packet is moving because it is known who does it belong to. If not, it is prevented from locomotion.&lt;br /&gt;
&lt;br /&gt;
- delays and bottlenecks due to licensing system at the routers for consulting the distributed system.&lt;br /&gt;
- restrictive assumptions (not easily deployable)&lt;br /&gt;
- different regulative flavors&lt;br /&gt;
- Custom content generation (not found)&lt;br /&gt;
- Public PCs (in labs...), bound to whom?&lt;br /&gt;
- Full awareness of users with their systems&lt;br /&gt;
+ attribution&lt;br /&gt;
+ attack avoidance&lt;br /&gt;
+ attribution not available to anyone&lt;br /&gt;
+ automated. services are either stopped or continued.&lt;br /&gt;
+ avoids attacks: DDoS, DoS, ...&lt;br /&gt;
+ Privacy&lt;br /&gt;
V Botnets&lt;br /&gt;
V attack on the distributed system which would cause whole system failure.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Privacy and Attribution Tradeoff==&lt;br /&gt;
The human nature refuses any change in the first sight. But, as with cars, they first started without the need for licensing, and then, it licensing systems were applied afterwards. People got used to it slowly then thoroughly.&lt;br /&gt;
&lt;br /&gt;
=Conclusion=&lt;br /&gt;
&lt;br /&gt;
=References=&lt;br /&gt;
[1] http://arstechnica.com/tech-policy/news/2011/02/river-of-ipv4-addresses-officially-runs-dry.ars&lt;br /&gt;
&lt;br /&gt;
[2] Wikipedia Website&lt;br /&gt;
&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;/div&gt;</summary>
		<author><name>Omi</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=A_link_to_the_paper&amp;diff=9263</id>
		<title>A link to the paper</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=A_link_to_the_paper&amp;diff=9263"/>
		<updated>2011-04-11T03:38:26Z</updated>

		<summary type="html">&lt;p&gt;Omi: /* Authentication Systems */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Title=&lt;br /&gt;
Proposed titles:&lt;br /&gt;
* Requirements for Attribution on the Internet&lt;br /&gt;
* Internet Attribution: Between Privacy and Cruciality&lt;br /&gt;
&lt;br /&gt;
=Abstract=&lt;br /&gt;
Present and past situations show a need for improved attribution systems, and arguably, scientific basis for properly functioning attribution systems are not yet defined. Lots of research have been focusing on attributing documents to authors for the sake of securing authorship rights and rapid identification of plagiarism. Many of those were revolving around the notion of using machine learning for linking articles to humans. Others proposed text classification and feature selection as a mean of detecting the author of a document. Unfortunately, not that much research is addressing the problem of lack of robust attribution system over the internet. Authentication, as a mean of attribution, has proved its efficiency but, needless to say, it is not applicable to authenticate every single packet hopping over the intermediate systems. This paper presents limits and advances in the attribution of actions to agents over the internet. It reviews current attribution technologies as well as the limits of those technologies. It also identifies the requirements of a proper attribution system and proposes a distributed (yet cooperative) approach for performing attribution over the internet.&lt;br /&gt;
&lt;br /&gt;
=Introduction=&lt;br /&gt;
Currently the Internet infrastructure provides users partial anonymity. Unfortunately, that anonymity weakens the security for its users, because it incites advance users to exploit that feature. The lack of online identification married with bad intentions entices criminals to commit a number of &amp;lt;i&amp;gt;Cyber Crimes&amp;lt;/i&amp;gt; without being caught, crimes which include: fraud, theft, forgery, impersonation, the distribution of Malware (and hence, botnets), traffic tampering, DoS, bandwidth hogging, etc. Consequently, internet attribution is a highly sensitive field that constitutes a cornerstone position within internet security. Needless to say, current solutions don&#039;t guarantee sufficient attribution nor are considered always applicable in most of the time, hence, current system suffers the lack of a relatively robust attribution mechanism. In the light of this context, we need better methodologies for reaching an acceptable success level for attributing actions to persons.&lt;br /&gt;
&lt;br /&gt;
In principle, attribution can be defined as the mechanism of binding a system-defined act to an agent. An agent is typically an entity that has the ability to commit what constitutes an act. Within our focus, an agent could either be a person or a machine. It can also be defined as &amp;quot;determining the identity or location of an attacker or an attacker’s intermediary&amp;quot;&amp;lt;ref&amp;gt; [Institute for Defense Analyses, 2003]&amp;lt;/ref&amp;gt;. Problems like IP address spoofing, lack of interoperability in intermediate systems, dynamic nature of IP addresses, unawareness of system users with lots of &amp;lt;i&amp;gt;unknown&amp;lt;/i&amp;gt; packets sneaking to their machines and poor efficiency of firewalls and IDSs make this determination operation considerably difficult. In addition, some types of attacks are carried out to conceal the real agent behind an act. For instance, malware distribution (and hence the creation of botnets), and stepping stones aim to inflict vagueness around the correct &amp;lt;i&amp;gt;human&amp;lt;/i&amp;gt; source behind the scene.&lt;br /&gt;
&lt;br /&gt;
In this paper, we focus on defining what it takes to achieve an acceptably working attribution mechanism over the internet. To do that, we review past research works in attribution and discuss their common limitations as well as flaws and what can be done in common to enhance such schemes. We also argue that the lack of a globally deployed registration system that registers system users and grants them LICENSED access to the system enfeebles proper attribution and motivates illegitimate intrusions and irregular behavior. We show that employing the mentioned system would reduce the incentive of irregular behavior as well as remove the blaze of tempting anonymity, putting attackers under the risk of being easily caught. We also discuss how privacy, as a counter force to attribution, plays a big role in the internet and within its users and propose a framework that achieves relatively robust attribution mechanism and retains the privacy of users.&lt;br /&gt;
&lt;br /&gt;
Much of the research done in literature focuses on attribution that is done for keeping track of authorship, i.e., attributing text to authors. In this paper, we don&#039;t question the cruciality of attribution in this field, but rather we address a higher level of attribution of all possible actions to agents, which is sadly deemed slightly obsolete from the current research perspective.&lt;br /&gt;
&lt;br /&gt;
This paper starts by a quick discussion on the dilemma of attribution, resolving the tension between attribution and privacy. Consequently, section 3 argues about the reasons behind the essentiality of implementing proper attribution systems. Section 4 presents a fundamental set of requirements for achieving an acceptable level of attribution over the internet as well as proposes an abstract framework for achieving attribution. In section 5, a review on the currently implemented systems that achieve attribution is presented as well as flaws and points of failure of the surveyed papers. In section 6, the reasons behind the difficulty of achieving a proper attribution system. And finally, a conclusion is presented in section 7.&lt;br /&gt;
&lt;br /&gt;
==What is Attribution==&lt;br /&gt;
&#039;&#039;The act of attributing, especially the act of establishing a particular person as the creator of a work of art.&#039;&#039;&amp;lt;ref&amp;gt; The American Heritage® Dictionary of the English Language, Fourth Edition copyright ©2000 by Houghton Mifflin Company. Updated in 2009. Published by Houghton Mifflin Company.&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
We are concerned with one particular type of attribution - binding an act to a person. This may include intermediate attributions, for example, an act to an agent (software, device, etc.) and then attribution of an agent to person. Narrowing the problem further, we&#039;re only concerned about attribution in large, dynamic networks, like internet. For sake of simplicity, in this paper we&#039;re going to reference to &amp;quot;binding an act to a person on the internet&amp;quot; as &amp;quot;attribution&amp;quot;, while other types of attributing will be defined separately.&lt;br /&gt;
&lt;br /&gt;
==Problem Statement==&lt;br /&gt;
The anonymity of the Internet makes it virtually impossible most of the time to properly identify who is who online. This is a double-ended sword as it not only provides a high level of privacy, but also makes it hard to identify people with malicious intent and cyber attackers.&lt;br /&gt;
&lt;br /&gt;
==Problem Motivation==&lt;br /&gt;
In todays world there grows a strong need for attribution over the Internet mainly due to increased numbers of cyber attacks since its introduction in the 90’s. Many attackers have succeeded in causing both physical and financial damage to many companies over the Internet and going Scott free; due to the anonymity of the Internet, the attackers cannot be identified.&lt;br /&gt;
&lt;br /&gt;
==Scope==&lt;br /&gt;
In this paper we are addressing the issue of attribution by providing a list of requirements that need to be met in order to have a fully stable and efficient attribution system over the Internet.&lt;br /&gt;
&lt;br /&gt;
Although this is not a technical paper, in order to fully understand some of the concepts and terminology within this paper, a small knowledge of computer science or computer systems will be required. &lt;br /&gt;
&lt;br /&gt;
=Background=&lt;br /&gt;
&lt;br /&gt;
The problem of attribution is not one that just came up; it has been around fro decades but mostly to address identification issues as it pertained to websites or Internet service providers. A lot of different approaches towards attribution have been taken but mainly just to the extent of what that particular system stems to achieve. &lt;br /&gt;
This section gives an introduction to three of todays current attribution systems and discusses their pros and cons as they pertain to the type of global attribution we discuss in this paper.&lt;br /&gt;
&lt;br /&gt;
==Cookies==&lt;br /&gt;
Websites will sometimes need to remember information about a visit or a visitor in order to improve viewer experience. Cookies are text files that are created by a web server, and stored by a web browser on the users computer. Cookies are used for many reasons; mainly authentication, remembering shopping cart information, and storing site preference. In actuality, they can be used to store any type of information that can be stored in a text file. When a page is requested the users web browser sends the request with the webserver’s cookie in the header part of the packet. All this is an automated process between the web browser and web server.  &lt;br /&gt;
&lt;br /&gt;
If at all the webserver receives a request without a cookie attached to it, it takes it as the first access that the browser is making to the server and sends one as part of the response which will be saved by the browser and resent on the next request. Cookies are usually encrypted in order for data security and information privacy, however they are still subject to the users control as they can be decrypted, modified and even deleted completely. It is also possible for a user to change their browser setting to not accept cookies at all. &lt;br /&gt;
&lt;br /&gt;
Cookies can either have an expiration date or not; this is the date that the browser deletes the cookie. Cookies without an expiration date are deleted when the browser is closed. Some browsers allow you to automatically set how long you want cookies to be stored.&lt;br /&gt;
&lt;br /&gt;
===Cookies as an Attribution System===&lt;br /&gt;
Looking at cookies as the type of attribution system we are looking for over the Internet, we will be able to achieve high precision on identifying computers that access a web server. However, The biggest draw back cookies have is that they can be deleted and manipulated. As such the use of cookies is not an effective attribution system. &lt;br /&gt;
&lt;br /&gt;
==IP Addresses==&lt;br /&gt;
IP or Internet Protocol Addresses are 32 bit numerical identifiers for devices (ie computer, printer, scanner etc..) on a network. The users Internet Service Provider (ISP) provide this number. The Internet Assigned Numbers Authority (IANA) is responsible for managing IP Address space allocation globally. It does this with the help of five Regional Internet registries (RIRs), responsible for allocating IP address blocks to their assigned regions ISPs, who in turn allocates them to their users.&lt;br /&gt;
&lt;br /&gt;
Any device that goes online and communicates using IP needs an IP address. Over the years there has been a growing number of users going online and a number of devices owned by the users to go online. One of the more common examples of this is the increase of Internet ready mobile phones. Our current addressing system used by our current Internet Protocol Version 4 (IPv4) contains only 32bits which means it is only able to uniquely address 232 addresses (4,294,967,296) which is less that the number of people on this planet today. The very last batch of IP addresses was assigned out to the five RIRs early February 2011 [1]. This was foreseen since the 90s, which sprung the development of a new Internet Protocol version, IPv6, which uses a 128bit addressing system began. &lt;br /&gt;
&lt;br /&gt;
IP addresses can either be static or dynamic. Static IP address is an address permanently assigned to a user due to configuration. A dynamic IP address is one in which a new address is assigned at every boot up. A Dynamic Host Configuration Protocol (DHCP) Server is usually responsible for assigning dynamic IP addresses to users. There are two main advantages for dynamic addressing; it eliminates the administrative cost involved with assigning static IP addresses, and it helps solve the issue of limited addressing space by allowing many devices “share” a single address if they go online at different times. Given the limited addressing space the ISPs have to work with, and to save administration costs, most ISPs assign dynamic IP addresses as standard a offer static IP address for a higher fee. &lt;br /&gt;
&lt;br /&gt;
===IP Addresses as an Attribution System===&lt;br /&gt;
Although Internet addresses can be used to attribute packets to its sender, it will fail as an effective attribution system for a few reasons, but mainly that attackers can spoof their IP addresses. Spoofing IP addresses will even foil the efforts of IP trace backs.&lt;br /&gt;
&lt;br /&gt;
==Authentication Systems==&lt;br /&gt;
In order for a website to make sure of the identity of who ever is visiting some pages, it provides an authentication system. This is usually a login name and password either assigned by the web server or chosen by the user. The biggest advantage this has is that now, attribution can be performed across different computers. The task of storing and securing login information is left to the web server, which is subject to attackers hacking into the server to stealing login information. &lt;br /&gt;
&lt;br /&gt;
Login systems are attached to user accounts that sometime require private information in order to be setup. If the web server’s security is not good enough, security breeches may in turn lead to identity theft. &lt;br /&gt;
&lt;br /&gt;
The process behind authentication systems is simple; using a typical web banking authentication system for instance, the process may go as follows. A user requests for a web account or one is automatically assigned to the user. The user sets up a password for accessing the account. When the user now goes to the website he is requested to “identify himself”, the user enters in his personal login information, the web server verifies this information with what it has stored in its database and either grants or denies access to the users personal page. &lt;br /&gt;
&lt;br /&gt;
Authentication systems are only ever used when it involves the users wanting some privacy on the webserver, or when the user wishes to store some form of information on the web server. &lt;br /&gt;
&lt;br /&gt;
===Authentication Systems as an Attribution System===&lt;br /&gt;
Authentication systems are very precise in the identification of people over the Internet and as such used by many companies. However it will have a serious privacy drawback if it were to be used as a global identification system. It will mean that virtually every web server will need to hold enough information about you to be able to identify you as an attacker. This would mean that to even a user randomly search for a cooking recipe online would need to login somehow to access the web server. People generally like the anonymity of surfing the web and a system like this will completely destroy this.&lt;br /&gt;
&lt;br /&gt;
=The attribution dilemma=&lt;br /&gt;
&lt;br /&gt;
Designing an attribution system is not a trivial task, because, regardless of technologies and/or infrastructure available, one needs to consider controversial question of balancing between strong attribution and privacy. This hypothetical line between attribution and privacy is not straight, and crucially depends on application. For instance, large financial institutions as well as its clients are interested in strong attribution system, which would solve many authorization and authentication problems, as well as will guarantee (to some degree) that agents of transactions are who they claim they are. On the other hand, political dissidents and whistle-blowers do exist primarily because there is no 100% effective attribution system in place and it is possible for them to distribute information (regardless of actual usefulness or goodness of it) and keep their identity secret. It is clear that single universal set of rules cannot satisfy these two cases. It is also clear that, in pretty abstract fashion, privacy is inversely proportional to attribution. While designing an attribution system one needs not only to decide on this ration for some particular case, but rather make this ratio dynamically changed depending on the case.&lt;br /&gt;
&lt;br /&gt;
Assuming this ratio is found, another question is when to decide to use private information to track or punish a person, as to directly intrude their privacy? One might think that this question is a little bit out of the scope of our paper. This is true, however, these and a lot of less obviously related questions should be answered prior to designing, because in such an important thing as protection and privacy, designing of solution should not make too many assumptions and should guarantee something not only to operators of the system, but for users as well. In other words, even though system should be dynamic and adaptable to all potential use cases, it should remain universal to some extent and guarantee some law-related and moral principles.&lt;br /&gt;
&lt;br /&gt;
(here go other questions. will show connection to requirements)&lt;br /&gt;
&lt;br /&gt;
* While designing an attribution system one needs to consider balancing between attribution and privacy. &lt;br /&gt;
**Sometimes non-attribution is very crucial,to protect political dissidents and whistle-blowers &lt;br /&gt;
* When to decide to track a person and when not to (so as not to intrude privacy)?&lt;br /&gt;
* How to make sure attribution is properly achieved?&lt;br /&gt;
* Who should attribute who/what and why?&lt;br /&gt;
* How far can we trust IP-traceback, stepping stone authentications, link identifications and packet filtering in wedging packets to agents?&lt;br /&gt;
* How much can intermediate systems&#039; cooperation contribute to achieving attribution?&lt;br /&gt;
* Should there be consequences upon attributing an action(s) to an agent? What are they? (punishment, rewarding, etc)&lt;br /&gt;
* How to deal with misleading data sources hiding behind botnets and concealing identities via stepping stones?&lt;br /&gt;
&lt;br /&gt;
==Why do we need Attribution==&lt;br /&gt;
&lt;br /&gt;
* For identifying purposes&lt;br /&gt;
** Web Banking&lt;br /&gt;
** eCommerce&lt;br /&gt;
** Web advertisements&lt;br /&gt;
&lt;br /&gt;
* For better protection against cyber attacks:&lt;br /&gt;
** DoS and DDos&lt;br /&gt;
** Forgery and theft&lt;br /&gt;
** Sniffing private traffic&lt;br /&gt;
** Distributing illegal content/malware&lt;br /&gt;
** Sending spam&lt;br /&gt;
** Illegal/undesired intrusion&lt;br /&gt;
&lt;br /&gt;
*For marketing purposes (privacy?)&lt;br /&gt;
** custom (client-based) content generation&lt;br /&gt;
&lt;br /&gt;
==Why is it difficult to achieve attribution?==&lt;br /&gt;
&lt;br /&gt;
The main problem I see is that the way Internet is designed makes it possible and relatively easy to act without compromising identity. Moreover, most current solutions are  based on the same structure and work within the same scope, thus, can only reduce the number of potentially destructive acts or just deal with the consequences.  Of course, no system can prevent 100% of destructive attempts, but some potentially good attribution system should make such attempts highly undesirable and &amp;quot;costly&amp;quot; for an attacker.&lt;br /&gt;
&lt;br /&gt;
*The issue of lack of attribution on the web mostly arises whenever security is compromised. When you&#039;re bombarded with spam, or when a system is under a DoS attack attribution becomes a more appealing notion. Getting a balance between security and privacy is tricky, because once attacks are tracked so will all other traffic. &lt;br /&gt;
*Depending on the type of sender and receiver, different attribution policy will be requested.&lt;br /&gt;
&lt;br /&gt;
In the ideal world, every action on the internet could be bound to a machine and thus to a person. This is done by examining the source IP printed on each moving packet, locating the geographical location of this IP, consulting the ISP covering the location and identifying the person. If an act requires strict attribution (like checking and sending emails), authentication is used. &amp;lt;b&amp;gt;Here is what goes wrong&amp;lt;/b&amp;gt;:&lt;br /&gt;
* IP addresses can be &amp;lt;b&amp;gt;spoofed&amp;lt;/b&amp;gt; and hence, misleads the geographical location.&lt;br /&gt;
* For avoiding that problem, &amp;lt;b&amp;gt;IP traceback&amp;lt;/b&amp;gt; can be performed BUT it requires global cooperation of intermediate systems... it is not there!&lt;br /&gt;
* IPs are &amp;lt;b&amp;gt;not permanently bound&amp;lt;/b&amp;gt; to personnel, so figuring out the person from the IP is not concrete.&lt;br /&gt;
* Network users are &amp;lt;b&amp;gt;not aware of all packets sneaking&amp;lt;/b&amp;gt; to their machines, which allows for malware distribution and hence, the creation of botnets... misleading attribution!&lt;br /&gt;
* &amp;lt;b&amp;gt;Firewalls&amp;lt;/b&amp;gt; and packet filters can be used for avoiding that problem, but they are not 100% efficient.&lt;br /&gt;
* It is not applicable to &amp;lt;b&amp;gt;authenticate&amp;lt;/b&amp;gt; every single action on the internet.&lt;br /&gt;
&lt;br /&gt;
===Attacks to prevent correct attribution of actions===&lt;br /&gt;
&lt;br /&gt;
* Stepping stone attack: a common way of attributing attacks to anonymity by using multiple public random agents (as stepping stones) to reach the victim in order to conceal the attacking source. &amp;lt;ref name=&amp;quot;ref1&amp;quot;&amp;gt;S. Staniford-Chen and L. T. Heberlein. Holding intruders accountable on the internet. In SP ’95: Proceedings of the 1995 IEEE Symposium on Security and Privacy, page 39, Washington, DC, USA, 1995. IEEE Computer Society.&amp;lt;/ref&amp;gt;&lt;br /&gt;
* Forgery&lt;br /&gt;
** Identity theft (impersonation)&lt;br /&gt;
** Distribution of malware&lt;br /&gt;
&lt;br /&gt;
=Requirements for internet attribution system=&lt;br /&gt;
&lt;br /&gt;
It is hard to describe some hypothetical attribution system in detail, because there are many issues and complicated dependencies, and a lot of questions to answer or at least to try to answer before one can even think of implementing such a system. In this section we are trying to define high-level requirements for a good attribution system, while definition of good attribution system is not so clear, we take into account everything we have talked above. That is, the following requirements try to define the system in a way that avoids current problems, yet remains realistic. &lt;br /&gt;
&lt;br /&gt;
We have separated those requirements in three sections: general requirements define the idea and overall goal of the system in high level, abstract terms. Deployment requirements set ground rules for deployability that makes sense in such a huge network as internet. Practice requirements define the way system works, behaves and interacts with other bodies.&lt;br /&gt;
&lt;br /&gt;
==General==&lt;br /&gt;
&lt;br /&gt;
First and most obvious requirement for any system is usually put for sake of consistency, rather than useful information, so we shall not avoid this notion neither: main requirement for internet attribution system is that it needs to attribute, or, more formally, any potentially destructive act should be traceable to an agent (person and/or organization, group, etc). It is important to consider different natures of agents, because the goal of attribution system is not necessarily to narrow down the search to one particular person, but rather to find the body responsible for an act(s) regardless of their actual structure. It might be one person after all. In other words, even though actions are done mostly by a single person, they are not necessarily the ones who&#039;s responsible for a decision to do so. A good real world analogy is an assassin and some body (person or a group) paying him. Good attribution system should not lead to assassin alone, but rather should be designed the way that responsible bodies are the ones to be discovered. Yet, we accept the notion that by the end of the day there is some person or several persons, human brings, responsible for an action. It is essential, because, as practice shows, for example, determining the source of DoS-attack is relatively simple, but most of the time this source is not the one who is responsible, but rather a victim itself.&lt;br /&gt;
&lt;br /&gt;
It is easy to imagine a system in which less crime and misuse is the only acceptable way to do things, and many writers and movie directors exploit this idea in futuristic, science fiction and anti-utopian plots. Unfortunately, applying any of this sort of ideas to real world today is not possible, because a lot of laws and moral principles are already in place, some of which are not perfect, but widely accepted and most have reasons to exist. Attribution system that we&#039;re looking for should take legal and moral issues into account, naturally, should not violate and/or contradict any of them. This important requirement comes somewhat together with incremental deployability that we&#039;re going to discuss later.&lt;br /&gt;
&lt;br /&gt;
In general, an attribution system should be universal and global, and details of these terms will be added later.&lt;br /&gt;
&lt;br /&gt;
==Deployment==&lt;br /&gt;
It is relatively easy to just design a system, it is much harder to design a system, deployment of which need not be instant and massive. Even though a global attribution system will have a lot of pressure on it, internet should not depend on it entirely and in case attribution system goes down, underlying network should still remain functional. In other words, attribution system should be loosely coupled to the system it works in. &lt;br /&gt;
&lt;br /&gt;
As discussed before, (and this could be said about any global system on the internet) such a system should be incrementally deployable, so that smooth, step-by-step, subnetwork-by-subnetwork integration is possible. This is important not only because of virtual impossibility to restart or reconfigure the whole internet at once. This incremental way of embedding an attribution system should be more secure (bugs in software and mistakes in design can be fixed while on a small scale), so that by the end of cycle, when the whole internet is wired, the attribution system is field-tested and analyzed several times by different bodies. &lt;br /&gt;
&lt;br /&gt;
Very important, but controversial subject, is adoption of the system within some set of rules or laws (state laws, government regulations, corporate rules and principles, etc.). System should allow easy adoption for different cases, at the same time it should remain universal and global. It should act like a public tool any group can use, but nobody should be able to misuse it or use in non-legal way. The big decision designers will have to make is the one regarding this line between dynamic adoptability and universality. Luckily, this sort of deepness goes beyond the scope of our paper.&lt;br /&gt;
&lt;br /&gt;
Companies and organizations sometimes loose millions of dolars due to attacks and other cyber-crimes done to them, and some issues can be dealt with by spending more resources (memory, bandwidth on servers, etc), or, in other words, spending more money. The overall cost of setting up and maintaining the attribution system for a particular body (person, organization, network) should be considerably less than average losses under current lack of attribution (e.g. DoS, identity theft, etc).&lt;br /&gt;
&lt;br /&gt;
==Practice==&lt;br /&gt;
&lt;br /&gt;
Attribution mapping should not be a bijection, in other words action should map to person, but not vice versa. That it, nobody should be able to use the system to answer the question &amp;quot;what person X did/does?&amp;quot;. Not only the system should not know the answer, it should not be possible to know the answer; the question &amp;quot;who did act X&amp;quot; is the one should be answered. This can be thought of as part of requirement about not violating current laws and moral principles, but is put as a separate requirement, since it is very important to draw a line between attribution system and surveillance. The goal is not only to make attribution system attribute, but also to make it impossible to use it in other way – for surveillance, spying, etc.&lt;br /&gt;
&lt;br /&gt;
Since this global system operates on the internet, it might not be a great idea to put names of persons into traceability database. It makes much more sense to put some unique IDs for any body, who uses the network, and in case a crime committed, or, in general, it is a case where an agent of some act should be determined, recorded ID will be searched for in police or government database. It should be some trusted entity (government, corporation, police, some public good-like system, etc) that stores the mapping between IDs and real names. This mapping should only be revealed when needed and when there is enough evidence or motivation to do so. Traceability information (namely, unique iDs) should be distributed and it is crucial to make it impossible to collect all the information in one place.&lt;br /&gt;
&lt;br /&gt;
Of course, it is not always the case that some trusted (by everyone) body exists, but generally we have governments and/or agencies we trust. It is important to divide the information between public and trusted body in a way allowing them to cooperate in time of need and not allowing to misuse the system from any side.&lt;br /&gt;
&lt;br /&gt;
=Proposed Framework=&lt;br /&gt;
In this section, we will propose a potential framework and argue that it is able to fulfill the requirements listed in the former section. The proposed framework works under the core principle &amp;quot;An act cannot use network resources nor can it be routed if it is anonymously bound&amp;quot;. Firstly, we start by defining some terminologies that will be used within the scope of this section:&lt;br /&gt;
* &amp;lt;i&amp;gt;Agent&amp;lt;/i&amp;gt; (Ag): the human-device pairing that sits on an end system and keeps transmitting/receiving packets.&lt;br /&gt;
* &amp;lt;i&amp;gt;Identification Stamp&amp;lt;/i&amp;gt; (IS): a series of bits that binds a human unique identification (iris intricate structure or fingerprint) with a unique feature of an access-capable device. So, for a device like a Network Interface Card, the MAC address would be that feature. This biding is a particular representation for the official owner of the device, and who is deemed the primary responsible for any outgoing packet launched by his owned device. In other words, it is a unique identifier for an agent.&lt;br /&gt;
* &amp;lt;i&amp;gt;Intermediate System Services&amp;lt;/i&amp;gt; (ISS): Services provided by intermediate systems (routers). For e.g., routing (main service), error checking, etc.&lt;br /&gt;
* &amp;lt;i&amp;gt;Licensing&amp;lt;/i&amp;gt;: a process of giving the permission to intermediate systems to provide ISS to all packets that are launched from the agent that is requesting the license.&lt;br /&gt;
* &amp;lt;i&amp;gt;Machines/Devices&amp;lt;/i&amp;gt; (Md): any piece of hardware that has access capability. It can either be a PDA, a laptop, a notebook, a PC, an NIC, or even a mere home made chip that can externally communicate wired or wireless to send or receive digital packets.&lt;br /&gt;
&lt;br /&gt;
In principle, every leaping packet has a human owner that is either directly or indirectly responsible for it. Directly responsible when he is running an application that sends requests or initiates communication sessions to another end system. E.g., using the client side of application supporting the protocols: HTTP, FTP, SIP, RTP, VoIP, etc. Indirect responsibility is when a user is a running a system in the background that performs external (over the internet) system calls (global clock synchronization ) or is automated for periodic communication or automatic response to incoming requests. E.g., NTP, or the server side of the protocols: HTTP, FTP, etc. In addition, indirect responsibility also includes the responsibility of all packets launched by lower layer protocols that are being manipulated by higher layer ones. E.g., TCP connection initiation packets and handshaking, ICMP packets that aims to seek and identify that status of a specific host, etc.&lt;br /&gt;
&lt;br /&gt;
The scope of this framework only addresses attribution over the internet and not any other &amp;quot;locally&amp;quot; defined networks underlying the IEEE standard definitions of the topologies PAN, LAN, MAN, or a WAN that are do not user the global intermediate systems as their underlying infrastructure for packet delivery.&lt;br /&gt;
&lt;br /&gt;
The following sections show the assumptions for this framework to operate, the methodology of its operation, a list of pros, cons and vulnerabilities of the system and wrap up by a discussion on the tradeoff between privacy and attribution regarding the proposed framework.&lt;br /&gt;
==Assumptions==&lt;br /&gt;
For starters, this frame work assumes the presence of a globally trustful entity(s) (e.g., government). This entity may either be centralized or distributed. A centralized entity would be easier to deploy, but it will suffer from a single point of failure. A distributed entity would obviously perform better as it will be able to scale with the growth of the system users as well as conform to diverse regional laws, regulations, customs and traditions. However, a standard protocol would be required to define the syntax and semantics as well as the nature of the way these distributed sub-systems would communicate.&lt;br /&gt;
&lt;br /&gt;
Second, we assume that a DNS-like world-wide distributed system is deployed. This system acts as a &amp;quot;database&amp;quot; for storing &amp;quot;identification stamps&amp;quot;. Symmetric key encryption should be used to protect that system as it will only be accessed through two types of users. Routers, which should be able to access this database ONLY for read operations. And the trustful entity (defined in the previous assumption) which should be able to access ONLY for write operations. Both users must be strictly authenticated, for being able to decrypt the contents or to append. In addition, this distributed system must guarantee almost zero latency in the read operations as it will be heavily relied on for every single hop made by a packet at the Internet intermediate system.&lt;br /&gt;
&lt;br /&gt;
Thirdly, we assume that the owning relationship between persons and machines is one-to-many. That is to say, a person can officially own one or more machines but a machine can only be owned by one person.&lt;br /&gt;
&lt;br /&gt;
Finally, our proposed frame work assumes that within the frame format of the IP packets, a header is added by the network layer that includes the &amp;quot;identification stamp&amp;quot; of the packet owner. A packet owner is the person PLUS the machine that are together responsible for launching this packet.&lt;br /&gt;
&lt;br /&gt;
==Methodology==&lt;br /&gt;
Basically, this framework works by stalling the propagation of a packet that is either unattributed or forged with a fake identification stamp. A &amp;quot;fake identification stamp&amp;quot; is defined as:&lt;br /&gt;
* Either having a false unique chip identifier that refers to an imaginary device.&lt;br /&gt;
* Or having a false unique human identifier that refers to an imaginary human.&lt;br /&gt;
* Or having a misleading binding of a human to a machine. i.e., claiming that some machine &amp;quot;X&amp;quot; belongs to some human &amp;quot;Y&amp;quot;, but in reality, &amp;quot;Y&amp;quot; is not the owner of &amp;quot;X&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Noticeably, the routers, as primary constituents to the intermediate systems, should refrain from routing any data packets that are not fully attributed. As they are the main driving power behind delivering all malicious or benign packets, they should have great responsibility in achieving highly reliable attribution mechanism.&lt;br /&gt;
&lt;br /&gt;
A description of the system, based on the chronological order, is as follows. First, any newly bought machine or even a home made device, must be licensed from the trustful entity. The trustful entity access the globally distributed database of &amp;quot;identification stamps&amp;quot; and adds the new identification stamp of the agent that asked for license. If a device is not licensed (i.e., its &amp;quot;identification stamp&amp;quot; was not inserted to the distributed database), it doesn&#039;t not benefit from ISS.&lt;br /&gt;
&lt;br /&gt;
From the intermediate system&#039;s perspective, when a router receives a packet, it verifies its IS. This is done by consulting the GDDB and sending it a copy of the IS found on the packet. If a packet founds to be not having an IS, the packet is prevented from benefiting from ISS and is simply dropped. If the GDDB replies with an invalid IS, again, the packet is dropped. If the GDDB replies with a success, this will mean that the packet&#039;s printed IS is verified. Thus, the packet benefits from the ISS and gets routed throughout the way.&lt;br /&gt;
&lt;br /&gt;
==Pros, Cons and Vulnerabilities==&lt;br /&gt;
Obviously, the proposed framework&#039;s main focus is to ensure that any leaping packet is moving because it is known who does it belong to. If not, it is prevented from locomotion.&lt;br /&gt;
&lt;br /&gt;
- delays and bottlenecks due to licensing system at the routers for consulting the distributed system.&lt;br /&gt;
- restrictive assumptions (not easily deployable)&lt;br /&gt;
- different regulative flavors&lt;br /&gt;
- Custom content generation (not found)&lt;br /&gt;
- Public PCs (in labs...), bound to whom?&lt;br /&gt;
- Full awareness of users with their systems&lt;br /&gt;
+ attribution&lt;br /&gt;
+ attack avoidance&lt;br /&gt;
+ attribution not available to anyone&lt;br /&gt;
+ automated. services are either stopped or continued.&lt;br /&gt;
+ avoids attacks: DDoS, DoS, ...&lt;br /&gt;
+ Privacy&lt;br /&gt;
V Botnets&lt;br /&gt;
V attack on the distributed system which would cause whole system failure.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Privacy and Attribution Tradeoff==&lt;br /&gt;
The human nature refuses any change in the first sight. But, as with cars, they first started without the need for licensing, and then, it licensing systems were applied afterwards. People got used to it slowly then thoroughly.&lt;br /&gt;
&lt;br /&gt;
=Conclusion=&lt;br /&gt;
&lt;br /&gt;
=References=&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;/div&gt;</summary>
		<author><name>Omi</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=A_link_to_the_paper&amp;diff=9262</id>
		<title>A link to the paper</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=A_link_to_the_paper&amp;diff=9262"/>
		<updated>2011-04-11T03:37:20Z</updated>

		<summary type="html">&lt;p&gt;Omi: /* Background */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Title=&lt;br /&gt;
Proposed titles:&lt;br /&gt;
* Requirements for Attribution on the Internet&lt;br /&gt;
* Internet Attribution: Between Privacy and Cruciality&lt;br /&gt;
&lt;br /&gt;
=Abstract=&lt;br /&gt;
Present and past situations show a need for improved attribution systems, and arguably, scientific basis for properly functioning attribution systems are not yet defined. Lots of research have been focusing on attributing documents to authors for the sake of securing authorship rights and rapid identification of plagiarism. Many of those were revolving around the notion of using machine learning for linking articles to humans. Others proposed text classification and feature selection as a mean of detecting the author of a document. Unfortunately, not that much research is addressing the problem of lack of robust attribution system over the internet. Authentication, as a mean of attribution, has proved its efficiency but, needless to say, it is not applicable to authenticate every single packet hopping over the intermediate systems. This paper presents limits and advances in the attribution of actions to agents over the internet. It reviews current attribution technologies as well as the limits of those technologies. It also identifies the requirements of a proper attribution system and proposes a distributed (yet cooperative) approach for performing attribution over the internet.&lt;br /&gt;
&lt;br /&gt;
=Introduction=&lt;br /&gt;
Currently the Internet infrastructure provides users partial anonymity. Unfortunately, that anonymity weakens the security for its users, because it incites advance users to exploit that feature. The lack of online identification married with bad intentions entices criminals to commit a number of &amp;lt;i&amp;gt;Cyber Crimes&amp;lt;/i&amp;gt; without being caught, crimes which include: fraud, theft, forgery, impersonation, the distribution of Malware (and hence, botnets), traffic tampering, DoS, bandwidth hogging, etc. Consequently, internet attribution is a highly sensitive field that constitutes a cornerstone position within internet security. Needless to say, current solutions don&#039;t guarantee sufficient attribution nor are considered always applicable in most of the time, hence, current system suffers the lack of a relatively robust attribution mechanism. In the light of this context, we need better methodologies for reaching an acceptable success level for attributing actions to persons.&lt;br /&gt;
&lt;br /&gt;
In principle, attribution can be defined as the mechanism of binding a system-defined act to an agent. An agent is typically an entity that has the ability to commit what constitutes an act. Within our focus, an agent could either be a person or a machine. It can also be defined as &amp;quot;determining the identity or location of an attacker or an attacker’s intermediary&amp;quot;&amp;lt;ref&amp;gt; [Institute for Defense Analyses, 2003]&amp;lt;/ref&amp;gt;. Problems like IP address spoofing, lack of interoperability in intermediate systems, dynamic nature of IP addresses, unawareness of system users with lots of &amp;lt;i&amp;gt;unknown&amp;lt;/i&amp;gt; packets sneaking to their machines and poor efficiency of firewalls and IDSs make this determination operation considerably difficult. In addition, some types of attacks are carried out to conceal the real agent behind an act. For instance, malware distribution (and hence the creation of botnets), and stepping stones aim to inflict vagueness around the correct &amp;lt;i&amp;gt;human&amp;lt;/i&amp;gt; source behind the scene.&lt;br /&gt;
&lt;br /&gt;
In this paper, we focus on defining what it takes to achieve an acceptably working attribution mechanism over the internet. To do that, we review past research works in attribution and discuss their common limitations as well as flaws and what can be done in common to enhance such schemes. We also argue that the lack of a globally deployed registration system that registers system users and grants them LICENSED access to the system enfeebles proper attribution and motivates illegitimate intrusions and irregular behavior. We show that employing the mentioned system would reduce the incentive of irregular behavior as well as remove the blaze of tempting anonymity, putting attackers under the risk of being easily caught. We also discuss how privacy, as a counter force to attribution, plays a big role in the internet and within its users and propose a framework that achieves relatively robust attribution mechanism and retains the privacy of users.&lt;br /&gt;
&lt;br /&gt;
Much of the research done in literature focuses on attribution that is done for keeping track of authorship, i.e., attributing text to authors. In this paper, we don&#039;t question the cruciality of attribution in this field, but rather we address a higher level of attribution of all possible actions to agents, which is sadly deemed slightly obsolete from the current research perspective.&lt;br /&gt;
&lt;br /&gt;
This paper starts by a quick discussion on the dilemma of attribution, resolving the tension between attribution and privacy. Consequently, section 3 argues about the reasons behind the essentiality of implementing proper attribution systems. Section 4 presents a fundamental set of requirements for achieving an acceptable level of attribution over the internet as well as proposes an abstract framework for achieving attribution. In section 5, a review on the currently implemented systems that achieve attribution is presented as well as flaws and points of failure of the surveyed papers. In section 6, the reasons behind the difficulty of achieving a proper attribution system. And finally, a conclusion is presented in section 7.&lt;br /&gt;
&lt;br /&gt;
==What is Attribution==&lt;br /&gt;
&#039;&#039;The act of attributing, especially the act of establishing a particular person as the creator of a work of art.&#039;&#039;&amp;lt;ref&amp;gt; The American Heritage® Dictionary of the English Language, Fourth Edition copyright ©2000 by Houghton Mifflin Company. Updated in 2009. Published by Houghton Mifflin Company.&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
We are concerned with one particular type of attribution - binding an act to a person. This may include intermediate attributions, for example, an act to an agent (software, device, etc.) and then attribution of an agent to person. Narrowing the problem further, we&#039;re only concerned about attribution in large, dynamic networks, like internet. For sake of simplicity, in this paper we&#039;re going to reference to &amp;quot;binding an act to a person on the internet&amp;quot; as &amp;quot;attribution&amp;quot;, while other types of attributing will be defined separately.&lt;br /&gt;
&lt;br /&gt;
==Problem Statement==&lt;br /&gt;
The anonymity of the Internet makes it virtually impossible most of the time to properly identify who is who online. This is a double-ended sword as it not only provides a high level of privacy, but also makes it hard to identify people with malicious intent and cyber attackers.&lt;br /&gt;
&lt;br /&gt;
==Problem Motivation==&lt;br /&gt;
In todays world there grows a strong need for attribution over the Internet mainly due to increased numbers of cyber attacks since its introduction in the 90’s. Many attackers have succeeded in causing both physical and financial damage to many companies over the Internet and going Scott free; due to the anonymity of the Internet, the attackers cannot be identified.&lt;br /&gt;
&lt;br /&gt;
==Scope==&lt;br /&gt;
In this paper we are addressing the issue of attribution by providing a list of requirements that need to be met in order to have a fully stable and efficient attribution system over the Internet.&lt;br /&gt;
&lt;br /&gt;
Although this is not a technical paper, in order to fully understand some of the concepts and terminology within this paper, a small knowledge of computer science or computer systems will be required. &lt;br /&gt;
&lt;br /&gt;
=Background=&lt;br /&gt;
&lt;br /&gt;
The problem of attribution is not one that just came up; it has been around fro decades but mostly to address identification issues as it pertained to websites or Internet service providers. A lot of different approaches towards attribution have been taken but mainly just to the extent of what that particular system stems to achieve. &lt;br /&gt;
This section gives an introduction to three of todays current attribution systems and discusses their pros and cons as they pertain to the type of global attribution we discuss in this paper.&lt;br /&gt;
&lt;br /&gt;
==Cookies==&lt;br /&gt;
Websites will sometimes need to remember information about a visit or a visitor in order to improve viewer experience. Cookies are text files that are created by a web server, and stored by a web browser on the users computer. Cookies are used for many reasons; mainly authentication, remembering shopping cart information, and storing site preference. In actuality, they can be used to store any type of information that can be stored in a text file. When a page is requested the users web browser sends the request with the webserver’s cookie in the header part of the packet. All this is an automated process between the web browser and web server.  &lt;br /&gt;
&lt;br /&gt;
If at all the webserver receives a request without a cookie attached to it, it takes it as the first access that the browser is making to the server and sends one as part of the response which will be saved by the browser and resent on the next request. Cookies are usually encrypted in order for data security and information privacy, however they are still subject to the users control as they can be decrypted, modified and even deleted completely. It is also possible for a user to change their browser setting to not accept cookies at all. &lt;br /&gt;
&lt;br /&gt;
Cookies can either have an expiration date or not; this is the date that the browser deletes the cookie. Cookies without an expiration date are deleted when the browser is closed. Some browsers allow you to automatically set how long you want cookies to be stored.&lt;br /&gt;
&lt;br /&gt;
===Cookies as an Attribution System===&lt;br /&gt;
Looking at cookies as the type of attribution system we are looking for over the Internet, we will be able to achieve high precision on identifying computers that access a web server. However, The biggest draw back cookies have is that they can be deleted and manipulated. As such the use of cookies is not an effective attribution system. &lt;br /&gt;
&lt;br /&gt;
==IP Addresses==&lt;br /&gt;
IP or Internet Protocol Addresses are 32 bit numerical identifiers for devices (ie computer, printer, scanner etc..) on a network. The users Internet Service Provider (ISP) provide this number. The Internet Assigned Numbers Authority (IANA) is responsible for managing IP Address space allocation globally. It does this with the help of five Regional Internet registries (RIRs), responsible for allocating IP address blocks to their assigned regions ISPs, who in turn allocates them to their users.&lt;br /&gt;
&lt;br /&gt;
Any device that goes online and communicates using IP needs an IP address. Over the years there has been a growing number of users going online and a number of devices owned by the users to go online. One of the more common examples of this is the increase of Internet ready mobile phones. Our current addressing system used by our current Internet Protocol Version 4 (IPv4) contains only 32bits which means it is only able to uniquely address 232 addresses (4,294,967,296) which is less that the number of people on this planet today. The very last batch of IP addresses was assigned out to the five RIRs early February 2011 [1]. This was foreseen since the 90s, which sprung the development of a new Internet Protocol version, IPv6, which uses a 128bit addressing system began. &lt;br /&gt;
&lt;br /&gt;
IP addresses can either be static or dynamic. Static IP address is an address permanently assigned to a user due to configuration. A dynamic IP address is one in which a new address is assigned at every boot up. A Dynamic Host Configuration Protocol (DHCP) Server is usually responsible for assigning dynamic IP addresses to users. There are two main advantages for dynamic addressing; it eliminates the administrative cost involved with assigning static IP addresses, and it helps solve the issue of limited addressing space by allowing many devices “share” a single address if they go online at different times. Given the limited addressing space the ISPs have to work with, and to save administration costs, most ISPs assign dynamic IP addresses as standard a offer static IP address for a higher fee. &lt;br /&gt;
&lt;br /&gt;
===IP Addresses as an Attribution System===&lt;br /&gt;
Although Internet addresses can be used to attribute packets to its sender, it will fail as an effective attribution system for a few reasons, but mainly that attackers can spoof their IP addresses. Spoofing IP addresses will even foil the efforts of IP trace backs.&lt;br /&gt;
&lt;br /&gt;
==Authentication Systems==&lt;br /&gt;
In order for a website to make sure of the identity of who ever is visiting some pages, it provides an authentication system. This is usually a login name and password either assigned by the web server or chosen by the user. The biggest advantage this has is that now, attribution can be performed across different computers. The task of storing and securing login information is left to the web server, which is subject to attackers hacking into the server to stealing login information. &lt;br /&gt;
&lt;br /&gt;
Login systems are attached to user accounts that sometime require private information in order to be setup. If the web server’s security is not good enough, security breeches may in turn lead to identity theft. &lt;br /&gt;
&lt;br /&gt;
 The process behind authentication systems is simple; using a typical web banking authentication system for instance, the process may go as follows. A user requests for a web account or one is automatically assigned to the user. The user sets up a password for accessing the account. When the user now goes to the website he is requested to “identify himself”, the user enters in his personal login information, the web server verifies this information with what it has stored in its database and either grants or denies access to the users personal page. &lt;br /&gt;
&lt;br /&gt;
Authentication systems are only ever used when it involves the users wanting some privacy on the webserver, or when the user wishes to store some form of information on the web server. &lt;br /&gt;
&lt;br /&gt;
===Authentication Systems as an Attribution System===&lt;br /&gt;
Authentication systems are very precise in the identification of people over the Internet and as such used by many companies. However it will have a serious privacy drawback if it were to be used as a global identification system. It will mean that virtually every web server will need to hold enough information about you to be able to identify you as an attacker. This would mean that to even a user randomly search for a cooking recipe online would need to login somehow to access the web server. People generally like the anonymity of surfing the web and a system like this will completely destroy this.&lt;br /&gt;
&lt;br /&gt;
=The attribution dilemma=&lt;br /&gt;
&lt;br /&gt;
Designing an attribution system is not a trivial task, because, regardless of technologies and/or infrastructure available, one needs to consider controversial question of balancing between strong attribution and privacy. This hypothetical line between attribution and privacy is not straight, and crucially depends on application. For instance, large financial institutions as well as its clients are interested in strong attribution system, which would solve many authorization and authentication problems, as well as will guarantee (to some degree) that agents of transactions are who they claim they are. On the other hand, political dissidents and whistle-blowers do exist primarily because there is no 100% effective attribution system in place and it is possible for them to distribute information (regardless of actual usefulness or goodness of it) and keep their identity secret. It is clear that single universal set of rules cannot satisfy these two cases. It is also clear that, in pretty abstract fashion, privacy is inversely proportional to attribution. While designing an attribution system one needs not only to decide on this ration for some particular case, but rather make this ratio dynamically changed depending on the case.&lt;br /&gt;
&lt;br /&gt;
Assuming this ratio is found, another question is when to decide to use private information to track or punish a person, as to directly intrude their privacy? One might think that this question is a little bit out of the scope of our paper. This is true, however, these and a lot of less obviously related questions should be answered prior to designing, because in such an important thing as protection and privacy, designing of solution should not make too many assumptions and should guarantee something not only to operators of the system, but for users as well. In other words, even though system should be dynamic and adaptable to all potential use cases, it should remain universal to some extent and guarantee some law-related and moral principles.&lt;br /&gt;
&lt;br /&gt;
(here go other questions. will show connection to requirements)&lt;br /&gt;
&lt;br /&gt;
* While designing an attribution system one needs to consider balancing between attribution and privacy. &lt;br /&gt;
**Sometimes non-attribution is very crucial,to protect political dissidents and whistle-blowers &lt;br /&gt;
* When to decide to track a person and when not to (so as not to intrude privacy)?&lt;br /&gt;
* How to make sure attribution is properly achieved?&lt;br /&gt;
* Who should attribute who/what and why?&lt;br /&gt;
* How far can we trust IP-traceback, stepping stone authentications, link identifications and packet filtering in wedging packets to agents?&lt;br /&gt;
* How much can intermediate systems&#039; cooperation contribute to achieving attribution?&lt;br /&gt;
* Should there be consequences upon attributing an action(s) to an agent? What are they? (punishment, rewarding, etc)&lt;br /&gt;
* How to deal with misleading data sources hiding behind botnets and concealing identities via stepping stones?&lt;br /&gt;
&lt;br /&gt;
==Why do we need Attribution==&lt;br /&gt;
&lt;br /&gt;
* For identifying purposes&lt;br /&gt;
** Web Banking&lt;br /&gt;
** eCommerce&lt;br /&gt;
** Web advertisements&lt;br /&gt;
&lt;br /&gt;
* For better protection against cyber attacks:&lt;br /&gt;
** DoS and DDos&lt;br /&gt;
** Forgery and theft&lt;br /&gt;
** Sniffing private traffic&lt;br /&gt;
** Distributing illegal content/malware&lt;br /&gt;
** Sending spam&lt;br /&gt;
** Illegal/undesired intrusion&lt;br /&gt;
&lt;br /&gt;
*For marketing purposes (privacy?)&lt;br /&gt;
** custom (client-based) content generation&lt;br /&gt;
&lt;br /&gt;
==Why is it difficult to achieve attribution?==&lt;br /&gt;
&lt;br /&gt;
The main problem I see is that the way Internet is designed makes it possible and relatively easy to act without compromising identity. Moreover, most current solutions are  based on the same structure and work within the same scope, thus, can only reduce the number of potentially destructive acts or just deal with the consequences.  Of course, no system can prevent 100% of destructive attempts, but some potentially good attribution system should make such attempts highly undesirable and &amp;quot;costly&amp;quot; for an attacker.&lt;br /&gt;
&lt;br /&gt;
*The issue of lack of attribution on the web mostly arises whenever security is compromised. When you&#039;re bombarded with spam, or when a system is under a DoS attack attribution becomes a more appealing notion. Getting a balance between security and privacy is tricky, because once attacks are tracked so will all other traffic. &lt;br /&gt;
*Depending on the type of sender and receiver, different attribution policy will be requested.&lt;br /&gt;
&lt;br /&gt;
In the ideal world, every action on the internet could be bound to a machine and thus to a person. This is done by examining the source IP printed on each moving packet, locating the geographical location of this IP, consulting the ISP covering the location and identifying the person. If an act requires strict attribution (like checking and sending emails), authentication is used. &amp;lt;b&amp;gt;Here is what goes wrong&amp;lt;/b&amp;gt;:&lt;br /&gt;
* IP addresses can be &amp;lt;b&amp;gt;spoofed&amp;lt;/b&amp;gt; and hence, misleads the geographical location.&lt;br /&gt;
* For avoiding that problem, &amp;lt;b&amp;gt;IP traceback&amp;lt;/b&amp;gt; can be performed BUT it requires global cooperation of intermediate systems... it is not there!&lt;br /&gt;
* IPs are &amp;lt;b&amp;gt;not permanently bound&amp;lt;/b&amp;gt; to personnel, so figuring out the person from the IP is not concrete.&lt;br /&gt;
* Network users are &amp;lt;b&amp;gt;not aware of all packets sneaking&amp;lt;/b&amp;gt; to their machines, which allows for malware distribution and hence, the creation of botnets... misleading attribution!&lt;br /&gt;
* &amp;lt;b&amp;gt;Firewalls&amp;lt;/b&amp;gt; and packet filters can be used for avoiding that problem, but they are not 100% efficient.&lt;br /&gt;
* It is not applicable to &amp;lt;b&amp;gt;authenticate&amp;lt;/b&amp;gt; every single action on the internet.&lt;br /&gt;
&lt;br /&gt;
===Attacks to prevent correct attribution of actions===&lt;br /&gt;
&lt;br /&gt;
* Stepping stone attack: a common way of attributing attacks to anonymity by using multiple public random agents (as stepping stones) to reach the victim in order to conceal the attacking source. &amp;lt;ref name=&amp;quot;ref1&amp;quot;&amp;gt;S. Staniford-Chen and L. T. Heberlein. Holding intruders accountable on the internet. In SP ’95: Proceedings of the 1995 IEEE Symposium on Security and Privacy, page 39, Washington, DC, USA, 1995. IEEE Computer Society.&amp;lt;/ref&amp;gt;&lt;br /&gt;
* Forgery&lt;br /&gt;
** Identity theft (impersonation)&lt;br /&gt;
** Distribution of malware&lt;br /&gt;
&lt;br /&gt;
=Requirements for internet attribution system=&lt;br /&gt;
&lt;br /&gt;
It is hard to describe some hypothetical attribution system in detail, because there are many issues and complicated dependencies, and a lot of questions to answer or at least to try to answer before one can even think of implementing such a system. In this section we are trying to define high-level requirements for a good attribution system, while definition of good attribution system is not so clear, we take into account everything we have talked above. That is, the following requirements try to define the system in a way that avoids current problems, yet remains realistic. &lt;br /&gt;
&lt;br /&gt;
We have separated those requirements in three sections: general requirements define the idea and overall goal of the system in high level, abstract terms. Deployment requirements set ground rules for deployability that makes sense in such a huge network as internet. Practice requirements define the way system works, behaves and interacts with other bodies.&lt;br /&gt;
&lt;br /&gt;
==General==&lt;br /&gt;
&lt;br /&gt;
First and most obvious requirement for any system is usually put for sake of consistency, rather than useful information, so we shall not avoid this notion neither: main requirement for internet attribution system is that it needs to attribute, or, more formally, any potentially destructive act should be traceable to an agent (person and/or organization, group, etc). It is important to consider different natures of agents, because the goal of attribution system is not necessarily to narrow down the search to one particular person, but rather to find the body responsible for an act(s) regardless of their actual structure. It might be one person after all. In other words, even though actions are done mostly by a single person, they are not necessarily the ones who&#039;s responsible for a decision to do so. A good real world analogy is an assassin and some body (person or a group) paying him. Good attribution system should not lead to assassin alone, but rather should be designed the way that responsible bodies are the ones to be discovered. Yet, we accept the notion that by the end of the day there is some person or several persons, human brings, responsible for an action. It is essential, because, as practice shows, for example, determining the source of DoS-attack is relatively simple, but most of the time this source is not the one who is responsible, but rather a victim itself.&lt;br /&gt;
&lt;br /&gt;
It is easy to imagine a system in which less crime and misuse is the only acceptable way to do things, and many writers and movie directors exploit this idea in futuristic, science fiction and anti-utopian plots. Unfortunately, applying any of this sort of ideas to real world today is not possible, because a lot of laws and moral principles are already in place, some of which are not perfect, but widely accepted and most have reasons to exist. Attribution system that we&#039;re looking for should take legal and moral issues into account, naturally, should not violate and/or contradict any of them. This important requirement comes somewhat together with incremental deployability that we&#039;re going to discuss later.&lt;br /&gt;
&lt;br /&gt;
In general, an attribution system should be universal and global, and details of these terms will be added later.&lt;br /&gt;
&lt;br /&gt;
==Deployment==&lt;br /&gt;
It is relatively easy to just design a system, it is much harder to design a system, deployment of which need not be instant and massive. Even though a global attribution system will have a lot of pressure on it, internet should not depend on it entirely and in case attribution system goes down, underlying network should still remain functional. In other words, attribution system should be loosely coupled to the system it works in. &lt;br /&gt;
&lt;br /&gt;
As discussed before, (and this could be said about any global system on the internet) such a system should be incrementally deployable, so that smooth, step-by-step, subnetwork-by-subnetwork integration is possible. This is important not only because of virtual impossibility to restart or reconfigure the whole internet at once. This incremental way of embedding an attribution system should be more secure (bugs in software and mistakes in design can be fixed while on a small scale), so that by the end of cycle, when the whole internet is wired, the attribution system is field-tested and analyzed several times by different bodies. &lt;br /&gt;
&lt;br /&gt;
Very important, but controversial subject, is adoption of the system within some set of rules or laws (state laws, government regulations, corporate rules and principles, etc.). System should allow easy adoption for different cases, at the same time it should remain universal and global. It should act like a public tool any group can use, but nobody should be able to misuse it or use in non-legal way. The big decision designers will have to make is the one regarding this line between dynamic adoptability and universality. Luckily, this sort of deepness goes beyond the scope of our paper.&lt;br /&gt;
&lt;br /&gt;
Companies and organizations sometimes loose millions of dolars due to attacks and other cyber-crimes done to them, and some issues can be dealt with by spending more resources (memory, bandwidth on servers, etc), or, in other words, spending more money. The overall cost of setting up and maintaining the attribution system for a particular body (person, organization, network) should be considerably less than average losses under current lack of attribution (e.g. DoS, identity theft, etc).&lt;br /&gt;
&lt;br /&gt;
==Practice==&lt;br /&gt;
&lt;br /&gt;
Attribution mapping should not be a bijection, in other words action should map to person, but not vice versa. That it, nobody should be able to use the system to answer the question &amp;quot;what person X did/does?&amp;quot;. Not only the system should not know the answer, it should not be possible to know the answer; the question &amp;quot;who did act X&amp;quot; is the one should be answered. This can be thought of as part of requirement about not violating current laws and moral principles, but is put as a separate requirement, since it is very important to draw a line between attribution system and surveillance. The goal is not only to make attribution system attribute, but also to make it impossible to use it in other way – for surveillance, spying, etc.&lt;br /&gt;
&lt;br /&gt;
Since this global system operates on the internet, it might not be a great idea to put names of persons into traceability database. It makes much more sense to put some unique IDs for any body, who uses the network, and in case a crime committed, or, in general, it is a case where an agent of some act should be determined, recorded ID will be searched for in police or government database. It should be some trusted entity (government, corporation, police, some public good-like system, etc) that stores the mapping between IDs and real names. This mapping should only be revealed when needed and when there is enough evidence or motivation to do so. Traceability information (namely, unique iDs) should be distributed and it is crucial to make it impossible to collect all the information in one place.&lt;br /&gt;
&lt;br /&gt;
Of course, it is not always the case that some trusted (by everyone) body exists, but generally we have governments and/or agencies we trust. It is important to divide the information between public and trusted body in a way allowing them to cooperate in time of need and not allowing to misuse the system from any side.&lt;br /&gt;
&lt;br /&gt;
=Proposed Framework=&lt;br /&gt;
In this section, we will propose a potential framework and argue that it is able to fulfill the requirements listed in the former section. The proposed framework works under the core principle &amp;quot;An act cannot use network resources nor can it be routed if it is anonymously bound&amp;quot;. Firstly, we start by defining some terminologies that will be used within the scope of this section:&lt;br /&gt;
* &amp;lt;i&amp;gt;Agent&amp;lt;/i&amp;gt; (Ag): the human-device pairing that sits on an end system and keeps transmitting/receiving packets.&lt;br /&gt;
* &amp;lt;i&amp;gt;Identification Stamp&amp;lt;/i&amp;gt; (IS): a series of bits that binds a human unique identification (iris intricate structure or fingerprint) with a unique feature of an access-capable device. So, for a device like a Network Interface Card, the MAC address would be that feature. This biding is a particular representation for the official owner of the device, and who is deemed the primary responsible for any outgoing packet launched by his owned device. In other words, it is a unique identifier for an agent.&lt;br /&gt;
* &amp;lt;i&amp;gt;Intermediate System Services&amp;lt;/i&amp;gt; (ISS): Services provided by intermediate systems (routers). For e.g., routing (main service), error checking, etc.&lt;br /&gt;
* &amp;lt;i&amp;gt;Licensing&amp;lt;/i&amp;gt;: a process of giving the permission to intermediate systems to provide ISS to all packets that are launched from the agent that is requesting the license.&lt;br /&gt;
* &amp;lt;i&amp;gt;Machines/Devices&amp;lt;/i&amp;gt; (Md): any piece of hardware that has access capability. It can either be a PDA, a laptop, a notebook, a PC, an NIC, or even a mere home made chip that can externally communicate wired or wireless to send or receive digital packets.&lt;br /&gt;
&lt;br /&gt;
In principle, every leaping packet has a human owner that is either directly or indirectly responsible for it. Directly responsible when he is running an application that sends requests or initiates communication sessions to another end system. E.g., using the client side of application supporting the protocols: HTTP, FTP, SIP, RTP, VoIP, etc. Indirect responsibility is when a user is a running a system in the background that performs external (over the internet) system calls (global clock synchronization ) or is automated for periodic communication or automatic response to incoming requests. E.g., NTP, or the server side of the protocols: HTTP, FTP, etc. In addition, indirect responsibility also includes the responsibility of all packets launched by lower layer protocols that are being manipulated by higher layer ones. E.g., TCP connection initiation packets and handshaking, ICMP packets that aims to seek and identify that status of a specific host, etc.&lt;br /&gt;
&lt;br /&gt;
The scope of this framework only addresses attribution over the internet and not any other &amp;quot;locally&amp;quot; defined networks underlying the IEEE standard definitions of the topologies PAN, LAN, MAN, or a WAN that are do not user the global intermediate systems as their underlying infrastructure for packet delivery.&lt;br /&gt;
&lt;br /&gt;
The following sections show the assumptions for this framework to operate, the methodology of its operation, a list of pros, cons and vulnerabilities of the system and wrap up by a discussion on the tradeoff between privacy and attribution regarding the proposed framework.&lt;br /&gt;
==Assumptions==&lt;br /&gt;
For starters, this frame work assumes the presence of a globally trustful entity(s) (e.g., government). This entity may either be centralized or distributed. A centralized entity would be easier to deploy, but it will suffer from a single point of failure. A distributed entity would obviously perform better as it will be able to scale with the growth of the system users as well as conform to diverse regional laws, regulations, customs and traditions. However, a standard protocol would be required to define the syntax and semantics as well as the nature of the way these distributed sub-systems would communicate.&lt;br /&gt;
&lt;br /&gt;
Second, we assume that a DNS-like world-wide distributed system is deployed. This system acts as a &amp;quot;database&amp;quot; for storing &amp;quot;identification stamps&amp;quot;. Symmetric key encryption should be used to protect that system as it will only be accessed through two types of users. Routers, which should be able to access this database ONLY for read operations. And the trustful entity (defined in the previous assumption) which should be able to access ONLY for write operations. Both users must be strictly authenticated, for being able to decrypt the contents or to append. In addition, this distributed system must guarantee almost zero latency in the read operations as it will be heavily relied on for every single hop made by a packet at the Internet intermediate system.&lt;br /&gt;
&lt;br /&gt;
Thirdly, we assume that the owning relationship between persons and machines is one-to-many. That is to say, a person can officially own one or more machines but a machine can only be owned by one person.&lt;br /&gt;
&lt;br /&gt;
Finally, our proposed frame work assumes that within the frame format of the IP packets, a header is added by the network layer that includes the &amp;quot;identification stamp&amp;quot; of the packet owner. A packet owner is the person PLUS the machine that are together responsible for launching this packet.&lt;br /&gt;
&lt;br /&gt;
==Methodology==&lt;br /&gt;
Basically, this framework works by stalling the propagation of a packet that is either unattributed or forged with a fake identification stamp. A &amp;quot;fake identification stamp&amp;quot; is defined as:&lt;br /&gt;
* Either having a false unique chip identifier that refers to an imaginary device.&lt;br /&gt;
* Or having a false unique human identifier that refers to an imaginary human.&lt;br /&gt;
* Or having a misleading binding of a human to a machine. i.e., claiming that some machine &amp;quot;X&amp;quot; belongs to some human &amp;quot;Y&amp;quot;, but in reality, &amp;quot;Y&amp;quot; is not the owner of &amp;quot;X&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Noticeably, the routers, as primary constituents to the intermediate systems, should refrain from routing any data packets that are not fully attributed. As they are the main driving power behind delivering all malicious or benign packets, they should have great responsibility in achieving highly reliable attribution mechanism.&lt;br /&gt;
&lt;br /&gt;
A description of the system, based on the chronological order, is as follows. First, any newly bought machine or even a home made device, must be licensed from the trustful entity. The trustful entity access the globally distributed database of &amp;quot;identification stamps&amp;quot; and adds the new identification stamp of the agent that asked for license. If a device is not licensed (i.e., its &amp;quot;identification stamp&amp;quot; was not inserted to the distributed database), it doesn&#039;t not benefit from ISS.&lt;br /&gt;
&lt;br /&gt;
From the intermediate system&#039;s perspective, when a router receives a packet, it verifies its IS. This is done by consulting the GDDB and sending it a copy of the IS found on the packet. If a packet founds to be not having an IS, the packet is prevented from benefiting from ISS and is simply dropped. If the GDDB replies with an invalid IS, again, the packet is dropped. If the GDDB replies with a success, this will mean that the packet&#039;s printed IS is verified. Thus, the packet benefits from the ISS and gets routed throughout the way.&lt;br /&gt;
&lt;br /&gt;
==Pros, Cons and Vulnerabilities==&lt;br /&gt;
Obviously, the proposed framework&#039;s main focus is to ensure that any leaping packet is moving because it is known who does it belong to. If not, it is prevented from locomotion.&lt;br /&gt;
&lt;br /&gt;
- delays and bottlenecks due to licensing system at the routers for consulting the distributed system.&lt;br /&gt;
- restrictive assumptions (not easily deployable)&lt;br /&gt;
- different regulative flavors&lt;br /&gt;
- Custom content generation (not found)&lt;br /&gt;
- Public PCs (in labs...), bound to whom?&lt;br /&gt;
- Full awareness of users with their systems&lt;br /&gt;
+ attribution&lt;br /&gt;
+ attack avoidance&lt;br /&gt;
+ attribution not available to anyone&lt;br /&gt;
+ automated. services are either stopped or continued.&lt;br /&gt;
+ avoids attacks: DDoS, DoS, ...&lt;br /&gt;
+ Privacy&lt;br /&gt;
V Botnets&lt;br /&gt;
V attack on the distributed system which would cause whole system failure.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Privacy and Attribution Tradeoff==&lt;br /&gt;
The human nature refuses any change in the first sight. But, as with cars, they first started without the need for licensing, and then, it licensing systems were applied afterwards. People got used to it slowly then thoroughly.&lt;br /&gt;
&lt;br /&gt;
=Conclusion=&lt;br /&gt;
&lt;br /&gt;
=References=&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;/div&gt;</summary>
		<author><name>Omi</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=A_link_to_the_paper&amp;diff=9202</id>
		<title>A link to the paper</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=A_link_to_the_paper&amp;diff=9202"/>
		<updated>2011-04-10T20:33:17Z</updated>

		<summary type="html">&lt;p&gt;Omi: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Title=&lt;br /&gt;
Proposed titles:&lt;br /&gt;
* Requirements for Attribution on the Internet&lt;br /&gt;
* Internet Attribution: Between Privacy and Cruciality&lt;br /&gt;
&lt;br /&gt;
=Abstract=&lt;br /&gt;
Present and past situations show a need for improved attribution systems, and arguably, scientific basis for properly functioning attribution systems are not yet defined. Lots of research have been focusing on attributing documents to authors for the sake of securing authorship rights and rapid identification of plagiarism. Many of those were revolving around the notion of using machine learning for linking articles to humans. Others proposed text classification and feature selection as a mean of detecting the author of a document. Unfortunately, not that much research is addressing the problem of lack of robust attribution system over the internet. Authentication, as a mean of attribution, has proved its efficiency but, needless to say, it is not applicable to authenticate every single packet hopping over the intermediate systems. This paper presents limits and advances in the attribution of actions to agents over the internet. It reviews current attribution technologies as well as the limits of those technologies. It also identifies the requirements of a proper attribution system and proposes a distributed (yet cooperative) approach for performing attribution over the internet.&lt;br /&gt;
&lt;br /&gt;
=Introduction=&lt;br /&gt;
Currently the Internet infrastructure provides users partial anonymity. Unfortunately, that anonymity weakens the security for its users, because it incites advance users to exploit that feature. The lack of online identification married with bad intentions entices criminals to commit a number of &amp;lt;i&amp;gt;Cyber Crimes&amp;lt;/i&amp;gt; without being caught, crimes which include: fraud, theft, forgery, impersonation, the distribution of Malware (and hence, botnets), traffic tampering, DoS, bandwidth hogging, etc. Consequently, internet attribution is a highly sensitive field that constitutes a cornerstone position within internet security. Needless to say, current solutions don&#039;t guarantee sufficient attribution nor are considered always applicable in most of the time, hence, current system suffers the lack of a relatively robust attribution mechanism. In the light of this context, we need better methodologies for reaching an acceptable success level for attributing actions to persons.&lt;br /&gt;
&lt;br /&gt;
In principle, attribution can be defined as the mechanism of binding a system-defined act to an agent. An agent is typically an entity that has the ability to commit what constitutes an act. Within our focus, an agent could either be a person or a machine. It can also be defined as &amp;quot;determining the identity or location of an attacker or an attacker’s intermediary&amp;quot;&amp;lt;ref&amp;gt; [Institute for Defense Analyses, 2003]&amp;lt;/ref&amp;gt;. Problems like IP address spoofing, lack of interoperability in intermediate systems, dynamic nature of IP addresses, unawareness of system users with lots of &amp;lt;i&amp;gt;unknown&amp;lt;/i&amp;gt; packets sneaking to their machines and poor efficiency of firewalls and IDSs make this determination operation considerably difficult. In addition, some types of attacks are carried out to conceal the real agent behind an act. For instance, malware distribution (and hence the creation of botnets), and stepping stones aim to inflict vagueness around the correct &amp;lt;i&amp;gt;human&amp;lt;/i&amp;gt; source behind the scene.&lt;br /&gt;
&lt;br /&gt;
In this paper, we focus on defining what it takes to achieve an acceptably working attribution mechanism over the internet. To do that, we review past research works in attribution and discuss their common limitations as well as flaws and what can be done in common to enhance such schemes. We also argue that the lack of a globally deployed registration system that registers system users and grants them LICENSED access to the system enfeebles proper attribution and motivates illegitimate intrusions and irregular behavior. We show that employing the mentioned system would reduce the incentive of irregular behavior as well as remove the blaze of tempting anonymity, putting attackers under the risk of being easily caught. We also discuss how privacy, as a counter force to attribution, plays a big role in the internet and within its users and propose a framework that achieves relatively robust attribution mechanism and retains the privacy of users.&lt;br /&gt;
&lt;br /&gt;
Much of the research done in literature focuses on attribution that is done for keeping track of authorship, i.e., attributing text to authors. In this paper, we don&#039;t question the cruciality of attribution in this field, but rather we address a higher level of attribution of all possible actions to agents, which is sadly deemed slightly obsolete from the current research perspective.&lt;br /&gt;
&lt;br /&gt;
This paper starts by a quick discussion on the dilemma of attribution, resolving the tension between attribution and privacy. Consequently, section 3 argues about the reasons behind the essentiality of implementing proper attribution systems. Section 4 presents a fundamental set of requirements for achieving an acceptable level of attribution over the internet as well as proposes an abstract framework for achieving attribution. In section 5, a review on the currently implemented systems that achieve attribution is presented as well as flaws and points of failure of the surveyed papers. In section 6, the reasons behind the difficulty of achieving a proper attribution system. And finally, a conclusion is presented in section 7.&lt;br /&gt;
&lt;br /&gt;
==What is Attribution==&lt;br /&gt;
&#039;&#039;The act of attributing, especially the act of establishing a particular person as the creator of a work of art.&#039;&#039;&amp;lt;ref&amp;gt; The American Heritage® Dictionary of the English Language, Fourth Edition copyright ©2000 by Houghton Mifflin Company. Updated in 2009. Published by Houghton Mifflin Company.&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
We are concerned with one particular type of attribution - binding an act to a person. This may include intermediate attributions, for example, an act to an agent (software, device, etc.) and then attribution of an agent to person. Narrowing the problem further, we&#039;re only concerned about attribution in large, dynamic networks, like internet. For sake of simplicity, in this paper we&#039;re going to reference to &amp;quot;binding an act to a person on the internet&amp;quot; as &amp;quot;attribution&amp;quot;, while other types of attributing will be defined separately.&lt;br /&gt;
&lt;br /&gt;
==Problem Statement==&lt;br /&gt;
The anonymity of the Internet makes it virtually impossible most of the time to properly identify who is who online. This is a double-ended sword as it not only provides a high level of privacy, but also makes it hard to identify people with malicious intent and cyber attackers.&lt;br /&gt;
&lt;br /&gt;
==Problem Motivation==&lt;br /&gt;
In todays world there grows a strong need for attribution over the Internet mainly due to increased numbers of cyber attacks since its introduction in the 90’s. Many attackers have succeeded in causing both physical and financial damage to many companies over the Internet and going Scott free; due to the anonymity of the Internet, the attackers cannot be identified.&lt;br /&gt;
&lt;br /&gt;
==Scope==&lt;br /&gt;
In this paper we are addressing the issue of attribution by providing a list of requirements that need to be met in order to have a fully stable and efficient attribution system over the Internet.&lt;br /&gt;
&lt;br /&gt;
Although this is not a technical paper, in order to fully understand some of the concepts and terminology within this paper, a small knowledge of computer science or computer systems will be required. &lt;br /&gt;
&lt;br /&gt;
=Background=&lt;br /&gt;
&lt;br /&gt;
The problem of attribution is not one that just came up; it has been around fro decades but mostly to address identification issues as it pertained to websites or Internet service providers. A lot of different approaches towards attribution have been taken but mainly just to the extent of what that particular system stems to achieve. &lt;br /&gt;
This section gives an introduction to three of todays current attribution systems and discusses their pros and cons as they pertain to the type of global attribution we discuss in this paper.&lt;br /&gt;
&lt;br /&gt;
==Cookies==&lt;br /&gt;
Websites will sometimes need to remember information about a visit or a visitor in order to improve viewer experience. Cookies are text files that are created by a web server, and stored by a web browser on the users computer. Cookies are used for many reasons; mainly authentication, remembering shopping cart information, and storing site preference. In actuality, they can be used to store any type of information that can be stored in a text file. When a page is requested the users web browser sends the request with the webserver’s cookie in the header part of the packet. All this is an automated process between the web browser and web server.  &lt;br /&gt;
&lt;br /&gt;
If at all the webserver receives a request without a cookie attached to it, it takes it as the first access that the browser is making to the server and sends one as part of the response which will be saved by the browser and resent on the next request. Cookies are usually encrypted in order for data security and information privacy, however they are still subject to the users control as they can be decrypted, modified and even deleted completely. It is also possible for a user to change their browser setting to not accept cookies at all. &lt;br /&gt;
&lt;br /&gt;
Cookies can either have an expiration date or not; this is the date that the browser deletes the cookie. Cookies without an expiration date are deleted when the browser is closed. Some browsers allow you to automatically set how long you want cookies to be stored.&lt;br /&gt;
&lt;br /&gt;
===Cookies as an Attribution System===&lt;br /&gt;
Looking at cookies as the type of attribution system we are looking for over the Internet, we will be able to achieve high precision on identifying computers that access a web server. However, The biggest draw back cookies have is that they can be deleted and manipulated. As such the use of cookies is not an effective attribution system. &lt;br /&gt;
&lt;br /&gt;
==IP Addresses==&lt;br /&gt;
IP or Internet Protocol Addresses are 32 bit numerical identifiers for devices (ie computer, printer, scanner etc..) on a network. The users Internet Service Provider (ISP) provide this number. The Internet Assigned Numbers Authority (IANA) is responsible for managing IP Address space allocation globally. It does this with the help of five Regional Internet registries (RIRs), responsible for allocating IP address blocks to their assigned regions ISP, who in turn allocates them to their users. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pros&lt;br /&gt;
&lt;br /&gt;
Cons&lt;br /&gt;
&lt;br /&gt;
==Authentication Systems==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pros&lt;br /&gt;
&lt;br /&gt;
Cons&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=The attribution dilemma=&lt;br /&gt;
&lt;br /&gt;
Designing an attribution system is not a trivial task, because, regardless of technologies and/or infrastructure available, one needs to consider controversial question of balancing between strong attribution and privacy. This hypothetical line between attribution and privacy is not straight, and crucially depends on application. For instance, large financial institutions as well as its clients are interested in strong attribution system, which would solve many authorization and authentication problems, as well as will guarantee (to some degree) that agents of transactions are who they claim they are. On the other hand, political dissidents and whistle-blowers do exist primarily because there is no 100% effective attribution system in place and it is possible for them to distribute information (regardless of actual usefulness or goodness of it) and keep their identity secret. It is clear that single universal set of rules cannot satisfy these two cases. It is also clear that, in pretty abstract fashion, privacy is inversely proportional to attribution. While designing an attribution system one needs not only to decide on this ration for some particular case, but rather make this ratio dynamically changed depending on the case.&lt;br /&gt;
&lt;br /&gt;
Assuming this ratio is found, another question is when to decide to use private information to track or punish a person, as to directly intrude their privacy? One might think that this question is a little bit out of the scope of our paper. This is true, however, these and a lot of less obviously related questions should be answered prior to designing, because in such an important thing as protection and privacy, designing of solution should not make too many assumptions and should guarantee something not only to operators of the system, but for users as well. In other words, even though system should be dynamic and adaptable to all potential use cases, it should remain universal to some extent and guarantee some law-related and moral principles.&lt;br /&gt;
&lt;br /&gt;
(here go other questions. will show connection to requirements)&lt;br /&gt;
&lt;br /&gt;
* While designing an attribution system one needs to consider balancing between attribution and privacy. &lt;br /&gt;
**Sometimes non-attribution is very crucial,to protect political dissidents and whistle-blowers &lt;br /&gt;
* When to decide to track a person and when not to (so as not to intrude privacy)?&lt;br /&gt;
* How to make sure attribution is properly achieved?&lt;br /&gt;
* Who should attribute who/what and why?&lt;br /&gt;
* How far can we trust IP-traceback, stepping stone authentications, link identifications and packet filtering in wedging packets to agents?&lt;br /&gt;
* How much can intermediate systems&#039; cooperation contribute to achieving attribution?&lt;br /&gt;
* Should there be consequences upon attributing an action(s) to an agent? What are they? (punishment, rewarding, etc)&lt;br /&gt;
* How to deal with misleading data sources hiding behind botnets and concealing identities via stepping stones?&lt;br /&gt;
&lt;br /&gt;
==Why do we need Attribution==&lt;br /&gt;
&lt;br /&gt;
* For identifying purposes&lt;br /&gt;
** Web Banking&lt;br /&gt;
** eCommerce&lt;br /&gt;
** Web advertisements&lt;br /&gt;
&lt;br /&gt;
* For better protection against cyber attacks:&lt;br /&gt;
** DoS and DDos&lt;br /&gt;
** Forgery and theft&lt;br /&gt;
** Sniffing private traffic&lt;br /&gt;
** Distributing illegal content/malware&lt;br /&gt;
** Sending spam&lt;br /&gt;
** Illegal/undesired intrusion&lt;br /&gt;
&lt;br /&gt;
*For marketing purposes (privacy?)&lt;br /&gt;
** custom (client-based) content generation&lt;br /&gt;
&lt;br /&gt;
==Why is it difficult to achieve attribution?==&lt;br /&gt;
&lt;br /&gt;
The main problem I see is that the way Internet is designed makes it possible and relatively easy to act without compromising identity. Moreover, most current solutions are  based on the same structure and work within the same scope, thus, can only reduce the number of potentially destructive acts or just deal with the consequences.  Of course, no system can prevent 100% of destructive attempts, but some potentially good attribution system should make such attempts highly undesirable and &amp;quot;costly&amp;quot; for an attacker.&lt;br /&gt;
&lt;br /&gt;
*The issue of lack of attribution on the web mostly arises whenever security is compromised. When you&#039;re bombarded with spam, or when a system is under a DoS attack attribution becomes a more appealing notion. Getting a balance between security and privacy is tricky, because once attacks are tracked so will all other traffic. &lt;br /&gt;
*Depending on the type of sender and receiver, different attribution policy will be requested.&lt;br /&gt;
&lt;br /&gt;
In the ideal world, every action on the internet could be bound to a machine and thus to a person. This is done by examining the source IP printed on each moving packet, locating the geographical location of this IP, consulting the ISP covering the location and identifying the person. If an act requires strict attribution (like checking and sending emails), authentication is used. &amp;lt;b&amp;gt;Here is what goes wrong&amp;lt;/b&amp;gt;:&lt;br /&gt;
* IP addresses can be &amp;lt;b&amp;gt;spoofed&amp;lt;/b&amp;gt; and hence, misleads the geographical location.&lt;br /&gt;
* For avoiding that problem, &amp;lt;b&amp;gt;IP traceback&amp;lt;/b&amp;gt; can be performed BUT it requires global cooperation of intermediate systems... it is not there!&lt;br /&gt;
* IPs are &amp;lt;b&amp;gt;not permanently bound&amp;lt;/b&amp;gt; to personnel, so figuring out the person from the IP is not concrete.&lt;br /&gt;
* Network users are &amp;lt;b&amp;gt;not aware of all packets sneaking&amp;lt;/b&amp;gt; to their machines, which allows for malware distribution and hence, the creation of botnets... misleading attribution!&lt;br /&gt;
* &amp;lt;b&amp;gt;Firewalls&amp;lt;/b&amp;gt; and packet filters can be used for avoiding that problem, but they are not 100% efficient.&lt;br /&gt;
* It is not applicable to &amp;lt;b&amp;gt;authenticate&amp;lt;/b&amp;gt; every single action on the internet.&lt;br /&gt;
&lt;br /&gt;
===Attacks to prevent correct attribution of actions===&lt;br /&gt;
&lt;br /&gt;
* Stepping stone attack: a common way of attributing attacks to anonymity by using multiple public random agents (as stepping stones) to reach the victim in order to conceal the attacking source. &amp;lt;ref name=&amp;quot;ref1&amp;quot;&amp;gt;S. Staniford-Chen and L. T. Heberlein. Holding intruders accountable on the internet. In SP ’95: Proceedings of the 1995 IEEE Symposium on Security and Privacy, page 39, Washington, DC, USA, 1995. IEEE Computer Society.&amp;lt;/ref&amp;gt;&lt;br /&gt;
* Forgery&lt;br /&gt;
** Identity theft (impersonation)&lt;br /&gt;
** Distribution of malware&lt;br /&gt;
&lt;br /&gt;
=Requirements for internet attribution system=&lt;br /&gt;
&lt;br /&gt;
==General==&lt;br /&gt;
&lt;br /&gt;
First and most obvious requirement for any system is usually put for sake of consistency, rather than useful information, so we shall not avoid this notion neither – main requirement for internet attribution system is that it needs to attribute, or, more formally, any potentially destructive act should be traceable to an agent (person and/or organization, group, etc). It is important to consider different natures of agents, because the goal of attribution system is not necessarily to narrow down the search to one particular person, but rather to find the body responsible for an act(s) regardless of their actual structure. In other words, even though actions are done mostly by a single person, they are not necessarily the ones who&#039;s responsible for a decision to do so. A good real world analogy is an assassin and some body (person or a group) paying him. Good attribution system should not lead to assassin alone, but rather should be designed the way that responsible bodies are the ones to be discovered. &lt;br /&gt;
&lt;br /&gt;
It is easy to imagine a system in which less crime and misuse is the only acceptable way to do things, and many writers and movie directors exploit this idea in futuristic, science fiction and anti-utopian plots. Unfortunately, applying any of this sort of ideas to real world today is not a good idea, because a lot of laws and moral principles are already in place, some of which are not perfect, but widely accepted and mostly have reasons to exist. Attribution system that we&#039;re looking for should take legal and moral issues into account, naturally, should not violate and/or contradict any of them. This important requirement comes somewhat together with incremental deployability that we&#039;re going to discuss later.&lt;br /&gt;
&lt;br /&gt;
==Deployment==&lt;br /&gt;
It is much easier to just design a system, it is much harder to design a system, deployment of which need not be instant and massive. Even though a global attribution system will have a lot of pressure on it, internet should not depend on it entirely and in case attribution system goes down, underlying network should still remain functional. In other words, attribution system should be loosely coupled to the system it works in. &lt;br /&gt;
&lt;br /&gt;
As discussed before, (and this could be said about any global system on the internet) such a system should be incrementally deployable, so that smooth, step-by-step, subnetwork-by-subnetwork integration is possible. This is important not only because of virtual impossibility to restart or reconfigure the whole internet at once. This incremental way of embedding an attribution system should be more secure (bugs in software and mistakes in design can be fixed on a small scale), so that by the end of cycle, when the whole internet is wired, the attribution system is field-tested and analyzed several times. &lt;br /&gt;
&lt;br /&gt;
Very important, but controversial subject, is adoption of the system within some set of rules or laws (state laws, government regulations, corporate rules and principles, etc.). System should allow easy adoption for different cases, at the same time it should remain universal and global. It should act like a public tool any group can use, but nobody should be able to misuse it or use in non-legal way.&lt;br /&gt;
&lt;br /&gt;
Companies and organizations sometimes loose millions of dolars due to attacks and other cyber-crimes done to them, and some issues can be dealt with by spending more resources (memory, bandwidth on servers, etc). The overall cost of setting up and maintaining the attribution system for a particular body (person, organization, network) should be considerably less than average losses under current lack of attribution (e.g. DoS, identity theft, etc).&lt;br /&gt;
&lt;br /&gt;
==Practice==&lt;br /&gt;
&lt;br /&gt;
Attribution mapping should not be a bijection, in other words action should map to persons, but not vice versa. That it, nobody should be able to use the system to answer the question &amp;quot;what person X did/does?&amp;quot;. Not only the system should know the answer, it should be possible to know the answer, the answer &amp;quot;who did act X&amp;quot; is the one should be answered. This can be thought of as part of requirement about not violating current laws and moral principles, but is put as a separate requirement, since it is very important to draw a line between attribution system and surveillance. &lt;br /&gt;
&lt;br /&gt;
Since this global system operates on the internet, it might not be a great idea to put names of persons into traceability database. It makes much more sense to put some unique IDs for any body, who uses the network, and in case a crime committed, or, in general, it is a case where an agent of some act should be determined, recorded ID will be searched for in police or government database. It should be some trusted entity (government, corporation, police, some public good-like system, etc) that stores the mapping between IDs and real names. This mapping should only be revealed when needed and when there is enough evidence or motivation to do so. Traceability information (namely, unique iDs) should be distributed and it is crucial to make it impossible to collect all the information in one place.&lt;br /&gt;
&lt;br /&gt;
=Proposed Framework=&lt;br /&gt;
In this section, we will propose a potential framework and argue that it is able to fulfill the requirements listed in the former section. The proposed framework works under the core principle &amp;quot;An act cannot use network resources nor can it be routed if it is anonymously bound&amp;quot;. Firstly, we start by defining some terminologies:&lt;br /&gt;
* &amp;quot;Identification Stamp&amp;quot;: An identification stamp is a series of bits that binds a human unique identification (iris intricate structure or fingerprint) with a unique feature of an access-capable device. So, for a device like a Network Interface Card, the MAC address would be that feature. &lt;br /&gt;
* &lt;br /&gt;
&lt;br /&gt;
The following sections show the assumptions for this framework to operate, the methodology of its operation, a list of pros,cons and vulnerabilities of the system and wrap up by a discussion on the tradeoff between privacy and attribution.&lt;br /&gt;
==Assumptions==&lt;br /&gt;
For starters, this frame work assumes the presence of a globally trustful entity(s) (e.g., government). This entity may either be centralized or distributed. A centralized entity would be easier to deploy, but it will suffer from a single point of failure. A distributed entity would obviously perform better as it will be able to scale with the growth of the system users as well as conform to diverse regional laws, regulations, customs and traditions. However, a standard protocol would be required to define the syntax and semantics as well as the nature of the way these distributed sub-systems would communicate.&lt;br /&gt;
&lt;br /&gt;
Second, we assume that a DNS-like world-wide distributed system is deployed. This system acts as a &amp;quot;database&amp;quot; for storing &amp;quot;identification stamps&amp;quot;. Symmetric key encryption should be used to protect that system as it will only be accessed through two types of users. Routers, which should be able to access this database ONLY for read operations. And the trustful entity (defined in the previous assumption) which should be able to access ONLY for write operations. Both users must be strictly authenticated, for being able to decrypt the contents or to append. In addition, this distributed system must guarantee almost zero latency in the read operations as it will be heavily relied on for every single hop made by a packet at the Internet intermediate system.&lt;br /&gt;
&lt;br /&gt;
Finally, our proposed frame work assumes that within the frame format of the IP packets, a header is added by the network layer that includes the identification stamp of the packet owner. A packet owner is the person PLUS the machine that are together responsible for launching this packet.&lt;br /&gt;
&lt;br /&gt;
==Methodology==&lt;br /&gt;
Noticeably, the routers, as primary constituents to the intermediate systems, should refrain from routing any data packets that are not fully attributed. As they are the main driving power behind delivering all malicious or benign packets, they should have great responsibility in achieving highly reliable attribution mechanism.&lt;br /&gt;
&lt;br /&gt;
First, Access devices must be licensed from the trustful entity &lt;br /&gt;
  If not, it will not be able to benefit from global routing &lt;br /&gt;
services. &lt;br /&gt;
2.  Licensing: binding a human&#039;s unique feature with a &lt;br /&gt;
machine’s unique feature &lt;br /&gt;
  Human unique feature: iris intricate structure &lt;br /&gt;
  Machine unique feature: MAC address &lt;br /&gt;
3.  Licensing generates identification stamps &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Pros, Cons and Vulnerabilities==&lt;br /&gt;
&lt;br /&gt;
- delays and bottlenecks due to licensing system at the routers for consulting the distributed system.&lt;br /&gt;
- restrictive assumptions (not easily deployable)&lt;br /&gt;
- different regulative flavors&lt;br /&gt;
- Custom content generation (not found)&lt;br /&gt;
+ attribution&lt;br /&gt;
+ attack avoidance&lt;br /&gt;
+ attribution not available to anyone&lt;br /&gt;
+ automated. services are either stopped or continued.&lt;br /&gt;
+ avoids attacks: DDoS, DoS, ...&lt;br /&gt;
+ Privacy&lt;br /&gt;
V Botnets&lt;br /&gt;
V attack on the distributed system which would cause whole system failure.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Privacy and Attribution Tradeoff==&lt;br /&gt;
The human nature refuses any change in the first sight. But, as with cars, they first started without the need for licensing, and then, it licensing systems were applied afterwards. People got used to it slowly then thoroughly.&lt;br /&gt;
&lt;br /&gt;
=Conclusion=&lt;br /&gt;
&lt;br /&gt;
=References=&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;/div&gt;</summary>
		<author><name>Omi</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=A_link_to_the_paper&amp;diff=8975</id>
		<title>A link to the paper</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=A_link_to_the_paper&amp;diff=8975"/>
		<updated>2011-03-29T13:51:35Z</updated>

		<summary type="html">&lt;p&gt;Omi: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Title=&lt;br /&gt;
Proposed titles:&lt;br /&gt;
* Requirements for Attribution on the Internet&lt;br /&gt;
* Internet Attribution: Between Privacy and Cruciality&lt;br /&gt;
&lt;br /&gt;
=Abstract=&lt;br /&gt;
Present and past situations show a need for improved attribution systems, and arguably, scientific basis for a properly functioning attribution systems are not yet defined. Lots of research have been focusing on attributing documents to authors for the sake of securing authorship rights and rapid identification of plagiarism. Many of those were revolving around the notion of using machine learning for linking articles to humans. Others proposed text classification and feature selection as a mean of detecting the author of document. Unfortunately, not that much research is addressing the problem of lack of robust attribution system over the internet. Authentication, as a mean of attribution, has proved its efficiency but, needless to say, it is not applicable to authenticate every single packet hopping over the intermediate systems. This paper presents limits and advances in the attribution of actions to agents over the internet. It reviews current attribution technologies as well as the limits of those technologies. It also identifies the requirements of a proper attribution system and proposes a distributed (yet cooperative) approach for performing attribution over the internet.&lt;br /&gt;
&lt;br /&gt;
=Introduction=&lt;br /&gt;
Internet users prefer the partial anonymity while surfing the internet. Unfortunately, several internet users yet have bad intentions to exploit such anonymity in fulfilling different types of &amp;lt;i&amp;gt;electronic crimes&amp;lt;/i&amp;gt; including: fraud, theft, forgery, impersonation, the distribution of malware (and hence, botnets), traffic tampering, DoS, bandwidth hogging, etc. Consequently, internet attribution is a highly sensitive field that constitutes a cornerstone position within internet security. Needless to say, current solutions don&#039;t guarantee efficient attribution nor are considered always applicable in most of the time, hence, current system suffers the lack of a relatively robust attribution mechanism. In the light of this context, we need better methodologies for reaching an acceptable success level for attributing actions to persons.&lt;br /&gt;
&lt;br /&gt;
In principle, attribution can be defined as the mechanism of binding a system-defined act to an agent. An agent is typically an entity that has the ability to commit what constitutes an act. Within our focus, an agent could either be a person or a machine. It can also be defined as &amp;quot;determining the identity or location of an attacker or an attacker’s intermediary&amp;quot;&amp;lt;ref&amp;gt; [Institute for Defense Analyses, 2003&amp;lt;/ref&amp;gt;. Problems like IP address spoofing, lack of interoperability in intermediate systems, dynamic nature of IP addresses, unawareness of system users with lots of &amp;lt;i&amp;gt;unknown&amp;lt;/i&amp;gt; packets sneaking to their machines and poor efficiency of firewalls and IDSs make this determination operation considerably difficult. In addition, some types of attacks are carried out to conceal the real agent behind an act. For instance, malware distribution (and hence the creation of botnets), and stepping stones aim to inflict vagueness around the correct &amp;lt;i&amp;gt;human&amp;lt;/i&amp;gt; source behind the scene.&lt;br /&gt;
&lt;br /&gt;
In this paper, we focus on defining what it takes to achieve an acceptably working attribution mechanism over the internet. To do that, we review past research works in attribution and discuss their common limitations as well as flaws and what can be done in common to enhance such schemes. We also argue that the lack of a globally deployed registration system that registers system users and grant them LICENSED access to the system enfeebles proper attribution and motivates illegitimate intrusions and irregular behavior. We show that employing the mentioned system would reduce the incentive of irregular behavior as well as remove the blaze of tempting anonymity, putting attackers under the risk of being easily caught. We also discuss how privacy, as a counter force to attribution, plays a big role in the internet and within its users and propose a framework that achieves relatively robust attribution mechanism and retains the privacy of users.&lt;br /&gt;
&lt;br /&gt;
Much of the research done in literature focuses on attribution that is done for keeping track of authorship, i.e., attributing text to authors. In this paper, we don&#039;t question the cruciality of attribution in this field, but rather we address a higher level of attribution of all possible actions to agents, which is sadly deemed slightly obsolete from the current research perspective.&lt;br /&gt;
&lt;br /&gt;
This paper starts by a quick discussion on the dilemma of attribution, resolving the tension between attribution and privacy. Consequently, section 3 argues about the reasons behind the essentiality of implementing proper attribution systems. Section 4 presents a fundamental set of requirements for achieving an acceptable level of attribution over the internet as well as proposes an abstract framework for achieving attribution. In section 5, a review on the currently implemented systems that achieve attribution is presented as well as flaws and points of failure of the surveyed papers. In section 6, the reasons behind the difficulty of achieving a proper attribution system. And finally, a conclusion is presented in section 7.&lt;br /&gt;
&lt;br /&gt;
==What is Attribution==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Background=&lt;br /&gt;
&lt;br /&gt;
==Cookies==&lt;br /&gt;
&lt;br /&gt;
==IP Addressing==&lt;br /&gt;
&lt;br /&gt;
==Authentication Systems==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=The attribution dilemma=&lt;br /&gt;
&lt;br /&gt;
* While designing an attribution system one needs to consider balancing between attribution and privacy. &lt;br /&gt;
**Sometimes non-attribution is very crucial,to protect political dissidents and whistle-blowers &lt;br /&gt;
* When to decide to track a person and when not to (so as not to intrude privacy)?&lt;br /&gt;
* How to make sure attribution is properly achieved?&lt;br /&gt;
* Who should attribute who/what and why?&lt;br /&gt;
* How far can we trust IP-traceback, stepping stone authentications, link identifications and packet filtering in wedging packets to agents?&lt;br /&gt;
* How much can intermediate systems&#039; cooperation contribute to achieving attribution?&lt;br /&gt;
* Should there be consequences upon attributing an action(s) to an agent? What are they? (punishment, rewarding, etc)&lt;br /&gt;
* How to deal with misleading data sources hiding behind botnets and concealing identities via stepping stones?&lt;br /&gt;
&lt;br /&gt;
==Why do we need Attribution==&lt;br /&gt;
&lt;br /&gt;
* For identifying purposes&lt;br /&gt;
** Web Banking&lt;br /&gt;
** eCommerce&lt;br /&gt;
** Web advertisements&lt;br /&gt;
&lt;br /&gt;
* For better protection against cyber attacks:&lt;br /&gt;
** DoS and DDos&lt;br /&gt;
** Forgery and theft&lt;br /&gt;
** Sniffing private traffic&lt;br /&gt;
** Distributing illegal content/malware&lt;br /&gt;
** Sending spam&lt;br /&gt;
** Illegal/undesired intrusion&lt;br /&gt;
&lt;br /&gt;
*For marketing purposes (privacy?)&lt;br /&gt;
** custom (client-based) content generation&lt;br /&gt;
&lt;br /&gt;
==Why is it difficult to achieve attribution?==&lt;br /&gt;
&lt;br /&gt;
The main problem I see is that the way Internet is designed makes it possible and relatively easy to act without compromising identity. Moreover, most current solutions are  based on the same structure and work within the same scope, thus, can only reduce the number of potentially destructive acts or just deal with the consequences.  Of course, no system can prevent 100% of destructive attempts, but some potentially good attribution system should make such attempts highly undesirable and &amp;quot;costly&amp;quot; for an attacker.&lt;br /&gt;
&lt;br /&gt;
*The issue of lack of attribution on the web mostly arises whenever security is compromised. When you&#039;re bombarded with spam, or when a system is under a DoS attack attribution becomes a more appealing notion. Getting a balance between security and privacy is tricky, because once attacks are tracked so will all other traffic. &lt;br /&gt;
*Depending on the type of sender and receiver, different attribution policy will be requested.&lt;br /&gt;
&lt;br /&gt;
In the ideal world, every action on the internet could be bound to a machine and thus to a person. This is done by examining the source IP printed on each moving packet, locating the geographical location of this IP, consulting the ISP covering the location and identifying the person. If an act requires strict attribution (like checking and sending emails), authentication is used. &amp;lt;b&amp;gt;Here is what goes wrong&amp;lt;/b&amp;gt;:&lt;br /&gt;
* IP addresses can be &amp;lt;b&amp;gt;spoofed&amp;lt;/b&amp;gt; and hence, misleads the geographical location.&lt;br /&gt;
* For avoiding that problem, &amp;lt;b&amp;gt;IP traceback&amp;lt;/b&amp;gt; can be performed BUT it requires global cooperation of intermediate systems... it is not there!&lt;br /&gt;
* IPs are &amp;lt;b&amp;gt;not permanently bound&amp;lt;/b&amp;gt; to personnel, so figuring out the person from the IP is not concrete.&lt;br /&gt;
* Network users are &amp;lt;b&amp;gt;not aware of all packets sneaking&amp;lt;/b&amp;gt; to their machines, which allows for malware distribution and hence, the creation of botnets... misleading attribution!&lt;br /&gt;
* &amp;lt;b&amp;gt;Firewalls&amp;lt;/b&amp;gt; and packet filters can be used for avoiding that problem, but they are not 100% efficient.&lt;br /&gt;
* It is not applicable to &amp;lt;b&amp;gt;authenticate&amp;lt;/b&amp;gt; every single action on the internet.&lt;br /&gt;
&lt;br /&gt;
===Attacks to prevent correct attribution of actions===&lt;br /&gt;
&lt;br /&gt;
* Stepping stone attack: a common way of attributing attacks to anonymity by using multiple public random agents (as stepping stones) to reach the victim in order to conceal the attacking source. &amp;lt;ref name=&amp;quot;ref1&amp;quot;&amp;gt;S. Staniford-Chen and L. T. Heberlein. Holding intruders accountable on the internet. In SP ’95: Proceedings of the 1995 IEEE Symposium on Security and Privacy, page 39, Washington, DC, USA, 1995. IEEE Computer Society.&amp;lt;/ref&amp;gt;&lt;br /&gt;
* Forgery&lt;br /&gt;
** Identity theft (impersonation)&lt;br /&gt;
** Distribution of malware&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Requirements for internet attribution system=&lt;br /&gt;
(Unstructured draft)&lt;br /&gt;
&lt;br /&gt;
* Any potentially destructive act should be traceable to a person (and/or organization, group, etc)&lt;br /&gt;
* Traceability should not violate any current privacy-related laws and moral principles&lt;br /&gt;
* Attribution mapping should not be a bijection, in other words action should map to persons, but not vice versa &lt;br /&gt;
* Traceability information should be distributed&lt;br /&gt;
* It should be impossible to collect all traceability data in one place&lt;br /&gt;
* Personal data should be stored by trusted authorities (e.g. governments)&lt;br /&gt;
* Traceability information and personal data should be separated, a connection to be revealed only when needed&lt;br /&gt;
* Attribution system should be incrementally deployable&lt;br /&gt;
* Cost of setting up and maintaining the system for a particular body (person, organization, network) should be considerably less than average losses under current lack of attribution (e.g. DoS, identity theft, etc)&lt;br /&gt;
* Attribution system should be adoptable to different set of rules and principles (laws of countries, organizations&#039; policies, etc), yet remain universal&lt;br /&gt;
&lt;br /&gt;
=System Proposals=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Conclusion=&lt;br /&gt;
&lt;br /&gt;
=References=&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;/div&gt;</summary>
		<author><name>Omi</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=A_link_to_the_paper&amp;diff=8886</id>
		<title>A link to the paper</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=A_link_to_the_paper&amp;diff=8886"/>
		<updated>2011-03-22T17:19:38Z</updated>

		<summary type="html">&lt;p&gt;Omi: /* Why we need Attribution */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Title=&lt;br /&gt;
Proposed titles:&lt;br /&gt;
* Requirements for Attribution on the Internet&lt;br /&gt;
* Internet Attribution: Between Privacy and Cruciality&lt;br /&gt;
&lt;br /&gt;
=Abstract=&lt;br /&gt;
Present and past situations show a need for improved attribution systems, and arguably, scientific basis for a properly functioning attribution systems are not yet defined. This paper presents limits and advances in the attribution of actions to agents over the internet. It reviews current attribution technologies as well as the limits of those technologies. It also identifies the requirements of a proper attribution system and proposes a distributed (yet cooperative) approach for performing attribution over the internet.&lt;br /&gt;
&lt;br /&gt;
=Introduction=&lt;br /&gt;
===Definition===&lt;br /&gt;
*Binding and act to an agent (person or device)&lt;br /&gt;
*“determining the identity or location of an attacker or an attacker’s intermediary” [Institute for Defense Analyses, 2003]&lt;br /&gt;
&lt;br /&gt;
=The attribution dilemma=&lt;br /&gt;
* While designing an attribution system one needs to consider balancing between attribution and privacy. &lt;br /&gt;
**Sometimes non-attribution is very crucial,to protect political dissidents and whistle-blowers &lt;br /&gt;
* When to decide to track a person and when not to (so as not to intrude privacy)?&lt;br /&gt;
* How to make sure attribution is properly achieved?&lt;br /&gt;
* Who should attribute who/what and why?&lt;br /&gt;
* How far can we trust IP-traceback, stepping stone authentications, link identifications and packet filtering in wedging packets to agents?&lt;br /&gt;
* How much can intermediate systems&#039; cooperation contribute to achieving attribution?&lt;br /&gt;
* Should there be consequences upon attributing an action(s) to an agent? What are they? (punishment, rewarding, etc)&lt;br /&gt;
* How to deal with misleading data sources hiding behind botnets and concealing identities via stepping stones?&lt;br /&gt;
&lt;br /&gt;
==Why is it difficult to achieve attribution?==&lt;br /&gt;
&lt;br /&gt;
The main problem I see is that the way Internet is designed makes it possible and relatively easy to act without compromising identity. Moreover, most current solutions are  based on the same structure and work within the same scope, thus, can only reduce the number of potentially destructive acts or just deal with the consequences.  Of course, no system can prevent 100% of destructive attempts, but some potentially good attribution system should make such attempts highly undesirable and &amp;quot;costly&amp;quot; for an attacker.&lt;br /&gt;
&lt;br /&gt;
*The issue of lack of attribution on the web mostly arises whenever security is compromised. When you&#039;re bombarded with spam, or when a system is under a DoS attack attribution becomes a more appealing notion. Getting a balance between security and privacy is tricky, because once attacks are tracked so will all other traffic. &lt;br /&gt;
*Depending on the type of sender and receiver, different attribution policy will be requested.&lt;br /&gt;
&lt;br /&gt;
In the ideal world, every action on the internet could be bound to a machine and thus to a person. This is done by examining the source IP printed on each moving packet, locating the geographical location of this IP, consulting the ISP covering the location and identifying the person. If an act requires strict attribution (like checking and sending emails), authentication is used. &amp;lt;b&amp;gt;Here is what goes wrong&amp;lt;/b&amp;gt;:&lt;br /&gt;
* IP addresses can be &amp;lt;b&amp;gt;spoofed&amp;lt;/b&amp;gt; and hence, misleads the geographical location.&lt;br /&gt;
* For avoiding that problem, &amp;lt;b&amp;gt;IP traceback&amp;lt;/b&amp;gt; can be performed BUT it requires global cooperation of intermediate systems... it is not there!&lt;br /&gt;
* IPs are &amp;lt;b&amp;gt;not permanently bound&amp;lt;/b&amp;gt; to personnel, so figuring out the person from the IP is not concrete.&lt;br /&gt;
* Network users are &amp;lt;b&amp;gt;not aware of all packets sneaking&amp;lt;/b&amp;gt; to their machines, which allows for malware distribution and hence, the creation of botnets... misleading attribution!&lt;br /&gt;
* &amp;lt;b&amp;gt;Firewalls&amp;lt;/b&amp;gt; and packet filters can be used for avoiding that problem, but they are not 100% efficient.&lt;br /&gt;
* It is not applicable to &amp;lt;b&amp;gt;authenticate&amp;lt;/b&amp;gt; every single action on the internet.&lt;br /&gt;
===Attacks to prevent correct attribution of actions===&lt;br /&gt;
* Stepping stone attack: a common way of attributing attacks to anonymity by using multiple public random agents (as stepping stones) to reach the victim in order to conceal the attacking source. &amp;lt;ref name=&amp;quot;ref1&amp;quot;&amp;gt;S. Staniford-Chen and L. T. Heberlein. Holding intruders accountable on the internet. In SP ’95: Proceedings of the 1995 IEEE Symposium on Security and Privacy, page 39, Washington, DC, USA, 1995. IEEE Computer Society.&amp;lt;/ref&amp;gt;&lt;br /&gt;
* Forgery&lt;br /&gt;
** Identity theft (impersonation)&lt;br /&gt;
** Distribution of malware&lt;br /&gt;
&lt;br /&gt;
==Why we need Attribution==&lt;br /&gt;
&lt;br /&gt;
* For identifying purposes&lt;br /&gt;
** Web Banking&lt;br /&gt;
** eCommerce&lt;br /&gt;
** Web advertisements&lt;br /&gt;
&lt;br /&gt;
* For better protection against cyber attacks:&lt;br /&gt;
** DoS and DDos&lt;br /&gt;
** Forgery and theft&lt;br /&gt;
** Sniffing private traffic&lt;br /&gt;
** Distributing illegal content/malware&lt;br /&gt;
** Sending spam&lt;br /&gt;
** Illegal/undesired intrusion&lt;br /&gt;
&lt;br /&gt;
*For marketing purposes (privacy?)&lt;br /&gt;
** custom (client-based) content generation&lt;br /&gt;
&lt;br /&gt;
==Examples of how attribution is done today==&lt;br /&gt;
* Cookies&lt;br /&gt;
* Authentication Systems&lt;br /&gt;
* IP Addressing&lt;br /&gt;
&lt;br /&gt;
=Requirements for internet attribution system=&lt;br /&gt;
(Unstructured draft)&lt;br /&gt;
&lt;br /&gt;
* Any potentially destructive act should be traceable to a person (and/or organization, group, etc)&lt;br /&gt;
* Traceability should not violate any current privacy-related laws and moral principles&lt;br /&gt;
* Attribution mapping should not be a bijection, in other words action should map to persons, but not vice versa &lt;br /&gt;
* Traceability information should be distributed&lt;br /&gt;
* It should be impossible to collect all traceability data in one place&lt;br /&gt;
* Personal data should be stored by trusted authorities (e.g. governments)&lt;br /&gt;
* Traceability information and personal data should be separated, a connection to be revealed only when needed&lt;br /&gt;
* Attribution system should be incrementally deployable&lt;br /&gt;
* Cost of setting up and maintaining the system for a particular body (person, organization, network) should be considerably less than average losses under current lack of attribution (e.g. DoS, identity theft, etc)&lt;br /&gt;
* Attribution system should be adoptable to different set of rules and principles (laws of countries, organizations&#039; policies, etc), yet remain universal&lt;br /&gt;
&lt;br /&gt;
=Related Work=&lt;br /&gt;
===Against attribution attacks===&lt;br /&gt;
2006: [http://ieeexplore.ieee.org.proxy.library.carleton.ca/stamp/stamp.jsp?tp=&amp;amp;arnumber=1649171 This] paper designed a scalable testbed for evaluating all existing stepping stone attack.&amp;lt;br/&amp;gt;&lt;br /&gt;
2007: [http://www.truststc.org/pubs/168/HeTong06ASC.pdf This] paper proposes a technique for robust detection of stepping stone attack.&lt;br /&gt;
&lt;br /&gt;
===Attributing actions over the internet by attributing packets to agents===&lt;br /&gt;
2004: [http://ieeexplore.ieee.org.proxy.library.carleton.ca/stamp/stamp.jsp?tp=&amp;amp;arnumber=1437851 This] paper uses both &amp;lt;i&amp;gt;link identification&amp;lt;/i&amp;gt; and &amp;lt;i&amp;gt;filtering&amp;lt;/i&amp;gt; for achieving IP traceback WITHOUT the presence of high network cooperation.&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Attributing text/documents/articles/codes to authors (Authorship)===&lt;br /&gt;
2005: [http://ieeexplore.ieee.org.proxy.library.carleton.ca/stamp/stamp.jsp?tp=&amp;amp;arnumber=1556355 This] paper presents a neural network approach for source attribution of text.&amp;lt;br/&amp;gt;&lt;br /&gt;
2006: [http://ieeexplore.ieee.org.proxy.library.carleton.ca/stamp/stamp.jsp?tp=&amp;amp;arnumber=4028874 This] paper presents a process to determine the source of a previously unexamined piece of writing.&amp;lt;br/&amp;gt;&lt;br /&gt;
2007: [http://ieeexplore.ieee.org.proxy.library.carleton.ca/stamp/stamp.jsp?tp=&amp;amp;arnumber=4456854 This] paper uses feature extractions for document attribution.&amp;lt;br/&amp;gt;&lt;br /&gt;
2007: [http://ieeexplore.ieee.org.proxy.library.carleton.ca/stamp/stamp.jsp?tp=&amp;amp;arnumber=4293714 This] paper works to recognize the author of text documents without depending on the document&#039;s theme. It also visualizes this attribution using &amp;quot;blobby objects&amp;quot;.&amp;lt;br/&amp;gt;&lt;br /&gt;
2009: [http://ieeexplore.ieee.org.proxy.library.carleton.ca/stamp/stamp.jsp?tp=&amp;amp;arnumber=5254209 This] paper attributes codes (s/w programs) to persons after learning the personal coding scheme through at least three samples of codes.&amp;lt;br/&amp;gt;&lt;br /&gt;
2011: [http://ieeexplore.ieee.org.proxy.library.carleton.ca/stamp/stamp.jsp?tp=&amp;amp;arnumber=5706693 This] paper attributes user-generated text on the web by using a two-stage supervised and non-supervised learning for achieving authorship attribution on web forum posts.&lt;br /&gt;
&lt;br /&gt;
=References=&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;/div&gt;</summary>
		<author><name>Omi</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=A_link_to_the_paper&amp;diff=8885</id>
		<title>A link to the paper</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=A_link_to_the_paper&amp;diff=8885"/>
		<updated>2011-03-22T17:14:01Z</updated>

		<summary type="html">&lt;p&gt;Omi: /* Why we need Attribution */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Title=&lt;br /&gt;
Proposed titles:&lt;br /&gt;
* Requirements for Attribution on the Internet&lt;br /&gt;
* Internet Attribution: Between Privacy and Cruciality&lt;br /&gt;
&lt;br /&gt;
=Abstract=&lt;br /&gt;
Present and past situations show a need for improved attribution systems, and arguably, scientific basis for a properly functioning attribution systems are not yet defined. This paper presents limits and advances in the attribution of actions to agents over the internet. It reviews current attribution technologies as well as the limits of those technologies. It also identifies the requirements of a proper attribution system and proposes a distributed (yet cooperative) approach for performing attribution over the internet.&lt;br /&gt;
&lt;br /&gt;
=Introduction=&lt;br /&gt;
===Definition===&lt;br /&gt;
*Binding and act to an agent (person or device)&lt;br /&gt;
*“determining the identity or location of an attacker or an attacker’s intermediary” [Institute for Defense Analyses, 2003]&lt;br /&gt;
&lt;br /&gt;
=The attribution dilemma=&lt;br /&gt;
* While designing an attribution system one needs to consider balancing between attribution and privacy. &lt;br /&gt;
**Sometimes non-attribution is very crucial,to protect political dissidents and whistle-blowers &lt;br /&gt;
* When to decide to track a person and when not to (so as not to intrude privacy)?&lt;br /&gt;
* How to make sure attribution is properly achieved?&lt;br /&gt;
* Who should attribute who/what and why?&lt;br /&gt;
* How far can we trust IP-traceback, stepping stone authentications, link identifications and packet filtering in wedging packets to agents?&lt;br /&gt;
* How much can intermediate systems&#039; cooperation contribute to achieving attribution?&lt;br /&gt;
* Should there be consequences upon attributing an action(s) to an agent? What are they? (punishment, rewarding, etc)&lt;br /&gt;
* How to deal with misleading data sources hiding behind botnets and concealing identities via stepping stones?&lt;br /&gt;
&lt;br /&gt;
==Why is it difficult to achieve attribution?==&lt;br /&gt;
&lt;br /&gt;
The main problem I see is that the way Internet is designed makes it possible and relatively easy to act without compromising identity. Moreover, most current solutions are  based on the same structure and work within the same scope, thus, can only reduce the number of potentially destructive acts or just deal with the consequences.  Of course, no system can prevent 100% of destructive attempts, but some potentially good attribution system should make such attempts highly undesirable and &amp;quot;costly&amp;quot; for an attacker.&lt;br /&gt;
&lt;br /&gt;
*The issue of lack of attribution on the web mostly arises whenever security is compromised. When you&#039;re bombarded with spam, or when a system is under a DoS attack attribution becomes a more appealing notion. Getting a balance between security and privacy is tricky, because once attacks are tracked so will all other traffic. &lt;br /&gt;
*Depending on the type of sender and receiver, different attribution policy will be requested.&lt;br /&gt;
&lt;br /&gt;
In the ideal world, every action on the internet could be bound to a machine and thus to a person. This is done by examining the source IP printed on each moving packet, locating the geographical location of this IP, consulting the ISP covering the location and identifying the person. If an act requires strict attribution (like checking and sending emails), authentication is used. &amp;lt;b&amp;gt;Here is what goes wrong&amp;lt;/b&amp;gt;:&lt;br /&gt;
* IP addresses can be &amp;lt;b&amp;gt;spoofed&amp;lt;/b&amp;gt; and hence, misleads the geographical location.&lt;br /&gt;
* For avoiding that problem, &amp;lt;b&amp;gt;IP traceback&amp;lt;/b&amp;gt; can be performed BUT it requires global cooperation of intermediate systems... it is not there!&lt;br /&gt;
* IPs are &amp;lt;b&amp;gt;not permanently bound&amp;lt;/b&amp;gt; to personnel, so figuring out the person from the IP is not concrete.&lt;br /&gt;
* Network users are &amp;lt;b&amp;gt;not aware of all packets sneaking&amp;lt;/b&amp;gt; to their machines, which allows for malware distribution and hence, the creation of botnets... misleading attribution!&lt;br /&gt;
* &amp;lt;b&amp;gt;Firewalls&amp;lt;/b&amp;gt; and packet filters can be used for avoiding that problem, but they are not 100% efficient.&lt;br /&gt;
* It is not applicable to &amp;lt;b&amp;gt;authenticate&amp;lt;/b&amp;gt; every single action on the internet.&lt;br /&gt;
===Attacks to prevent correct attribution of actions===&lt;br /&gt;
* Stepping stone attack: a common way of attributing attacks to anonymity by using multiple public random agents (as stepping stones) to reach the victim in order to conceal the attacking source. &amp;lt;ref name=&amp;quot;ref1&amp;quot;&amp;gt;S. Staniford-Chen and L. T. Heberlein. Holding intruders accountable on the internet. In SP ’95: Proceedings of the 1995 IEEE Symposium on Security and Privacy, page 39, Washington, DC, USA, 1995. IEEE Computer Society.&amp;lt;/ref&amp;gt;&lt;br /&gt;
* Forgery&lt;br /&gt;
** Identity theft (impersonation)&lt;br /&gt;
** Distribution of malware&lt;br /&gt;
&lt;br /&gt;
==Why we need Attribution==&lt;br /&gt;
&lt;br /&gt;
* For identifying purposes&lt;br /&gt;
&lt;br /&gt;
* For better protection against cyber attacks such as:&lt;br /&gt;
** DoS and DDos&lt;br /&gt;
** Forgery and theft&lt;br /&gt;
** Sniffing private traffic&lt;br /&gt;
** Distributing illegal content/malware&lt;br /&gt;
** Sending spam&lt;br /&gt;
** Illegal/undesired intrusion&lt;br /&gt;
&lt;br /&gt;
*For marketing purposes (privacy?)&lt;br /&gt;
** custom (client-based) content generation&lt;br /&gt;
&lt;br /&gt;
==Examples of how attribution is done today==&lt;br /&gt;
* Cookies&lt;br /&gt;
* Authentication Systems&lt;br /&gt;
* IP Addressing&lt;br /&gt;
&lt;br /&gt;
=Requirements for internet attribution system=&lt;br /&gt;
(Unstructured draft)&lt;br /&gt;
&lt;br /&gt;
* Any potentially destructive act should be traceable to a person (and/or organization, group, etc)&lt;br /&gt;
* Traceability should not violate any current privacy-related laws and moral principles&lt;br /&gt;
* Attribution mapping should not be a bijection, in other words action should map to persons, but not vice versa &lt;br /&gt;
* Traceability information should be distributed&lt;br /&gt;
* It should be impossible to collect all traceability data in one place&lt;br /&gt;
* Personal data should be stored by trusted authorities (e.g. governments)&lt;br /&gt;
* Traceability information and personal data should be separated, a connection to be revealed only when needed&lt;br /&gt;
* Attribution system should be incrementally deployable&lt;br /&gt;
* Cost of setting up and maintaining the system for a particular body (person, organization, network) should be considerably less than average losses under current lack of attribution (e.g. DoS, identity theft, etc)&lt;br /&gt;
* Attribution system should be adoptable to different set of rules and principles (laws of countries, organizations&#039; policies, etc), yet remain universal&lt;br /&gt;
&lt;br /&gt;
=Related Work=&lt;br /&gt;
===Against attribution attacks===&lt;br /&gt;
2006: [http://ieeexplore.ieee.org.proxy.library.carleton.ca/stamp/stamp.jsp?tp=&amp;amp;arnumber=1649171 This] paper designed a scalable testbed for evaluating all existing stepping stone attack.&amp;lt;br/&amp;gt;&lt;br /&gt;
2007: [http://www.truststc.org/pubs/168/HeTong06ASC.pdf This] paper proposes a technique for robust detection of stepping stone attack.&lt;br /&gt;
&lt;br /&gt;
===Attributing actions over the internet by attributing packets to agents===&lt;br /&gt;
2004: [http://ieeexplore.ieee.org.proxy.library.carleton.ca/stamp/stamp.jsp?tp=&amp;amp;arnumber=1437851 This] paper uses both &amp;lt;i&amp;gt;link identification&amp;lt;/i&amp;gt; and &amp;lt;i&amp;gt;filtering&amp;lt;/i&amp;gt; for achieving IP traceback WITHOUT the presence of high network cooperation.&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Attributing text/documents/articles/codes to authors (Authorship)===&lt;br /&gt;
2005: [http://ieeexplore.ieee.org.proxy.library.carleton.ca/stamp/stamp.jsp?tp=&amp;amp;arnumber=1556355 This] paper presents a neural network approach for source attribution of text.&amp;lt;br/&amp;gt;&lt;br /&gt;
2006: [http://ieeexplore.ieee.org.proxy.library.carleton.ca/stamp/stamp.jsp?tp=&amp;amp;arnumber=4028874 This] paper presents a process to determine the source of a previously unexamined piece of writing.&amp;lt;br/&amp;gt;&lt;br /&gt;
2007: [http://ieeexplore.ieee.org.proxy.library.carleton.ca/stamp/stamp.jsp?tp=&amp;amp;arnumber=4456854 This] paper uses feature extractions for document attribution.&amp;lt;br/&amp;gt;&lt;br /&gt;
2007: [http://ieeexplore.ieee.org.proxy.library.carleton.ca/stamp/stamp.jsp?tp=&amp;amp;arnumber=4293714 This] paper works to recognize the author of text documents without depending on the document&#039;s theme. It also visualizes this attribution using &amp;quot;blobby objects&amp;quot;.&amp;lt;br/&amp;gt;&lt;br /&gt;
2009: [http://ieeexplore.ieee.org.proxy.library.carleton.ca/stamp/stamp.jsp?tp=&amp;amp;arnumber=5254209 This] paper attributes codes (s/w programs) to persons after learning the personal coding scheme through at least three samples of codes.&amp;lt;br/&amp;gt;&lt;br /&gt;
2011: [http://ieeexplore.ieee.org.proxy.library.carleton.ca/stamp/stamp.jsp?tp=&amp;amp;arnumber=5706693 This] paper attributes user-generated text on the web by using a two-stage supervised and non-supervised learning for achieving authorship attribution on web forum posts.&lt;br /&gt;
&lt;br /&gt;
=References=&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;/div&gt;</summary>
		<author><name>Omi</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=Talk:DistOS-2011W_Attribution&amp;diff=8696</id>
		<title>Talk:DistOS-2011W Attribution</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=Talk:DistOS-2011W_Attribution&amp;diff=8696"/>
		<updated>2011-03-17T18:23:51Z</updated>

		<summary type="html">&lt;p&gt;Omi: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=What Is Attribution?=&lt;br /&gt;
* Binding an act to the Agent.&lt;br /&gt;
[Prof.Anil]&lt;br /&gt;
*Attribution may refer to: Something, such as a quality or characteristic, that is related to a particular possessor; an attribute. &lt;br /&gt;
[Wikipedia]&lt;br /&gt;
*something ascribed; an attribute. &lt;br /&gt;
[Dictionary.com]&lt;br /&gt;
&lt;br /&gt;
==What is an Agent?==&lt;br /&gt;
*An Agent can be a person or machine; The origin of the act.&lt;br /&gt;
&lt;br /&gt;
==What is an Attribute?==&lt;br /&gt;
*to consider as a quality or characteristic of the person, thing, group, etc. [Dictionary.com]&lt;br /&gt;
*something attributed as belonging to a person, thing, group, etc.; a quality, character, characteristic, or property. [Dictionary.com]&lt;br /&gt;
&lt;br /&gt;
=Why do we want Attribution?=&lt;br /&gt;
*We want attribution in order to be able to identify the origin of acts done on the internet. &lt;br /&gt;
&lt;br /&gt;
== How does this affect us?==&lt;br /&gt;
&lt;br /&gt;
=When do we want Attribution?=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=When do we not want Attribution?=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=How is attribution done today?=&lt;br /&gt;
&lt;br /&gt;
==Cookies==&lt;br /&gt;
&lt;br /&gt;
===Pros===&lt;br /&gt;
&lt;br /&gt;
===Cons===&lt;br /&gt;
&lt;br /&gt;
===What is missing?===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Login/ Required Authentication==&lt;br /&gt;
&lt;br /&gt;
===Pros===&lt;br /&gt;
&lt;br /&gt;
===Cons===&lt;br /&gt;
&lt;br /&gt;
===What is missing?===&lt;br /&gt;
&lt;br /&gt;
=How should attribution be done?=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Challenges=&lt;br /&gt;
&lt;br /&gt;
In order to develop an effective attribution system for computers the following challenges need to be addressed:&lt;br /&gt;
&lt;br /&gt;
==Identification==&lt;br /&gt;
&lt;br /&gt;
This is probably the biggest challenge of them all; how to identify users. Identification needs to be unique enough that no two users can ever have the same identification. A strong question is, to what level should this identification be? Is it enough to stop at the computer level, or should it stop at the user level. &lt;br /&gt;
&lt;br /&gt;
* If we choose to only identify computers, and leave responsibility to the owner of the computer, what should happen in the case of a stolen computer that is used to commit virtual crime. Maybe to cover this case it should be treated like cars and have insurance against to protect against theft.&lt;br /&gt;
&lt;br /&gt;
*In the case of identification at the human level, what information should be used in the identification. What information are people willing to give up. People generally like the partial anonymity over the internet, doing this is pretty much asking people to give that up. But maybe this is needed for the better of everyone.&lt;br /&gt;
&lt;br /&gt;
==Privacy==&lt;br /&gt;
&lt;br /&gt;
Being that people like the anonymity of surfing the internet, identification of who is where should only be made possible in the aftereffect when called upon. In other words, people should be able to surf the web anonymously, but in the event that maybe a DOS attach is executed, it can easily be traced back to the attacker.&lt;br /&gt;
&lt;br /&gt;
==Deployment==&lt;br /&gt;
&lt;br /&gt;
There are billions of computers already connected to the internet all over the world today. Development of an attribution system should take this into account.&lt;br /&gt;
&lt;br /&gt;
==Tracing==&lt;br /&gt;
&lt;br /&gt;
This is another key thing to consider. People may argue that this is not an aspect of attribution. On the other hand, tracing is the main or sole reason behind the need for attribution in the first place. Not considering it part of attribution is like BMW not considering the driver in the development of their vehicles. &lt;br /&gt;
&lt;br /&gt;
==Storage==&lt;br /&gt;
&lt;br /&gt;
This ties into identification; where should these identifications be stored and who should be granted access to them.&lt;/div&gt;</summary>
		<author><name>Omi</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=Talk:DistOS-2011W_Attribution&amp;diff=8670</id>
		<title>Talk:DistOS-2011W Attribution</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=Talk:DistOS-2011W_Attribution&amp;diff=8670"/>
		<updated>2011-03-17T17:54:24Z</updated>

		<summary type="html">&lt;p&gt;Omi: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=What Is Attribution?=&lt;br /&gt;
* Binding an act to the Agent.&lt;br /&gt;
&lt;br /&gt;
=Why do we want Attribution?=&lt;br /&gt;
&lt;br /&gt;
== How does this affect us?==&lt;br /&gt;
&lt;br /&gt;
=When do we want Attribution?=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=When do we not want Attribution?=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=How is attribution done today?=&lt;br /&gt;
&lt;br /&gt;
==Cookies==&lt;br /&gt;
&lt;br /&gt;
===Pros===&lt;br /&gt;
&lt;br /&gt;
===Cons===&lt;br /&gt;
&lt;br /&gt;
===What is missing?===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Login/ Required Authentication==&lt;br /&gt;
&lt;br /&gt;
===Pros===&lt;br /&gt;
&lt;br /&gt;
===Cons===&lt;br /&gt;
&lt;br /&gt;
===What is missing?===&lt;br /&gt;
&lt;br /&gt;
=How should attribution be done?=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Challenges=&lt;br /&gt;
&lt;br /&gt;
In order to develop an effective attribution system for computers the following challenges need to be addressed:&lt;br /&gt;
&lt;br /&gt;
==Identification==&lt;br /&gt;
&lt;br /&gt;
This is probably the biggest challenge of them all; how to identify users. Identification needs to be unique enough that no two users can ever have the same identification. A strong question is, to what level should this identification be? Is it enough to stop at the computer level, or should it stop at the user level. &lt;br /&gt;
&lt;br /&gt;
* If we choose to only identify computers, and leave responsibility to the owner of the computer, what should happen in the case of a stolen computer that is used to commit virtual crime. Maybe to cover this case it should be treated like cars and have insurance against to protect against theft.&lt;br /&gt;
&lt;br /&gt;
*In the case of identification at the human level, what information should be used in the identification. What information are people willing to give up. People generally like the partial anonymity over the internet, doing this is pretty much asking people to give that up. But maybe this is needed for the better of everyone.&lt;br /&gt;
&lt;br /&gt;
==Privacy==&lt;br /&gt;
&lt;br /&gt;
Being that people like the anonymity of surfing the internet, identification of who is where should only be made possible in the aftereffect when called upon. In other words, people should be able to surf the web anonymously, but in the event that maybe a DOS attach is executed, it can easily be traced back to the attacker.&lt;br /&gt;
&lt;br /&gt;
==Deployment==&lt;br /&gt;
&lt;br /&gt;
There are billions of computers already connected to the internet all over the world today. Development of an attribution system should take this into account.&lt;br /&gt;
&lt;br /&gt;
==Tracing==&lt;br /&gt;
&lt;br /&gt;
This is another key thing to consider. People may argue that this is not an aspect of attribution. On the other hand, tracing is the main or sole reason behind the need for attribution in the first place. Not considering it part of attribution is like BMW not considering the driver in the development of their vehicles. &lt;br /&gt;
&lt;br /&gt;
==Storage==&lt;br /&gt;
&lt;br /&gt;
This ties into identification; where should these identifications be stored and who should be granted access to them.&lt;/div&gt;</summary>
		<author><name>Omi</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=Talk:DistOS-2011W_Attribution&amp;diff=8669</id>
		<title>Talk:DistOS-2011W Attribution</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=Talk:DistOS-2011W_Attribution&amp;diff=8669"/>
		<updated>2011-03-17T17:53:53Z</updated>

		<summary type="html">&lt;p&gt;Omi: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=What Is Attribution?=&lt;br /&gt;
* Binding an act to the Agent.&lt;br /&gt;
&lt;br /&gt;
=Why do we want Attribution?=&lt;br /&gt;
&lt;br /&gt;
== How does this affect us?==&lt;br /&gt;
&lt;br /&gt;
=When do we want Attribution?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=When do we not want Attribution?=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=How is attribution done today?=&lt;br /&gt;
&lt;br /&gt;
==Cookies==&lt;br /&gt;
&lt;br /&gt;
===Pros===&lt;br /&gt;
&lt;br /&gt;
===Cons===&lt;br /&gt;
&lt;br /&gt;
===What is missing?===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Login/ Required Authentication==&lt;br /&gt;
&lt;br /&gt;
===Pros===&lt;br /&gt;
&lt;br /&gt;
===Cons===&lt;br /&gt;
&lt;br /&gt;
===What is missing?===&lt;br /&gt;
&lt;br /&gt;
=How should attribution be done?=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Challenges=&lt;br /&gt;
&lt;br /&gt;
In order to develop an effective attribution system for computers the following challenges need to be addressed:&lt;br /&gt;
&lt;br /&gt;
==Identification==&lt;br /&gt;
&lt;br /&gt;
This is probably the biggest challenge of them all; how to identify users. Identification needs to be unique enough that no two users can ever have the same identification. A strong question is, to what level should this identification be? Is it enough to stop at the computer level, or should it stop at the user level. &lt;br /&gt;
&lt;br /&gt;
* If we choose to only identify computers, and leave responsibility to the owner of the computer, what should happen in the case of a stolen computer that is used to commit virtual crime. Maybe to cover this case it should be treated like cars and have insurance against to protect against theft.&lt;br /&gt;
&lt;br /&gt;
*In the case of identification at the human level, what information should be used in the identification. What information are people willing to give up. People generally like the partial anonymity over the internet, doing this is pretty much asking people to give that up. But maybe this is needed for the better of everyone.&lt;br /&gt;
&lt;br /&gt;
==Privacy==&lt;br /&gt;
&lt;br /&gt;
Being that people like the anonymity of surfing the internet, identification of who is where should only be made possible in the aftereffect when called upon. In other words, people should be able to surf the web anonymously, but in the event that maybe a DOS attach is executed, it can easily be traced back to the attacker.&lt;br /&gt;
&lt;br /&gt;
==Deployment==&lt;br /&gt;
&lt;br /&gt;
There are billions of computers already connected to the internet all over the world today. Development of an attribution system should take this into account.&lt;br /&gt;
&lt;br /&gt;
==Tracing==&lt;br /&gt;
&lt;br /&gt;
This is another key thing to consider. People may argue that this is not an aspect of attribution. On the other hand, tracing is the main or sole reason behind the need for attribution in the first place. Not considering it part of attribution is like BMW not considering the driver in the development of their vehicles. &lt;br /&gt;
&lt;br /&gt;
==Storage==&lt;br /&gt;
&lt;br /&gt;
This ties into identification; where should these identifications be stored and who should be granted access to them.&lt;/div&gt;</summary>
		<author><name>Omi</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=Talk:DistOS-2011W_Attribution&amp;diff=8491</id>
		<title>Talk:DistOS-2011W Attribution</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=Talk:DistOS-2011W_Attribution&amp;diff=8491"/>
		<updated>2011-03-13T21:24:02Z</updated>

		<summary type="html">&lt;p&gt;Omi: Created page with &amp;quot;=Challenges=  In order to develop an effective attribution system for computers the following challenges need to be addressed:  ==Identification==  This is probably the biggest c…&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Challenges=&lt;br /&gt;
&lt;br /&gt;
In order to develop an effective attribution system for computers the following challenges need to be addressed:&lt;br /&gt;
&lt;br /&gt;
==Identification==&lt;br /&gt;
&lt;br /&gt;
This is probably the biggest challenge of them all; how to identify users. Identification needs to be unique enough that no two users can ever have the same identification. A strong question is, to what level should this identification be? Is it enough to stop at the computer level, or should it stop at the user level. &lt;br /&gt;
&lt;br /&gt;
* If we choose to only identify computers, and leave responsibility to the owner of the computer, what should happen in the case of a stolen computer that is used to commit virtual crime. Maybe to cover this case it should be treated like cars and have insurance against to protect against theft.&lt;br /&gt;
&lt;br /&gt;
*In the case of identification at the human level, what information should be used in the identification. What information are people willing to give up. People generally like the partial anonymity over the internet, doing this is pretty much asking people to give that up. But maybe this is needed for the better of everyone.&lt;br /&gt;
&lt;br /&gt;
==Privacy==&lt;br /&gt;
&lt;br /&gt;
Being that people like the anonymity of surfing the internet, identification of who is where should only be made possible in the aftereffect when called upon. In other words, people should be able to surf the web anonymously, but in the event that maybe a DOS attach is executed, it can easily be traced back to the attacker.&lt;br /&gt;
&lt;br /&gt;
==Deployment==&lt;br /&gt;
&lt;br /&gt;
There are billions of computers already connected to the internet all over the world today. Development of an attribution system should take this into account.&lt;br /&gt;
&lt;br /&gt;
==Tracing==&lt;br /&gt;
&lt;br /&gt;
This is another key thing to consider. People may argue that this is not an aspect of attribution. On the other hand, tracing is the main or sole reason behind the need for attribution in the first place. Not considering it part of attribution is like BMW not considering the driver in the development of their vehicles. &lt;br /&gt;
&lt;br /&gt;
==Storage==&lt;br /&gt;
&lt;br /&gt;
This ties into identification; where should these identifications be stored and who should be granted access to them.&lt;/div&gt;</summary>
		<author><name>Omi</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=DistOS-2011W_Distributed_File_Sharing&amp;diff=8480</id>
		<title>DistOS-2011W Distributed File Sharing</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=DistOS-2011W_Distributed_File_Sharing&amp;diff=8480"/>
		<updated>2011-03-13T18:16:13Z</updated>

		<summary type="html">&lt;p&gt;Omi: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Author: Omi Iyamu&lt;br /&gt;
&lt;br /&gt;
oiyamu@gmail.com&lt;br /&gt;
&lt;br /&gt;
PDF available at [[File:Example.jpg] PDF]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;i&amp;gt;&amp;lt;b&amp;gt;Abstract&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
File sharing is a tool necessary for group collaboration, a simple way to make your files available to others, and nice way to access file contents across multiple machines. This paper discusses on a high-level the different file-sharing systems currently being used and the different strategies they employ to facilitate file sharing. In section 2, different file sharing systems are categorized based on scale into Local Area Network sharing and Internet based sharing. Section 3 discusses the steps involved in the process of sharing an actual file using the different file sharing systems discussed previously in section 2. Finally in section 4, this paper discusses the challenges that need to be overcome to develop an effective file sharing system for a distributed operating system and gives some suggestions to how some of them may be overcome.&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Introduction=&lt;br /&gt;
&lt;br /&gt;
File sharing in a distributed environment should differ from that in a local environment. In this paper, whenever a mention of a distributed operating system is made, it will be done so with reference to an Internet based operating system. As such, the distributed environment that will be talked about will be the Internet. Whenever a local environment is mentioned, it will be done so with reference to a local area network.&lt;br /&gt;
&lt;br /&gt;
The scope of this paper is just a review of a few file-sharing systems. The motivation is to determine what challenges need to be addressed in the development of a file sharing system that can be deployed on a distributed operating system.&lt;br /&gt;
&lt;br /&gt;
Discussions in this paper will be on a high level in order to enable readers that do not have strong technical background ease of understanding. However, a small level of computer science or similar background is needed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=File Sharing systems=&lt;br /&gt;
&lt;br /&gt;
The main differences between different file sharing systems are the modes of access and the methods used to transfer the shared files. There are numerous types of file sharing systems out there; I have categorized them into two types based on scale. Section 2.1 talks about Local Area Network sharing, which can be considered as a small-scale file sharing system. Section 2.2 talks about Internet based file-sharing systems, which can be considered large scale file sharing.&lt;br /&gt;
&lt;br /&gt;
==Local Area Network Sharing==&lt;br /&gt;
&lt;br /&gt;
On a Local Area Network (LAN), the computers present on a LAN have some degree of trust between them. The key advantages to using sharing systems designed for Local Area Networks is the ability to set access restrictions to files being shared and increased transfer speeds. Examples of such are AFP (Apple Filing Protocol) used by Apple and SMB (Server Message Block) used by Windows.&lt;br /&gt;
&lt;br /&gt;
==Internet Based File Sharing==&lt;br /&gt;
&lt;br /&gt;
There are a number of Internet based or online file sharing systems that take different approaches to file sharing. Some examples are peer-2-peer networks, discussed in section 2.2.1, and FTP (File Transfer Protocol), discussed in section 2.2.2.&lt;br /&gt;
&lt;br /&gt;
===Peer-2-peer Systems===&lt;br /&gt;
&lt;br /&gt;
Peer-2-peer is one of the most commonly used file sharing systems out there. User computers act as both client and server nodes and share content in between themselves. There are two main styles to which peer-2-peer file-sharing systems work by, one involves the use of torrents and the other does not.&lt;br /&gt;
&lt;br /&gt;
* Torrent style&lt;br /&gt;
Out of all the torrent based peer-2-peer networks Bit-torrent by is the most commonly used today [1]. In itself, Bit-torrent is just a file downloading protocol that enables simulations downloading from different sources holding the exact same file.&lt;br /&gt;
&lt;br /&gt;
* Non-torrent style&lt;br /&gt;
This is more of the older style peer-2-pper networks like Kazaa. Unlike torrent networks, there is a centralized server that holds information about who is sharing what files and downloading is done from one single computer to another single computer.&lt;br /&gt;
&lt;br /&gt;
===File Transfer Protocol===&lt;br /&gt;
&lt;br /&gt;
FTP as the name suggests is a file transfer protocol. File transfer is made from a single computer source to a single receiving computer. FTP file systems are often password protected, this is to ensure only authorized users access the files. To access an FTP file system you need to know the IP address or the domain name to the computer to which you want to access. When a file is requested for, the complete file is downloaded onto the requesting computer.&lt;br /&gt;
&lt;br /&gt;
=File Sharing Process=&lt;br /&gt;
&lt;br /&gt;
There are numerous file sharing protocols available and can generally be broken up into three main steps, the sharing of the file itself, the finding for the shared file, and the accessing or transferring of the shared file. In this section we will be discussing the process for peer-2-peer networks and Local Area Networks.&lt;br /&gt;
&lt;br /&gt;
==Sharing the file==&lt;br /&gt;
&lt;br /&gt;
The sharing of the actual file is the process of setting up a file for sharing. Different file sharing systems follow a different process of actually getting a file to be enabled for sharing.&lt;br /&gt;
&lt;br /&gt;
===Peer-2-peer sharing===&lt;br /&gt;
&lt;br /&gt;
Peer-2-peer torrent networks generally follow a submission process towards file sharing. With Bit torrent, a user injects new content buy uploading a torrent file to a torrent search website such as supernova.com and creating a seed with the first copy of the file [1]. Bit torrent has a mediator system that checks the content of files to make sure they are what they say they are. When a user submits a new file, a mediator has to check it before it is allowed into the sharing network. After a user has submitted several files that passed mediation, he will then be promoted to unmediated submitter status. This means the user is trusted enough to submit files that will be directly injected into the sharing network without having to be mediated [1]. Non-torrent peer-2-peer networks don’t follow this submission system; all you have to do to share a file is usually just to place it in the share directory used buy the third-party peer-2-peer application.&lt;br /&gt;
&lt;br /&gt;
There is no notion of setting access restrictions with peer-2-peer file sharing. Users generally have unrestricted access to shared content; they can be downloaded, edited, and re-uploaded by all.&lt;br /&gt;
&lt;br /&gt;
===Local Area Network sharing===&lt;br /&gt;
&lt;br /&gt;
In local Area Networks, setting up a file to be shared does not involve any submission process or mediation. Being that members of the network have some level of trust between them, to setup a file for sharing, all you have to do is go into the file’s properties and enable its sharing property. Access restrictions can also be set to restrict read and or write properties of the files or directories being shared.&lt;br /&gt;
&lt;br /&gt;
* Read only&lt;br /&gt;
In this setting the user is only allowed to view contents of the file. This is to say that no changes can be made to the root file. The only way around this is to copy the particular file over and make changes to your local copy.&lt;br /&gt;
&lt;br /&gt;
* Write only&lt;br /&gt;
This setting is used on directories. In this setting a directory will be turned into a drop box. That is to say another user on the network can write files to the given directory but cannot view the contents of the directory. Access to read the contents of the directory is only for the owner of the directory.&lt;br /&gt;
&lt;br /&gt;
* Read and Write&lt;br /&gt;
This setting will allow the user to make changes the file, and save these changes on to the root file. In this, the file does not need to be copied over. In a directory case, contents of the directory can be modified remotely.&lt;br /&gt;
&lt;br /&gt;
==Locating shared files==&lt;br /&gt;
&lt;br /&gt;
People share files so that themselves and or other people may access it remotely. As such, finding a file that has been shared is a key step in the process of sharing. Methods of locating shared files differ between sharing systems.&lt;br /&gt;
&lt;br /&gt;
===Peer-2-peer file search===&lt;br /&gt;
&lt;br /&gt;
n peer-2-peer systems, finding the shared files you want is pretty easy. Non-torrent networks like Kazaa have a centralized server that holds lists of who is sharing what [3]. In order to search thorough this list, a third-party peer-2-peer application is needed. However cleaning of the file lists on these types of systems is poor which results in users sometimes downloading “fake” files.&lt;br /&gt;
&lt;br /&gt;
In torrent networks like Bit-torrent where the shared files are checked on submission, the likelihood of downloading a fake file is reduced. However, searching for a shared file is done via third party search engines like supernova.com and isohunt.com.&lt;br /&gt;
&lt;br /&gt;
===Local Area Network file search===&lt;br /&gt;
&lt;br /&gt;
In local area networks, in order to find shared files you need to know where the file is located. This is to say that if lets say you are looking for a particular file and you don’t know the location, you may have to comb through the entire network manually in search of this file.&lt;br /&gt;
&lt;br /&gt;
==Transferring the file==&lt;br /&gt;
&lt;br /&gt;
In order to access a file over any network, some level of transfer needs to be made whether temporary or permanent. Files are transferred temporarily only if they only need to be viewed or edited. Files are transferred permanently if it is being copied or moved completely. File sharing systems like peer-2-peer only transfer files permanently, whereas most local file sharing systems over a local area network will only make a permanent transfer when a copy or cut command is executed.&lt;br /&gt;
&lt;br /&gt;
===Peer-2-peer file transfer===&lt;br /&gt;
&lt;br /&gt;
After the user has identified his target file. Depending on the type of the peer-2-peer network, there are two main ways the file can be transferred to the user.&lt;br /&gt;
&lt;br /&gt;
* Single user to single user transfer&lt;br /&gt;
In this style of transfer, the complete file is downloaded from a single source. Non-torrent peer-2-peer networks use this style of transfer. Torrent networks only uses this style when dealing with shared files that only have a single seed.&lt;br /&gt;
&lt;br /&gt;
* Multiple users to single user transfer&lt;br /&gt;
In this style of transfer, the file is simultaneously downloaded from multiple sources. This is the style more used by torrent networks like Bit torrent. Files shared on torrent networks are split into chunks. The torrent file itself hold information about seeds for the particular shared file. As such, different chunks of the shared file is downloaded simultaneously onto the users computer and reassembled. This way much higher download speeds can be achieved compared to the single-to-single user transfers.&lt;br /&gt;
&lt;br /&gt;
===Local operating system file transfer===&lt;br /&gt;
&lt;br /&gt;
In a local area network setting, files are generally viewed from the root. Technically, the complete or portions of the file are transferred to main memory and then viewed form there, the same way it would if you had a local copy. The only difference being that instead of the transfer being made from your local storage (hard drive) to main memory, the transfer is from a remote storage device somewhere on the network to main memory. The only real reason why this can be done is that transfer speeds over a local network is faster than over the Internet. As such, access restrictions can properly be enforced.&lt;br /&gt;
&lt;br /&gt;
=Sharing of Distributed Files=&lt;br /&gt;
&lt;br /&gt;
When we think of file sharing we generally think of the file location being on our computer. With a distributed file system the location of the file to which we want to share most likely will not physically be on our computer. This brings a level of complexity to the actual sharing of the file.&lt;br /&gt;
&lt;br /&gt;
Sharing of a file in a distributed operating system’s case will have to be scalable enough that it can be deployed over the Internet. This means that traditional AFP and SMB approaches will have difficulty scaling up to the task. Examples of file sharing systems that already work on this level as discussed are peer-2-peer networks and FTP. Defining an effective file sharing system for a distributed operating system the following challenges need to be addressed.&lt;br /&gt;
&lt;br /&gt;
* Transfer speed&lt;br /&gt;
When a file is to be transferred it should be done so with the highest speed possible. A torrent approach may not necessarily be a complete answer as multiple copies of the file is needed to improve speed. This will be a huge problem with sensitive files in which a user may not want multiple copies of it located all over the internet.&lt;br /&gt;
&lt;br /&gt;
* Duplicate files&lt;br /&gt;
As it is already, common files like music files may have millions of copies located on different computers all over the world. For a distributed file system, having so many copies of the same file is an ineffective use of space and should be avoided where possible.&lt;br /&gt;
&lt;br /&gt;
* File integrity&lt;br /&gt;
Corrupted files or fake files are an issue in sharing because they may end up corrupting computers that access the file. One way this is mitigated today is through reporting systems in which users can report a fake or corrupted file to the host or source. Another approach is by plain old checking systems that go through files checking its integrity. In torrent systems, as previously discussed, mediators manually do the checking of files.&lt;br /&gt;
&lt;br /&gt;
* File backup&lt;br /&gt;
This is a solution to help file integrity as well as data loss. If it is determined that a file has lost its integrity, there needs to be a mechanism to restore the integrity of the file. The easiest way to do this is to restore the file from a good backup. Data or file loss can happen in a lot of ways, for instance if a server in which the file is stored goes down. In this case, a back up copy needs to be located somewhere else that the user can access.&lt;br /&gt;
&lt;br /&gt;
* Access restrictions&lt;br /&gt;
File sharing systems like FTP, AFP and SMB can restrict a users ability to access a particular file with authentication mechanisms. Having such capabilities in a distributed environment for sharing is certainly necessary in order to have a more flexible and restricted sharing ability. AFP and SMB take access restrictions further to also restrict read and write capabilities.&lt;br /&gt;
&lt;br /&gt;
* Search capability&lt;br /&gt;
This can be looked at as more of a convenience measure than a need; it would be nice for a user to be able to search through all the shared files that he or she has access. Having this will certainly aid in the development of more user friendly distributed operating systems.&lt;br /&gt;
&lt;br /&gt;
=Conclusion=&lt;br /&gt;
&lt;br /&gt;
File sharing is a need necessary to accomplish many collaborative tasks not only in the work place, but in other areas as well. We have discussed the differences in some of the popular file sharing systems being used today like peer-2-peer networks and Local Area Network file sharing. The similarity between both of these is that the shared files are stored on the host computers. In a distributed environment this may not be the case. Through the study of the current file sharing systems, we have found that in order to develop an effective file sharing system for a distributed operating system, challenges such as, transfer speeds, duplicate files, file integrity, file backup, access restrictions, and search capabilities need to be addressed. Current file sharing systems address some of these issues but no single one addresses all of them properly. As such maybe a hybrid between the Local Area Network sharing and Internet based file sharing is needed.&lt;br /&gt;
&lt;br /&gt;
=References=&lt;br /&gt;
&lt;br /&gt;
[1] J. Pouwelse, P. Garbacki, D. Epema, H. Sips. The Bit-torrent P2P File-Sharing System. Delft University of Technology, Delft, The Netherlands.&lt;br /&gt;
&lt;br /&gt;
[2] R. Bhagwan, S. Savage, and G. M. Voelker. Understanding availability. In Inter- national Workshop on Peer to Peer Systems, Berkeley, CA, USA, February 2003.&lt;br /&gt;
&lt;br /&gt;
[3] B. Cohen. Incentives build robustness in bittorrent. In Workshop on Economics of Peer-to- Peer Systems, Berkeley, USA, May 2003.&lt;br /&gt;
&lt;br /&gt;
[4] S. Saroiu, P. Krishna, G. Steven, D. Gribble. A Measurement Study of Peer-to-peer File Sharing Systems. University of Washington, Seattle, WA, USA.&lt;br /&gt;
&lt;br /&gt;
[5] N. Leibowitz, M. Ripeanu, and A. Wierzbicki. Deconstructing the kazaa network. In 3rd IEEE Workshop on Internet Applications (WIAPP’03), San Jose, CA, USA, June 2003.&lt;br /&gt;
&lt;br /&gt;
[6] R. Sherwood, R. Braud, and B. Bhattacharjee. Slurpie: A cooperative bulk data transfer protocol. In IEEE Infocom, Honk Kong, China, March 2004.&lt;br /&gt;
&lt;br /&gt;
[7] B.T. Loo, J.M. Hellerstein, R. Huebsch, S. Shenker, I. Stoica. Enhancing P2P File-Sharing with an Internet-Scale Query Processor.UC Berkeley. VLDB Conference, Toronto, Canada, 2004.&lt;/div&gt;</summary>
		<author><name>Omi</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=DistOS-2011W_Distributed_File_Sharing&amp;diff=8479</id>
		<title>DistOS-2011W Distributed File Sharing</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=DistOS-2011W_Distributed_File_Sharing&amp;diff=8479"/>
		<updated>2011-03-13T18:14:25Z</updated>

		<summary type="html">&lt;p&gt;Omi: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Author: Omi Iyamu&lt;br /&gt;
oiyamu@gmail.com&lt;br /&gt;
&lt;br /&gt;
PDF available at [PDF]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;i&amp;gt;&amp;lt;b&amp;gt;Abstract&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
File sharing is a tool necessary for group collaboration, a simple way to make your files available to others, and nice way to access file contents across multiple machines. This paper discusses on a high-level the different file-sharing systems currently being used and the different strategies they employ to facilitate file sharing. In section 2, different file sharing systems are categorized based on scale into Local Area Network sharing and Internet based sharing. Section 3 discusses the steps involved in the process of sharing an actual file using the different file sharing systems discussed previously in section 2. Finally in section 4, this paper discusses the challenges that need to be overcome to develop an effective file sharing system for a distributed operating system and gives some suggestions to how some of them may be overcome.&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Introduction=&lt;br /&gt;
&lt;br /&gt;
File sharing in a distributed environment should differ from that in a local environment. In this paper, whenever a mention of a distributed operating system is made, it will be done so with reference to an Internet based operating system. As such, the distributed environment that will be talked about will be the Internet. Whenever a local environment is mentioned, it will be done so with reference to a local area network.&lt;br /&gt;
&lt;br /&gt;
The scope of this paper is just a review of a few file-sharing systems. The motivation is to determine what challenges need to be addressed in the development of a file sharing system that can be deployed on a distributed operating system.&lt;br /&gt;
&lt;br /&gt;
Discussions in this paper will be on a high level in order to enable readers that do not have strong technical background ease of understanding. However, a small level of computer science or similar background is needed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=File Sharing systems=&lt;br /&gt;
&lt;br /&gt;
The main differences between different file sharing systems are the modes of access and the methods used to transfer the shared files. There are numerous types of file sharing systems out there; I have categorized them into two types based on scale. Section 2.1 talks about Local Area Network sharing, which can be considered as a small-scale file sharing system. Section 2.2 talks about Internet based file-sharing systems, which can be considered large scale file sharing.&lt;br /&gt;
&lt;br /&gt;
==Local Area Network Sharing==&lt;br /&gt;
&lt;br /&gt;
On a Local Area Network (LAN), the computers present on a LAN have some degree of trust between them. The key advantages to using sharing systems designed for Local Area Networks is the ability to set access restrictions to files being shared and increased transfer speeds. Examples of such are AFP (Apple Filing Protocol) used by Apple and SMB (Server Message Block) used by Windows.&lt;br /&gt;
&lt;br /&gt;
==Internet Based File Sharing==&lt;br /&gt;
&lt;br /&gt;
There are a number of Internet based or online file sharing systems that take different approaches to file sharing. Some examples are peer-2-peer networks, discussed in section 2.2.1, and FTP (File Transfer Protocol), discussed in section 2.2.2.&lt;br /&gt;
&lt;br /&gt;
===Peer-2-peer Systems===&lt;br /&gt;
&lt;br /&gt;
Peer-2-peer is one of the most commonly used file sharing systems out there. User computers act as both client and server nodes and share content in between themselves. There are two main styles to which peer-2-peer file-sharing systems work by, one involves the use of torrents and the other does not.&lt;br /&gt;
&lt;br /&gt;
* Torrent style&lt;br /&gt;
Out of all the torrent based peer-2-peer networks Bit-torrent by is the most commonly used today [1]. In itself, Bit-torrent is just a file downloading protocol that enables simulations downloading from different sources holding the exact same file.&lt;br /&gt;
&lt;br /&gt;
* Non-torrent style&lt;br /&gt;
This is more of the older style peer-2-pper networks like Kazaa. Unlike torrent networks, there is a centralized server that holds information about who is sharing what files and downloading is done from one single computer to another single computer.&lt;br /&gt;
&lt;br /&gt;
===File Transfer Protocol===&lt;br /&gt;
&lt;br /&gt;
FTP as the name suggests is a file transfer protocol. File transfer is made from a single computer source to a single receiving computer. FTP file systems are often password protected, this is to ensure only authorized users access the files. To access an FTP file system you need to know the IP address or the domain name to the computer to which you want to access. When a file is requested for, the complete file is downloaded onto the requesting computer.&lt;br /&gt;
&lt;br /&gt;
=File Sharing Process=&lt;br /&gt;
&lt;br /&gt;
There are numerous file sharing protocols available and can generally be broken up into three main steps, the sharing of the file itself, the finding for the shared file, and the accessing or transferring of the shared file. In this section we will be discussing the process for peer-2-peer networks and Local Area Networks.&lt;br /&gt;
&lt;br /&gt;
==Sharing the file==&lt;br /&gt;
&lt;br /&gt;
The sharing of the actual file is the process of setting up a file for sharing. Different file sharing systems follow a different process of actually getting a file to be enabled for sharing.&lt;br /&gt;
&lt;br /&gt;
===Peer-2-peer sharing===&lt;br /&gt;
&lt;br /&gt;
Peer-2-peer torrent networks generally follow a submission process towards file sharing. With Bit torrent, a user injects new content buy uploading a torrent file to a torrent search website such as supernova.com and creating a seed with the first copy of the file [1]. Bit torrent has a mediator system that checks the content of files to make sure they are what they say they are. When a user submits a new file, a mediator has to check it before it is allowed into the sharing network. After a user has submitted several files that passed mediation, he will then be promoted to unmediated submitter status. This means the user is trusted enough to submit files that will be directly injected into the sharing network without having to be mediated [1]. Non-torrent peer-2-peer networks don’t follow this submission system; all you have to do to share a file is usually just to place it in the share directory used buy the third-party peer-2-peer application.&lt;br /&gt;
&lt;br /&gt;
There is no notion of setting access restrictions with peer-2-peer file sharing. Users generally have unrestricted access to shared content; they can be downloaded, edited, and re-uploaded by all.&lt;br /&gt;
&lt;br /&gt;
===Local Area Network sharing===&lt;br /&gt;
&lt;br /&gt;
In local Area Networks, setting up a file to be shared does not involve any submission process or mediation. Being that members of the network have some level of trust between them, to setup a file for sharing, all you have to do is go into the file’s properties and enable its sharing property. Access restrictions can also be set to restrict read and or write properties of the files or directories being shared.&lt;br /&gt;
&lt;br /&gt;
* Read only&lt;br /&gt;
In this setting the user is only allowed to view contents of the file. This is to say that no changes can be made to the root file. The only way around this is to copy the particular file over and make changes to your local copy.&lt;br /&gt;
&lt;br /&gt;
* Write only&lt;br /&gt;
This setting is used on directories. In this setting a directory will be turned into a drop box. That is to say another user on the network can write files to the given directory but cannot view the contents of the directory. Access to read the contents of the directory is only for the owner of the directory.&lt;br /&gt;
&lt;br /&gt;
* Read and Write&lt;br /&gt;
This setting will allow the user to make changes the file, and save these changes on to the root file. In this, the file does not need to be copied over. In a directory case, contents of the directory can be modified remotely.&lt;br /&gt;
&lt;br /&gt;
==Locating shared files==&lt;br /&gt;
&lt;br /&gt;
People share files so that themselves and or other people may access it remotely. As such, finding a file that has been shared is a key step in the process of sharing. Methods of locating shared files differ between sharing systems.&lt;br /&gt;
&lt;br /&gt;
===Peer-2-peer file search===&lt;br /&gt;
&lt;br /&gt;
n peer-2-peer systems, finding the shared files you want is pretty easy. Non-torrent networks like Kazaa have a centralized server that holds lists of who is sharing what [3]. In order to search thorough this list, a third-party peer-2-peer application is needed. However cleaning of the file lists on these types of systems is poor which results in users sometimes downloading “fake” files.&lt;br /&gt;
&lt;br /&gt;
In torrent networks like Bit-torrent where the shared files are checked on submission, the likelihood of downloading a fake file is reduced. However, searching for a shared file is done via third party search engines like supernova.com and isohunt.com.&lt;br /&gt;
&lt;br /&gt;
===Local Area Network file search===&lt;br /&gt;
&lt;br /&gt;
In local area networks, in order to find shared files you need to know where the file is located. This is to say that if lets say you are looking for a particular file and you don’t know the location, you may have to comb through the entire network manually in search of this file.&lt;br /&gt;
&lt;br /&gt;
==Transferring the file==&lt;br /&gt;
&lt;br /&gt;
In order to access a file over any network, some level of transfer needs to be made whether temporary or permanent. Files are transferred temporarily only if they only need to be viewed or edited. Files are transferred permanently if it is being copied or moved completely. File sharing systems like peer-2-peer only transfer files permanently, whereas most local file sharing systems over a local area network will only make a permanent transfer when a copy or cut command is executed.&lt;br /&gt;
&lt;br /&gt;
===Peer-2-peer file transfer===&lt;br /&gt;
&lt;br /&gt;
After the user has identified his target file. Depending on the type of the peer-2-peer network, there are two main ways the file can be transferred to the user.&lt;br /&gt;
&lt;br /&gt;
* Single user to single user transfer&lt;br /&gt;
In this style of transfer, the complete file is downloaded from a single source. Non-torrent peer-2-peer networks use this style of transfer. Torrent networks only uses this style when dealing with shared files that only have a single seed.&lt;br /&gt;
&lt;br /&gt;
* Multiple users to single user transfer&lt;br /&gt;
In this style of transfer, the file is simultaneously downloaded from multiple sources. This is the style more used by torrent networks like Bit torrent. Files shared on torrent networks are split into chunks. The torrent file itself hold information about seeds for the particular shared file. As such, different chunks of the shared file is downloaded simultaneously onto the users computer and reassembled. This way much higher download speeds can be achieved compared to the single-to-single user transfers.&lt;br /&gt;
&lt;br /&gt;
===Local operating system file transfer===&lt;br /&gt;
&lt;br /&gt;
In a local area network setting, files are generally viewed from the root. Technically, the complete or portions of the file are transferred to main memory and then viewed form there, the same way it would if you had a local copy. The only difference being that instead of the transfer being made from your local storage (hard drive) to main memory, the transfer is from a remote storage device somewhere on the network to main memory. The only real reason why this can be done is that transfer speeds over a local network is faster than over the Internet. As such, access restrictions can properly be enforced.&lt;br /&gt;
&lt;br /&gt;
=Sharing of Distributed Files=&lt;br /&gt;
&lt;br /&gt;
When we think of file sharing we generally think of the file location being on our computer. With a distributed file system the location of the file to which we want to share most likely will not physically be on our computer. This brings a level of complexity to the actual sharing of the file.&lt;br /&gt;
&lt;br /&gt;
Sharing of a file in a distributed operating system’s case will have to be scalable enough that it can be deployed over the Internet. This means that traditional AFP and SMB approaches will have difficulty scaling up to the task. Examples of file sharing systems that already work on this level as discussed are peer-2-peer networks and FTP. Defining an effective file sharing system for a distributed operating system the following challenges need to be addressed.&lt;br /&gt;
&lt;br /&gt;
* Transfer speed&lt;br /&gt;
When a file is to be transferred it should be done so with the highest speed possible. A torrent approach may not necessarily be a complete answer as multiple copies of the file is needed to improve speed. This will be a huge problem with sensitive files in which a user may not want multiple copies of it located all over the internet.&lt;br /&gt;
&lt;br /&gt;
* Duplicate files&lt;br /&gt;
As it is already, common files like music files may have millions of copies located on different computers all over the world. For a distributed file system, having so many copies of the same file is an ineffective use of space and should be avoided where possible.&lt;br /&gt;
&lt;br /&gt;
* File integrity&lt;br /&gt;
Corrupted files or fake files are an issue in sharing because they may end up corrupting computers that access the file. One way this is mitigated today is through reporting systems in which users can report a fake or corrupted file to the host or source. Another approach is by plain old checking systems that go through files checking its integrity. In torrent systems, as previously discussed, mediators manually do the checking of files.&lt;br /&gt;
&lt;br /&gt;
* File backup&lt;br /&gt;
This is a solution to help file integrity as well as data loss. If it is determined that a file has lost its integrity, there needs to be a mechanism to restore the integrity of the file. The easiest way to do this is to restore the file from a good backup. Data or file loss can happen in a lot of ways, for instance if a server in which the file is stored goes down. In this case, a back up copy needs to be located somewhere else that the user can access.&lt;br /&gt;
&lt;br /&gt;
* Access restrictions&lt;br /&gt;
File sharing systems like FTP, AFP and SMB can restrict a users ability to access a particular file with authentication mechanisms. Having such capabilities in a distributed environment for sharing is certainly necessary in order to have a more flexible and restricted sharing ability. AFP and SMB take access restrictions further to also restrict read and write capabilities.&lt;br /&gt;
&lt;br /&gt;
* Search capability&lt;br /&gt;
This can be looked at as more of a convenience measure than a need; it would be nice for a user to be able to search through all the shared files that he or she has access. Having this will certainly aid in the development of more user friendly distributed operating systems.&lt;br /&gt;
&lt;br /&gt;
=Conclusion=&lt;br /&gt;
&lt;br /&gt;
File sharing is a need necessary to accomplish many collaborative tasks not only in the work place, but in other areas as well. We have discussed the differences in some of the popular file sharing systems being used today like peer-2-peer networks and Local Area Network file sharing. The similarity between both of these is that the shared files are stored on the host computers. In a distributed environment this may not be the case. Through the study of the current file sharing systems, we have found that in order to develop an effective file sharing system for a distributed operating system, challenges such as, transfer speeds, duplicate files, file integrity, file backup, access restrictions, and search capabilities need to be addressed. Current file sharing systems address some of these issues but no single one addresses all of them properly. As such maybe a hybrid between the Local Area Network sharing and Internet based file sharing is needed.&lt;br /&gt;
&lt;br /&gt;
=References=&lt;br /&gt;
&lt;br /&gt;
[1] J. Pouwelse, P. Garbacki, D. Epema, H. Sips. The Bit-torrent P2P File-Sharing System. Delft University of Technology, Delft, The Netherlands.&lt;br /&gt;
&lt;br /&gt;
[2] R. Bhagwan, S. Savage, and G. M. Voelker. Understanding availability. In Inter- national Workshop on Peer to Peer Systems, Berkeley, CA, USA, February 2003.&lt;br /&gt;
&lt;br /&gt;
[3] B. Cohen. Incentives build robustness in bittorrent. In Workshop on Economics of Peer-to- Peer Systems, Berkeley, USA, May 2003.&lt;br /&gt;
&lt;br /&gt;
[4] S. Saroiu, P. Krishna, G. Steven, D. Gribble. A Measurement Study of Peer-to-peer File Sharing Systems. University of Washington, Seattle, WA, USA.&lt;br /&gt;
&lt;br /&gt;
[5] N. Leibowitz, M. Ripeanu, and A. Wierzbicki. Deconstructing the kazaa network. In 3rd IEEE Workshop on Internet Applications (WIAPP’03), San Jose, CA, USA, June 2003.&lt;br /&gt;
&lt;br /&gt;
[6] R. Sherwood, R. Braud, and B. Bhattacharjee. Slurpie: A cooperative bulk data transfer protocol. In IEEE Infocom, Honk Kong, China, March 2004.&lt;br /&gt;
&lt;br /&gt;
[7] B.T. Loo, J.M. Hellerstein, R. Huebsch, S. Shenker, I. Stoica. Enhancing P2P File-Sharing with an Internet-Scale Query Processor.UC Berkeley. VLDB Conference, Toronto, Canada, 2004.&lt;/div&gt;</summary>
		<author><name>Omi</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=DistOS-2011W_Distributed_File_Sharing&amp;diff=8478</id>
		<title>DistOS-2011W Distributed File Sharing</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=DistOS-2011W_Distributed_File_Sharing&amp;diff=8478"/>
		<updated>2011-03-13T18:11:13Z</updated>

		<summary type="html">&lt;p&gt;Omi: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Author: Omi Iyamu&lt;br /&gt;
oiyamu@gmail.com&lt;br /&gt;
&lt;br /&gt;
PDF available at [PDF]&lt;br /&gt;
&lt;br /&gt;
*Abstract*&lt;br /&gt;
&lt;br /&gt;
File sharing is a tool necessary for group collaboration, a simple way to make your files available to others, and nice way to access file contents across multiple machines. This paper discusses on a high-level the different file-sharing systems currently being used and the different strategies they employ to facilitate file sharing. In section 2, different file sharing systems are categorized based on scale into Local Area Network sharing and Internet based sharing. Section 3 discusses the steps involved in the process of sharing an actual file using the different file sharing systems discussed previously in section 2. Finally in section 4, this paper discusses the challenges that need to be overcome to develop an effective file sharing system for a distributed operating system and gives some suggestions to how some of them may be overcome.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Introduction=&lt;br /&gt;
&lt;br /&gt;
File sharing in a distributed environment should differ from that in a local environment. In this paper, whenever a mention of a distributed operating system is made, it will be done so with reference to an Internet based operating system. As such, the distributed environment that will be talked about will be the Internet. Whenever a local environment is mentioned, it will be done so with reference to a local area network.&lt;br /&gt;
&lt;br /&gt;
The scope of this paper is just a review of a few file-sharing systems. The motivation is to determine what challenges need to be addressed in the development of a file sharing system that can be deployed on a distributed operating system.&lt;br /&gt;
&lt;br /&gt;
Discussions in this paper will be on a high level in order to enable readers that do not have strong technical background ease of understanding. However, a small level of computer science or similar background is needed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=File Sharing systems=&lt;br /&gt;
&lt;br /&gt;
The main differences between different file sharing systems are the modes of access and the methods used to transfer the shared files. There are numerous types of file sharing systems out there; I have categorized them into two types based on scale. Section 2.1 talks about Local Area Network sharing, which can be considered as a small-scale file sharing system. Section 2.2 talks about Internet based file-sharing systems, which can be considered large scale file sharing.&lt;br /&gt;
&lt;br /&gt;
==Local Area Network Sharing==&lt;br /&gt;
&lt;br /&gt;
On a Local Area Network (LAN), the computers present on a LAN have some degree of trust between them. The key advantages to using sharing systems designed for Local Area Networks is the ability to set access restrictions to files being shared and increased transfer speeds. Examples of such are AFP (Apple Filing Protocol) used by Apple and SMB (Server Message Block) used by Windows.&lt;br /&gt;
&lt;br /&gt;
==Internet Based File Sharing==&lt;br /&gt;
&lt;br /&gt;
There are a number of Internet based or online file sharing systems that take different approaches to file sharing. Some examples are peer-2-peer networks, discussed in section 2.2.1, and FTP (File Transfer Protocol), discussed in section 2.2.2.&lt;br /&gt;
&lt;br /&gt;
===Peer-2-peer Systems===&lt;br /&gt;
&lt;br /&gt;
Peer-2-peer is one of the most commonly used file sharing systems out there. User computers act as both client and server nodes and share content in between themselves. There are two main styles to which peer-2-peer file-sharing systems work by, one involves the use of torrents and the other does not.&lt;br /&gt;
&lt;br /&gt;
* Torrent style&lt;br /&gt;
Out of all the torrent based peer-2-peer networks Bit-torrent by is the most commonly used today [1]. In itself, Bit-torrent is just a file downloading protocol that enables simulations downloading from different sources holding the exact same file.&lt;br /&gt;
&lt;br /&gt;
* Non-torrent style&lt;br /&gt;
This is more of the older style peer-2-pper networks like Kazaa. Unlike torrent networks, there is a centralized server that holds information about who is sharing what files and downloading is done from one single computer to another single computer.&lt;br /&gt;
&lt;br /&gt;
===File Transfer Protocol===&lt;br /&gt;
&lt;br /&gt;
FTP as the name suggests is a file transfer protocol. File transfer is made from a single computer source to a single receiving computer. FTP file systems are often password protected, this is to ensure only authorized users access the files. To access an FTP file system you need to know the IP address or the domain name to the computer to which you want to access. When a file is requested for, the complete file is downloaded onto the requesting computer.&lt;br /&gt;
&lt;br /&gt;
=File Sharing Process=&lt;br /&gt;
&lt;br /&gt;
There are numerous file sharing protocols available and can generally be broken up into three main steps, the sharing of the file itself, the finding for the shared file, and the accessing or transferring of the shared file. In this section we will be discussing the process for peer-2-peer networks and Local Area Networks.&lt;br /&gt;
&lt;br /&gt;
==Sharing the file==&lt;br /&gt;
&lt;br /&gt;
The sharing of the actual file is the process of setting up a file for sharing. Different file sharing systems follow a different process of actually getting a file to be enabled for sharing.&lt;br /&gt;
&lt;br /&gt;
===Peer-2-peer sharing===&lt;br /&gt;
&lt;br /&gt;
Peer-2-peer torrent networks generally follow a submission process towards file sharing. With Bit torrent, a user injects new content buy uploading a torrent file to a torrent search website such as supernova.com and creating a seed with the first copy of the file [1]. Bit torrent has a mediator system that checks the content of files to make sure they are what they say they are. When a user submits a new file, a mediator has to check it before it is allowed into the sharing network. After a user has submitted several files that passed mediation, he will then be promoted to unmediated submitter status. This means the user is trusted enough to submit files that will be directly injected into the sharing network without having to be mediated [1]. Non-torrent peer-2-peer networks don’t follow this submission system; all you have to do to share a file is usually just to place it in the share directory used buy the third-party peer-2-peer application.&lt;br /&gt;
&lt;br /&gt;
There is no notion of setting access restrictions with peer-2-peer file sharing. Users generally have unrestricted access to shared content; they can be downloaded, edited, and re-uploaded by all.&lt;br /&gt;
&lt;br /&gt;
===Local Area Network sharing===&lt;br /&gt;
&lt;br /&gt;
In local Area Networks, setting up a file to be shared does not involve any submission process or mediation. Being that members of the network have some level of trust between them, to setup a file for sharing, all you have to do is go into the file’s properties and enable its sharing property. Access restrictions can also be set to restrict read and or write properties of the files or directories being shared.&lt;br /&gt;
&lt;br /&gt;
* Read only&lt;br /&gt;
In this setting the user is only allowed to view contents of the file. This is to say that no changes can be made to the root file. The only way around this is to copy the particular file over and make changes to your local copy.&lt;br /&gt;
&lt;br /&gt;
* Write only&lt;br /&gt;
This setting is used on directories. In this setting a directory will be turned into a drop box. That is to say another user on the network can write files to the given directory but cannot view the contents of the directory. Access to read the contents of the directory is only for the owner of the directory.&lt;br /&gt;
&lt;br /&gt;
* Read and Write&lt;br /&gt;
This setting will allow the user to make changes the file, and save these changes on to the root file. In this, the file does not need to be copied over. In a directory case, contents of the directory can be modified remotely.&lt;br /&gt;
&lt;br /&gt;
==Locating shared files==&lt;br /&gt;
&lt;br /&gt;
People share files so that themselves and or other people may access it remotely. As such, finding a file that has been shared is a key step in the process of sharing. Methods of locating shared files differ between sharing systems.&lt;br /&gt;
&lt;br /&gt;
===Peer-2-peer file search===&lt;br /&gt;
&lt;br /&gt;
n peer-2-peer systems, finding the shared files you want is pretty easy. Non-torrent networks like Kazaa have a centralized server that holds lists of who is sharing what [3]. In order to search thorough this list, a third-party peer-2-peer application is needed. However cleaning of the file lists on these types of systems is poor which results in users sometimes downloading “fake” files.&lt;br /&gt;
&lt;br /&gt;
In torrent networks like Bit-torrent where the shared files are checked on submission, the likelihood of downloading a fake file is reduced. However, searching for a shared file is done via third party search engines like supernova.com and isohunt.com.&lt;br /&gt;
&lt;br /&gt;
===Local Area Network file search===&lt;br /&gt;
&lt;br /&gt;
In local area networks, in order to find shared files you need to know where the file is located. This is to say that if lets say you are looking for a particular file and you don’t know the location, you may have to comb through the entire network manually in search of this file.&lt;br /&gt;
&lt;br /&gt;
==Transferring the file==&lt;br /&gt;
&lt;br /&gt;
In order to access a file over any network, some level of transfer needs to be made whether temporary or permanent. Files are transferred temporarily only if they only need to be viewed or edited. Files are transferred permanently if it is being copied or moved completely. File sharing systems like peer-2-peer only transfer files permanently, whereas most local file sharing systems over a local area network will only make a permanent transfer when a copy or cut command is executed.&lt;br /&gt;
&lt;br /&gt;
===Peer-2-peer file transfer===&lt;br /&gt;
&lt;br /&gt;
After the user has identified his target file. Depending on the type of the peer-2-peer network, there are two main ways the file can be transferred to the user.&lt;br /&gt;
&lt;br /&gt;
* Single user to single user transfer&lt;br /&gt;
In this style of transfer, the complete file is downloaded from a single source. Non-torrent peer-2-peer networks use this style of transfer. Torrent networks only uses this style when dealing with shared files that only have a single seed.&lt;br /&gt;
&lt;br /&gt;
* Multiple users to single user transfer&lt;br /&gt;
In this style of transfer, the file is simultaneously downloaded from multiple sources. This is the style more used by torrent networks like Bit torrent. Files shared on torrent networks are split into chunks. The torrent file itself hold information about seeds for the particular shared file. As such, different chunks of the shared file is downloaded simultaneously onto the users computer and reassembled. This way much higher download speeds can be achieved compared to the single-to-single user transfers.&lt;br /&gt;
&lt;br /&gt;
===Local operating system file transfer===&lt;br /&gt;
&lt;br /&gt;
In a local area network setting, files are generally viewed from the root. Technically, the complete or portions of the file are transferred to main memory and then viewed form there, the same way it would if you had a local copy. The only difference being that instead of the transfer being made from your local storage (hard drive) to main memory, the transfer is from a remote storage device somewhere on the network to main memory. The only real reason why this can be done is that transfer speeds over a local network is faster than over the Internet. As such, access restrictions can properly be enforced.&lt;br /&gt;
&lt;br /&gt;
=Sharing of Distributed Files=&lt;br /&gt;
&lt;br /&gt;
When we think of file sharing we generally think of the file location being on our computer. With a distributed file system the location of the file to which we want to share most likely will not physically be on our computer. This brings a level of complexity to the actual sharing of the file.&lt;br /&gt;
&lt;br /&gt;
Sharing of a file in a distributed operating system’s case will have to be scalable enough that it can be deployed over the Internet. This means that traditional AFP and SMB approaches will have difficulty scaling up to the task. Examples of file sharing systems that already work on this level as discussed are peer-2-peer networks and FTP. Defining an effective file sharing system for a distributed operating system the following challenges need to be addressed.&lt;br /&gt;
&lt;br /&gt;
* Transfer speed&lt;br /&gt;
When a file is to be transferred it should be done so with the highest speed possible. A torrent approach may not necessarily be a complete answer as multiple copies of the file is needed to improve speed. This will be a huge problem with sensitive files in which a user may not want multiple copies of it located all over the internet.&lt;br /&gt;
&lt;br /&gt;
* Duplicate files&lt;br /&gt;
As it is already, common files like music files may have millions of copies located on different computers all over the world. For a distributed file system, having so many copies of the same file is an ineffective use of space and should be avoided where possible.&lt;br /&gt;
&lt;br /&gt;
* File integrity&lt;br /&gt;
Corrupted files or fake files are an issue in sharing because they may end up corrupting computers that access the file. One way this is mitigated today is through reporting systems in which users can report a fake or corrupted file to the host or source. Another approach is by plain old checking systems that go through files checking its integrity. In torrent systems, as previously discussed, mediators manually do the checking of files.&lt;br /&gt;
&lt;br /&gt;
* File backup&lt;br /&gt;
This is a solution to help file integrity as well as data loss. If it is determined that a file has lost its integrity, there needs to be a mechanism to restore the integrity of the file. The easiest way to do this is to restore the file from a good backup. Data or file loss can happen in a lot of ways, for instance if a server in which the file is stored goes down. In this case, a back up copy needs to be located somewhere else that the user can access.&lt;br /&gt;
&lt;br /&gt;
* Access restrictions&lt;br /&gt;
File sharing systems like FTP, AFP and SMB can restrict a users ability to access a particular file with authentication mechanisms. Having such capabilities in a distributed environment for sharing is certainly necessary in order to have a more flexible and restricted sharing ability. AFP and SMB take access restrictions further to also restrict read and write capabilities.&lt;br /&gt;
&lt;br /&gt;
* Search capability&lt;br /&gt;
This can be looked at as more of a convenience measure than a need; it would be nice for a user to be able to search through all the shared files that he or she has access. Having this will certainly aid in the development of more user friendly distributed operating systems.&lt;br /&gt;
&lt;br /&gt;
=Conclusion=&lt;br /&gt;
&lt;br /&gt;
File sharing is a need necessary to accomplish many collaborative tasks not only in the work place, but in other areas as well. We have discussed the differences in some of the popular file sharing systems being used today like peer-2-peer networks and Local Area Network file sharing. The similarity between both of these is that the shared files are stored on the host computers. In a distributed environment this may not be the case. Through the study of the current file sharing systems, we have found that in order to develop an effective file sharing system for a distributed operating system, challenges such as, transfer speeds, duplicate files, file integrity, file backup, access restrictions, and search capabilities need to be addressed. Current file sharing systems address some of these issues but no single one addresses all of them properly. As such maybe a hybrid between the Local Area Network sharing and Internet based file sharing is needed.&lt;br /&gt;
&lt;br /&gt;
=References=&lt;br /&gt;
&lt;br /&gt;
[1] J. Pouwelse, P. Garbacki, D. Epema, H. Sips. The Bit-torrent P2P File-Sharing System. Delft University of Technology, Delft, The Netherlands.&lt;br /&gt;
&lt;br /&gt;
[2] R. Bhagwan, S. Savage, and G. M. Voelker. Understanding availability. In Inter- national Workshop on Peer to Peer Systems, Berkeley, CA, USA, February 2003.&lt;br /&gt;
&lt;br /&gt;
[3] B. Cohen. Incentives build robustness in bittorrent. In Workshop on Economics of Peer-to- Peer Systems, Berkeley, USA, May 2003.&lt;br /&gt;
&lt;br /&gt;
[4] S. Saroiu, P. Krishna, G. Steven, D. Gribble. A Measurement Study of Peer-to-peer File Sharing Systems. University of Washington, Seattle, WA, USA.&lt;br /&gt;
&lt;br /&gt;
[5] N. Leibowitz, M. Ripeanu, and A. Wierzbicki. Deconstructing the kazaa network. In 3rd IEEE Workshop on Internet Applications (WIAPP’03), San Jose, CA, USA, June 2003.&lt;br /&gt;
&lt;br /&gt;
[6] R. Sherwood, R. Braud, and B. Bhattacharjee. Slurpie: A cooperative bulk data transfer protocol. In IEEE Infocom, Honk Kong, China, March 2004.&lt;br /&gt;
&lt;br /&gt;
[7] B.T. Loo, J.M. Hellerstein, R. Huebsch, S. Shenker, I. Stoica. Enhancing P2P File-Sharing with an Internet-Scale Query Processor.UC Berkeley. VLDB Conference, Toronto, Canada, 2004.&lt;/div&gt;</summary>
		<author><name>Omi</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=DistOS-2011W_Distributed_File_Sharing&amp;diff=8449</id>
		<title>DistOS-2011W Distributed File Sharing</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=DistOS-2011W_Distributed_File_Sharing&amp;diff=8449"/>
		<updated>2011-03-12T04:41:16Z</updated>

		<summary type="html">&lt;p&gt;Omi: Created page with &amp;quot;Author: Omi Iyamu oiyamu@gmail.com  PDF available at [PDF] =Abstract=      File sharing is a tool necessary for group collaboration, a simple way to make your files available to …&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Author: Omi Iyamu&lt;br /&gt;
oiyamu@gmail.com&lt;br /&gt;
&lt;br /&gt;
PDF available at [PDF]&lt;br /&gt;
=Abstract=&lt;br /&gt;
     File sharing is a tool necessary for group collaboration, a simple way to make your files available to others, and nice way to access file contents across multiple machines. This paper discusses on a high-level the different file-sharing systems currently being used and the different strategies they employ to facilitate file sharing. In section 2, different file sharing systems are categorized based on scale into Local Area Network sharing and Internet based sharing. Section 3 discusses the steps involved in the process of sharing an actual file using the different file sharing systems discussed previously in section 2. Finally in section 4, this paper discusses the challenges that need to be overcome to develop an effective file sharing system for a distributed operating system and gives some suggestions to how some of them may be overcome. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=1.0 Introduction=&lt;br /&gt;
     File sharing in a distributed environment should differ from that in a local environment. In this paper, whenever a mention of a distributed operating system is made, it will be done so with reference to an Internet based operating system. As such, the distributed environment that will be talked about will be the Internet. Whenever a local environment is mentioned, it will be done so with reference to a local area network. &lt;br /&gt;
	&lt;br /&gt;
     The scope of this paper is just a review of a few file-sharing systems. The motivation is to determine what challenges need to be addressed in the development of a file sharing system that can be deployed on a distributed operating system. &lt;br /&gt;
&lt;br /&gt;
     Discussions in this paper will be on a high level in order to enable readers that do not have strong technical background ease of understanding. However, a small level of computer science or similar background is needed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=2.0 File Sharing systems=&lt;br /&gt;
The main differences between different file sharing systems are the modes of access and the methods used to transfer the shared files. There are numerous types of file sharing systems out there; I have categorized them into two types based on scale. Section 2.1 talks about Local Area Network sharing, which can be considered as a small-scale file sharing system. Section 2.2 talks about Internet based file-sharing systems, which can be considered large scale file sharing.&lt;br /&gt;
&lt;br /&gt;
==&lt;br /&gt;
&lt;br /&gt;
==Local Naming==&lt;br /&gt;
The Sun Network File System (NFS) specifies that each client sees a UNIX file&lt;br /&gt;
namespace with a private root. Due to each client being free to manage&lt;br /&gt;
its own namespace, several workstations mounting the same remote directory&lt;br /&gt;
might not have the same view of the files contained in that directory. However,&lt;br /&gt;
if file-sharing or location transparency is required, it can be achieved by&lt;br /&gt;
convention (e.g., users agreeing on calling a file a specific name) rather than&lt;br /&gt;
by design. &lt;br /&gt;
&lt;br /&gt;
One of the first distributed file systems, the Apollo DOMAIN File System&lt;br /&gt;
[6] uses 64-bit unique identifiers (UIDs) for every object in the&lt;br /&gt;
system. Each Apollo client also has a UID created the time of its manufacture.&lt;br /&gt;
When a new file is created, the UID for that file is derived from the time and&lt;br /&gt;
UID of the file&#039;s workstation (this guarantees uniqueness of UIDs per fil&lt;br /&gt;
e without a&lt;br /&gt;
central server assigning them). &lt;br /&gt;
&lt;br /&gt;
The Andrew file system [4] uses an internal 96-bit identifier for&lt;br /&gt;
uniquely identifying files. These identifiers are used in the background to&lt;br /&gt;
refer to files, but are never shown to users. Andrew clients see a partitioned&lt;br /&gt;
namespace comprised of a local and shared namespace. The shared namespace is&lt;br /&gt;
identical on all workstations, managed by a central server which can be&lt;br /&gt;
replicated. The local namespace is typically only used for files required to&lt;br /&gt;
boot an Andrew client, and to initialize the distributed client operation. &lt;br /&gt;
&lt;br /&gt;
==Cryptographic Naming==&lt;br /&gt;
OceanStore [5] stores objects at the lowest level by identifying&lt;br /&gt;
them with a&lt;br /&gt;
globally unique identifier (GUID). GUIDs are convenient in distributed&lt;br /&gt;
systems because they do not require a central authority to give them out. This&lt;br /&gt;
allows any client on the system to autonomously generate a valid GUID&lt;br /&gt;
with low probability of collisions (GUIDs are typically long bit strings e.g.,&lt;br /&gt;
more than 128 bits). At the same time, the benefit of an autonomous,&lt;br /&gt;
de-centralized namespace management allows for malicious clients to hijack&lt;br /&gt;
someone else&#039;s namespace and intentionally create collisions. To address this&lt;br /&gt;
issue, OceanStore uses a technique proposed by Mazieres et al. [7]&lt;br /&gt;
called&lt;br /&gt;
&#039;&#039;self-certifying path names&#039;&#039; .&lt;br /&gt;
&lt;br /&gt;
Self-certifying pathnames have all the benefits of public key cryptography&lt;br /&gt;
without the burden of key management, which is known to be difficult,&lt;br /&gt;
especially at a very large scale. One of the design goals of self-certifying&lt;br /&gt;
pathnames is for clients to cryptographically verify the contents of any file&lt;br /&gt;
on the network, without requiring exernal information. The novelty of this&lt;br /&gt;
approach is that file names inherently contain all information necessary to&lt;br /&gt;
communicate with remote servers. Essentially, an object&#039;s GUID is the secure&lt;br /&gt;
hash (SHA-1 or similar) of the object&#039;s owner&#039;s key and some human readable&lt;br /&gt;
name. By embedding a client key into the GUID, servers and other clients can&lt;br /&gt;
verify the identity and ownership of an object without querying a&lt;br /&gt;
third-party server.&lt;br /&gt;
&lt;br /&gt;
Freenet [2] also uses keypair-based naming but in a slightly&lt;br /&gt;
different way than OceanStore. Freenet identifies all files by a binary key&lt;br /&gt;
which is obtained by applying a hash function. There are three types of keys in&lt;br /&gt;
this distributed file system:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Keyword-signed key (KSK)&#039;&#039;&#039; This is the simplest identifier because it&lt;br /&gt;
is derived from an arbitrary text string chosen by the user who is storing the&lt;br /&gt;
file on the network. A user storing a PDF document might use the text string&lt;br /&gt;
&amp;quot;freenet/distributed/file/system&amp;quot; to describe the file. The string is used to&lt;br /&gt;
deterministically generate a private/public keypair. The public part of the key&lt;br /&gt;
is hashed and becomes the file identifier. &lt;br /&gt;
&lt;br /&gt;
We note that files can be recovered by guessing or bruteforcing the text&lt;br /&gt;
string. Also, nothing stops two different users from coming up with the same&lt;br /&gt;
descriptive string, and the second user&#039;s file would be rejected by the system,&lt;br /&gt;
as there would be a collision in the namespace.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Signed-subspace key (SSK)&#039;&#039;&#039; This method enables personal namespaces&lt;br /&gt;
for users. For this to work, users generate a public/private keypair using a&lt;br /&gt;
good random number generator. The user also creates a descriptive text string,&lt;br /&gt;
but in this case, it is XORed with the public key to generate the file key.&lt;br /&gt;
This method allows users to manage their own namespace (i.e., collisions can&lt;br /&gt;
still occur locally if the user picks the same string for two files). Users can&lt;br /&gt;
also&lt;br /&gt;
publish a list of keywords and a public key if they want to make those files&lt;br /&gt;
publicly available. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Content-hash key (CHK)&#039;&#039;&#039; In this method, the file key is derived by&lt;br /&gt;
hashing the contents of file. Files are also encrypted with a random encryption&lt;br /&gt;
key specific to that file. For others to retrieve the file, the owner makes&lt;br /&gt;
available the file hash along with the decryption key.&lt;br /&gt;
&lt;br /&gt;
==Hierarchical naming==&lt;br /&gt;
Cheriton et al. [1] suggest naming objects using a long&lt;br /&gt;
name which includes multiple pieces of information: (1) the resource&#039;s name&lt;br /&gt;
and location on the file server where it resides; (2) the organization where&lt;br /&gt;
that file server is located; and (3) a global administrative domain&lt;br /&gt;
representing all the organizations participating the distributed file system.&lt;br /&gt;
For example a file name of &amp;quot;[edu/standford/server4/bin/listdir&amp;quot;  is split&lt;br /&gt;
into:[edu (Gobal domain), /stanford/server4 (organization domain), and /bin/listdir (directory and file)&lt;br /&gt;
&lt;br /&gt;
This naming scheme gives clients all the necessary information (using only the&lt;br /&gt;
file name) to locate a file in a globally distributed file system. While this&lt;br /&gt;
may seem like a good solution, there a few inherent limitations to the&lt;br /&gt;
proposal.&lt;br /&gt;
&lt;br /&gt;
First, file replication and load balancing can only be done at the lowest level&lt;br /&gt;
(i.e., in the file server selected by the organization hosting the file). This&lt;br /&gt;
can lead to a bottleneck when multiple files in the same organization become&lt;br /&gt;
&amp;quot;hot&amp;quot;. The authors suggest using caching and multicast to improve performance&lt;br /&gt;
and avoid congestion on inter-organization links. Second, it requires all&lt;br /&gt;
organizations participating in the system to agree or regulate the common&lt;br /&gt;
namespace, much like the current Domain Name System (DNS). For this to work&lt;br /&gt;
there must be an organization in which each stakeholder in the system is&lt;br /&gt;
equally represented. While systems like these do exist currently (e.g.,&lt;br /&gt;
ICANN (The Internet Corporation for Assigned Names and Numbers (ICANN)&lt;br /&gt;
is a non-profit organization that represents regional registrars, the Internet&lt;br /&gt;
Engineering Task Force (IETF), Internet users and providers to help keep the&lt;br /&gt;
Internet secure, stable and inter-operable.)), they have large amounts of&lt;br /&gt;
administrative overhead and therefore limit the speed at which changes to&lt;br /&gt;
deployed implementations can take place. &lt;br /&gt;
&lt;br /&gt;
One advantage of the approach of Cheriton et al. is that names and directory&lt;br /&gt;
structures must only be unique within an organization/server. The system as a&lt;br /&gt;
whole does not have to keep track of every organization-level implementation,&lt;br /&gt;
yet different organizations should still be able to exchange data.&lt;br /&gt;
&lt;br /&gt;
==Metadata Servers==&lt;br /&gt;
The Google File System (GFS) [3] takes a different approach to&lt;br /&gt;
naming files. GFS assumes that all the clients communicate with a single master&lt;br /&gt;
server, who keeps a table mapping full pathnames to metadata (file locks and&lt;br /&gt;
location). The namespace is therefore centrally managed, and all clients must&lt;br /&gt;
register file operations with the master before they can be performed. While&lt;br /&gt;
this architecture has an obvious central point of failure (which can be&lt;br /&gt;
addressed by replication), it has the advantage of not having to deal with a&lt;br /&gt;
distributed namespace. This central design also has the advantage of improving&lt;br /&gt;
data consistency across multi-level distribution nodes. It also allows data&lt;br /&gt;
to be moved to optimal nodes to increase performance or distribute load. It&#039;s&lt;br /&gt;
worth noting that lookup tables are a fundamentally different way to find&lt;br /&gt;
contents in a directory as compared to UNIX &#039;&#039;inodes&#039;&#039;  and related data&lt;br /&gt;
structures. This approach has inherent limitations such as not being able to&lt;br /&gt;
support symlinks .&lt;br /&gt;
&lt;br /&gt;
Ceph [11] client nodes use near-POSIX file system interfaces which are&lt;br /&gt;
relayed back to a central metadata cluster. The metadata cluster is responsible&lt;br /&gt;
for managing the system-wide namespace, coordinating security and verifying&lt;br /&gt;
consistency. Ceph decouples data from metadata which enables the system to also&lt;br /&gt;
distribute metadata servers themselves. The metadata servers store pointers to&lt;br /&gt;
&amp;quot;object-storage clusters&amp;quot; which hold the actual data portion of the file. The&lt;br /&gt;
metadata servers also handle file read and write operations, which then&lt;br /&gt;
redirect clients to the appropriate object storage cluster or device. &lt;br /&gt;
&lt;br /&gt;
=Locating Resources=&lt;br /&gt;
&lt;br /&gt;
==Local File Systems==&lt;br /&gt;
In some distributed systems, files are copied locally and replicated to remote&lt;br /&gt;
servers in the background. NFS [9] is one example where clients&lt;br /&gt;
mount the remote file system locally. The remote directory structure is mapped&lt;br /&gt;
on to a local namespace which makes files transparently accessible to&lt;br /&gt;
clients. In this scheme, there is no need for distributing indexes or metadata,&lt;br /&gt;
since all files appear to be local. A client can find files on the&lt;br /&gt;
&amp;quot;distributed&amp;quot; file system in the same way local files are found.&lt;br /&gt;
&lt;br /&gt;
==Metadata Servers==&lt;br /&gt;
File systems  that use lookup tables for storing the&lt;br /&gt;
location and&lt;br /&gt;
metadatada of files (e.g., [3,11]) can locate resources trivially&lt;br /&gt;
by&lt;br /&gt;
querying the lookup table. The table usually contains a pointer to either the&lt;br /&gt;
file itself or a server hosting that file who can in turn handle the file&lt;br /&gt;
operation request. &lt;br /&gt;
&lt;br /&gt;
A very basic implementation of a metadata lookup is used in the Apollo Domain&lt;br /&gt;
File System [6]. A central name server maps client-readable strings&lt;br /&gt;
(e.g., &amp;quot;/home/dbarrera/file1&amp;quot; ) to UIDs. The name server can be&lt;br /&gt;
distributed by replicating it a multiple locations, allowing clients to query&lt;br /&gt;
the nearest server instead of a central one. &lt;br /&gt;
&lt;br /&gt;
The Andrew file system [4] uses unique file identifiers to &lt;br /&gt;
populate a &#039;&#039;location database&#039;&#039;  on the central server which maps file&lt;br /&gt;
identifiers to locations. The server is therefore responsible for forwarding&lt;br /&gt;
file access requests to the correct client hosting that file.&lt;br /&gt;
&lt;br /&gt;
==Distributed Index Search==&lt;br /&gt;
Systems like Freenet [2] by design want to make it difficult for&lt;br /&gt;
unauthorized users to access restricted files. This is a difficult problem,&lt;br /&gt;
since the system aims to be highly distributed, but at the same time provide&lt;br /&gt;
guarantees that files won&#039;t be read or modified by unauthorized third-parties.&lt;br /&gt;
However, Freenet has developed an interesting approach to locating files: when&lt;br /&gt;
a file is requested from the network, a user must first obtain or calculate the&lt;br /&gt;
file key. The user&#039;s node requests that file&lt;br /&gt;
from neighboring nodes, who in turn check if the file is stored locally, and if&lt;br /&gt;
not forward the request to the next nearest neighbor. If a node cannot forward&lt;br /&gt;
a request any longer (because a loop would be created or all nodes have&lt;br /&gt;
already been queried), then a failure message is transmitted back to the&lt;br /&gt;
previous node. If a file is found at some point along the request path,&lt;br /&gt;
then the file is sent back through all the intermediate nodes until it reaches&lt;br /&gt;
the request originator, which allows these intermediate nodes to keep a copy of&lt;br /&gt;
the file as a cache. The next time that file key is requested, a node which is&lt;br /&gt;
closer might have it, which will increase the retrieval speed. Nodes&lt;br /&gt;
&amp;quot;forget&amp;quot; about cached copies of files in a least recently used (LRU) manner,&lt;br /&gt;
allowing the network to automatically  balance load and use available space&lt;br /&gt;
optimally. &lt;br /&gt;
&lt;br /&gt;
Distributing a file index was proposed Plaxton et al. [8] as well.&lt;br /&gt;
Their proposal however attempts have all nodes in the network maintain a&lt;br /&gt;
&#039;&#039;virtual tree&#039;&#039; . The tree information is distributed such that each node&lt;br /&gt;
knows about copies of files residing on itself and all nodes that form the&lt;br /&gt;
subtree rooted at that node. All nodes are constantly being updated with&lt;br /&gt;
neighbor information, meaning that new nodes slowly obtain tree information to&lt;br /&gt;
become the roots of their subtrees. This method has the advantage of&lt;br /&gt;
distributing load and providing a hierarchical search functionality that can&lt;br /&gt;
use well known algorithms (BFS, DFS) to find resources on a network.&lt;br /&gt;
&lt;br /&gt;
==Pseudo-random Data Distribution==&lt;br /&gt;
Ceph [11] distributes data through a method that maximizes bandwidth and&lt;br /&gt;
efficiently uses storage resources. Ceph also avoids data imbalance (e.g.,&lt;br /&gt;
new devices are under-used) and load-asymmetries (e.g., often requested data&lt;br /&gt;
placed on only new devices) with a globally known algorithm called CRUSH&lt;br /&gt;
(Controlled Replication Under Scalable Hashing). By using a predefined number&lt;br /&gt;
of &#039;&#039;placement groups&#039;&#039;  (the smallest unit of object storage groups), the&lt;br /&gt;
CRUSH algorithm stores and replicates data across the network in a&lt;br /&gt;
pseudo-random way. This algorithm tells the metadata servers both where the&lt;br /&gt;
data should be stored and where it can be found later, which helps clients and&lt;br /&gt;
metadata servers in locating resources. &lt;br /&gt;
&lt;br /&gt;
=Conclusions=&lt;br /&gt;
This paper has presented a brief survey of distributed file system research&lt;br /&gt;
conducted over the past 20 years. A wide range of distributed file systems have&lt;br /&gt;
been designed to have varying levels of scalability, usability and efficiency.&lt;br /&gt;
Depending on the requirements of a distributed file system, different approaches&lt;br /&gt;
may be taken to address two main concerns: file naming and file retrieval.&lt;br /&gt;
Unfortunately there is no clear winner in either of these categories, which&lt;br /&gt;
means that selecting the &amp;quot;right&amp;quot; method for a given file system will always&lt;br /&gt;
depend on the requirements and users of that system.&lt;br /&gt;
&lt;br /&gt;
=References=&lt;br /&gt;
[1] D. R. Cheriton and T. P. Mann. Decentralizing a global naming service for improved performance and fault tolerance. ACM Transactions on Computer Systems, 7:147–183, 1989.&lt;br /&gt;
&lt;br /&gt;
[2] I. Clarke, O. Sandberg, B. Wiley, and T. Hong. Freenet: A distributed anonymous information storage and retrieval system. In Designing Privacy Enhancing Technologies, pages 46–66. Springer, 2001.&lt;br /&gt;
&lt;br /&gt;
[3] S. Ghemawat, H. Gobioﬀ, and S. Leung. The Google ﬁle system. ACM SIGOPS Operating Systems Review, 37(5):29–43, 2003.&lt;br /&gt;
&lt;br /&gt;
[4] J. Howard and C.-M. U. I. T. Center. An overview of the Andrew ﬁle system. Citeseer, 1988.&lt;br /&gt;
&lt;br /&gt;
[5] J. Kubiatowicz, D. Bindel, Y. Chen, S. Czerwinski, P. Eaton, D. Geels, R. Gummadi, S. Rhea, H. Weatherspoon, C. Wells, et al. Oceanstore: An architecture for global-scale persistent storage. ACM SIGARCH Computer Architecture News, 28(5):190–201, 2000.&lt;br /&gt;
&lt;br /&gt;
[6] P. Levine. The Apollo DOMAIN Distributed File System. NATO ASI Series: Theory and Practice of Distributed Operating Systems, Y. Paker, JP. Banatre, M. Bozyi git, pages 241–260.&lt;br /&gt;
&lt;br /&gt;
[7] D. Mazieres, M. Kaminsky, M. Kaashoek, and E. Witchel. Separating key management from ﬁle system security. ACM SIGOPS Operating Systems Review, 33(5):124–139, 1999.&lt;br /&gt;
&lt;br /&gt;
[8] C. G. Plaxton, R. Rajaraman, A. W. Richa, and A. W. Richa. Accessing nearby copies of replicated objects in a distributed environment. pages 311–320, 1997.&lt;br /&gt;
&lt;br /&gt;
[9] M. Satyanarayanan. A survey of distributed ﬁle systems. Annual Review of Computer Science, 4(1):73–104, 1990.&lt;br /&gt;
&lt;br /&gt;
[10] M. Satyanarayanan, J. Kistler, P. Kumar, M. Okasaki, E. Siegel, and D. Steere. Coda: a highly available file system for a distributed workstation environment. Computers, IEEE Transactions on, 39(4):447–459, Apr. 1990.&lt;br /&gt;
&lt;br /&gt;
[11] S. Weil, S. Brandt, E. Miller, D. Long, and C. Maltzahn. Ceph: A scalable, high-performance distributed file system. In Proceedings of the 7th symposium on Operating systems design and implementation, pages 307–320. USENIX Association, 2006.&lt;/div&gt;</summary>
		<author><name>Omi</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=Distributed_OS:_Winter_2011&amp;diff=8445</id>
		<title>Distributed OS: Winter 2011</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=Distributed_OS:_Winter_2011&amp;diff=8445"/>
		<updated>2011-03-12T02:24:26Z</updated>

		<summary type="html">&lt;p&gt;Omi: /* Literature review paper (graduate students) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Evaluation==&lt;br /&gt;
&lt;br /&gt;
Grades in this class will be determined based on the following criteria.&lt;br /&gt;
&lt;br /&gt;
Undergraduate Students:&lt;br /&gt;
* 20% Class participation&lt;br /&gt;
* 20% Wiki participation&lt;br /&gt;
* 10% Group project oral presentation (April 5th in class)&lt;br /&gt;
* 30% Group project written report (Due April 11th)&lt;br /&gt;
* 20% Implementation report (Due March 1st)&lt;br /&gt;
&lt;br /&gt;
Graduate Students:&lt;br /&gt;
* 15% Class participation&lt;br /&gt;
* 20% Wiki participation&lt;br /&gt;
* 10% Group project oral presentation (April 5th in class)&lt;br /&gt;
* 30% Group project written report (Due April 11th)&lt;br /&gt;
* 25% Literature review paper (Due March 1st)&lt;br /&gt;
&lt;br /&gt;
Proposals for Implementation reports &amp;amp; Literature reviews should be emailed to Prof. Somayaji by &#039;&#039;&#039;February 1st&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
==Using the Wiki==&lt;br /&gt;
&lt;br /&gt;
All of the standard Mediawiki functions are available on this wiki in addition to the following extensions:&lt;br /&gt;
&lt;br /&gt;
* [http://www.mediawiki.org/wiki/Extension:Cite/Cite.php Cite]: for easier references/endnotes&lt;br /&gt;
* [http://www.mediawiki.org/wiki/Extension:GraphViz GraphViz]: for inline graph drawing&lt;br /&gt;
* [http://www.mediawiki.org/wiki/Extension:SyntaxHighlight_GeSHi SyntaxHighlight]: for source code syntax highlighting (be sure to use the &amp;quot;source&amp;quot; tag)&lt;br /&gt;
&lt;br /&gt;
==Implementation reports (undergrads)==&lt;br /&gt;
&lt;br /&gt;
An implementation report is a 5-10 page paper that either&lt;br /&gt;
# describes in detail one existing software system with distributed OS-like properties,&lt;br /&gt;
# compare and contrasts an important characteristic of 3 or more software systems with distributed OS-like properties, or&lt;br /&gt;
# reports on experiences setting up and using a software system with distributed OS-like properties.&lt;br /&gt;
Topics for an implementation report must be approved by Prof. Somayaji.&lt;br /&gt;
&lt;br /&gt;
Implementation reports for Winter 2011:&lt;br /&gt;
* [[DistOS-2011W NTP |NTP]]&lt;br /&gt;
* [[DistOS-2011W Globus |Globus Toolkit]]&lt;br /&gt;
* [[DistOS-2011W Implementation Template|Implementation Template]]&lt;br /&gt;
* [[DistOS-2011W BigTable|BigTable]]&lt;br /&gt;
* [[DistOS-2011W Cassandra and Hamachi|Cassandra and Hamachi]]&lt;br /&gt;
* [[DistOS-2011W Wuala |Wuala]]&lt;br /&gt;
* [[DistOS-2011W FWR |FWR]]&lt;br /&gt;
* [[DistOS-2011W Plan 9| Plan 9]]&lt;br /&gt;
* [[DistOS-2011W Akamai and CDN| Akamai and CDN]]&lt;br /&gt;
* [[DistOS-2011W Diaspora| Diaspora]]&lt;br /&gt;
* [[DistOS-2011W Eucalyptus |Eucalyptus]]&lt;br /&gt;
* [[DistOS-2011W Jolicloud |Jolicloud]]&lt;br /&gt;
&lt;br /&gt;
Students: please add your report above following the template.&lt;br /&gt;
&lt;br /&gt;
==Literature review paper (graduate students)==&lt;br /&gt;
&lt;br /&gt;
The literature review paper should be a 8-12 page paper that reviews research and well-known commercial work in an area of distributed operating systems research or a closely related area.&lt;br /&gt;
&lt;br /&gt;
Literature Review papers for Winter 2011:&lt;br /&gt;
* [[DistOS-2011W Naming and Locating Objects in Distributed Systems|Naming and Locating Objects in Distributed Systems]]&lt;br /&gt;
* [[DistOS-2011W Distributed File Sharing|Distributed File Sharing]]&lt;br /&gt;
* [[DistOS-2011W User Controlled Bandwidth: How Social Protocols Affect Network Protocols and Our Need for Speed|User Controlled Bandwidth]]&lt;br /&gt;
* [[DistOS-2011W General Purpose Frameworks for Performance-Portable Code|General Purpose Frameworks for Performance-Portable Code]]&lt;br /&gt;
* [[DistOS-2011W Distributed Data Structures: a survey|Distributed Data Structures: a survey]]&lt;br /&gt;
* [[DistOS-2011W Distributed File System Security|Distributed File System Security]]&lt;br /&gt;
* [[DistOS-2011W Real-Time Distributed Operating Systems|Real-Time Distributed Operating Systems]]&lt;br /&gt;
* [[DistOS-2011W Failure Detection in Distributed Systems|Failure Detection in Distributed Systems]]&lt;br /&gt;
Students: please add your paper above.&lt;br /&gt;
&lt;br /&gt;
==Group Projects==&lt;br /&gt;
# [[DistOS-2011W Observability &amp;amp; Contracts|Observability &amp;amp; Contracts]]: How do I observe the acts of other agents, particularly &amp;quot;public&amp;quot; acts? How can make contracts between computers (promises to exchange actions in present for actions in the future)?&lt;br /&gt;
# [[DistOS-2011W Attribution|Attribution]]: How do we know who did what?&lt;br /&gt;
# [[DistOS-2011W Reputation|Reputation]]: How do we remember and disseminate knowledge of past actions?&lt;br /&gt;
# [[DistOS-2011W Justice|Justice]]: Given that we can gather evidence of misbehavior, how can that evidence be assembled, judged, and the resulting decision enforced?&lt;br /&gt;
# [[DistOS-2011W Public Goods|Public Goods]]: How can we build and maintain public goods (e.g., indices, caches)?&lt;br /&gt;
&lt;br /&gt;
==Readings==&lt;br /&gt;
&lt;br /&gt;
===January 13, 2011===&lt;br /&gt;
[http://keys.ccrcentral.net/ccr/writing/ CCR]  (two papers)&lt;br /&gt;
&lt;br /&gt;
===January 18, 2011===&lt;br /&gt;
[http://homeostasis.scs.carleton.ca/~soma/distos/2008-02-25/oceanstore-sigplan.pdf OceanStore]  and [http://homeostasis.scs.carleton.ca/~soma/distos/2008-02-25/fast2003-pond.pdf Pond]&lt;br /&gt;
&lt;br /&gt;
===February 3, 2011===&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;[http://ieeexplore.ieee.org.proxy.library.carleton.ca/xpls/abs_all.jsp?arnumber=1450841 Robert E. Kahn, &amp;quot;Resource-Sharing Computer Communications Networks&amp;quot; (1972)]:&#039;&#039;&#039;&lt;br /&gt;
* [http://video.google.com/videoplay?docid=4989933629762859961 Computer Networks - The Heralds of Resource Sharing] (video - optional).&lt;br /&gt;
&lt;br /&gt;
===February 8, 2011===&lt;br /&gt;
&lt;br /&gt;
* Karlin et al. (2008), [http://dx.doi.org.proxy.library.carleton.ca/10.1016/j.comnet.2008.06.012 Autonomous security for autonomous systems].&lt;br /&gt;
&lt;br /&gt;
Optional readings:&lt;br /&gt;
&lt;br /&gt;
* O&#039;Donnell (2009), [http://ieeexplore.ieee.org.proxy.library.carleton.ca/xpls/abs_all.jsp?arnumber=5350725 Prolog to A Survey of BGP Security Issues and Solutions]&lt;br /&gt;
* Butler et al. (2009), [http://ieeexplore.ieee.org.proxy.library.carleton.ca/xpls/abs_all.jsp?arnumber=5357585 A Survey of BGP Security Issues and Solutions]&lt;br /&gt;
&lt;br /&gt;
===February 10, 2011===&lt;br /&gt;
&lt;br /&gt;
* Savage et al. (2000), [http://conferences.sigcomm.org/sigcomm/2000/conf/paper/sigcomm2000-8-4.pdf Practical Network Support For IP Traceback].&lt;br /&gt;
&lt;br /&gt;
===February 15, 2011===&lt;br /&gt;
&lt;br /&gt;
* Satyanarayanan et al. (1990), [http://dx.doi.org.proxy.library.carleton.ca/10.1109/12.54838 Coda: a highly available file system for a distributed workstation environment].&lt;br /&gt;
* Ghemawat et al. (2003), [http://labs.google.com/papers/gfs.html The Google File System].&lt;br /&gt;
&lt;br /&gt;
===February 17, 2011===&lt;br /&gt;
&lt;br /&gt;
* Weil et al. (2006), [http://www.usenix.org/events/osdi06/tech/weil.html Ceph: A Scalable, High-Performance Distributed File System].&lt;br /&gt;
&lt;br /&gt;
===March 1, 2011===&lt;br /&gt;
* Oda et al. (2008), [http://people.scs.carleton.ca/~soma/pubs/oda-ccs-08.pdf SOMA: Mutual Approval for Included Content in Web Pages].&lt;br /&gt;
* Oda &amp;amp; Somayaji (2008), [http://people.scs.carleton.ca/~soma/pubs/oda-asia-08.pdf Content Provider Conflict on the Modern Web].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Problems to Solve===&lt;br /&gt;
*Attack computers with almost no consequences&lt;br /&gt;
**DDoS&lt;br /&gt;
**botnets&lt;br /&gt;
**capture and analyze private traffic&lt;br /&gt;
**distribute malware&lt;br /&gt;
**tampering with traffic&lt;br /&gt;
**Unauthorized access to data and resources&lt;br /&gt;
**Impersonate computers, individuals, applications&lt;br /&gt;
**Fraud, theft&lt;br /&gt;
**regulate behavior&lt;br /&gt;
&lt;br /&gt;
===Design Principles===&lt;br /&gt;
*subjects of governance: programs and computers&lt;br /&gt;
*bind programs and computers to humans &amp;amp; human organizations, but recognize binding is imperfect&lt;br /&gt;
*recognize that &amp;quot;bad&amp;quot; behavior is always possible.  &amp;quot;good&amp;quot; behavior is enforced through incentives and sanctions.&lt;br /&gt;
*rules will change.  Even rules for rule changes will change. Need a &amp;quot;living document&amp;quot; governing how rules are chosen and enforced.&lt;br /&gt;
&lt;br /&gt;
==Scenarios==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===1: Stopping DDoS===&lt;br /&gt;
Group members: Seyyed, Andrew Schoenrock, Thomas McMahon, Lester Mundt, AbdelRahman, Rakhim Davletkaliyev&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Have the machine routing packets(could be ISP provider) detect suspicious packets, if the packets are signed, then those suspicious packets could be blocked, &lt;br /&gt;
the sender could be put on a black list.&lt;br /&gt;
&lt;br /&gt;
* (AS) Stopping DDoS against files, services, programs, etc&lt;br /&gt;
** (AS) Have file replication built into the system (similar to OceanStore) so that files are always available from different servers&lt;br /&gt;
** (AS) If files are not replicated then we could have a tiered messaging system (at the top level would be OS messages) and servers could then prioritize the incoming traffic. If a given server is experiencing an overload, it could send out a distress signal to its neighbours and then distribute what it is has to them. The system should have a built-in mechanism to re-balance the overall load after something like this happens. This would then mean that any DDoS attack would result in the service being more available.&lt;br /&gt;
*** I like this idea of having service fallover&lt;br /&gt;
*** Expanding on the idea of file replication and sending distress signals to it&#039;s neighbours, I could envision a group of servers that would learn to help each other out.  Lending processing and storage when they are under utilized.  The would sort of form a collective, club or gang.  Members who didn&#039;t contribute ( always fully utilized ) would eventually be identified and banned.  It would be these other computers that the targeted server would rely on for help in this situation. However cool this is it isn&#039; really a solution because one could suppose the attackers might utilize the same strategy to recruit additional help in there attack. &lt;br /&gt;
&lt;br /&gt;
* (AS) Stopping DDoS against specific machines&lt;br /&gt;
** (AS) I don&#039;t think that this should be specifically addressed. I think measures introduced to guard against this will ultimately negatively impact the overall system in terms of performance.&lt;br /&gt;
*** I don&#039;t like the idea of sacrificing the one for the many though.&lt;br /&gt;
**** (AS) The main thing with what I&#039;ve proposed is that the motivation behind doing a DDoS attack is completely gone (by doing one a service would either maintain or increase its overall availability). I think by eliminating the main result of a DDoS attack would mean that there would be no reason to guard against DDoS attacks on a specific machine.&lt;br /&gt;
&lt;br /&gt;
*Stopping DDoS&lt;br /&gt;
** Many of the DDoS attacks utilize the property of anonymity.  These services serve anyone who requests there service.  Many DDoS attacks then ensure sufficient traffic that the computer behind the service can no longer cope.  If we remove anonymity and only serve &#039;known&#039; parties the spurious requests would be ignored.   So we need to &#039;know&#039; who our friends are.&lt;br /&gt;
*** This of course requires a form of unspoofable authentication unlike IP. &lt;br /&gt;
**** (RD) Serving only &#039;known&#039; parties reduces the distribution of information, or at least its rate. I was thinking of removing anonymity on a lower level, so that any party that&#039;s not anonymous while sending a packet to your machine is considered &#039;known&#039;, and anything unknown (unsigned, unrepresented in some way) is blocked. So, we don&#039;t really need to &#039;know&#039; who our friends are, we just need to know who aren&#039;t. &lt;br /&gt;
**** (RD) Another thing I had in mind is punishment in case a &#039;known&#039; party participates in DDoS-attack: not punishing the owner of that machine (who probably is a victim as well), but the software or hardware in some sense. &lt;br /&gt;
&lt;br /&gt;
*Stopping DDoS&lt;br /&gt;
** (RD) How about developing such a network topology and protocols that make DDoS attacks less efficient or harder to perform? Some sort of CAPTCHA, but for machines and protocols, to distinguish them from bots, maybe? &lt;br /&gt;
&lt;br /&gt;
*Stopping DDoS&lt;br /&gt;
** I&#039;m not sure what it means by stopping, I don&#039;t think we can stop DDos given the way things are currently ran, we can only block it. From my knowledge most softwares that stop DDoS do so by blocking, or even complete shut down like Mccolo.&lt;br /&gt;
&lt;br /&gt;
*Stopping DDos&lt;br /&gt;
**One method is to use the same way of eliminating DoS by rejecting a specific rate of subsequent requests but from irrelevant sources.&lt;br /&gt;
&lt;br /&gt;
*How we could stop DDoS would be to have each connection to the internet assigned to a particular identity. This identity would be used to verify who is attempting connections. The reason DDoS works is because currently, IP addresses can be spoofed. The only way to verify an identity is to request a response, but by then the damage is done. With a verified identity, connection attempts being routed can be verified during transmission, so that the request may not necessarily even reach the destination host.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Basically, we need some encryption system using keys so that as the packets are being routed, the identity of the packet&#039;s sender can be verified. Ideally the decryption would be trivial so as to prevent noticeable latency. Because an identity is verified, if there is spoofing of packets, they would be dropped during the routing. If all the identities are verified and are still attempting a DDoS attack, the attacker&#039;s identity will be traced back to the attacker.&lt;br /&gt;
&lt;br /&gt;
(RD) (I think we&#039;re not looking low enough. We&#039;re trying to find a solution for this problem assuming the system that made that problem possible is still unchanged. We enforce more security by identification, encryption, etc, but the system is still problem-prone. This will allow to identify an attacker, but after the attack was started (or even finished). It&#039;s like trying to eliminate theft from a society of poor, unemployed, uneducated people by enforcing more security and punishment. Which will help to reduce the rate and motivation, but can&#039;t stop the possible attack. It is pretty stupid analogy, but rather than policing that society, I want to make them rich, employed and educated, so that thefts are just not efficient way of getting goods for them. So, rather than protecting machines from attacks, I want to make the system where DDoS-attacks are just inappropriate.)&lt;br /&gt;
&lt;br /&gt;
===2: Stopping phishing===&lt;br /&gt;
Group members: Waheed Ahmed, Nicolas Lessard, Raghad Al-Awwad, Tarjit Komal&lt;br /&gt;
&lt;br /&gt;
* A way of automatically checking the signature of a message to make sure it really is from a trusted source.&lt;br /&gt;
** ie: &amp;quot;Nation of Banks, did your member TD send me a message to reset my password?&amp;quot; &lt;br /&gt;
&lt;br /&gt;
*There should be filters to ensure where the message is coming from.If the message is coming from unknown source , it should be blocked. &lt;br /&gt;
*Don&#039;t use the links in an email to get to any web page, if you suspect the message might not be authentic.&lt;br /&gt;
*Avoid filling out forms in email messages that ask for personal financial information. Phishers can make exact forms which you can find on financial institution.&lt;br /&gt;
*Make is so a machine needs to be authorized to use your information -- A machine that you don&#039;t own can&#039;t use your information to do anything, regardless of whether he has it or not.&lt;br /&gt;
*Ensure that any website that requires the filling of personal information be a secure website which can be traced to the original organisation.&lt;br /&gt;
*Ensure that whatever browser you are using is up to date with the most recent security patches applied.&lt;br /&gt;
*Obviously, report and suspected phishing to the appropriate authorities so that proper action can be taken&lt;br /&gt;
*&amp;quot;three strikes and you&#039;re out&amp;quot;&lt;br /&gt;
**Each machine is responsible for the massages it releases. When a machine is a repeat offender it loses access privileges&lt;br /&gt;
*Revamp the security login process to something similar to:&lt;br /&gt;
**User enters username and clicks next.&lt;br /&gt;
**Server returns a user predefined image to the User.&lt;br /&gt;
**If image is the right image then user enters password to logon.&lt;br /&gt;
&lt;br /&gt;
===3: Limiting the spread of malware===&lt;br /&gt;
Group members: keith, Andrew Luczak, David Barrera, Trevor Gelowsky, Scott Lyons&lt;br /&gt;
*(KM) Heterogenous systems - it is much easier to write code to attack a single type of system&lt;br /&gt;
*(KM) Individualized security policies&lt;br /&gt;
**(AL) A baseline security level would help prevent malware spreading to/from a system with &amp;quot;individual non-security&amp;quot;&lt;br /&gt;
*(KM) Identify all programs through digital signatures&lt;br /&gt;
*(KM) Peer rating system for programs, customize security policies based on peer ratings&lt;br /&gt;
**(SL) Need some way to keep rating system from being &amp;quot;gamed&amp;quot;&lt;br /&gt;
***(AL) Maybe a program gets flagged if it experiences a rapid approval increase?&lt;br /&gt;
**(AL) Need to protect against benign programs with good ratings being updated into malware&lt;br /&gt;
*(KM) System level forensics on program execution and resource/file modification&lt;br /&gt;
*(KM) Customizable user and program blacklists&lt;br /&gt;
*(SL) Sandboxing with breach management - know what files have been modified by a process&lt;br /&gt;
*(SL) Trending - what does the application spend most of its time doing?&lt;br /&gt;
&lt;br /&gt;
*(DB)Multiple control/chokepoints where malware is looked for. This way, it&#039;s more difficult for attackers to take over several control points and for malware to remain unnoticed. &lt;br /&gt;
*(DB)Heterogeneous systems help limit the spread of malware too. There&#039;s 2 points here. (1) If we&#039;re designing this system where we&#039;re all masters of our own domains, then we&#039;re likely to have different system configurations. However (2), if we want to communicate and interact with other domains, we need some standardized communication layer or mechanism. Standardization is very closely tied to homogeneous.&lt;br /&gt;
*(DB)There should be consequences if you harbor malware or if malware originates from within your domain. This could be and incentive to help people be more proactive in terms of security.&lt;br /&gt;
&lt;br /&gt;
===4: Bandwidth hogs===&lt;br /&gt;
Group members: Mike Preston, Fahim Rahman, Michael Du Plessis, Matthew Chou, Ahmad Yafawi&lt;br /&gt;
&lt;br /&gt;
*limit bandwidth for each user&lt;br /&gt;
*if user has significant bandwidth demands for a certain period of time&lt;br /&gt;
**add them to a watch list&lt;br /&gt;
**monitor their behaviour&lt;br /&gt;
**divert communication to other hosts that can satisfy requests.&lt;br /&gt;
***if there are no other hosts that can satisfy the request, then distribute data to other idle and capable hosts. Load is now reduced on the one link.&lt;br /&gt;
*QoS&lt;br /&gt;
*Tiered Bandwidth Distribution&lt;br /&gt;
**The main idea is you get more bandwidth to your machine as much as you give back to the community.&lt;br /&gt;
***It&#039;s similar to some trackers and dark net programs in which they wont increase your download speed unless you contribute X amount of Bytes back to your peers.&lt;br /&gt;
**Tier 1, Basic privileges i.e. all machines have minimal bandwidth.&lt;br /&gt;
**Tier n, we define some requirements to be met then we increase bandwidth accordingly.&lt;br /&gt;
***Drop a Tier if machine doesn&#039;t maintain the specified requirements of that specific tier.&lt;br /&gt;
***Advantage, monitoring bandwidth on the network is cheap while implementing what is stated above is not.&lt;br /&gt;
*As a metaphor to our &amp;quot;real world society&amp;quot;, bandwidth control can be treated as we do speed for cars.&lt;br /&gt;
**Certain areas need more free flowing traffic, so speed limits are increased.  Others require a slower pace which is enforced.  These &amp;quot;areas&amp;quot; can be translated to users or programs in our distributed OS model&lt;br /&gt;
**There are repercussions to breaking any of these imposed limits&lt;br /&gt;
**Throttling provides once possible implementation of these constraints&lt;br /&gt;
&lt;br /&gt;
====Bandwidth Hog Additional Sources and Information====&lt;br /&gt;
1. [http://repository.lib.ncsu.edu/ir/bitstream/1840.16/1197/1/etd.pdf A Solution to Bandwidth Hogs in a Cable Network]&lt;br /&gt;
*Starting at page 120 of this thesis is a proposed solution to bandwidth hogs on a cable network. In general, the proposal suggests a solution essentially equal to throttling however I did find the description of the solution to be helpful. I feel it may go well with our tiered suggestion if we were to keep the &amp;quot;earned trust&amp;quot; approach to bandwidth access but at the same time allow users in low congestion times to go above their tier. For example, if congestion is low, why not allow the people on the network to occupy much larger bandwidths. On the network include some form of monitoring protocol which can decide how much access a user is allowed. If more bandiwdth is available, let them have it if it is needed for their request. On the other hand, if congestion is high, the user will be capped at the upper limit of their bandwidth capacity if they are doing something that requires a large amount of bandwidth. In this manner each user will be guaranteed the amount they have earned at their tier, however if they do not want to earn a higher level for high usage timeframes they can instead opt to make use of low congestion timeframes and run their bandwidth heavy applications at that time. The network could also include live data regarding the current bandwidth usage levels as well as trending data so that people can plan when to start bandwidth heavy applications.&lt;br /&gt;
&lt;br /&gt;
2. [http://yuba.stanford.edu/rcp/flowCompTime-dukkipati.pdf Why Flow-Completion Time is the Right Metric for Congestion Control]&lt;br /&gt;
*This is a short article which raises an interesting question related to our topic, how should we determine what is considered &amp;quot;bandwidth hogging&amp;quot;. For example, do we look at the strain on the network in some capacity (i.e. dropped packets, usage level of the capacity of the pipe,etc.) which is important information for those who build the network; or do we make use of the time it takes for some transaction to occur when a user requests it? This article argues that from a user&#039;s point of view, they do not care how much bandwidth they get as long as the task they are requesting is completed as quickly as possible. In our discussion in class we had talked about how majority of people currently do not require large bandwidth needs for normal transactions ( email, web searching, wikis ;-) ), and a much smaller percentage of the population are the ones who actually eat up the larger bandwidth through hog-like applications. Maybe instead of focusing on the bandwidth as the main issue, we should think about how long it takes to complete tasks. Maybe our tiered system would also incorporate some aspect of this train of thought, i.e. people who only send email and surf the web are at tier one, people who use online storage and FTP are on level 2, people who stream movies and other data are at level 3, etc. Then, we could have each tier cost a separate amount and apply some form of control on the technologies available at each tier so that the restrictions of a tier are adhered to.&lt;br /&gt;
&lt;br /&gt;
3. [http://research.microsoft.com/en-us/people/asellen/pap0209-chetty.pdf Who’s Hogging The Bandwidth?: The Consequences Of Revealing The Invisible In The Home]&lt;br /&gt;
*This article is from Micrsoft reasearch and it is an interesting look into controlling bandwidth usage by providing people with a tool to monitor the usage and alter how bandwidth is allocated. This tool essentially boils down to the social control idea that we discussed in class. If you know that your neighbours are hogging the bandwidth for very low priority issues then should you not be able to appeal to their conscience in order to gain usage of resources you need? The article provides some examples of homes they provided this control to and how the household politcs factored into the usage of the bandwidth. When usage was no longer hidden it seems as though it became easier to openly discuss how to divide the finite amount of bandwidth. Initial concerns revolved around people just hogging the bandwidth for themselves or playing practical jokes on others in the house by reducing their usage when they were in the middle of some task. Another issue that this type of control brings up is how to prioritize what tasks are &amp;quot;more important&amp;quot;. One example given was if a Skype call to family and friends is more important than watching YouTube videos for a work related task. Interestingly the field studies provided some other examples of a &amp;quot;bandwidth etiqutte&amp;quot; that emerged. For example, it was considered very rude to limit somone&#039;s bandwidth when he/she was on a Skype call due to the immediate and negative effect but it was deemed acceptable to limit bandwidth during a file transfer as it just meant a few extra minutes for the transfer to complete.&lt;/div&gt;</summary>
		<author><name>Omi</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=DistOS-2011W_Attribution&amp;diff=8236</id>
		<title>DistOS-2011W Attribution</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=DistOS-2011W_Attribution&amp;diff=8236"/>
		<updated>2011-03-08T16:41:20Z</updated>

		<summary type="html">&lt;p&gt;Omi: /* Surveyed Papers */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Members==&lt;br /&gt;
* Abdelrahman Abdou&lt;br /&gt;
* Raghad Al-Awwad&lt;br /&gt;
* Omi Iyamu&lt;br /&gt;
* Rakhim Davletkaliyev&lt;br /&gt;
&lt;br /&gt;
=Meeting Briefings=&lt;br /&gt;
==Tuesday, March 1st==&lt;br /&gt;
After 20 minutes of brainstorming, we agreed on:&lt;br /&gt;
* Current internet infrastructure lacks the ability of achieving highly scalable and efficient attribution mechanism.&lt;br /&gt;
* Attribution must be implemented in a distributed manner and must be automated and not owned.&lt;br /&gt;
* Threats that should be addressed include (but not limited to):&lt;br /&gt;
** Computers, individuals and applications impersonation&lt;br /&gt;
** All types of electronic spoofing.&lt;br /&gt;
* The skeleton of our project will constitute four main aspects:&lt;br /&gt;
** Tracing/Tracking: baseline for attribution.&lt;br /&gt;
** Human identification: a MUST to include!&lt;br /&gt;
** Machine identification: to be dissolved with human identification.&lt;br /&gt;
** Storage: how and where to store data traces and the identification stamps.&lt;br /&gt;
==Thursday, March 3rd==&lt;br /&gt;
Coming Soon!&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Surveyed Papers=&lt;br /&gt;
&lt;br /&gt;
[1]Marco Gruteser, Suman Banerjee, Marco Gruteser, Vladimir Barik, &amp;lt;i&amp;gt;Wireless device identification with radiometric signatures&amp;lt;/i&amp;gt;, University of Wisconsin at Madison, Madison, WI, USA, 2008. [http://portal.acm.org/citation.cfm?id=1409959 PDF]&lt;br /&gt;
&lt;br /&gt;
*ABSTRACT&lt;br /&gt;
&amp;lt;i&amp;gt;We design, implement, and evaluate a technique to identify the source network interface card (NIC) of an IEEE 802.11 frame through passive radio-frequency analysis. This technique, called PARADIS, leverages minute imperfections of transmitter hardware that are acquired at manufacture and are present even in otherwise identical NICs. These imperfections are transmitter-specific and manifest themselves as artifacts of the emitted signals. In PARADIS, we measure differentiating artifacts of individual wireless frames in the modulation domain, apply suitable machine-learning classification tools to achieve significantly higher degrees of NIC identification accuracy than prior best known schemes.&lt;br /&gt;
We experimentally demonstrate effectiveness of PARADIS in differentiating between more than 130 identical 802.11 NICs with accuracy in excess of 99%. Our results also show that the accuracy of PARADIS is resilient against ambient noise and fluctuations of the wireless channel.&lt;br /&gt;
Although our implementation deals exclusively with IEEE 802.11, the approach itself is general and will work with any digital modulation scheme.&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[2] Subhabrata Sen, Oliver Spatscheck, 	Dongmei Wang, &amp;lt;i&amp;gt;Accurate, scalable in-network identification of p2p traffic using application signatures&amp;lt;/i&amp;gt;, AT&amp;amp;T Labs-Research, Florham Park, NJ, 2004. [http://portal.acm.org/citation.cfm?id=988672.988742 PDF]&lt;br /&gt;
&lt;br /&gt;
*ABSTRACT&lt;br /&gt;
&amp;lt;i&amp;gt;The ability to accurately identify the network traffic associated with different P2P applications is important to a broad range of network operations including application-specific traffic engineering, capacity planning, provisioning, service differentiation,etc. However, traditional traffic to higher-level application mapping techniques such as default server TCP or UDP network-port baseddisambiguation is highly inaccurate for some P2P applications.In this paper, we provide an efficient approach for identifying the P2P application traffic through application level signatures. We firstidentify the application level signatures by examining some available documentations, and packet-level traces. We then utilize the identified signatures to develop online filters that can efficiently and accurately track the P2P traffic even on high-speed network links.We examine the performance of our application-level identification approach using five popular P2P protocols. Our measurements show thatour technique achieves less than 5% false positive and false negative ratios in most cases. We also show that our approach only requires the examination of the very first few packets (less than 10packets) to identify a P2P connection, which makes our approach highly scalable. Our technique can significantly improve the P2P traffic volume estimates over what pure network port based approaches provide. For instance, we were able to identify 3 times as much traffic for the popular Kazaa P2P protocol, compared to the traditional port-based approach.&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Milestones=&lt;br /&gt;
(Under Construction)&lt;br /&gt;
* Problem definition&lt;br /&gt;
* Literature review&lt;br /&gt;
* ??&lt;br /&gt;
&lt;br /&gt;
=Project Progress=&lt;br /&gt;
Coming Soon!&lt;br /&gt;
&lt;br /&gt;
==Requirements==&lt;br /&gt;
* incremental deployability&lt;br /&gt;
* privacy&lt;br /&gt;
&lt;br /&gt;
==Readings==&lt;br /&gt;
&#039;&#039;really hard to find anything not from psychology&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Omi</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=DistOS-2011W_Attribution&amp;diff=8235</id>
		<title>DistOS-2011W Attribution</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=DistOS-2011W_Attribution&amp;diff=8235"/>
		<updated>2011-03-08T16:38:53Z</updated>

		<summary type="html">&lt;p&gt;Omi: /* Surveyed Papers */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Members==&lt;br /&gt;
* Abdelrahman Abdou&lt;br /&gt;
* Raghad Al-Awwad&lt;br /&gt;
* Omi Iyamu&lt;br /&gt;
* Rakhim Davletkaliyev&lt;br /&gt;
&lt;br /&gt;
=Meeting Briefings=&lt;br /&gt;
==Tuesday, March 1st==&lt;br /&gt;
After 20 minutes of brainstorming, we agreed on:&lt;br /&gt;
* Current internet infrastructure lacks the ability of achieving highly scalable and efficient attribution mechanism.&lt;br /&gt;
* Attribution must be implemented in a distributed manner and must be automated and not owned.&lt;br /&gt;
* Threats that should be addressed include (but not limited to):&lt;br /&gt;
** Computers, individuals and applications impersonation&lt;br /&gt;
** All types of electronic spoofing.&lt;br /&gt;
* The skeleton of our project will constitute four main aspects:&lt;br /&gt;
** Tracing/Tracking: baseline for attribution.&lt;br /&gt;
** Human identification: a MUST to include!&lt;br /&gt;
** Machine identification: to be dissolved with human identification.&lt;br /&gt;
** Storage: how and where to store data traces and the identification stamps.&lt;br /&gt;
==Thursday, March 3rd==&lt;br /&gt;
Coming Soon!&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Surveyed Papers=&lt;br /&gt;
&lt;br /&gt;
[1] Barik,Vladimir, &amp;lt;i&amp;gt;Wireless device identification with radiometric signatures&amp;lt;/i&amp;gt;, 2008. [http://portal.acm.org/citation.cfm?id=1409959 PDF]&lt;br /&gt;
&lt;br /&gt;
*ABSTRACT&lt;br /&gt;
&amp;lt;i&amp;gt;We design, implement, and evaluate a technique to identify the source network interface card (NIC) of an IEEE 802.11 frame through passive radio-frequency analysis. This technique, called PARADIS, leverages minute imperfections of transmitter hardware that are acquired at manufacture and are present even in otherwise identical NICs. These imperfections are transmitter-specific and manifest themselves as artifacts of the emitted signals. In PARADIS, we measure differentiating artifacts of individual wireless frames in the modulation domain, apply suitable machine-learning classification tools to achieve significantly higher degrees of NIC identification accuracy than prior best known schemes.&lt;br /&gt;
We experimentally demonstrate effectiveness of PARADIS in differentiating between more than 130 identical 802.11 NICs with accuracy in excess of 99%. Our results also show that the accuracy of PARADIS is resilient against ambient noise and fluctuations of the wireless channel.&lt;br /&gt;
Although our implementation deals exclusively with IEEE 802.11, the approach itself is general and will work with any digital modulation scheme.&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[2] Subhabrata Sen, Oliver Spatscheck, 	Dongmei Wang, &amp;lt;i&amp;gt;Accurate, scalable in-network identification of p2p traffic using application signatures&amp;lt;/i&amp;gt;, AT&amp;amp;T Labs-Research, Florham Park, NJ, 2004. [http://portal.acm.org/citation.cfm?id=988672.988742 PDF]&lt;br /&gt;
&lt;br /&gt;
*ABSTRACT&lt;br /&gt;
&amp;lt;i&amp;gt;The ability to accurately identify the network traffic associated with different P2P applications is important to a broad range of network operations including application-specific traffic engineering, capacity planning, provisioning, service differentiation,etc. However, traditional traffic to higher-level application mapping techniques such as default server TCP or UDP network-port baseddisambiguation is highly inaccurate for some P2P applications.In this paper, we provide an efficient approach for identifying the P2P application traffic through application level signatures. We firstidentify the application level signatures by examining some available documentations, and packet-level traces. We then utilize the identified signatures to develop online filters that can efficiently and accurately track the P2P traffic even on high-speed network links.We examine the performance of our application-level identification approach using five popular P2P protocols. Our measurements show thatour technique achieves less than 5% false positive and false negative ratios in most cases. We also show that our approach only requires the examination of the very first few packets (less than 10packets) to identify a P2P connection, which makes our approach highly scalable. Our technique can significantly improve the P2P traffic volume estimates over what pure network port based approaches provide. For instance, we were able to identify 3 times as much traffic for the popular Kazaa P2P protocol, compared to the traditional port-based approach.&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Milestones=&lt;br /&gt;
(Under Construction)&lt;br /&gt;
* Problem definition&lt;br /&gt;
* Literature review&lt;br /&gt;
* ??&lt;br /&gt;
&lt;br /&gt;
=Project Progress=&lt;br /&gt;
Coming Soon!&lt;br /&gt;
&lt;br /&gt;
==Requirements==&lt;br /&gt;
* incremental deployability&lt;br /&gt;
* privacy&lt;br /&gt;
&lt;br /&gt;
==Readings==&lt;br /&gt;
&#039;&#039;really hard to find anything not from psychology&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Omi</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=DistOS-2011W_Attribution&amp;diff=8234</id>
		<title>DistOS-2011W Attribution</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=DistOS-2011W_Attribution&amp;diff=8234"/>
		<updated>2011-03-08T16:29:03Z</updated>

		<summary type="html">&lt;p&gt;Omi: /* Surveyed Papers */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Members==&lt;br /&gt;
* Abdelrahman Abdou&lt;br /&gt;
* Raghad Al-Awwad&lt;br /&gt;
* Omi Iyamu&lt;br /&gt;
* Rakhim Davletkaliyev&lt;br /&gt;
&lt;br /&gt;
=Meeting Briefings=&lt;br /&gt;
==Tuesday, March 1st==&lt;br /&gt;
After 20 minutes of brainstorming, we agreed on:&lt;br /&gt;
* Current internet infrastructure lacks the ability of achieving highly scalable and efficient attribution mechanism.&lt;br /&gt;
* Attribution must be implemented in a distributed manner and must be automated and not owned.&lt;br /&gt;
* Threats that should be addressed include (but not limited to):&lt;br /&gt;
** Computers, individuals and applications impersonation&lt;br /&gt;
** All types of electronic spoofing.&lt;br /&gt;
* The skeleton of our project will constitute four main aspects:&lt;br /&gt;
** Tracing/Tracking: baseline for attribution.&lt;br /&gt;
** Human identification: a MUST to include!&lt;br /&gt;
** Machine identification: to be dissolved with human identification.&lt;br /&gt;
** Storage: how and where to store data traces and the identification stamps.&lt;br /&gt;
==Thursday, March 3rd==&lt;br /&gt;
Coming Soon!&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Surveyed Papers=&lt;br /&gt;
[1]Rawls, John, &amp;lt;i&amp;gt;A Theory of Justice: Revised Edition&amp;lt;/i&amp;gt;, Harvard University Press, 2003. [http://books.google.ca/books?hl=en&amp;amp;lr=&amp;amp;id=kvpby7HtAe0C&amp;amp;oi=fnd&amp;amp;pg=PR11&amp;amp;dq=concepts+of+justice&amp;amp;ots=tggvx5zc67&amp;amp;sig=s4OHDBhkpDzumtlH0mIUO7cbCys#v=onepage&amp;amp;q=concepts%20of%20justice&amp;amp;f=false PDF]&lt;br /&gt;
&lt;br /&gt;
[1]Barik,Vladimir, &amp;lt;i&amp;gt;Wireless device identification with radiometric signatures&amp;lt;/i&amp;gt;, 2008. [http://portal.acm.org/citation.cfm?id=1409959 PDF]&lt;br /&gt;
ABSTRACT&lt;br /&gt;
&lt;br /&gt;
=Milestones=&lt;br /&gt;
(Under Construction)&lt;br /&gt;
* Problem definition&lt;br /&gt;
* Literature review&lt;br /&gt;
* ??&lt;br /&gt;
&lt;br /&gt;
=Project Progress=&lt;br /&gt;
Coming Soon!&lt;br /&gt;
&lt;br /&gt;
==Requirements==&lt;br /&gt;
* incremental deployability&lt;br /&gt;
* privacy&lt;br /&gt;
&lt;br /&gt;
==Readings==&lt;br /&gt;
&#039;&#039;really hard to find anything not from psychology&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Omi</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=DistOS-2011W_Distributed_File_System_Access&amp;diff=7645</id>
		<title>DistOS-2011W Distributed File System Access</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=DistOS-2011W_Distributed_File_System_Access&amp;diff=7645"/>
		<updated>2011-03-01T04:42:13Z</updated>

		<summary type="html">&lt;p&gt;Omi: /* Abstract */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Abstract=&lt;br /&gt;
&lt;br /&gt;
=Introduction=&lt;br /&gt;
&lt;br /&gt;
=Conclusion=&lt;br /&gt;
&lt;br /&gt;
=References=&lt;/div&gt;</summary>
		<author><name>Omi</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=DistOS-2011W_Distributed_File_System_Access&amp;diff=7642</id>
		<title>DistOS-2011W Distributed File System Access</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=DistOS-2011W_Distributed_File_System_Access&amp;diff=7642"/>
		<updated>2011-03-01T04:39:59Z</updated>

		<summary type="html">&lt;p&gt;Omi: Created page with &amp;quot;=Abstract=&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Abstract=&lt;/div&gt;</summary>
		<author><name>Omi</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=Distributed_OS:_Winter_2011&amp;diff=7641</id>
		<title>Distributed OS: Winter 2011</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=Distributed_OS:_Winter_2011&amp;diff=7641"/>
		<updated>2011-03-01T04:36:29Z</updated>

		<summary type="html">&lt;p&gt;Omi: /* Literature review paper (graduate students) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Evaluation==&lt;br /&gt;
&lt;br /&gt;
Grades in this class will be determined based on the following criteria.&lt;br /&gt;
&lt;br /&gt;
Undergraduate Students:&lt;br /&gt;
* 20% Class participation&lt;br /&gt;
* 20% Wiki participation&lt;br /&gt;
* 10% Group project oral presentation (April 5th in class)&lt;br /&gt;
* 30% Group project written report (Due April 11th)&lt;br /&gt;
* 20% Implementation report (Due March 1st)&lt;br /&gt;
&lt;br /&gt;
Graduate Students:&lt;br /&gt;
* 15% Class participation&lt;br /&gt;
* 20% Wiki participation&lt;br /&gt;
* 10% Group project oral presentation (April 5th in class)&lt;br /&gt;
* 30% Group project written report (Due April 11th)&lt;br /&gt;
* 25% Literature review paper (Due March 1st)&lt;br /&gt;
&lt;br /&gt;
Proposals for Implementation reports &amp;amp; Literature reviews should be emailed to Prof. Somayaji by &#039;&#039;&#039;February 1st&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Implementation report (undergrads)===&lt;br /&gt;
&lt;br /&gt;
An implementation report is a 5-10 page paper that either&lt;br /&gt;
# describes in detail one existing software system with distributed OS-like properties,&lt;br /&gt;
# compare and contrasts an important characteristic of 3 or more software systems with distributed OS-like properties, or&lt;br /&gt;
# reports on experiences setting up and using a software system with distributed OS-like properties.&lt;br /&gt;
Topics for an implementation report must be approved by Prof. Somayaji.&lt;br /&gt;
&lt;br /&gt;
Implementation reports for Winter 2011:&lt;br /&gt;
* [[DistOS-2011W NTP |NTP]]&lt;br /&gt;
* [[DistOS-2011W Globus |Globus Toolkit]]&lt;br /&gt;
* [[DistOS-2011W Implementation Template|Implementation Template]]&lt;br /&gt;
* [[DistOS-2011W BigTable|BigTable]]&lt;br /&gt;
* [[DistOS-2011W Cassandra and Hamachi|Cassandra and Hamachi]]&lt;br /&gt;
* [[DistOS-2011W Wuala |Wuala]]&lt;br /&gt;
* [[DistOS-2011W FWR |FWR]]&lt;br /&gt;
* [[DistOS-2011W Plan 9| Plan 9]]&lt;br /&gt;
* [[DistOS-2011W Akamai and CDN| Akamai and CDN]]&lt;br /&gt;
* [[DistOS-2011W Diaspora| Diaspora]]&lt;br /&gt;
* [[DistOS-2011W Eucalyptus |Eucalyptus]]&lt;br /&gt;
&lt;br /&gt;
Students: please add your report above following the template.&lt;br /&gt;
&lt;br /&gt;
===Literature review paper (graduate students)===&lt;br /&gt;
&lt;br /&gt;
The literature review paper should be a 8-12 page paper that reviews research and well-known commercial work in an area of distributed operating systems research or a closely related area.&lt;br /&gt;
&lt;br /&gt;
Literature Review papers for Winter 2011:&lt;br /&gt;
* [[DistOS-2011W Naming and Locating Objects in Distributed Systems|Naming and Locating Objects in Distributed Systems]]&lt;br /&gt;
* [[DistOS-2011W Distributed File System Access|Distributed File System Access]]&lt;br /&gt;
* [[DistOS-2011W User Controlled Bandwidth: How Social Protocols Affect Network Protocols and Our Need for Speed|User Controlled Bandwidth]]&lt;br /&gt;
* [[DistOS-2011W General Purpose Frameworks for Performance-Portable Code|General Purpose Frameworks for Performance-Portable Code]]&lt;br /&gt;
* [[DistOS-2011W Distributed Data Structures: a survey|Distributed Data Structures: a survey]]&lt;br /&gt;
* [[DistOS-2011W Distributed File System Security|Distributed File System Security]]&lt;br /&gt;
&lt;br /&gt;
Students: please add your paper above.&lt;br /&gt;
&lt;br /&gt;
==Readings==&lt;br /&gt;
&lt;br /&gt;
===January 13, 2011===&lt;br /&gt;
[http://keys.ccrcentral.net/ccr/writing/ CCR]  (two papers)&lt;br /&gt;
&lt;br /&gt;
===January 18, 2011===&lt;br /&gt;
[http://homeostasis.scs.carleton.ca/~soma/distos/2008-02-25/oceanstore-sigplan.pdf OceanStore]  and [http://homeostasis.scs.carleton.ca/~soma/distos/2008-02-25/fast2003-pond.pdf Pond]&lt;br /&gt;
&lt;br /&gt;
===February 3, 2011===&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;[http://ieeexplore.ieee.org.proxy.library.carleton.ca/xpls/abs_all.jsp?arnumber=1450841 Robert E. Kahn, &amp;quot;Resource-Sharing Computer Communications Networks&amp;quot; (1972)]:&#039;&#039;&#039;&lt;br /&gt;
* [http://video.google.com/videoplay?docid=4989933629762859961 Computer Networks - The Heralds of Resource Sharing] (video - optional).&lt;br /&gt;
&lt;br /&gt;
===February 8, 2011===&lt;br /&gt;
&lt;br /&gt;
* Karlin et al. (2008), [http://dx.doi.org.proxy.library.carleton.ca/10.1016/j.comnet.2008.06.012 Autonomous security for autonomous systems].&lt;br /&gt;
&lt;br /&gt;
Optional readings:&lt;br /&gt;
&lt;br /&gt;
* O&#039;Donnell (2009), [http://ieeexplore.ieee.org.proxy.library.carleton.ca/xpls/abs_all.jsp?arnumber=5350725 Prolog to A Survey of BGP Security Issues and Solutions]&lt;br /&gt;
* Butler et al. (2009), [http://ieeexplore.ieee.org.proxy.library.carleton.ca/xpls/abs_all.jsp?arnumber=5357585 A Survey of BGP Security Issues and Solutions]&lt;br /&gt;
&lt;br /&gt;
===February 10, 2011===&lt;br /&gt;
&lt;br /&gt;
* Savage et al. (2000), [http://conferences.sigcomm.org/sigcomm/2000/conf/paper/sigcomm2000-8-4.pdf Practical Network Support For IP Traceback].&lt;br /&gt;
&lt;br /&gt;
===February 15, 2011===&lt;br /&gt;
&lt;br /&gt;
* Satyanarayanan et al. (1990), [http://dx.doi.org.proxy.library.carleton.ca/10.1109/12.54838 Coda: a highly available file system for a distributed workstation environment].&lt;br /&gt;
* Ghemawat et al. (2003), [http://labs.google.com/papers/gfs.html The Google File System].&lt;br /&gt;
&lt;br /&gt;
===February 17, 2011===&lt;br /&gt;
&lt;br /&gt;
* Weil et al. (2006), [http://www.usenix.org/events/osdi06/tech/weil.html Ceph: A Scalable, High-Performance Distributed File System].&lt;br /&gt;
&lt;br /&gt;
===March 1, 2011===&lt;br /&gt;
* Oda et al. (2008), [http://people.scs.carleton.ca/~soma/pubs/oda-ccs-08.pdf SOMA: Mutual Approval for Included Content in Web Pages].&lt;br /&gt;
* Oda &amp;amp; Somayaji (2008), [http://people.scs.carleton.ca/~soma/pubs/oda-asia-08.pdf Content Provider Conflict on the Modern Web].&lt;br /&gt;
&lt;br /&gt;
===March 3, 2011===&lt;br /&gt;
Authentication&lt;br /&gt;
* OpenID&lt;br /&gt;
* non-password authentication (OTP, biometrics, graphical pass)&lt;br /&gt;
&lt;br /&gt;
===Problems to Solve===&lt;br /&gt;
*Attack computers with almost no consequences&lt;br /&gt;
**DDoS&lt;br /&gt;
**botnets&lt;br /&gt;
**capture and analyze private traffic&lt;br /&gt;
**distribute malware&lt;br /&gt;
**tampering with traffic&lt;br /&gt;
**Unauthorized access to data and resources&lt;br /&gt;
**Impersonate computers, individuals, applications&lt;br /&gt;
**Fraud, theft&lt;br /&gt;
**regulate behavior&lt;br /&gt;
&lt;br /&gt;
===Design Principles===&lt;br /&gt;
*subjects of governance: programs and computers&lt;br /&gt;
*bind programs and computers to humans &amp;amp; human organizations, but recognize binding is imperfect&lt;br /&gt;
*recognize that &amp;quot;bad&amp;quot; behavior is always possible.  &amp;quot;good&amp;quot; behavior is enforced through incentives and sanctions.&lt;br /&gt;
*rules will change.  Even rules for rule changes will change. Need a &amp;quot;living document&amp;quot; governing how rules are chosen and enforced.&lt;br /&gt;
&lt;br /&gt;
==Scenarios==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===1: Stopping DDoS===&lt;br /&gt;
Group members: Seyyed, Andrew Schoenrock, Thomas McMahon, Lester Mundt, AbdelRahman, Rakhim Davletkaliyev&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Have the machine routing packets(could be ISP provider) detect suspicious packets, if the packets are signed, then those suspicious packets could be blocked, &lt;br /&gt;
the sender could be put on a black list.&lt;br /&gt;
&lt;br /&gt;
* (AS) Stopping DDoS against files, services, programs, etc&lt;br /&gt;
** (AS) Have file replication built into the system (similar to OceanStore) so that files are always available from different servers&lt;br /&gt;
** (AS) If files are not replicated then we could have a tiered messaging system (at the top level would be OS messages) and servers could then prioritize the incoming traffic. If a given server is experiencing an overload, it could send out a distress signal to its neighbours and then distribute what it is has to them. The system should have a built-in mechanism to re-balance the overall load after something like this happens. This would then mean that any DDoS attack would result in the service being more available.&lt;br /&gt;
*** I like this idea of having service fallover&lt;br /&gt;
*** Expanding on the idea of file replication and sending distress signals to it&#039;s neighbours, I could envision a group of servers that would learn to help each other out.  Lending processing and storage when they are under utilized.  The would sort of form a collective, club or gang.  Members who didn&#039;t contribute ( always fully utilized ) would eventually be identified and banned.  It would be these other computers that the targeted server would rely on for help in this situation. However cool this is it isn&#039; really a solution because one could suppose the attackers might utilize the same strategy to recruit additional help in there attack. &lt;br /&gt;
&lt;br /&gt;
* (AS) Stopping DDoS against specific machines&lt;br /&gt;
** (AS) I don&#039;t think that this should be specifically addressed. I think measures introduced to guard against this will ultimately negatively impact the overall system in terms of performance.&lt;br /&gt;
*** I don&#039;t like the idea of sacrificing the one for the many though.&lt;br /&gt;
**** (AS) The main thing with what I&#039;ve proposed is that the motivation behind doing a DDoS attack is completely gone (by doing one a service would either maintain or increase its overall availability). I think by eliminating the main result of a DDoS attack would mean that there would be no reason to guard against DDoS attacks on a specific machine.&lt;br /&gt;
&lt;br /&gt;
*Stopping DDoS&lt;br /&gt;
** Many of the DDoS attacks utilize the property of anonymity.  These services serve anyone who requests there service.  Many DDoS attacks then ensure sufficient traffic that the computer behind the service can no longer cope.  If we remove anonymity and only serve &#039;known&#039; parties the spurious requests would be ignored.   So we need to &#039;know&#039; who our friends are.&lt;br /&gt;
*** This of course requires a form of unspoofable authentication unlike IP. &lt;br /&gt;
**** (RD) Serving only &#039;known&#039; parties reduces the distribution of information, or at least its rate. I was thinking of removing anonymity on a lower level, so that any party that&#039;s not anonymous while sending a packet to your machine is considered &#039;known&#039;, and anything unknown (unsigned, unrepresented in some way) is blocked. So, we don&#039;t really need to &#039;know&#039; who our friends are, we just need to know who aren&#039;t. &lt;br /&gt;
**** (RD) Another thing I had in mind is punishment in case a &#039;known&#039; party participates in DDoS-attack: not punishing the owner of that machine (who probably is a victim as well), but the software or hardware in some sense. &lt;br /&gt;
&lt;br /&gt;
*Stopping DDoS&lt;br /&gt;
** (RD) How about developing such a network topology and protocols that make DDoS attacks less efficient or harder to perform? Some sort of CAPTCHA, but for machines and protocols, to distinguish them from bots, maybe? &lt;br /&gt;
&lt;br /&gt;
*Stopping DDoS&lt;br /&gt;
** I&#039;m not sure what it means by stopping, I don&#039;t think we can stop DDos given the way things are currently ran, we can only block it. From my knowledge most softwares that stop DDoS do so by blocking, or even complete shut down like Mccolo.&lt;br /&gt;
&lt;br /&gt;
*Stopping DDos&lt;br /&gt;
**One method is to use the same way of eliminating DoS by rejecting a specific rate of subsequent requests but from irrelevant sources.&lt;br /&gt;
&lt;br /&gt;
*How we could stop DDoS would be to have each connection to the internet assigned to a particular identity. This identity would be used to verify who is attempting connections. The reason DDoS works is because currently, IP addresses can be spoofed. The only way to verify an identity is to request a response, but by then the damage is done. With a verified identity, connection attempts being routed can be verified during transmission, so that the request may not necessarily even reach the destination host.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Basically, we need some encryption system using keys so that as the packets are being routed, the identity of the packet&#039;s sender can be verified. Ideally the decryption would be trivial so as to prevent noticeable latency. Because an identity is verified, if there is spoofing of packets, they would be dropped during the routing. If all the identities are verified and are still attempting a DDoS attack, the attacker&#039;s identity will be traced back to the attacker.&lt;br /&gt;
&lt;br /&gt;
(RD) (I think we&#039;re not looking low enough. We&#039;re trying to find a solution for this problem assuming the system that made that problem possible is still unchanged. We enforce more security by identification, encryption, etc, but the system is still problem-prone. This will allow to identify an attacker, but after the attack was started (or even finished). It&#039;s like trying to eliminate theft from a society of poor, unemployed, uneducated people by enforcing more security and punishment. Which will help to reduce the rate and motivation, but can&#039;t stop the possible attack. It is pretty stupid analogy, but rather than policing that society, I want to make them rich, employed and educated, so that thefts are just not efficient way of getting goods for them. So, rather than protecting machines from attacks, I want to make the system where DDoS-attacks are just inappropriate.)&lt;br /&gt;
&lt;br /&gt;
===2: Stopping phishing===&lt;br /&gt;
Group members: Waheed Ahmed, Nicolas Lessard, Raghad Al-Awwad, Tarjit Komal&lt;br /&gt;
&lt;br /&gt;
* A way of automatically checking the signature of a message to make sure it really is from a trusted source.&lt;br /&gt;
** ie: &amp;quot;Nation of Banks, did your member TD send me a message to reset my password?&amp;quot; &lt;br /&gt;
&lt;br /&gt;
*There should be filters to ensure where the message is coming from.If the message is coming from unknown source , it should be blocked. &lt;br /&gt;
*Don&#039;t use the links in an email to get to any web page, if you suspect the message might not be authentic.&lt;br /&gt;
*Avoid filling out forms in email messages that ask for personal financial information. Phishers can make exact forms which you can find on financial institution.&lt;br /&gt;
*Make is so a machine needs to be authorized to use your information -- A machine that you don&#039;t own can&#039;t use your information to do anything, regardless of whether he has it or not.&lt;br /&gt;
*Ensure that any website that requires the filling of personal information be a secure website which can be traced to the original organisation.&lt;br /&gt;
*Ensure that whatever browser you are using is up to date with the most recent security patches applied.&lt;br /&gt;
*Obviously, report and suspected phishing to the appropriate authorities so that proper action can be taken&lt;br /&gt;
*&amp;quot;three strikes and you&#039;re out&amp;quot;&lt;br /&gt;
**Each machine is responsible for the massages it releases. When a machine is a repeat offender it loses access privileges&lt;br /&gt;
*Revamp the security login process to something similar to:&lt;br /&gt;
**User enters username and clicks next.&lt;br /&gt;
**Server returns a user predefined image to the User.&lt;br /&gt;
**If image is the right image then user enters password to logon.&lt;br /&gt;
&lt;br /&gt;
===3: Limiting the spread of malware===&lt;br /&gt;
Group members: keith, Andrew Luczak, David Barrera, Trevor Gelowsky, Scott Lyons&lt;br /&gt;
*(KM) Heterogenous systems - it is much easier to write code to attack a single type of system&lt;br /&gt;
*(KM) Individualized security policies&lt;br /&gt;
**(AL) A baseline security level would help prevent malware spreading to/from a system with &amp;quot;individual non-security&amp;quot;&lt;br /&gt;
*(KM) Identify all programs through digital signatures&lt;br /&gt;
*(KM) Peer rating system for programs, customize security policies based on peer ratings&lt;br /&gt;
**(SL) Need some way to keep rating system from being &amp;quot;gamed&amp;quot;&lt;br /&gt;
***(AL) Maybe a program gets flagged if it experiences a rapid approval increase?&lt;br /&gt;
**(AL) Need to protect against benign programs with good ratings being updated into malware&lt;br /&gt;
*(KM) System level forensics on program execution and resource/file modification&lt;br /&gt;
*(KM) Customizable user and program blacklists&lt;br /&gt;
*(SL) Sandboxing with breach management - know what files have been modified by a process&lt;br /&gt;
*(SL) Trending - what does the application spend most of its time doing?&lt;br /&gt;
&lt;br /&gt;
*(DB)Multiple control/chokepoints where malware is looked for. This way, it&#039;s more difficult for attackers to take over several control points and for malware to remain unnoticed. &lt;br /&gt;
*(DB)Heterogeneous systems help limit the spread of malware too. There&#039;s 2 points here. (1) If we&#039;re designing this system where we&#039;re all masters of our own domains, then we&#039;re likely to have different system configurations. However (2), if we want to communicate and interact with other domains, we need some standardized communication layer or mechanism. Standardization is very closely tied to homogeneous.&lt;br /&gt;
*(DB)There should be consequences if you harbor malware or if malware originates from within your domain. This could be and incentive to help people be more proactive in terms of security.&lt;br /&gt;
&lt;br /&gt;
===4: Bandwidth hogs===&lt;br /&gt;
Group members: Mike Preston, Fahim Rahman, Michael Du Plessis, Matthew Chou, Ahmad Yafawi&lt;br /&gt;
&lt;br /&gt;
*limit bandwidth for each user&lt;br /&gt;
*if user has significant bandwidth demands for a certain period of time&lt;br /&gt;
**add them to a watch list&lt;br /&gt;
**monitor their behaviour&lt;br /&gt;
**divert communication to other hosts that can satisfy requests.&lt;br /&gt;
***if there are no other hosts that can satisfy the request, then distribute data to other idle and capable hosts. Load is now reduced on the one link.&lt;br /&gt;
*QoS&lt;br /&gt;
*Tiered Bandwidth Distribution&lt;br /&gt;
**The main idea is you get more bandwidth to your machine as much as you give back to the community.&lt;br /&gt;
***It&#039;s similar to some trackers and dark net programs in which they wont increase your download speed unless you contribute X amount of Bytes back to your peers.&lt;br /&gt;
**Tier 1, Basic privileges i.e. all machines have minimal bandwidth.&lt;br /&gt;
**Tier n, we define some requirements to be met then we increase bandwidth accordingly.&lt;br /&gt;
***Drop a Tier if machine doesn&#039;t maintain the specified requirements of that specific tier.&lt;br /&gt;
***Advantage, monitoring bandwidth on the network is cheap while implementing what is stated above is not.&lt;br /&gt;
*As a metaphor to our &amp;quot;real world society&amp;quot;, bandwidth control can be treated as we do speed for cars.&lt;br /&gt;
**Certain areas need more free flowing traffic, so speed limits are increased.  Others require a slower pace which is enforced.  These &amp;quot;areas&amp;quot; can be translated to users or programs in our distributed OS model&lt;br /&gt;
**There are repercussions to breaking any of these imposed limits&lt;br /&gt;
**Throttling provides once possible implementation of these constraints&lt;br /&gt;
&lt;br /&gt;
====Bandwidth Hog Additional Sources and Information====&lt;br /&gt;
1. [http://repository.lib.ncsu.edu/ir/bitstream/1840.16/1197/1/etd.pdf A Solution to Bandwidth Hogs in a Cable Network]&lt;br /&gt;
*Starting at page 120 of this thesis is a proposed solution to bandwidth hogs on a cable network. In general, the proposal suggests a solution essentially equal to throttling however I did find the description of the solution to be helpful. I feel it may go well with our tiered suggestion if we were to keep the &amp;quot;earned trust&amp;quot; approach to bandwidth access but at the same time allow users in low congestion times to go above their tier. For example, if congestion is low, why not allow the people on the network to occupy much larger bandwidths. On the network include some form of monitoring protocol which can decide how much access a user is allowed. If more bandiwdth is available, let them have it if it is needed for their request. On the other hand, if congestion is high, the user will be capped at the upper limit of their bandwidth capacity if they are doing something that requires a large amount of bandwidth. In this manner each user will be guaranteed the amount they have earned at their tier, however if they do not want to earn a higher level for high usage timeframes they can instead opt to make use of low congestion timeframes and run their bandwidth heavy applications at that time. The network could also include live data regarding the current bandwidth usage levels as well as trending data so that people can plan when to start bandwidth heavy applications.&lt;br /&gt;
&lt;br /&gt;
2. [http://yuba.stanford.edu/rcp/flowCompTime-dukkipati.pdf Why Flow-Completion Time is the Right Metric for Congestion Control]&lt;br /&gt;
*This is a short article which raises an interesting question related to our topic, how should we determine what is considered &amp;quot;bandwidth hogging&amp;quot;. For example, do we look at the strain on the network in some capacity (i.e. dropped packets, usage level of the capacity of the pipe,etc.) which is important information for those who build the network; or do we make use of the time it takes for some transaction to occur when a user requests it? This article argues that from a user&#039;s point of view, they do not care how much bandwidth they get as long as the task they are requesting is completed as quickly as possible. In our discussion in class we had talked about how majority of people currently do not require large bandwidth needs for normal transactions ( email, web searching, wikis ;-) ), and a much smaller percentage of the population are the ones who actually eat up the larger bandwidth through hog-like applications. Maybe instead of focusing on the bandwidth as the main issue, we should think about how long it takes to complete tasks. Maybe our tiered system would also incorporate some aspect of this train of thought, i.e. people who only send email and surf the web are at tier one, people who use online storage and FTP are on level 2, people who stream movies and other data are at level 3, etc. Then, we could have each tier cost a separate amount and apply some form of control on the technologies available at each tier so that the restrictions of a tier are adhered to.&lt;br /&gt;
&lt;br /&gt;
3. [http://research.microsoft.com/en-us/people/asellen/pap0209-chetty.pdf Who’s Hogging The Bandwidth?: The Consequences Of Revealing The Invisible In The Home]&lt;br /&gt;
*This article is from Micrsoft reasearch and it is an interesting look into controlling bandwidth usage by providing people with a tool to monitor the usage and alter how bandwidth is allocated. This tool essentially boils down to the social control idea that we discussed in class. If you know that your neighbours are hogging the bandwidth for very low priority issues then should you not be able to appeal to their conscience in order to gain usage of resources you need? The article provides some examples of homes they provided this control to and how the household politcs factored into the usage of the bandwidth. When usage was no longer hidden it seems as though it became easier to openly discuss how to divide the finite amount of bandwidth. Initial concerns revolved around people just hogging the bandwidth for themselves or playing practical jokes on others in the house by reducing their usage when they were in the middle of some task. Another issue that this type of control brings up is how to prioritize what tasks are &amp;quot;more important&amp;quot;. One example given was if a Skype call to family and friends is more important than watching YouTube videos for a work related task. Interestingly the field studies provided some other examples of a &amp;quot;bandwidth etiqutte&amp;quot; that emerged. For example, it was considered very rude to limit somone&#039;s bandwidth when he/she was on a Skype call due to the immediate and negative effect but it was deemed acceptable to limit bandwidth during a file transfer as it just meant a few extra minutes for the transfer to complete.&lt;/div&gt;</summary>
		<author><name>Omi</name></author>
	</entry>
</feed>