Search This Blog

Saturday, February 4, 2023

Peer-to-peer

From Wikipedia, the free encyclopedia
A peer-to-peer (P2P) network in which interconnected nodes ("peers") share resources amongst each other without the use of a centralized administrative system
 
A network based on the client–server model, where individual clients request services and resources from centralized servers

Peer-to-peer (P2P) computing or networking is a distributed application architecture that partitions tasks or workloads between peers. Peers are equally privileged, equipotent participants in the network. They are said to form a peer-to-peer network of nodes.

Peers make a portion of their resources, such as processing power, disk storage or network bandwidth, directly available to other network participants, without the need for central coordination by servers or stable hosts. Peers are both suppliers and consumers of resources, in contrast to the traditional client–server model in which the consumption and supply of resources are divided.

While P2P systems had previously been used in many application domains, the architecture was popularized by the file sharing system Napster, originally released in 1999. The concept has inspired new structures and philosophies in many areas of human interaction. In such social contexts, peer-to-peer as a meme refers to the egalitarian social networking that has emerged throughout society, enabled by Internet technologies in general.

Historical development

SETI@home was established in 1999

While P2P systems had previously been used in many application domains, the concept was popularized by file sharing systems such as the music-sharing application Napster (originally released in 1999). The peer-to-peer movement allowed millions of Internet users to connect "directly, forming groups and collaborating to become user-created search engines, virtual supercomputers, and filesystems." The basic concept of peer-to-peer computing was envisioned in earlier software systems and networking discussions, reaching back to principles stated in the first Request for Comments, RFC 1.

Tim Berners-Lee's vision for the World Wide Web was close to a P2P network in that it assumed each user of the web would be an active editor and contributor, creating and linking content to form an interlinked "web" of links. The early Internet was more open than the present day, where two machines connected to the Internet could send packets to each other without firewalls and other security measures. This contrasts to the broadcasting-like structure of the web as it has developed over the years. As a precursor to the Internet, ARPANET was a successful client-server network where "every participating node could request and serve content." However, ARPANET was not self-organized, and it lacked the ability to "provide any means for context or content-based routing beyond 'simple' address-based routing."

Therefore, Usenet, a distributed messaging system that is often described as an early peer-to-peer architecture, was established. It was developed in 1979 as a system that enforces a decentralized model of control. The basic model is a client–server model from the user or client perspective that offers a self-organizing approach to newsgroup servers. However, news servers communicate with one another as peers to propagate Usenet news articles over the entire group of network servers. The same consideration applies to SMTP email in the sense that the core email-relaying network of mail transfer agents has a peer-to-peer character, while the periphery of Email clients and their direct connections is strictly a client-server relationship.

In May 1999, with millions more people on the Internet, Shawn Fanning introduced the music and file-sharing application called Napster. Napster was the beginning of peer-to-peer networks, as we know them today, where "participating users establish a virtual network, entirely independent from the physical network, without having to obey any administrative authorities or restrictions."

Architecture

A peer-to-peer network is designed around the notion of equal peer nodes simultaneously functioning as both "clients" and "servers" to the other nodes on the network. This model of network arrangement differs from the client–server model where communication is usually to and from a central server. A typical example of a file transfer that uses the client-server model is the File Transfer Protocol (FTP) service in which the client and server programs are distinct: the clients initiate the transfer, and the servers satisfy these requests.

Routing and resource discovery

Peer-to-peer networks generally implement some form of virtual overlay network on top of the physical network topology, where the nodes in the overlay form a subset of the nodes in the physical network. Data is still exchanged directly over the underlying TCP/IP network, but at the application layer peers are able to communicate with each other directly, via the logical overlay links (each of which corresponds to a path through the underlying physical network). Overlays are used for indexing and peer discovery, and make the P2P system independent from the physical network topology. Based on how the nodes are linked to each other within the overlay network, and how resources are indexed and located, we can classify networks as unstructured or structured (or as a hybrid between the two).

Unstructured networks

Overlay network diagram for an unstructured P2P network, illustrating the ad hoc nature of the connections between nodes

Unstructured peer-to-peer networks do not impose a particular structure on the overlay network by design, but rather are formed by nodes that randomly form connections to each other. (Gnutella, Gossip, and Kazaa are examples of unstructured P2P protocols).

Because there is no structure globally imposed upon them, unstructured networks are easy to build and allow for localized optimizations to different regions of the overlay. Also, because the role of all peers in the network is the same, unstructured networks are highly robust in the face of high rates of "churn"—that is, when large numbers of peers are frequently joining and leaving the network.

However, the primary limitations of unstructured networks also arise from this lack of structure. In particular, when a peer wants to find a desired piece of data in the network, the search query must be flooded through the network to find as many peers as possible that share the data. Flooding causes a very high amount of signaling traffic in the network, uses more CPU/memory (by requiring every peer to process all search queries), and does not ensure that search queries will always be resolved. Furthermore, since there is no correlation between a peer and the content managed by it, there is no guarantee that flooding will find a peer that has the desired data. Popular content is likely to be available at several peers and any peer searching for it is likely to find the same thing. But if a peer is looking for rare data shared by only a few other peers, then it is highly unlikely that search will be successful.

Structured networks

Overlay network diagram for a structured P2P network, using a distributed hash table (DHT) to identify and locate nodes/resources

In structured peer-to-peer networks the overlay is organized into a specific topology, and the protocol ensures that any node can efficiently search the network for a file/resource, even if the resource is extremely rare.

The most common type of structured P2P networks implement a distributed hash table (DHT), in which a variant of consistent hashing is used to assign ownership of each file to a particular peer. This enables peers to search for resources on the network using a hash table: that is, (key, value) pairs are stored in the DHT, and any participating node can efficiently retrieve the value associated with a given key.

Distributed hash tables

However, in order to route traffic efficiently through the network, nodes in a structured overlay must maintain lists of neighbors that satisfy specific criteria. This makes them less robust in networks with a high rate of churn (i.e. with large numbers of nodes frequently joining and leaving the network). More recent evaluation of P2P resource discovery solutions under real workloads have pointed out several issues in DHT-based solutions such as high cost of advertising/discovering resources and static and dynamic load imbalance.

Notable distributed networks that use DHTs include Tixati, an alternative to BitTorrent's distributed tracker, the Kad network, the Storm botnet, and the YaCy. Some prominent research projects include the Chord project, Kademlia, PAST storage utility, P-Grid, a self-organized and emerging overlay network, and CoopNet content distribution system. DHT-based networks have also been widely utilized for accomplishing efficient resource discovery for grid computing systems, as it aids in resource management and scheduling of applications.

