Integrita dat
V informatice a telekomunikacích má termín integrita dat následující významy:
- Stav, kdy přečtená data jsou totožná s daty uloženými. Tzn. během uložení (přenosu) dat nedošlo k jejich neočekávaným změnám.
- Zajištění kompletnosti dat. Například osobní číslo patří nějaké osobě. Pokud by osobní číslo nikomu nepatřilo, jedná se o osiřelá nebo nekompletní data.
- Zachování dat pro jejich zamýšlené použití.
Integritou dat se také může myslet integrita datové struktury, ve které jsou data uložena – tedy to, že data v paměti stále tvoří zmíněnou datovou strukturu. Pokud k datové struktuře přistupuje více vláken najednou, může dojít k tomu, že datová struktura se změní v nesmysl. V extrémním případě je možné „zničit“ i obyčejné číslo. Pro zabránění těmto jevům se používají synchronizační primitiva.
Databáze
V kontextu relační databáze existuje:
- Entitní integrita vyžadující, aby každá tabulka měla primární klíč, který je pro každý záznam unikátní a není NULL.
- Referenční integrita bránící pomocí cizích klíčů tomu, že data v různých tabulkách, která by měla souviset, nesouvisí. Řeší se opět synchronizačními primitivy nebo transakcemi.
- Doménová integrita zajišťující, že každá hodnota v daném sloupci má vyžadovaný typ, případně rozsah, např. nezáporná sudá čísla nebo písmena A, B nebo C. Složité omezení může vyžadovat řešení triggery.
Bezpečnost
Další význam integrity dat v počítačové bezpečnosti je ujištění, že k data nemůžou být změněna někým, kdo na to nemá oprávnění.
Integrita je jedním ze tří základních vlastností informační bezpečnosti (CIA triad). Jedná se o důvěrnost (confidentiality), integrita (integrity), dostupnost (availability).
Integrita dat bývá zajišťována kontrolními součty, hašovacími funkcemi, samoopravnými kódy, žurnálováním atd.
V kryptografii a v zabezpečení informací všeobecně integrita znamená platnost dat. Integrita může být porušena:
- Záměrným pozměněním, např. útočník změní číslo účtu v bankovní transakci nebo padělá dokument prokazující identitu.
- Náhodným pozměněním, např. chyby při přenosech dat nebo porucha pevného disku.
Distribuované systémy
V distribuovaných systémech, kde existuje typicky víc kopií dat, se problémy týkají např. synchronizace dat, propagace změn a maskování nekonzistentních mezistavů dat.