Lamport signature

In cryptography, a Lamport signature or Lamport one-time signature scheme is a method for constructing a digital signature. Lamport signatures can be built from any cryptographically secure one-way function; usually a cryptographic hash function is used.

Although the potential development of quantum computers threatens the security of many common forms of cryptography such as RSA, it is believed that Lamport signatures with large hash functions would still be secure in that event. Each Lamport key can only be used to sign a single message. However, many Lamport signatures can be handled by one Merkle hash tree, thus a single hash tree key can be used for many messages, making this a fairly efficient digital signature scheme.

The Lamport signature cryptosystem was invented in 1979 and named after its inventor, Leslie Lamport.[1]

Example

Alice has a 256-bit cryptographic hash function and some kind of secure random number generator. She wants to create and use a Lamport key pair, that is, a private key and a corresponding public key.

Making the key pair

To create the private key Alice uses the random number generator to produce 256 pairs of random numbers (2×256 numbers in total), each number being 256 bits in size, that is, a total of 2×256×256 bits = 128 Kibit in total. This is her private key and she will store it away in a secure place for later use.

To create the public key she hashes each of the 512 random numbers in the private key, thus creating 512 hashes, each 256 bits in size. (Also 128 Kbits in total.) These 512 hashes form her public key, which she will share with the world.

Signing the message

Later Alice wants to sign a message. First she hashes the message to a 256-bit hash sum. Then, for each bit in the hash, based on the value of the bit, she picks one number from the corresponding pairs of numbers that make up her private key (i.e., if the bit is 0, the first number is chosen, and if the bit is 1, the second is chosen). This produces a sequence of 256 numbers. As each number is itself 256 bits long the total size of her signature will be 256×256 bits = 65536 bits = 64 Kibit. These (originally randomly picked) numbers are her signature and she publishes them along with the message.

Note that now that Alice's private key is used, it should never be used again. She must destroy the other 256 numbers that she did not use for the signature. Otherwise, each additional signature reusing the private key reduces the security level against adversaries that might later create false signatures from them.[2]

Verifying the signature

Then Bob wants to verify Alice's signature of the message. He also hashes the message to get a 256-bit hash sum. Then he uses the bits in the hash sum to pick out 256 of the hashes in Alice's public key. He picks the hashes in the same manner that Alice picked the random numbers for the signature. That is, if the first bit of the message hash is a 0, he picks the first hash in the first pair, and so on.

Then Bob hashes each of the 256 random numbers in Alice's signature. This gives him 256 hashes. If these 256 hashes exactly match the 256 hashes he just picked from Alice's public key then the signature is ok. If not, then the signature is wrong.

Note that prior to Alice publishing the signature of the message, no one else knows the 2×256 random numbers in the private key. Thus, no one else can create the proper list of 256 random numbers for the signature. And after Alice has published the signature, others still do not know the other 256 random numbers and thus can not create signatures that fit other message hashes.

Formal description

Below is a short description of how Lamport signatures work, written in mathematical notation. Note that the "message" in this description is a fixed sized block of reasonable size, possibly (but not necessarily) the hash result of an arbitrarily long message being signed.

Keys

Let be a positive integer and let be the set of messages. Let be a one-way function.

For and the signer chooses randomly and computes .

The private key, , consists of values . The public key consists of the values .

Signing a message

Let be a message.

The signature of the message is

.

Verifying a signature

The verifier validates a signature by checking that for all .

In order to forge a message Eve would have to invert the one-way function . This is assumed to be intractable for suitably sized inputs and outputs.

Security parameters

The security of Lamport signatures is based on the security of the one-way hash function and the length of its output.

For a hash function that generates an n-bit message digest, the ideal preimage and 2nd preimage resistance on a single hash function invocation implies on the order of 2n operations to find a collision under a classical computing model. According to Grover's algorithm, finding a preimage collision on a single invocation of an ideal hash function is upper bound on O(2n/2) operations under a quantum computing model. In Lamport signatures, each bit of the public key and signature is based on short messages requiring only a single invocation to a hash function.

For each private key yi,j and its corresponding zi,j public key pair, the private key length must be selected so performing a preimage attack on the length of the input is not faster than performing a preimage attack on the length of the output. For example, in a degenerate case, if each private key yi,j element was only 16 bits in length, it is trivial to exhaustively search all 216 possible private key combinations in 216 operations to find a match with the output, irrespective of the message digest length. Therefore, a balanced system design ensures both lengths are approximately equal.

Based on Grover's algorithm, a quantum secure system, the length of the public key elements zi,j, the private key elements yi,j and the signature elements si,j must be no less than 2 times larger than the security rating of the system. That is:

  • An 80-bit secure system uses element lengths of no less than 160 bit;
  • A 128-bit secure system uses element lengths of no less than 256 bit;