Hybrid models

Hybrid models are a combination of peer-to-peer and client–server models. A common hybrid model is to have a central server that helps peers find each other. Spotify was an example of a hybrid model [until 2014]. There are a variety of hybrid models, all of which make trade-offs between the centralized functionality provided by a structured server/client network and the node equality afforded by the pure peer-to-peer unstructured networks. Currently, hybrid models have better performance than either pure unstructured networks or pure structured networks because certain functions, such as searching, do require a centralized functionality but benefit from the decentralized aggregation of nodes provided by unstructured networks.

CoopNet content distribution system

CoopNet (Cooperative Networking) was a proposed system for off-loading serving to peers who have recently downloaded content, proposed by computer scientists Venkata N. Padmanabhan and Kunwadee Sripanidkulchai, working at Microsoft Research and Carnegie Mellon University. When a server experiences an increase in load it redirects incoming peers to other peers who have agreed to mirror the content, thus off-loading balance from the server. All of the information is retained at the server. This system makes use of the fact that the bottle-neck is most likely in the outgoing bandwidth than the CPU, hence its server-centric design. It assigns peers to other peers who are 'close in IP' to its neighbors [same prefix range] in an attempt to use locality. If multiple peers are found with the same file it designates that the node choose the fastest of its neighbors. Streaming media is transmitted by having clients cache the previous stream, and then transmit it piece-wise to new nodes.

Security and trust

Peer-to-peer systems pose unique challenges from a computer security perspective.

Like any other form of software, P2P applications can contain vulnerabilities. What makes this particularly dangerous for P2P software, however, is that peer-to-peer applications act as servers as well as clients, meaning that they can be more vulnerable to remote exploits.

Routing attacks

Since each node plays a role in routing traffic through the network, malicious users can perform a variety of "routing attacks", or denial of service attacks. Examples of common routing attacks include "incorrect lookup routing" whereby malicious nodes deliberately forward requests incorrectly or return false results, "incorrect routing updates" where malicious nodes corrupt the routing tables of neighboring nodes by sending them false information, and "incorrect routing network partition" where when new nodes are joining they bootstrap via a malicious node, which places the new node in a partition of the network that is populated by other malicious nodes.

Corrupted data and malware

The prevalence of malware varies between different peer-to-peer protocols. Studies analyzing the spread of malware on P2P networks found, for example, that 63% of the answered download requests on the gnutella network contained some form of malware, whereas only 3% of the content on OpenFT contained malware. In both cases, the top three most common types of malware accounted for the large majority of cases (99% in gnutella, and 65% in OpenFT). Another study analyzing traffic on the Kazaa network found that 15% of the 500,000 file sample taken were infected by one or more of the 365 different computer viruses that were tested for.

Corrupted data can also be distributed on P2P networks by modifying files that are already being shared on the network. For example, on the FastTrack network, the RIAA managed to introduce faked chunks into downloads and downloaded files (mostly MP3 files). Files infected with the RIAA virus were unusable afterwards and contained malicious code. The RIAA is also known to have uploaded fake music and movies to P2P networks in order to deter illegal file sharing. Consequently, the P2P networks of today have seen an enormous increase of their security and file verification mechanisms. Modern hashing, chunk verification and different encryption methods have made most networks resistant to almost any type of attack, even when major parts of the respective network have been replaced by faked or nonfunctional hosts.

Resilient and scalable computer networks

The decentralized nature of P2P networks increases robustness because it removes the single point of failure that can be inherent in a client–server based system. As nodes arrive and demand on the system increases, the total capacity of the system also increases, and the likelihood of failure decreases. If one peer on the network fails to function properly, the whole network is not compromised or damaged. In contrast, in a typical client–server architecture, clients share only their demands with the system, but not their resources. In this case, as more clients join the system, fewer resources are available to serve each client, and if the central server fails, the entire network is taken down.

Distributed storage and search

Search results for the query "software libre", using YaCy a free distributed search engine that runs on a peer-to-peer network instead of making requests to centralized index servers (like Google, Yahoo, and other corporate search engines)

There are both advantages and disadvantages in P2P networks related to the topic of data backup, recovery, and availability. In a centralized network, the system administrators are the only forces controlling the availability of files being shared. If the administrators decide to no longer distribute a file, they simply have to remove it from their servers, and it will no longer be available to users. Along with leaving the users powerless in deciding what is distributed throughout the community, this makes the entire system vulnerable to threats and requests from the government and other large forces. For example, YouTube has been pressured by the RIAA, MPAA, and entertainment industry to filter out copyrighted content. Although server-client networks are able to monitor and manage content availability, they can have more stability in the availability of the content they choose to host. A client should not have trouble accessing obscure content that is being shared on a stable centralized network. P2P networks, however, are more unreliable in sharing unpopular files because sharing files in a P2P network requires that at least one node in the network has the requested data, and that node must be able to connect to the node requesting the data. This requirement is occasionally hard to meet because users may delete or stop sharing data at any point.

In this sense, the community of users in a P2P network is completely responsible for deciding what content is available. Unpopular files will eventually disappear and become unavailable as more people stop sharing them. Popular files, however, will be highly and easily distributed. Popular files on a P2P network actually have more stability and availability than files on central networks. In a centralized network, a simple loss of connection between the server and clients is enough to cause a failure, but in P2P networks, the connections between every node must be lost in order to cause a data sharing failure. In a centralized system, the administrators are responsible for all data recovery and backups, while in P2P systems, each node requires its own backup system. Because of the lack of central authority in P2P networks, forces such as the recording industry, RIAA, MPAA, and the government are unable to delete or stop the sharing of content on P2P systems.

Applications

Content delivery

In P2P networks, clients both provide and use resources. This means that unlike client–server systems, the content-serving capacity of peer-to-peer networks can actually increase as more users begin to access the content (especially with protocols such as Bittorrent that require users to share, refer a performance measurement study). This property is one of the major advantages of using P2P networks because it makes the setup and running costs very small for the original content distributor.

File-sharing networks

Many peer-to-peer file sharing networks, such as Gnutella, G2, and the eDonkey network popularized peer-to-peer technologies.

Copyright infringements

