Archivers output a stream or a single file when provided with a directory or a set of files. Archive utilities, unlike archive suites, usually do not include compression or encryption capabilities. Some archive utilities may even have a separate un-archive utility for the reverse operation.
Backup Software can make copies of all information stored on a disk and restore either the entire disk (e.g. in an event of disk failure) or selected files (e.g. in an event of accidental deletion).
Data compression utilities output a shorter stream or a smaller file when provided with a stream or file.
Data synchronization utilities establish consistency among data from a source to a target data storage and vice versa. There are several branches of this type of utility:
File synchronization utilities maintain consistency between two sources. They may be used to create redundancy or backup copies but are also used to help users carry their digital music, photos and video in their mobile devices.
Revision control utilities are intended to deal with situations where more than one user attempts to simultaneously modify the same file.
Debuggers are used to test and "debug" other programs, mainly to solve programming errors. Also utilized for reverse engineering of software or systems.
File managers provide a convenient method of performing routine data management, email recovery and management tasks, such as deleting, renaming, cataloging, uncataloging, moving, copying, merging, generating and modifying data sets.
Hex editors directly modify the text or data of a file. These files could be data or an actual program.
Screensavers were desired to prevent phosphor burn-in on CRT and plasma computer monitors by blanking the screen or filling it with moving images or patterns when the computer is not in use. Contemporary screensavers are used primarily for entertainment or security.
System monitors for monitoring resources and performance in a computer system.
System profilers provide detailed information about the software installed and hardware attached to the computer.
7-Zip is a free and open-source file archiver, a utility used to place groups of files within compressed containers
known as "archives". It is developed by Igor Pavlov and was first released in 1999. 7-Zip uses its own 7z archive format,
but can read and write several other archive formats. The program can be used from a command-line interface as the command
p7zip, or through a graphical user interface that also features shell integration. Most of the 7-Zip source code is under
the GNU LGPL license; the unRAR code, however, is under the GNU LGPL with an "unRAR restriction", which states that developers
are not permitted to use the code to reverse-engineer the RAR compression algorithm.
Antivirus or anti-virus software (often abbreviated as AV), sometimes known as anti-malware software, is computer
software used to prevent, detect and remove malicious software.
Antivirus software was originally developed to detect and remove computer viruses, hence the name. However, with the
proliferation of other kinds of malware, antivirus software started to provide protection from other computer threats. In
particular, modern antivirus software can protect from: malicious browser helper objects (BHOs), browser hijackers, ransomware,
keyloggers, backdoors, rootkits, trojan horses, worms, malicious LSPs, dialers, fraudtools, adware and spyware. Some
products also include protection from other computer threats, such as infected and malicious URLs, spam, scam and phishing
attacks, online identity (privacy), online banking attacks, social engineering techniques, advanced persistent threat (APT) and
botnet DDoS attacks.
Electronic mail (email or e-mail) is a method of exchanging messages between people using electronics. Email first
entered substantial use in the 1960s and by the mid-1970s had taken the form now recognized as email. Email operates across
computer networks, which today is primarily the Internet. Some early email systems required the author and the recipient to
both be online at the same time, in common with instant messaging. Today's email systems are based on a store-and-forward model.
Email servers accept, forward, deliver, and store messages. Neither the users nor their computers are required to be online
simultaneously; they need to connect only briefly, typically to a mail server or a webmail interface, for as long as it takes
to send or receive messages.
Originally an ASCII text-only communications medium, Internet email was extended by Multipurpose Internet Mail
Extensions (MIME) to carry text in other character sets and multimedia content attachments. International email, with
internationalized email addresses using UTF-8, has been standardized, but as of 2017 it has not been widely adopted.
The history of modern Internet email services reaches back to the early ARPANET, with standards for encoding email
messages published as early as 1973 (RFC 561). An email message sent in the early 1970s looks very similar to a basic email
sent today. Email had an important role in creating the Internet, and the conversion from ARPANET to the Internet in the
early 1980s produced the core of the current services.
Network-based email was initially exchanged on the ARPANET in extensions to the File Transfer Protocol (FTP), but is
now carried by the Simple Mail Transfer Protocol (SMTP), first published as Internet standard 10 (RFC 821) in 1982.
In the process of transporting email messages between systems, SMTP communicates delivery parameters using a message
envelope separate from the message (header and body) itself.
Messages are exchanged between hosts using the Simple Mail Transfer Protocol with software programs called mail
transfer agents (MTAs); and delivered to a mail store by programs called mail delivery agents (MDAs, also sometimes called
local delivery agents, LDAs). Accepting a message obliges an MTA to deliver it, and when a message cannot be delivered,
that MTA must send a bounce message back to the sender, indicating the problem.
Users can retrieve their messages from servers using standard protocols such as POP or IMAP, or, as is more likely in a
large corporate environment, with a proprietary protocol specific to Novell Groupwise, Lotus Notes or Microsoft Exchange
Servers. Programs used by users for retrieving, reading, and managing email are called mail user agents (MUAs).
Mail can be stored on the client, on the server side, or in both places. Standard formats for mailboxes include Maildir
and mbox. Several prominent email clients use their own proprietary format and require conversion software to transfer email
between them. Server-side storage is often in a proprietary format but since access is through a standard protocol such as IMAP,
moving email from one server to another can be done with any MUA supporting the protocol.
Many current email users do not run MTA, MDA or MUA programs themselves, but use a web-based email platform, such as
Gmail, Hotmail, or Yahoo! Mail, that performs the same tasks. Such webmail interfaces allow users to access their mail with
any standard web browser, from any computer, rather than relying on an email client.
FileZilla is a free software, cross-platform FTP application, consisting of FileZilla Client and FileZilla Server.
Client binaries are available for Windows, Linux, and macOS, server binaries are available for Windows only. The client
supports FTP, SFTP and FTPS (FTP over SSL/TLS).
FileZilla's source code is hosted on SourceForge and the project was featured as Project of the Month in November
2003. However, there have been criticisms that SourceForge bundles malicious software with the application; and that
FileZilla stores users' FTP passwords insecurely.
FileZilla was started as a computer science class project in the second week of August 2001 by Tim Kosse and two
classmates. Before they started to write the code, they discussed under which license they should release the code.
They decided to make FileZilla an open-source project because many FTP clients were already available, and they didn't think
that they would sell a single copy if they made FileZilla commercial.
Gpg4win is an email and file encryption package for most versions of Microsoft Windows, which uses GnuPG public-key
cryptography for data encryption and digital signatures.
The original creation of Gpg4win was supported by Germany's Federal Office for Information Security, however
Gpg4win and all included tools are free and open source software, and it is typically the non-proprietary option for privacy
recommended to Windows users.
GNU Privacy Guard (GnuPG or GPG) is a free software replacement for Symantec's PGP cryptographic software suite.
GnuPG is compliant with RFC 4880, which is the IETF standards track specification of OpenPGP. Modern versions of PGP are
interoperable with GnuPG and other OpenPGP-compliant systems.
GnuPG is part of the GNU Project, and has received major funding from the German government.
Immunet is a free, cloud-based, community-driven antivirus application, using the ClamAV and its own engine. The
software is complementary with existing antivirus software. On 5 August 2011 it was announced that Immunet had been acquired
The application is free of charge, and claims to be fast and to provide up-to-date protection against threats. Virus
signature files are stored in the cloud, not on individual computers, so update downloads are not required. Once a virus is
detected and blocked for one user, all other Immunet users receive the same protection almost instantly. The software is noted
for its ability to allow individual users to easily author their own signatures.
The MD5 algorithm is a widely used hash function producing a 128-bit hash value. Although MD5 was initially designed to
be used as a cryptographic hash function, it has been found to suffer from extensive vulnerabilities. It can still be used as a
checksum to verify data integrity, but only against unintentional corruption.
Like most hash functions, MD5 is neither encryption nor encoding. It can be cracked by brute-force attack and suffers
from extensive vulnerabilities as detailed in the security section below.
MD5 was designed by Ronald Rivest in 1991 to replace an earlier hash function MD4. The source code in RFC 1321
contains a "by attribution" RSA license. The abbreviation "MD" stands for "Message Digest."
The security of the MD5 has been severely compromised, with its weaknesses having been exploited in the field,
most infamously by the Flame malware in 2012. The CMU Software Engineering Institute considers MD5 essentially
"cryptographically broken and unsuitable for further use". Despite this known vulnerability, MD5
remains in use.
Network enumeration is a computing activity in which usernames and info on groups, shares, and services of networked
computers are retrieved. It should not be confused with network mapping, which only retrieves information about which servers
are connected to a specific network and what operating system runs on them.
Network Enumeration is the discovery of hosts/devices on a network. Network Enumeration tends to use overt discovery
protocols such as ICMP and SNMP to gather information. It may also scan various ports on remote hosts for looking for well
known services in an attempt to further identify the function of a remote host. The next stage of enumeration is to fingerprint
the Operating System of the remote host.
Nmap (Network Mapper) is a security scanner, originally written by Gordon Lyon (also known by his pseudonym Fyodor
Vaskovich), used to discover hosts and services on a computer network, thus building a "map" of the network. To accomplish
its goal, Nmap sends specially crafted packets to the target host(s) and then analyzes the responses.
The software provides a number of features for probing computer networks, including host discovery and service and
operating-system detection. These features are extensible by scripts that provide more advanced service detection,
vulnerability detection, and other features. Nmap can adapt to network conditions including latency and congestion during a
scan. The Nmap user community continues to develop and refine the tool.
Nmap started as a Linux-only utility, but porting to Windows, Solaris, HP-UX, BSD variants (including OS X),
AmigaOS, and IRIX have followed. Linux is the most popular platform, followed closely by Windows.
In computing, a shell is a user interface for access to an operating system's services. In general, operating system
shells use either a command-line interface (CLI) or graphical user interface (GUI), depending on a computer's role and
particular operation. It is named a shell because it is a layer around the operating system kernel.
The design of a shell is guided by cognitive ergonomics and the goal is to achieve the best workflow possible for the
intended tasks; the design can be constricted by the available computing power (for example, of the CPU) or the available
amount of graphics memory. The design of a shell is also dictated by the employed computer periphery, such as computer
keyboard, pointing device (a mouse with one button, or one with five buttons, or a 3D mouse) or touchscreen, which is the
direct human–machine interface.
CLI shells allow some operations to be performed faster, especially when a proper GUI has not been or cannot be
created; however, they require the user to be familiar with commands and their calling syntax, and to understand concepts about
the shell-specific scripting language (for example bash script), which may prove difficult for those with little computer
experience. CLIs are also easier to be operated via refreshable braille display and provide certain advantages to screen
Graphical shells place a low burden on beginning computer users, and they are characterized as being simple and easy to
use. With the widespread adoption of programs with GUIs, the use of graphical shells has gained greater adoption. Since
graphical shells come with certain disadvantages, most GUI-enabled operating systems also provide additional CLI shells.
Graphical shells provide means for manipulating programs based on graphical user interface (GUI), by allowing for
operations such as opening, closing, moving and resizing windows, as well as switching focus between windows. Graphical shells
may be included with desktop environments or come separately, even as a set of loosely coupled utilities.
Most graphical user interfaces develop the metaphor of an "electronic desktop", where data files are represented as if
they were paper documents on a desk, and application programs similarly have graphical representations instead of being invoked
by command names.