However caution should be taken as the idealistic work estimates above assume an ideal (perfect) hash function and are limited to attacks that target only a single preimage at a time. It is known under a conventional computing model that if 23n/5 preimages are searched, the full cost per preimage decreases from 2n/2 to 22n/5.[3] Selecting the optimum element size taking into account the collection of multiple message digests is an open problem. Selection of larger element sizes and stronger hash functions, such as 512-bit elements and SHA-512, ensures greater security margins to manage these unknowns.

Optimisations and variants

Short private key

Instead of creating and storing all the random numbers of the private key, a single key of sufficient size can be stored. (Usually the same size as one of the random numbers in the private key.) The single key can then be used as the seed for a cryptographically secure pseudorandom number generator (CSPRNG) to create all the random numbers in the private key when needed. Note a cryptographically secure hash (or at least whose output is not XORed with the seed) can not be used instead of CSPRNG because signing a message would reveal additional random values from the private key. If the adversary can access the signature before the intended recipients can, then he can forge a signature with a halving of security level for each doubling of the revealed random values from the private key.

In the same manner a single key can be used together with a CSPRNG to create many Lamport keys. Preferably then some kind of post-quantum secure random access CSPRNG should be used. Notably, classic CSPRNG like BBS should not be used.

Short public key

A Lamport signature can be combined with a hash list, making it possible to publish only the single top hash instead of all the hashes in the public key. That is, instead of the values . To verify against the single top hash, the signature must include the random numbers and the unused hashes from the hash list of the public key, resulting in signatures of about twice the size. That is, the values for all needs to be included.

The unused hashes do not need to be included in the signature if a cryptographic accumulator is used instead of a hash list.[4]

Short keys and signature

Winternitz signature compression reduces the size of the private key and public key by slightly less than a factor of the , and half that factor for the signature. The computation increases by slightly more than a factor of . A cryptographically secure hash suffices instead of the requirement for a CSPRNG.[5]

A hash list could also be employed to shorten the public key to a single value at the expense of doubling the size of the signature as explained in the prior section.

Public key for multiple messages

Each Lamport public key can only be used to sign one single message, which means many keys have to be published if many messages are to be signed. But a hash tree can be used on those public keys, publishing the top hash of the hash tree instead. This increases the size of the resulting signature, since a branch of the hash tree has to be included in the signature, but it makes it possible to publish a single hash that then can be used to verify a large number of future signatures.

See also

References

  1. ^ Lamport, Leslie (October 1979). "Constructing Digital Signatures from a One Way Function". SRI International (CSL-98). Retrieved 17 February 2021.
  2. ^ "Lamport signature: How many signatures are needed to forge a signature?".
  3. ^ Bart Preneel, "Design Principles for Iterated Hash Functions Revised"
  4. ^ "Can one use a Cryptographic Accumulator to efficiently store Lamport public keys without the need of a Merkle Tree?".
  5. ^ "Winternitz one-time signature scheme".

Further reading

Read other articles:

Bóng đá trong nhà tại Đại hội Thể thao Đông Nam Á 2021Chi tiết giải đấuNước chủ nhàViệt NamThời gian11 tháng 5 – 20 tháng 5Số đội5 (nam), 4 (nữ) (từ 1 liên đoàn)Địa điểm thi đấu1 (tại 1 thành phố chủ nhà)Vị trí chung cuộcVô địch Thái Lan (nam; lần thứ 6) Thái Lan (nữ; lần thứ 5)Á quân Indonesia (nam) Việt Nam (nữ)Hạng ba Việt Nam (nam)...

 

  لمعانٍ أخرى، طالع مارستون (توضيح). هذه المقالة يتيمة إذ تصل إليها مقالات أخرى قليلة جدًا. فضلًا، ساعد بإضافة وصلة إليها في مقالات متعلقة بها. (أكتوبر 2014) مارستون     الإحداثيات 45°30′N 71°00′W / 45.5°N 71°W / 45.5; -71  [1] تاريخ التأسيس 1 يناير 1874  تقسيم إدا...

 

Dieser Artikel behandelt die Gemeinde im Landkreis Diepholz. Zu weiteren Bedeutungen siehe Barenburg (Begriffsklärung). Wappen Deutschlandkarte 52.6205555555568.800555555555634Koordinaten: 52° 37′ N, 8° 48′ O Basisdaten Bundesland: Niedersachsen Landkreis: Diepholz Samtgemeinde: Kirchdorf Höhe: 34 m ü. NHN Fläche: 16,45 km2 Einwohner: 1213 (31. Dez. 2022)[1] Bevölkerungsdichte: 74 Einwohner je km2 Postleitzahl: 27245 Vor...