Peer-to-peer networking involves data transfer from one user to another without using an intermediate server. Companies developing P2P applications have been involved in numerous legal cases, primarily in the United States, over conflicts with copyright law. Two major cases are Grokster vs RIAA and MGM Studios, Inc. v. Grokster, Ltd.. In the last case, the Court unanimously held that defendant peer-to-peer file sharing companies Grokster and Streamcast could be sued for inducing copyright infringement.

Multimedia

  • The P2PTV and PDTP protocols.
  • Some proprietary multimedia applications use a peer-to-peer network along with streaming servers to stream audio and video to their clients.
  • Peercasting for multicasting streams.
  • Pennsylvania State University, MIT and Simon Fraser University are carrying on a project called LionShare designed for facilitating file sharing among educational institutions globally.
  • Osiris is a program that allows its users to create anonymous and autonomous web portals distributed via P2P network.

Other P2P applications

Torrent file connect peers

Social implications

Incentivizing resource sharing and cooperation

The BitTorrent protocol: In this animation, the colored bars beneath all of the 7 clients in the upper region above represent the file being shared, with each color representing an individual piece of the file. After the initial pieces transfer from the seed (large system at the bottom), the pieces are individually transferred from client to client. The original seeder only needs to send out one copy of the file for all the clients to receive a copy.

Cooperation among a community of participants is key to the continued success of P2P systems aimed at casual human users; these reach their full potential only when large numbers of nodes contribute resources. But in current practice, P2P networks often contain large numbers of users who utilize resources shared by other nodes, but who do not share anything themselves (often referred to as the "freeloader problem"). Freeloading can have a profound impact on the network and in some cases can cause the community to collapse. In these types of networks "users have natural disincentives to cooperate because cooperation consumes their own resources and may degrade their own performance." Studying the social attributes of P2P networks is challenging due to large populations of turnover, asymmetry of interest and zero-cost identity. A variety of incentive mechanisms have been implemented to encourage or even force nodes to contribute resources.

Some researchers have explored the benefits of enabling virtual communities to self-organize and introduce incentives for resource sharing and cooperation, arguing that the social aspect missing from today's P2P systems should be seen both as a goal and a means for self-organized virtual communities to be built and fostered. Ongoing research efforts for designing effective incentive mechanisms in P2P systems, based on principles from game theory, are beginning to take on a more psychological and information-processing direction.

Privacy and anonymity

Some peer-to-peer networks (e.g. Freenet) place a heavy emphasis on privacy and anonymity—that is, ensuring that the contents of communications are hidden from eavesdroppers, and that the identities/locations of the participants are concealed. Public key cryptography can be used to provide encryption, data validation, authorization, and authentication for data/messages. Onion routing and other mix network protocols (e.g. Tarzan) can be used to provide anonymity.

Perpetrators of live streaming sexual abuse and other cybercrimes have used peer-to-peer platforms to carry out activities with anonymity.

Political implications

Intellectual property law and illegal sharing

Although peer-to-peer networks can be used for legitimate purposes, rights holders have targeted peer-to-peer over the involvement with sharing copyrighted material. Peer-to-peer networking involves data transfer from one user to another without using an intermediate server. Companies developing P2P applications have been involved in numerous legal cases, primarily in the United States, primarily over issues surrounding copyright law. Two major cases are Grokster vs RIAA and MGM Studios, Inc. v. Grokster, Ltd. In both of the cases the file sharing technology was ruled to be legal as long as the developers had no ability to prevent the sharing of the copyrighted material. To establish criminal liability for the copyright infringement on peer-to-peer systems, the government must prove that the defendant infringed a copyright willingly for the purpose of personal financial gain or commercial advantage. Fair use exceptions allow limited use of copyrighted material to be downloaded without acquiring permission from the rights holders. These documents are usually news reporting or under the lines of research and scholarly work. Controversies have developed over the concern of illegitimate use of peer-to-peer networks regarding public safety and national security. When a file is downloaded through a peer-to-peer network, it is impossible to know who created the file or what users are connected to the network at a given time. Trustworthiness of sources is a potential security threat that can be seen with peer-to-peer systems.

A study ordered by the European Union found that illegal downloading may lead to an increase in overall video game sales because newer games charge for extra features or levels. The paper concluded that piracy had a negative financial impact on movies, music, and literature. The study relied on self-reported data about game purchases and use of illegal download sites. Pains were taken to remove effects of false and misremembered responses.

Network neutrality

Peer-to-peer applications present one of the core issues in the network neutrality controversy. Internet service providers (ISPs) have been known to throttle P2P file-sharing traffic due to its high-bandwidth usage. Compared to Web browsing, e-mail or many other uses of the internet, where data is only transferred in short intervals and relative small quantities, P2P file-sharing often consists of relatively heavy bandwidth usage due to ongoing file transfers and swarm/network coordination packets. In October 2007, Comcast, one of the largest broadband Internet providers in the United States, started blocking P2P applications such as BitTorrent. Their rationale was that P2P is mostly used to share illegal content, and their infrastructure is not designed for continuous, high-bandwidth traffic. Critics point out that P2P networking has legitimate legal uses, and that this is another way that large providers are trying to control use and content on the Internet, and direct people towards a client–server-based application architecture. The client–server model provides financial barriers-to-entry to small publishers and individuals, and can be less efficient for sharing large files. As a reaction to this bandwidth throttling, several P2P applications started implementing protocol obfuscation, such as the BitTorrent protocol encryption. Techniques for achieving "protocol obfuscation" involves removing otherwise easily identifiable properties of protocols, such as deterministic byte sequences and packet sizes, by making the data look as if it were random. The ISP's solution to the high bandwidth is P2P caching, where an ISP stores the part of files most accessed by P2P clients in order to save access to the Internet.

Current research

Researchers have used computer simulations to aid in understanding and evaluating the complex behaviors of individuals within the network. "Networking research often relies on simulation in order to test and evaluate new ideas. An important requirement of this process is that results must be reproducible so that other researchers can replicate, validate, and extend existing work." If the research cannot be reproduced, then the opportunity for further research is hindered. "Even though new simulators continue to be released, the research community tends towards only a handful of open-source simulators. The demand for features in simulators, as shown by our criteria and survey, is high. Therefore, the community should work together to get these features in open-source software. This would reduce the need for custom simulators, and hence increase repeatability and reputability of experiments."

Besides all the above stated facts, there has also been work done on ns-2 open source network simulators. One research issue related to free rider detection and punishment has been explored using ns-2 simulator here.

