background preloader

URL = Uniform resource locator

URL = Uniform resource locator
A uniform resource locator, abbreviated as URL (also known as web address, particularly when used with HTTP), is a specific character string that constitutes a reference to a resource. In most web browsers, the URL of a web page is displayed on top inside an address bar. An example of a typical URL would be " A URL is technically a type of uniform resource identifier (URI), but in many technical documents and verbal discussions, URL is often used as a synonym for URI, and this is not considered a problem.[1] URLs are commonly used for web pages (http), but can also be used for file transfer (ftp), email (mailto) and many other applications (see URI scheme for list). URLs are specified in RFC 3986 (2005), and in a WHATWG URL Living Standard.[2] History[edit] Syntax[edit] Every HTTP URL consists of the following, in the given order. The scheme says how to connect, the host specifies where to connect, and the remainder specifies what to ask for. Unreserved Related:  Abbreviations & their meaningURI, Adressing, Distributed hashes, Watermarks and such

PolarSSL The PolarSSL SSL library is a dual licensed (GPLv2 or proprietary) implementation of the SSL and TLS protocols and the respective cryptographic algorithms and support code required. Stated on the website is that PolarSSL aims to be "easy to understand, use, integrate and expand". History[edit] The PolarSSL SSL library is the official continuation fork of the XySSL SSL library. XySSL was created by the French "white hat hacker" Christophe Devine and was first released on November 1, 2006 under GPL and BSD licenses. In 2011 the Dutch government approved an integration between OpenVPN and PolarSSL, which is named OpenVPN-NL. Library[edit] Later versions of the SSL library (> PolarSSL 1.3.0) add abstraction layers for memory allocation and threading to the core "to support better integration with existing embedded operating systems".[4] Design priorities[edit] Development Documentation[edit] The following documentation is available for developers: Automated Testing[edit] Use[edit] Platforms[edit]