село Хлібодарівка Країна  Україна Область Донецька область Район Волноваський район Громада Хлібодарівська сільська громада Облікова картка Хлібодарівка  Основні дані Населення ▼ 1084 (01.01.2017) Площа 1.78 км² Густота населення 609 осіб/км² Поштовий індекс 85766 Телефо

 

 Nota: Para outras cidades contendo este nome, veja Trois-Rivières (desambiguação). Trois-Rivières   Comuna francesa    Localização País  França Departamento Guadalupe Características geográficas Área total 31 km² População total (2010) [1] 8 755 hab. Densidade 282,4 hab./km² Código Postal 97114 Código INSEE 97132 Trois-Rivières é uma comuna francesa na região administrativa de Guadeloupe, no departamento de Guadeloupe. Est...

 

Google TVCuplikanPengembangGoogleRilis perdanaMaret 2012; 11 tahun lalu (2012-03)Sistem operasiAndroid Roku webOS (TV pintar)JenisDistribusi digitalSitus webtv.google.com Google TV (sebelumnya Google Play Film) adalah aplikasi video on demand yang dioperasikan oleh Google, bagian dari produk Google Play. Layanan ini menawarkan film dan acara televisi untuk pembelian atau penyewaan, tergantung ketersediaan. Google mengklaim bahwa sebagian besar konten tersedia dalam definisi tinggi, dan o...

Hospital in North Charleston, South Carolina Hospital in South Carolina, United StatesTrident Medical CenterTrident Health SystemGeographyLocationNorth Charleston, South Carolina, United StatesCoordinates32°58′34″N 80°4′23″W / 32.97611°N 80.07306°W / 32.97611; -80.07306OrganizationCare systemPublicFundingFor-profit hospitalTypeGeneralServicesEmergency departmentLevel II trauma centerBeds321[1]HistoryOpened1975[2]LinksWebsitetridenthealthsyst...

 