Generalized exchange

From Wikipedia, the free encyclopedia

Generalized exchange is a type of social exchange in which a desired outcome that is sought by an individual is not dependent on the resources provided by that individual. It is assumed to be a fundamental social mechanism that stabilizes relations in society by unilateral resource giving in which one's giving is not necessarily reciprocated by the recipient, but by a third party. Thus, in contrast to direct or restricted exchange or reciprocity, in which parties exchange resources with each other, generalized exchange naturally involves more than two parties. Examples of generalized exchange include; matrilateral cross-cousin marriage and helping a stranded driver on a desolate road.

Reciprocity Norm

All forms of social exchange occur within structures of mutual dependence, that is, structures in which actors are mutually, or reciprocally dependent on one another for valued outcomes. A structure of mutual or reciprocal dependence is defining characteristic of all social relations based on exchange.

The mutual or reciprocal dependence can be either direct (restricted) or indirect (generalized). Both of them rest on a norm of reciprocity which provides guidance to both parties: takers are obliged to be givers. In direct dyadic exchange, the norm of reciprocity insists that takers give gifts to those who gave to them. Generalized exchange, also, insists that takers give, but to somebody else. The recipient is not defined and creates opportunities of exploitation if actors explicitly reject the guiding norm of reciprocity. The purest form of indirect, generalized exchange, is the chain-generalized form, first documented by the classical anthropologists: Lévi-Strauss (1969) and Malinowski (1922). In chain-generalized exchange, benefits flow in one direction in a circle of giving that eventually returns benefit to the giver. In direct exchange, actors instead engage in individual actions that benefit another. Reciprocal exchanges evolve gradually, as beneficial acts prompt reciprocal benefits, in a series of sequentially contingent, individual acts.

Indirect reciprocity

In indirect structures of reciprocity, each actor is depended not on a single other, as in direct forms of exchange, but on all actors who contribute to maintaining the collective system. Generalized exchange according to this logic, is a common feature of business organizations, neighborhoods, and the vast and growing network of online communities. In indirect exchanges, we observe reduced emotional tension between the partners, a credit mentality, collective orientation and high levels of solidarity and trust. Indirect reciprocity occurs when an actor who provides benefits to another is subsequently helped by a third party. Indirect reciprocity is deeply rooted in reputation processes. The indirect reciprocity requires information about the broader network (e.g., what has an actor A done for the others?). When collective organizations are large, this greater informational complexity of indirect reciprocity processes may moderate its effects. Experimental evidence shows that people respond strategically to the presence of others, cooperating at much higher levels when reputational benefits and possibilities or indirect reciprocity exist. Individuals have a tendency to reward givers and penalize non-givers - which is often explained from the perspectives of prosocial behavior and norm enforcement. But another explanation may lie in reputational concerns. In other words, because so much of human behavior is based on the reputational advantages and opportunities, evolutionary theorists posit that the foundations of human morality are rooted in indirect reciprocity and reputational processes.

In generalized exchange, one actor gives benefits to another, and receives from another, but not from the same actor. We have a context of a chain-generalized system of exchange where A, B, and C are the connected parties. They may also be a part of a larger, more diffused network, with no defined structure. According to Takahashi (2000), this is called "pure generalized" exchange. In this form, there is no fixed structure of giving. A might give to B on one occasion and to C on a different occasion. The structure of indirect reciprocity affects the solidarity in comparison with forms of exchange with direct reciprocity.

Direct (Restricted) reciprocity

In forms of exchange with direct reciprocity, two actors exchange resources with one another. This means, A provides value to B, and B to A. B's reciprocation of A's giving is direct and each actor's outcomes depend solely on the behavior of another actor or actors. Direct structures of reciprocity produce exchanges which have different consequences for trust and solidarity. Direct exchanges are characterized by high emotional tension and lack of trust – quid pro quo – self-interested actors who often engage in conflicts over fairness of exchanges and low levels of trust.

An American sociologist Richard Marc Emerson (1981) further distinguished between two forms of transactions in direct exchange relations: negotiated and reciprocal. There exists a clear distinction between negotiated and reciprocal forms of direct exchange. Along these lines, Yamagishi and Cook(1993) and Takahashi(2000) note that emphasis on collective aspects of generalized exchange neglects elements such as: the high risk of the structure, the potential for those who fail to give to disrupt the entire system, and the difficulty of establishing a structure of stable giving without initial levels of high trust or established norms.

Variations in Direct Reciprocity

Direct Negotiated Exchange

American sociologists: Karen S. Cook, Richard M. Emerson, Toshio Yamagishi, Mary R. Gillmore, Samuel B. Bacharach, and Edward J. Lawler all study negotiated transactions.

In such exchange, actors together arrange and negotiate the terms of an agreement that benefits both parties, either equally or unequally. This is a joint decision process, an explicit bargaining. Both sides of the exchange are agreed upon at the same time, and the benefits for both exchange partners are easily identified as paired contributions that form a discrete transaction. There agreements are strictly binding and produce the benefits agreed upon. Most economic exchanges (excluding fixed-price trades) as well as many other social exchanges fall under this category.

Direct Reciprocal Exchange

In such exchange, actors engage in actions that benefit one another. Actors' contributions to the exchange are not ex-ante negotiated. Actors initiate exchanges without knowing whether their actions will be reciprocated ex-post. Such contributions are performed separately and are not known to the counterparties. Behaviors can be advice-giving, assistance, help, and are not subject to negotiation. Moreover, there is no knowledge whether or when or to what extent the other will reciprocate. Reciprocal transactions are distinct from pure economic exchanges and are typical in many interpersonal relationships where norms curtail the extent of explicit bargaining.

Structural Relations

Negotiated and reciprocal exchanges create different structural relations between actors' behaviors and between their outcomes. Both forms of transactions alter the risk inherent in relations of mutual dependence, but in different ways.

  • Reciprocal exchange - decisions are made individually by actors; flow of benefits is unilateral.
  • Negotiated exchange - decisions are made jointly and are strictly binding, they cannot be violated; flow of benefits is bilateral.
  • Generalized exchange - flow of benefits is unilateral