URI scheme URI schemes should be registered with IANA, although non-registered schemes are used in practice. RFC 4395 describes the procedures for registering new URI schemes. Generic syntax[edit] Internet standard STD 66 (also RFC 3986) defines the generic syntax to be used in all URI schemes. Every URI is defined as consisting of four parts, as follows: <scheme name> : <hierarchical part> [ ? The scheme name consists of a sequence of characters beginning with a letter and followed by any combination of letters, digits, plus ("+"), period ("."), or hyphen ("-"). The hierarchical part of the URI is intended to hold identification information hierarchical in nature. The query is an optional part, separated by a question mark ("?") Semicolon: key1=value1;key2=value2;key3=value3 Ampersand: key1=value1&key2=value2&key3=value3 The fragment is an optional part separated from the front parts by a hash ("#"). Examples[edit] Use In Browsers[edit]

OpenVPN OpenVPN has been ported and embedded to several systems. For example, DD-WRT has the OpenVPN server function. SoftEther VPN, a multi-protocol VPN server, has an implementation of OpenVPN protocol. Architecture[edit] Encryption[edit] OpenVPN uses the OpenSSL library to provide encryption of both the data and control channels. Authentication[edit] OpenVPN has several ways to authenticate peers with each other. Networking[edit] OpenVPN can run over User Datagram Protocol (UDP) or Transmission Control Protocol (TCP) transports, multiplexing created SSL tunnels on a single TCP/UDP port[7] (RFC 3948 for UDP).[8] From 2.3.x series on, OpenVPN fully supports IPv6 as protocol of the virtual network inside a tunnel and the OpenVPN applications can also establish connections via IPv6.[9] It has the ability to work through most proxy servers (including HTTP) and is good at working through Network address translation (NAT) and getting out through firewalls. Security[edit] Extensibility[edit]

Transport Layer Security Transport Layer Security (TLS) and its predecessor, Secure Sockets Layer (SSL), are cryptographic protocols designed to provide communications security over a computer network.[1] They use X.509 certificates and hence asymmetric cryptography to authenticate the counterparty with whom they are communicating,[2] and to exchange a symmetric key. This session key is then used to encrypt data flowing between the parties. This allows for data/message confidentiality, and message authentication codes for message integrity and as a by-product, message authentication.[clarification needed] Several versions of the protocols are in widespread use in applications such as web browsing, electronic mail, Internet faxing, instant messaging, and voice-over-IP (VoIP). An important property in this context is forward secrecy, so the short-term session key cannot be derived from the long-term asymmetric secret key.[3] Description[edit] History and development[edit] Secure Network Programming[edit] Dr. Notes

OpenSSL History of the OpenSSL project[edit] The OpenSSL project was founded in 1998 to invent a free set of encryption tools for the code used on the Internet. As of 2014 two thirds of all webservers use it. The OpenSSL project management team consists of 4 Europeans. Major version releases[edit] Algorithms[edit] OpenSSL supports a number of different cryptographic algorithms: Ciphers Cryptographic hash functions Public-key cryptography (Perfect forward secrecy is supported using elliptic curve Diffie–Hellman since version 1.0.[7]) FIPS 140-2 compliance[edit] As of December 2012[update], OpenSSL is one of two open source programs to be involved with validation under the FIPS 140-2 computer security standard by the National Institute of Standards and Technology's (NIST) Cryptographic Module Validation Program (CMVP).[8] (OpenSSL itself is not validated, but a component called the OpenSSL FIPS Object Module, based on OpenSSL, was created to provide many of the same capabilities).[9] Licensing[edit]

RFC 2168 - Resolution of Uniform Resource Identifiers using the Domain Name System [Docs] [txt|pdf] [draft-ietf-urn-naptr] [Diff1] [Diff2] [IPR] Obsoleted by: 3401, 3402, 3403, 3404 EXPERIMENTALUpdated by: 2915 Network Working Group R. Daniel Request for Comments: 2168 Los Alamos National Laboratory Category: Experimental M. Mealling Network Solutions, Inc. June 1997 Status of this Memo =================== This memo defines an Experimental Protocol for the Internet community. RFC 2168 Resolution of URIs Using the DNS June 1997 In addition to locating resolvers, the NAPTR provides for other naming systems to be grandfathered into the URN world, provides independence between the name assignment system and the resolution protocol system, and allows multiple services (Name to Location, Name to Description, Name to Resource, ...) to be offered. RFC 2168 Resolution of URIs Using the DNS June 1997 meet the goals listed above. RFC 2168 Resolution of URIs Using the DNS June 1997 Example 2 --------- Consider a URN namespace based on MIME Content-Ids.

eMule eMule is a free peer-to-peer file sharing application for Microsoft Windows. Started in May 2002 as an alternative to eDonkey2000, eMule now connects to both the eDonkey network and the Kad network. The distinguishing features of eMule are the direct exchange of sources between client nodes, fast recovery of corrupted downloads, and the use of a credit system to reward frequent uploaders. Furthermore, eMule transmits data in zlib-compressed form to save bandwidth. eMule is coded in C++ using the Microsoft Foundation Classes. As of August 2013, it is the second most frequently downloaded project on SourceForge, with over 665 million downloads, only behind VLC media player.[3] History[edit] The eMule project was started on May 13, 2002 by Hendrik Breitkreuz (also known as Merkur) who was dissatisfied with the original eDonkey2000 client. eMule was first released as a binary on August 4, 2002 at version 0.05a. Nodes in Kad network In new versions, a "Bad source list" was added. Low ID[edit]

Open-source software Open-source software (OSS) is computer software with its source code made available and licensed with a license in which the copyright holder provides the rights to study, change and distribute the software to anyone and for any purpose.[1] Open-source software is very often developed in a public, collaborative manner. Open-source software is the most prominent example of open-source development and often compared to (technically defined) user-generated content or (legally defined) open-content movements.[2] A report by the Standish Group (from 2008) states that adoption of open-source software models has resulted in savings of about $60 billion per year to consumers.[3][4] Definitions[edit] The Open Source Initiative's (OSI) definition is recognized[who?] OSI uses The Open Source Definition to determine whether it considers a software license open source. Proliferation of the term[edit] Open software licensing[edit] Certifications[edit] Open-source software development[edit] Early releases

Virtual private network VPN connectivity overview A virtual private network connection across the Internet is similar to a wide area network (WAN) link between sites. From a user perspective, the extended network resources are accessed in the same way as resources available within the private network.[2] VPNs allow employees to securely access their company's intranet while traveling outside the office. Similarly, VPNs securely connect geographically disparate offices of an organization, creating one cohesive network. Types[edit] Early data networks allowed VPN-style remote connectivity through dial-up modems or through leased line connections utilizing Frame Relay and Asynchronous Transfer Mode (ATM) virtual circuits, provisioned through a network owned and operated by telecommunication carriers. VPNs can be either remote-access (connecting an individual computer to a network) or site-to-site (connecting two networks together). VPN systems may be classified by: Security mechanisms[edit] Authentication[edit]

Uniform resource name A uniform resource identifier (URI) is a uniform resource locator (URL), uniform resource name (URN), or both. Since RFC 3986 in 2005, the use of the term has been deprecated in favor of the less-restrictive "URI", a view proposed by a joint working group between the World Wide Web Consortium (W3C) and Internet Engineering Task Force (IETF). Both URNs and uniform resource locators (URLs) are URIs, and a particular URI may be a name and a locator at the same time. URNs were originally intended in the 1990s to be part of a three-part information architecture for the Internet, along with URLs and uniform resource characteristics (URCs), a metadata framework. Syntax[edit] The syntax of a URN is represented in Backus-Naur form as: <URN> ::= "urn:" <NID> ":" <NSS> This renders as: urn:<NID>:<NSS> The leading urn: sequence is case-insensitive. Namespaces[edit] In order to ensure the global uniqueness of URN namespaces, their identifiers (NIDs) are required to be registered with the IANA. Formal[edit]

Peer-to-peer file sharing Peer-to-peer file sharing is the distribution and sharing of digital documents and computer files using the technology of peer-to-peer (P2P) networking. P2P file sharing allows users to access media files such as books, music, movies, and games using a specialized P2P software program that searches for other connected computers on a P2P network and locates the desired content.[1] The nodes (peers) of such networks are end-user computer systems that are interconnected via the Internet. Several factors contributed to the widespread adoption and facilitation of peer-to-peer file sharing. Legal aspects[edit] The act of file sharing is not illegal and peer-to-peer networks are used for legitimate purposes. In the area of privacy, recent court rulings seem to indicate that there can be no expectation of privacy in data exposed over peer-to-peer file-sharing networks. History[edit] After Napster was shut down, the most popular peer-to-peer services were Gnutella and Kazaa. Advantages[edit]