A serial code is a unique identifier assigned incrementally or sequentially to an item. It is also called a serial number, although it may be a character string that includes letters and other typographical symbols, not just numerical digits.
Serial numbers identify otherwise identical individual units with many, obvious uses. Serial numbers are a deterrent against theft and counterfeit products, as they can be recorded, and stolen or otherwise irregular goods can be identified. Banknotes and other transferable documents of value bear serial numbers to assist in preventing counterfeiting and tracing stolen ones.
They are valuable in quality control, as once a defect is found in the production of a particular batch of product, the serial number will identify which units are affected.
Serial numbers may be used to identify individual physical or intangible objects (e.g., computer software or the right to play an online multiplayer game). The purpose and application is different. A software serial number, otherwise called product key, is usually not embedded in the software, but is assigned to a specific user with a right to use the software. The software will function only if a potential user enters a valid product code. The vast majority of possible codes are rejected by the software. If an unauthorised user is found to be using the software, the legitimate user can be identified from the code. It is usually not impossible, however, for an unauthorised user to create a valid but unallocated code either by trying many possible codes, or reverse engineering the software; use of unallocated codes can be monitored if the software makes an Internet connection.
The term "serial number" is sometimes used for codes which do not identify a single instance of something. For example, the International Standard Serial Number or ISSN used on magazines and other periodicals, an equivalent to the International Standard Book Number (ISBN) applied to books, is serially assigned not to each individual copy but to an issue of a periodical. It takes its name from the library science use of the word "serial" to mean a periodical.
Certificates and certificate authorities (CA) are necessary for widespread use of cryptography. These depend on applying mathematically rigorous serial numbers and serial number arithmetic, again not identifying a single instance of the content being protected.
The term "serial number" is also used in military formations as an alternative to the expression "service number". In air forces the serial number is used to uniquely identify individual aircraft and is usually painted on both sides of the aircraft fuselage, most often in the tail area, although in some cases the serial is painted on the side of the aircraft's fin/rudder(s). Because of this, the serial number is sometimes called a "tail number".
In the UK Royal Air Force (RAF) the individual serial takes the form of two letters followed by three digits, e.g., BT308—the prototype Avro Lancaster, or XS903—an English Electric Lightning F.6 at one time based at RAF Binbrook. During the Second World War RAF aircraft that were secret or carrying secret equipment had "/G" (for "Guard") appended to the serial, denoting that the aircraft was to have an armed guard at all times while on the ground, e.g., LZ548/G—the prototype de Havilland Vampire jet fighter, or ML926/G—a de Havilland Mosquito XVI experimentally fitted with H2S radar. Prior to this scheme the RAF, and predecessor Royal Flying Corps (RFC), utilised a serial consisting of a letter followed by four figures, e.g., D8096—a Bristol F.2 Fighter currently owned by the Shuttleworth Collection, or K5054—the prototype Supermarine Spitfire. The serial number follows the aircraft throughout its period of service.
In 2009 the U.S. FDA published draft guidance for the pharmaceutical industry to use serial numbers on prescription drug packages. This measure will enhance the traceability of drugs and help to prevent counterfeiting.
Serial numbers are often used in network protocols. However, most sequence numbers in computer protocols are limited to a fixed number of bits, and will wrap around after a sufficiently many numbers have been allocated. Thus, recently allocated serial numbers may duplicate very old serial numbers, but not other recently allocated serial numbers. To avoid ambiguity with these non-unique numbers, RFC 1982 "Serial Number Arithmetic", defines special rules for calculations involving these kinds of serial numbers.
Lollipop sequence number spaces are a more recent and sophisticated scheme for dealing with finite-sized sequence numbers in protocols.