In theory, all three forms of exchange – indirect, direct negotiated, and direct reciprocal – differ from one another on a set of dimensions that potentially affect the development of social solidarity. These dimensions comprise the structure of reciprocity in social exchange.  Theory argues that while all forms of exchange are characterized by some type of reciprocity, the structure of reciprocity varies on two key dimensions that affect the social solidarity or integrative bonds that develop between actors:

  1. Whether benefits are reciprocated directly or indirectly, two additional structural differences emerge:
    • Corresponds to the basic distinction between direct (restricted) and indirect (generalized) forms of exchange discussed above. Direct vs indirect reciprocity also implies two related structural differences: whether exchange is dyadic (2-party) or collective (3+), and whether or not actors are depended on the actions of a single other actor or multiple actors for valued resources.
  2. Whether benefits can flow unilaterally or only bilaterally.
    • Unilateral – each actor’s outcomes are contingent solely on another’s individual actions, and actors can initiate exchanges that are not reciprocated (and vice versa). Timing of reciprocity can be delayed in both reciprocal and generalized exchange.
    • When exchanges are negotiated, we have joint action effects, meaning, flow of benefits are always bilateral and each transaction produces an agreement that provides benefits (equal or unequal) for both actors.

Incentives and motivations

Structure of reciprocity can affect exchange in a more fundamental way, through its implications on actors’ incentives. Generalized reciprocity is a way of "organizing" an ongoing process of "interlocked behaviors" where one person’s behavior depends on another’s, whose is also depended on another’s, the process forming a chain reaction. For generalized exchange to emerge, individuals must overcome the temptation to receive without contributing and instead in engage in sharing (cooperative) behavior. Once the sharing begins, the overall collective good can increase as more individuals contribute more goods (with high jointness of supply). As group size grows in an organization, individual information preferences are more likely to be met through diversity.

Social Psychological Incentives

Individuals should be encouraged to make altruistic contribution to a collective good for generalized exchange to emerge. Empirical studies show that altruistic behavior is a natural aspect of social interaction. Individuals donate blood and organs at some personal cost with no direct benefits. When contributions are also rewarded, then contributing and cooperation becomes more attractive regardless of decisions of others. There are incentives to motivate sharing knowledge and helping others in organizations such as, formal participation quotas, making helping and giving an enforceable requirement with guaranteed rewards. Such incentives, do not specify who helps who – that is more discretionary. Individuals are free to choose who to help, and these choices can vary from helping only those that have helped an individual in the past (direct reciprocity), or to help those that have helped others and not helping those that have not helped. Incentives have been successful as an economic solution to free-riding, because they offer additional motivations that make cooperation rational.

Social Approval

Individuals may gain some intrinsic satisfaction from the popularity of their own contribution in the form of psychological efficacy, causing an individual to want to share more in the future. Additionally, individuals may participate in giving social approval by rating the popularity of other's contributions. This makes giving and receiving social approval to have an influence on behavior. Individuals may cooperate (or share) because they care about receiving social approval and/or because they want to give social approval to others' contributions. Social approval is a combination of these two processes.

Rewarding Reputation

Reputation is regarded as an incentive in generalized reciprocity. Evolutionary theorists Nowak and Sigmund (1998) regard reputation a person’s image. This, in organizations, is named as "professional image", namely, others’ perceptions of individuals within organizations – but with a focus on helpfulness. The same authors also show in their simulation study that strategy of rewarding reputation produces an evolutionary stable system of generalized reciprocity. Same idea is echoed by economic experiments where the rewarding of reputation is shown to yield generalized reciprocity. Individuals with reputations for helpfulness are more likely to get helped in contrast to those individuals without such reputation. Real-life examples show that in situations where reputations for helpfulness are rewarded, individuals are prone to engaging in helping others so that they will in return be rewarded and helped in the future. Incentive here is to be helped in the future – which is why individuals engage in building reputation. Experimental research on rewarding reputation also shows that reputations in organizations too are built with such incentives, and through consistent demonstration of "distinctive and salient behaviors on repeated occasions, or over time". Consequences for such actions are the following: good reputation results in more autonomy, power, and career success.

Rewarding reputation is more time contingent. It is taxing for individuals to keep track of what everyone else does and monitor whose rate of helping is higher. This makes rewarding reputation tied to the recency of helpfulness. Individuals are found to make decisions based on recent reputation of others rather than their long-term reputation. The reward system of reciprocity is based on "what have you don’t for us lately?!" and the less recent one’s deeds are, the less likely it is for these individuals to receive help in return.

To encourage reciprocity and incentivize individuals to engage in such prosocial behavior, organizations are shown to enforce norms of asking for help, giving help, and reciprocating help by organizing meetings and informal practices. Supervisors are also encouraged to use symbolic or financial rewards to incentivize helping. Google for example, uses a peer-to-peer bonus system that empowers employees to express gratitude and reward helpful behavior with token payments. Additionally, they use paying it forward incentive – meaning, those individuals that receive such bonuses, are given additional funds that may only be paid forward to recognize a third employee. To encourage knowledge exchange, large organizations employ knowledge-sharing communities in which they post and respond to requests for help around work-related problems.

Reputational concerns were found to be the driving force behind the effect of observability. Moreover, this effect was substantially stronger in settings where individuals were more likely to have future interactions with those who observed them and when participation was framed as a public good.

Observational Cooperation

Individuals will conditionally cooperate based on what they believe others are doing in a public goods situation. From a game-theoretical perspective, there is no strategic advantage to matching one's cooperation level to the rest of the group when others are already cooperating at a relatively high level.

Future-oriented behavior

Future-oriented behavior deals with the tendency for individuals to modify their behavior based on what they believe will happen in the future. Such behavior shares a similar logic to the game-theoretical approach to conditional cooperation. Individuals plan strategically their actions in terms of looking forward to future interactions.

Reactive Behavior

In reactive behavior, individuals tend to orient themselves towards the average behavior of other group members. Such behavior is closely tied to the principle of reciprocity. When individuals can see the overall cooperation level of the participants, they can stimulate a normative response to reciprocate by cooperating as well. In addition, when contributions are observable, individuals can also signal their commitment by making small contributions without taking too much risk at once. Observing cooperative behavior also imposes obligation on an individual to also cooperate. Decisions to cooperate become more impersonal. Individuals can experience at least a minimal amount of satisfaction from being a cooperator because they feel like they are part of a larger group and organization.

Social mechanism

Exchange, generalized or otherwise, is an inherently social construct. Social dynamics set the stage for an exchange to occur, between whom the exchange occurs, and what will happen after the exchange occurs. For example, exchange has been shown to have effects on an individual's reputation and standing.

