Vändbar kryptering används inte ofta för lösenord eftersom de specifika kraven och parametrarna för lösenordsverifiering är oförenliga med svagheten i reversibel kryptering.
Den primära svagheten i reversibel kryptering är enkel: om nyckeln äventyras , de krypterade uppgifterna äventyras, period.
Lösenord används hela tiden, närhelst användare loggar in. Därför måste autentiseringsprocessen kunna få tillgång till användarnas referenser hela tiden, på ett automatiserat sätt , utan hindrande kontroller. Det betyder att nyckeln för reversibel kryptering måste finnas på hårddisken eller i minnet hela tiden. Om det programmet, disken eller minnet på något sätt äventyras, komprometteras alla dessa reversibelt krypterade lösenord på ett slag.
Tänk däremot på användningen av icke-reversibla haschar. Om programmet, disken eller minnet äventyras får angriparen de "låsta" hasharna och det finns ingen nyckel. De kan sedan attackera ytterligare - känd ciphertext-attack, brute force, etc - men de har inte "vunnit" ännu.
Vi använder alltid reversibel (låt mig säga nycklad) kryptering - skivor, filer , e-postbilagor. Det som alla har gemensamt är dock att de uppmuntrar (om inte kräver) mänskligt ingripande för att ge nyckeln.
Jag är inte säker på varför du frågar om det här, men hur är det med en hybridmodell? Tänk på att det kan vara rimligt att lagra både reversibel och icke-reversibel krypteringstext för användarlösenord. När lösenord skapas, lagra två krypterade versioner: En skapad med envägs hashing-funktion och den andra skapad med en asymmetrisk krypteringsalgoritm ("public key cryptography"). Alla automatiserade autentiseringsprocesser använder icke-reversibla hashes för autentiseringsändamål. Behåll halvan "allmän nyckel" i paret för att generera de krypterade lösenorden och lagra "privat nyckel" hälften av paret offline . Om lösenordets klartext behövs, ta det krypterade lösenordet offline och dekryptera det med lämplig nyckel. Så länge dekrypteringsnyckeln inte är tillgänglig för autentiseringssystemet kan en angripare inte dra nytta av det faktum att du använde "reversibel" kryptering för att lagra lösenord i klartext.
Det hjälper bara om du behöver för att få åtkomst till klartextlösenord är naturligtvis inte ett automatiserat behov. Men det verkar som en snygg idé för mig.