United States Army general Gideon Johnson PillowBorn(1806-06-08)June 8, 1806Williamson County, Tennessee, U.S.DiedOctober 8, 1878(1878-10-08) (aged 72)Phillips County, Arkansas, U.S.Place of burialElmwood Cemetery, Memphis, TennesseeAllegiance United States of America  Confederate States of AmericaService/branch United States Army Confederate States ArmyYears of service1846–48 (USA), 1861–65 (CSA)Rank Major General (USA) Major General (Provisional Army of Ten...

 

Italian local election Politics of Piedmont Statute Regional Government President: Alberto Cirio Vice President: Fabio Carosso Regional Council President: Stefano Allasia Elections Political parties Provinces (Presidents) Municipalities (Mayors of largest cities) Regions of Italy Politics of Italy Politics of the European Union Other countries vte The 1970 Piedmontese regional election took place on 7–8 June 1970. Events Christian Democracy was by far the largest party in the Regional Counc...

Leela James discographyJames performing in 2009.Studio albums8EPs1 This is the discography of American R&B/soul musician Leela James. Studio albums List of albums, with selected chart positions and certifications Title Album details Peak chart positions US[1] US R&B[2] BEL[3] FRA[4] NLD[5] SWE[6] A Change Is Gonna Come Released: June 21, 2005 Label: Warner Bros. Format: CD, digital download 148 42 43 97 26 52 Let's Do It Again Released: ...

 

Motor vehicle Daihatsu MiraSeventh generation Daihatsu MiraOverviewManufacturerDaihatsuAlso calledDaihatsu CuoreDaihatsu CharadeDaihatsu DominoDaihatsu HandivanProductionJune 1980 – March 2018AssemblyIkeda, Osaka, JapanBody and chassisClassKei car or City carLayoutFront-engine, front-wheel-drive / four-wheel-driveRelatedDaihatsu LeezaDaihatsu MoveDaihatsu OptiDaihatsu CeriaPerodua KancilPerodua KelisaPerodua VivaPerodua AxiaChronologyPredecessorDaihatsu Max CuoreSuccessorDaihatsu Mira ...

 

2013 video gameDeveloper(s)Piranha GamesPublisher(s)Infinite Game PublishingPiranha Games (since 2014)[1]SeriesMechWarriorEngineCryEngine 3[2]Platform(s)Microsoft WindowsReleaseWW: September 17, 2013Genre(s)Vehicle simulationMode(s)Multiplayer MechWarrior Online is a free-to-play vehicle simulation video game, officially launched during September 2013 by Piranha Games for Microsoft Windows. The game takes place within the larger BattleTech universe. Gameplay Players control la...

Questa voce sull'argomento province del Perù è solo un abbozzo. Contribuisci a migliorarla secondo le convenzioni di Wikipedia. Provincia di BongaráprovinciaMunicipalidad Provincial de Bongará LocalizzazioneStato Perù Regione Amazonas AmministrazioneCapoluogoJumbilla TerritorioCoordinatedel capoluogo5°51′27″S 77°47′32″W / 5.8575°S 77.792222°W-5.8575; -77.792222 (Provincia di Bongará)Coordinate: 5°51′27″S 77°47′32″W / ...

 

A file that causes a computer to follow indicated instructions This article is about a general type of computer file. For the specific file type used in some operating systems, see .exe. Program execution General concepts Code Translation Compiler Compile time Optimizing compiler Intermediate representation (IR) Execution Runtime system Runtime Executable Interpreter Virtual machine Types of code Source code Object code Bytecode Machine code Microcode Compilation strategies Ahead-of-time (AOT...

 

Goenawan MohamadLahirGoenawan Soesatyo Mohamad29 Juli 1941 (umur 82)Batang, Jawa Tengah, Hindia Belanda (sekarang Indonesia)Nama lainGMPekerjaan Penyair penulis esai penulis naskah sutradara editor OrganisasiTempoKarya terkenalCatatan Pinggir, Komunitas SaliharaSuami/istriWidarti GoenawanAnak2Penghargaan CPJ International Press Freedom Awards (1998) International Editor of the Year Award (1999) Bintang Budaya Parama Dharma [note 1] Goenawan Soesatyo Mohamad (lahir 29 Juli 19...

Stockholm Metro station StadionStockholm metro stationGeneral informationLocationÖstermalm, StockholmSwedenCoordinates59°20′35″N 18°4′52″E / 59.34306°N 18.08111°E / 59.34306; 18.08111Elevation4.4 m (14 ft) below sea levelOwned byStorstockholms LokaltrafikPlatforms1 island platformTracks2ConstructionStructure typeUndergroundDepth35 m (115 ft) below groundAccessibleYesOther informationStation codeSTDHistoryOpened30 September 1973; ...

 

Extinct genus of mammaliamorphs BotucaraitheriumTemporal range: Norian~225.42 Ma PreꞒ Ꞓ O S D C P T J K Pg N ↓ Illustration of the holotype jaw Scientific classification Domain: Eukaryota Kingdom: Animalia Phylum: Chordata Clade: Synapsida Clade: Therapsida Clade: Cynodontia Clade: Mammaliamorpha Genus: †BotucaraitheriumSoares et al., 2014 Type species †Botucaraitherium belarminoiSoares et al., 2014 Botucaraitherium is an extinct genus of prozostrodontian cynodonts from the...

 

For the Green Day song, see Nimrod (album). For the action thriller film, see Take Back (film). 2000 single by Kumi KodaTake BackSingle by Kumi Kodafrom the album Affection B-sideYour SongReleasedDecember 6, 2000 (Japan)May 22, 2001 (United States)RecordedMid–2000 (Avex Studios, On Air Azabu Studios, Tokyo, Japan)Genre Dance-pop R&B Length4:58LabelRhythm ZoneAvex Music Creative Inc.Songwriter(s)KodaProducer(s)Max MatsuuraKumi Koda singles chronology Take Back (2000) Trust Your Love (200...

German sculptor Equestrian statue of Charles Augustus, Grand Duke of Saxe-Weimar-Eisenach, Weimar, (1867-75) Adolf von Donndorf (16 February 1835 – 20 December 1916) was a German sculptor. Life Adolf Donndorf was born in Weimar, the son of a cabinet-maker. Starting in 1853 he was a student of Ernst Rietschel in Dresden. After Rietschel's death in 1861, he and Gustav Adolph Kietz [de] completed the large Luther Monument in Worms, Germany. Donndorf contributed several statues inc...

 

Alga merahRentang fosil: Mesoproterozoikum–sekarang[1] Had'n Arkean Proterozoikum Pha. Klasifikasi ilmiah Domain: Eukariota (tanpa takson): Archaeplastida Filum: RhodophytaWettstein, 1922 kemungkinan kelas Florideophyceae Bangiophyceae Cyanidiophyceae Alga merah atau Rhodophyta (/roʊˈdɒf[invalid input: 'ɨ']tə/ roh-DOF-fit-tə atau /ˌroʊdəˈfaɪtə/ ROH-də-FY-tə; dari Bahasa Yunani Kuno: ῥόδον rhodon, mawar and φυτόν phyton, tumbuhan) adalah salah satu filum dari...

 

Strategi Solo vs Squad di Free Fire: Cara Menang Mudah!