Some have conceived of indirect reciprocity as being a result of direct reciprocity that is observed, as direct exchanges that are not observed by others cannot possibly increase the standing of an individual to an entire group except through piecemeal methods such as gossip. Through observation, it becomes clearer to a group who gives or reciprocates and who does not; in this way good actions can be rewarded or encouraged, and bad actions can be sanctioned through refusal to give.

Exchange is also a human process in the sense that it is not always carried out or perceived correctly. Individuals in groups can hold faulty perceptions of other actors which will lead them to take sanctioning action; this can also in turn lead to a lowering of the standing of that individual, if the group perceives the receiving actor undeserving of sanction. In a similar way, sometimes individuals may intend on taking a certain action and failing to do so either through human error (e.g. forgetfulness) or due to circumstances that prevent them from doing so. For these reasons, there will always be a certain degree of error in the way that exchange systems work.

Social solidarity

One hypothesized outcome of exchange processes is social solidarity. Through continued exchange between many different members of a group, and the continuous attempt to sanction and eliminate self-serving behavior, a group can become tightly-connected to the point that an individual identifies with the group. This identification could then lead an individual to protect or aid the group even at one's own cost or without any promise of benefit in return.

The idea of why society needs exchanges in the first place could date back both anthropologically and sociologically.

Sociological Perspective

Sociologists use the term of solidarity to explain exchanges. Emile Durkheim differentiates solidarity into mechanical and organic solidarity according to the type of the society.

Mechanical solidarity is associated with pre-modern society, where individuals are homogeneous and the cohesion arises mainly from shared values, lifestyles and work. Kinship connects individuals inside the society hence the exchange exists solely for survival purpose because of the low level of role specialization. This makes the solidarity mechanical as the exchange appears only when someone needs others, which may fall into exchange theory, with reciprocity in the form of status or reputation, as well as generalized exchange theory, where, out of expectation from the homogeneous group, reciprocity starts from the recipient helping a third and ends as the cycle is closed. That is to say, exchange theory argues that in a primitive society, reciprocity may be accompanied by an enhanced status or reputation while the sole intentionality for such exchange is survival. Generalized exchange theory believes that there is a social consensus out of commonly shared value or lifestyle that exchange does not require an immediate reciprocity but promise another activity, which, after several iterations, closes the cycle. Another important presumption in mechanical solidarity is the low level of role specialization where an individual may ask a random one, not necessary an expert, for help and this random one is capable of providing expected service.

Organic solidarity in modern society differs from the above-mentioned mechanical one. Modern society steps out of small and kinship-based town and integrates heterogeneous individuals that vary in their education, social class, religions, nations and races. Individuals stay distant from others psychologically and sociologically but meanwhile depend upon each other for their own well-being. The generalized exchange is hence more complicated as a result of longer chain in the cycle and perhaps temporal expansion. Different from a primitive society with a low level of role specialization, modern society is endowed with high specialization that emphasizes the searching process of the correct one when an exchange relation starts. When this searching fails finding a legitimate counterpart, this emerged exchange relation may die before birth. Therefore, the mechanism of organic solidarity is more complicated as the emergence, transmission, driving mechanism and the end point need careful reviews.

Anthropological Perspective

Anthropologists, quite different from sociologists, study the solidarity from the structural functionalism. While sociologists view individuals engaged in exchange due to the social factors, anthropologists, such as Levi-Strauss, believe the exchange is more of the solidarity in maintaining a well-functioned society than that for socially constrained individuals’ own needs. The society is believed to be an organism and all parts function together for the stability of the organism. Individuals work for the society and, reciprocally, they receive, say, philanthropic, materialistic, and social return from the society. It is similar to the modern society described by sociologists above, but the point here is that the solidarity is the cause of individual activities, which means individuals’ activities are dominated by the idea of solidarity, while sociologists’ modern society reaches solidarity as a result of individual’s self-oriented activities, where the solidarity is observed after selfish individuals focus on their own interests.

However, Malinowski studies the kula ring exchange on some island and concludes that individuals participate in the ritual or ceremony out of their own needs, where they feel satisfied as a part of the society. This could also be interpreted religiously as individuals hold the society above their social roles hence they actively become involved in the ceremony and reciprocally benefit psychologically and socially from being a part of the holiness, which, in a way, agrees with the idea of solidarity as the cause.

Social dilemmas

The unilateral character of generalized exchange that lacks one-to-one correspondence between what two parties directly give to and take from one another, distinguishes it from direct or restricted exchange. Ekeh (1974), a pioneer scholar in exchange theory, argues that generalized exchange is more powerful than restricted forms of exchange in generating morality, promoting mutual trust and solidarity among the participants. This view, however, was found to be too optimistic or problematic by later scholars, given that it ignores the social dilemmas created by the exchange structure. Because generalized exchange paves the way for exploitation by rational self-interested members, thus a free rider problem. This social dilemma needs to be resolved for generalized exchange systems to emerge and survive.

Free rider problem

Despite the risk of free riding, early exchange theorists proposed several explanations to why such exchange systems exist. Among others, altruistic motivation of members, existence of collective norms and incentives that regulates the behaviour of returning resources to any member, are most discussed ideas. However, these approaches do not guarantee the maintenance of exchange system, since compliance is facilitated by monitoring which does not exist in most cases. Subsequent social theorists proposed more feasible solutions that prevent free rider problem in generalized exchange systems. These solutions are described below by using the terminology adapted from Takahashi (2000).

Downward Tit-for-tat strategy

Tit-for-Tat strategy was originally introduced in game theory in order to provide solution to Prisoner’s dilemma by promoting mutual cooperation between two actors. This strategy has been adapted to bilateral and network relations, and in both cases the strategy works only in restricted – rather than generalized – exchange, because it involves bilateral resource giving in either situation. In an effort to propose a strategy to solve the social dilemma aspect of generalized exchange, Yamagishi and Cook (1993) analyzed the effect of network structures on group members’ decisions. Relying on Ekeh’s (1974) approach, they distinguish two forms of generalized exchange as "group-generalized" and "network-generalized". In the first type, group members pool their resources and then receive benefits that are generated by pooling. In the second, each member provides resources to another member in the network who does not return benefits directly to the provider, but the provider receives benefits from some other member in the network. They basically claim that group-generalized exchange involves free rider problem as it is rational for any member to receive resources from pool without contributing. On the other hand, network-generalized exchange limits the occurrence of this problem as it is easier to detect free riding member and punish him/her by withholding resources until s/he starts to give. The laboratory experiments supported these predictions and they showed that network-generalized exchange promotes a higher level of participation (or cooperation) that group-generalized exchange structure. They also show that trust is an important factor for the survival of both systems and has a stronger effect on cooperation in the network-generalized structure than in the group-generalized structure.

