ICV står för
integritetskontrollvärde . Det är inte direkt en del av själva krypteringsprocessen, utan snarare en mekanism som används för att säkerställa dataens integritet * efter * den har krypterats.
Tänk på det här sättet:Kryptering skyddar sekretessen för data (håller det hemligt), medan en ICV skyddar dess integritet (säkerställer att den inte har manipulerats).
Så här fungerar det:
1. Data behandlas: Innan kryptering, eller ibland efter, appliceras en kryptografisk hashfunktion (som MD5 eller SHA-256) på data. Detta producerar ett "fingeravtryck" av data-ICV.
2. ICV överförs: ICV överförs tillsammans med de krypterade data.
3. Data dekrypteras: Mottagaren dekrypterar uppgifterna.
4. ICV är verifierad: Mottagaren beräknar oberoende ICV för de dekrypterade data med samma hashfunktion. Denna nyligen beräknade ICV jämförs med ICV som erhållits med de krypterade data.
5. Integritet bekräftad (eller inte): Om de två ICV:erna matchar föreslår det starkt att uppgifterna inte har ändrats under överföring eller lagring. Om de inte matchar indikerar det att uppgifterna har manipulerats.
kort sagt: ICV fungerar som en digital signatur för datas integritet och arbetar tillsammans med kryptering för att ge både sekretess och integritet. Medan kryptering döljer datas innehåll, verifierar ICV att innehållet inte har ändrats. Observera att det inte hindrar någon från att * dekryptera * uppgifterna - det upptäcker bara om de dekrypterade uppgifterna har ändrats.