Generalized Exchange Structures in Yamagishi and Cook (1993)

In another study, biologists Boyd and Richerson (1989) presented a model of evolution of indirect reciprocity and supported the idea that downward tit-for-tat strategy helps sustaining network-generalized exchange structures. They also claim that as the group size increases, positive effect of this strategy on the possibility of cooperation reduces. In summary, these studies show that for a generalized exchange system to emerge and survive, a fixed form of network that consists of unidirectional paths is required. When this is available, adapting downward tit-for-tat strategy is profitable for all members and free riding is not possible. However, according to Takahashi (2000), the requirement of a fixed network structure is a major limitation since many of real world generalized exchange systems do not represent a simple closed chain of resource giving.

Downward Tit-for-Tat in Network Generalized Exchange (Takahashi, 2000)

Pure-generalized exchange

Takahashi and Yamagishi proposed pure-generalized exchange as a situation where there is no fixed structure. It is regarded as more general, flexible and less restricted compared to previous models. In essence, pure-generalized exchange is network-generalized exchange with a choice of recipients, where each actor gives resources to recipient(s) that s/he chooses unilaterally. However, this model also comes with a limitation; the necessity of a criterium that represents a collective sense of fairness among the members. By easing the limitations caused by the models described above, Takahashi (2000) proposed a more general solution to the free rider problem. This new model is summarized below.

Selective giving in pure generalized exchange

Fairness-based selective giving in pure-generalized exchange

The new model proposed by Takahashi (2000), solved the free rider problem in generalized exchange by imposing particular social structures as little as possible. He adapted pure-generalized exchange situation with a novel strategy; fairness-based selective giving. In this strategy, actors select recipients whose behaviors satisfy their own criteria of fairness which would make pure-generalized exchange possible. He showed that this argument can hold in two evolutionary experiments, in particular, pure-generalized exchange can emerge even in a society in which members have different standards of fairness. Thus, altruism and a collective sense of fairness are no longer required in such a setting. Why self-interested actors give resources unilaterally has been interpreted with the possibility that this action increases profits by participation in exchange.

Contexts

Exchange processes have been studied in a variety of empirical contexts. Much of the beginning of generalized exchange work revolved around tribal settings. For example, Malinowski’s Trobriand Island research serves as a foundational work for the study of exchange. The classic example of the Kula ring showed a system of exchange formed cyclically, where a giver would receive after a product given had gone through a full circle of receivers. Similar tribal research includes the inhabitants of Groote Eylandt, and matrilineal cross-cousin marriages.

These early studies have provoked the study of reciprocity and exchange in modern settings as well. For example, with technology comes exchange through information sharing in large, anonymous online communities of software developers. Even within academia, exchange has been studied through prosocial behaviors in a group of MBA students. Takahashi (2000) provided several places where generalized exchange can be observed in real life. Aiding a stranded driver alongside a road speaks to a societal-level feeling of duty to help others based on past experience or future expectation of needing help. Such a duty may also serve as the motivation for donating blood to unknown or indiscriminate receivers. Academically, the reviewers of journal articles also do so without payment in order to contribute to the system of publication and the knowledge that others will do so, or have already done so, for their papers. In addition to qualitative and ethnographic research, scholars have also studied generalized exchange through targeted lab experiments as well as programmed simulations. Generalized exchange has further studied through real life experiences, such as participation in public good conservation programs when one is recognized for doing so as opposed to when one’s name remains anonymous.

Generalized exchange structures can be statistically represented by blockmodels, which is an effective method for characterizing the pattern of multiple type and asymmetric social interactions in complex networks.

Reciprocity (cultural anthropology)

In cultural anthropology, reciprocity refers to the non-market exchange of goods or labour ranging from direct barter (immediate exchange) to forms of gift exchange where a return is eventually expected (delayed exchange) as in the exchange of birthday gifts. It is thus distinct from the true gift, where no return is expected.

When the exchange is immediate, as in barter, it does not create a social relationship. When the exchange is delayed, it creates both a relationship as well as an obligation for a return (i.e. debt). Hence, some forms of reciprocity can establish hierarchy if the debt is not repaid. The failure to make a return may end a relationship between equals. Reciprocal exchanges can also have a political effect through the creation of multiple obligations and the establishment of leadership, as in the gift exchanges (Moka) between Big Men in Melanesia. Some forms of reciprocity are thus closely related to redistribution, where goods and services are collected by a central figure for eventual distribution to followers.

Marshall Sahlins, an American cultural anthropologist, identified three main types of reciprocity (generalized, balanced and negative) in the book Stone Age Economics (1972). Reciprocity was also the general principal used by Claude Lévi-Strauss to explain the Elementary Structures of Kinship (1949), in one of the most influential works on kinship theory in the post-war period.

The history of the "norm of reciprocity" in European economic thought

Annette Weiner argued that the "norm of reciprocity" is deeply implicated in the development of Western economic theory. Both John Locke and Adam Smith used the idea of reciprocity to justify a free market without state intervention. Reciprocity was used, on the one hand, to legitimize the idea of a self-regulating market; and to argue how individual vice was transformed into social good on the other. Western economic theorists starting with the eighteenth century Scots economists Sir James Stuart and Smith differentiated pre-modern natural (or self-subsistent) economies from civilized economies marked by a division of labour that necessitated exchange. Like early sociologist Émile Durkheim, they viewed natural economies as characterized by mechanical solidarity (like so many peas in a pod) whereas the civilized division of labour made producers mutually dependent upon one another resulting in organic solidarity. These oppositions solidified by the late nineteenth century in the evolutionary idea of primitive communism marked by mechanical solidarity as the antithesis and alter ego of Western "Homo economicus". It is this armchair anthropology opposition that originally informed modern anthropological debate when Malinowski sought to overturn the opposition and argue that archaic societies are equally regulated by the norm of reciprocity and maximizing behaviour.

The concept was key to the debate between early anthropologists Bronislaw Malinowski and Marcel Mauss on the meaning of "Kula exchange" in the Trobriand Islands off Papua New Guinea during the First World War. Malinowski used Kula exchange to demonstrate the apparently random gift-giving was in fact a key political process by which non-state political leadership spanning a vast archipelago was established. Gift-giving, he argued, was not altruistic (as it supposedly is in our society) but politically motivated for individual gain. Marcel Mauss theorized the impetus for a return as "the spirit of the gift," an idea that has provoked a long debate in economic anthropology on what motivated the reciprocal exchange. Claude Lévi-Strauss, drawing on Mauss, argued there were three spheres of exchange governed by reciprocity: language (exchange of words), kinship (exchange of women), and economics (exchange of things). He thus claimed all human relationships are based on the norm of reciprocity. This claim has been disputed by anthropologists Jonathan Parry, Annette Weiner, and David Graeber amongst others.

Basic types

The domestic mode of production

Marshall Sahlins has emphasized that non-market exchange is constrained by social relationships. That is, exchange in non-market societies is less about acquiring the means of production (whether land or tools) and more about the redistribution of finished goods throughout a community. These social relationships are largely kinship based. His discussion of types of reciprocity is located within what he calls the "domestic mode of production." His typology of reciprocity thus refers to "cultures lacking a political state, and it applies only insofar as economy and social relations have not been modified by the historic penetration of states." Paul Sillitoe has extended the analysis of reciprocity in these conditions, arguing that the type of reciprocity found will depend upon which sphere of production is being examined. The production of subsistence goods is under the control of domestic units and hence marked by generalized reciprocity (or generalized exchange). Wealth objects – by their nature from outside – are competitively exchanged to acquire status, but no one is able to control their production and hence centralize power.

Sahlins' typology

In these circumstances, reciprocal exchange can be divided in two types: dyadic back-and-forth exchange (reciprocity), and pooling (redistribution). Pooling is a system of reciprocities. It is a within group relationship, whereas reciprocity is a between relationship. Pooling establishes a centre, whereas reciprocity inevitably establishes two distinct parties with their own interests. While the most basic form of pooling is that of food within the family, it is also the basis for sustained community efforts under a political leader.

Reciprocity, in contrast, is a dyadic exchange covering a range of possibilities, depending on individual interests. These interests will vary according to the social distance of the parties. A range of kinds of reciprocity can thus be sketched out, according to Sahlins:

  • Generalized reciprocity (see also generalized exchange) refers to putatively altruistic transactions, the "true gift" marked by "weak reciprocity" due to the vagueness of the obligation to reciprocate. The material side of the transaction (the exchange of equally valuable goods) is repressed by the social side and the reckoning of debts is avoided. The time for the return gift is indefinite and not qualified in quantity or quality. A failure to reciprocate does not result in the giver ceasing to give.
  • Balanced or Symmetrical reciprocity refers to direct exchange of customary equivalents without any delay, and hence includes some forms of 'gift-exchange,' as well as purchases with 'primitive money.' The exchange is less social, and is dominated by the material exchange and individual interests.
  • Negative reciprocity is the attempt to get "something for nothing with impunity." It may be described as 'haggling,' 'barter,' or 'theft.' It is the most impersonal form of exchange, with interested parties seeking to maximize their gains.

Reciprocity and kinship distance

This typology of reciprocal exchange was developed by Sahlins in relation to the domestic mode of production (i.e. 'stone age economics') and hence should be contrasted with the 19th century armchair conceptions of 'primitive communism.' Within this same domestic mode of production, the degree of social distance – kinship in particular – affects the kind of reciprocity. Since kinship is the major way in which these societies are organized, nonkin (strangers) are viewed negatively. A general model of reciprocity must recognize that the closeness of the kin tie will vary according to the type of kinship system. In so far as kinship also determines residence, kinship closeness may also translate into spatial closeness. Hence one finds generalized reciprocity within the household-kinship group, balanced reciprocity within a spatial community, and negative reciprocity with outsiders (i.e. outside the community). The kind of reciprocity reflects the moral nature of the social relationship, hence morality is not universal, but dependent on social distance. Sahlins' model thus views reciprocity as socially, morally and economically structured and "the structure is that of kinship-tribal groups" not a universalizing moral ethic.

Reciprocity and kinship rank

With rank come privileges. However, in traditional societies "social inequality is more the organization of economic equality. Often, in fact, high rank is only secured or sustained by o'ercrowing generosity." Rank is usually generational, with elders having seniority, but still held by the bounds of close kinship. Generalized reciprocity by such elders may be a "starting mechanism" for more general hierarchy, by placing many in the giver's debt. This leads to the question, "when does reciprocity give way to redistribution." Sahlins argues that chiefly redistribution is not different in principle and nothing but a highly organized form of kinship-rank reciprocity.

Reciprocity in market-based societies

David Graeber argues, in contrast, that balanced gift exchange and market exchange have more in common than normally assumed. Since both are balanced, the social relationship created through the sense of debt and obligation is constantly in danger of being ended by the return gift/exchange. He thinks it better to contrast "open" and "closed" reciprocity. Open reciprocity "keeps no accounts because it implies a relation of permanent mutual commitment." This open reciprocity is closed off precisely when it is balanced. Thought of in this way, we can see the relationship as a matter of degree, more or less open or closed. Closed reciprocity of gifts is most like market exchange. It is competitive, individualistic and may border on barter.

Reciprocity and marital alliance

The alliance theory (or general theory of exchanges) is the name given to the structural method of studying kinship relations. It finds its origins in Claude Lévi-Strauss's Elementary Structures of Kinship (1949). According to Levi-Strauss, the universal prohibition of incest pushes human groups towards exogamy where certain categories of kin are forbidden to marry. The incest taboo is thus a negative prescription; without it, nothing would push men to go searching for women outside of their inner kinship circle, or vice versa. In a process akin to the division of labour which makes exchange necessary, one's daughter or sister is offered to someone outside a family circle, and starts a circle of exchange of women: in return, the giver is entitled to a woman from the other's intimate kinship group. Thus the negative prescriptions of the prohibition have positive counterparts. The idea of the alliance theory is thus of a reciprocal or a generalized exchange which founds affinity, just as economic exchange due to the division of labour resulted in organic solidarity. This global phenomena takes the form of a "circulation of women" which links together the various social groups in one whole: society. Lévi-Strauss emphasizes this a system of generalized exchange based on indirect reciprocity. A generalized system does not involve a direct or balanced dyadic exchange and hence presupposes an expansion of trust.

Operator (computer programming)

From Wikipedia, the free encyclopedia https://en.wikipedia.org/wiki/Operator_(computer_programmin...