Скачать презентацию Управление на ключа Една зависимост на ключовете е Скачать презентацию Управление на ключа Една зависимост на ключовете е

306d5fec853e8925c3afe41eb4ca77fe.ppt

  • Количество слайдов: 14

Управление на ключа Една зависимост на ключовете е състояние, в което комуникиращите единици поделят Управление на ключа Една зависимост на ключовете е състояние, в което комуникиращите единици поделят обща данна (ключов материал) за да улеснят криптографската техника. Тази данна съдържа: nпублични или секретни ключове; n. Начални стойности; nдопълнителни не секретни параметри. Определение Управление на ключа е множество от техники и процедури, поддържащи установяването и експлоатацията на зависимости на ключовете между упълномощени партии. Управлението на ключа включва техники и процедури поддържащи: 1. Инициализация на системните потребители вътре в областта / домейна; 2. Генериране, разпространение и инсталация на ключовия материал; 3. Управление на употребата на ключовия материал; 4. Обновление, анулиране и разрушаване на ключовия материал; 5. Съхраняване, възстановяване и архивиране на ключовия материал. Класификация на ключовете по алгоритми и употреба nprivate key - public key nsymmetric key nsecret 1

Управление на ключа 1. Генериране на ключове Прости модели за установяване на ключове - Управление на ключа 1. Генериране на ключове Прости модели за установяване на ключове - Ограничено пространство на ключове Table 1 Number of Possible Keys of Various Keyspaces 4 -Byte 5 -Byte 6 -Byte 7 -Byte 8 -Byte 7 3. 1*108 8. 0*109 2. 1*1011 Lowercase letters (26): 460, 000 1. 2*10 Lowercase letters and digits (36): 1, 700, 000 6. 0*107 2. 2*109 7. 8*1010 2. 8*1012 Alphanumeric characters (62): 1. 5*107 9. 2*108 5. 7*1010 3. 5*1012 2. 2*1014 Printable characters (95): 8. 1*107 7. 7*109 7. 4*1011 7. 0*1013 6. 6*1015 ASCII characters (128): 2. 7*108 3. 4*1010 4. 4*1012 5. 6*1014 7. 2*1016 8 -bit ASCII characters (256): 4. 3*109 1. 1*1012 2. 8*1014 7. 2*1016 1. 8*1019 Table 2 Exhaustive Search of Various Keyspaces (assume one million attempts per second) 4 -Byte 5 -Byte 6 -Byte 7 -Byte 8 -Byte Lowercase letters (26): . 5 sec 12 sec 5 min 2. 2 hours 2. 4 days Lowercase letters and digits (36): 1. 7 sec 1 min 36 min 22 hours 33 days Alphanumeric characters (62): 15 sec 15 min 16 hours 41 days 6. 9 years Printable characters (95): 1. 4 min 2. 1 hours 8. 5 days 2. 2 years 210 years ASCII characters (128): 4. 5 min 9. 5 hours 51 days 18 years 2300 years 8 -bit ASCII characters (256): 1. 2 hours 13 days 8. 9 years 2300 years 580000 years 2

Управление на ключа Продължение - Избор на слаб ключ : 1. Потребителско име, инициали, Управление на ключа Продължение - Избор на слаб ключ : 1. Потребителско име, инициали, име на сметка и друга релевантна/уместна персонална информация като възможно пароли – 130; 2. Думи от различни бази данни – 60 000; 3. Вариации на думи от точка 2 – 1 000; 4. Различни варианти с големи букви на думите от точка 2 – 3 000; 5. Думи от чужди езици за потребители чужденци; 6. Двойки думи -10 000. - Случайни ключове Добрите ключове са стрингове от случайни битове, генерирани при автоматичен процес. - Фрази пропуски/пароли (Pass Phrases) Кey crunching превръщане на лесно за запомняне фрази в случайни ключове. 1, 3 бита/знак --- 64 -битов ключ –(64/1, 3)- 49 знака или 10 думи (англ. език) n 2 проблем за разпространението на ключовете В една система с n потребители, използваща симетрична криптография, ако всяка двойка комуникира секретно трябва да споделят общ ключ – нужни са n-1 секретни ключа за всеки от тях. Или общо n(n-1)/2 (приблизително n 2 ). Размерът на системата, ако нарасне неимоверно нараства и броят на ключовете. 3

Управление на ключа 2. Генериране на ключове в симетрични криптографски системи Point-to-point and centralized Управление на ключа 2. Генериране на ключове в симетрични криптографски системи Point-to-point and centralized key management От точка до точка комуникациите и централизирано управление на ключа (centralized key management) употребяват Център за разпространение на ключа или Център за транслация на ключа и са прости модели за разпределение на ключове относно симетрични криптографски системи. a- Point-to-point key distribution в- KDC c- KTC 4

Управление на ключа Продължение Роля на трета партия - In-line, on-line , off-line third Управление на ключа Продължение Роля на трета партия - In-line, on-line , off-line third parties 5

Управление на ключа Продължение - Функции на третата страна при сертифициране в криптография с Управление на ключа Продължение - Функции на третата страна при сертифициране в криптография с публичен ключ n certification authority (CA) n name server n registration authority n key generator n certificate directory 6

Управление на ключа Продължение - Други основни функции на третата страна 1. key server Управление на ключа Продължение - Други основни функции на третата страна 1. key server (authentication server) 2. key management facility Забележка: Нива на доверие vs. компетентност Най- общо има три нива на доверие в третата партия T за сертифициране на акредитиви на потребителите: Level 1: T знае всеки потребителски секретен ключ; Level 2: T не знае потребителските секретни ключове, но може да създаде фалшиви акредитиви без да бъдат открити; Level 3: T не знае потребителските секретни ключове и генерирането на фалшиви акредитиви е възможно да се открие. - Съвременни функции на третата страна 1. timestamp agent; 2. notary agent; 3. key escrow agent. 7

Управление на ключа Продължение Слоеве (подреждане) на ключовете и криптопериодите Криптографската цел “конфиденциалност” (поверителност) Управление на ключа Продължение Слоеве (подреждане) на ключовете и криптопериодите Криптографската цел “конфиденциалност” (поверителност) определя клас от алгоритми и подкласове, определени от естеството на защитената информация: потребителска данна vs. ключов материал. Това предполага едно ключово подреждане в слоеве, както следва: nmaster keys – високо ниво в йерархията (не е криптографски защитен), разпространява се ръчно или се инсталира първоначално и защитава с процедурен контрол и физически / електронно; nkey-encrypting keys – симетрични или публични ключове, употребявани за транспортиране или съхранение на други ключове (key-transport keys) и могат да се засекретяват от други ключове; ndata keys – употребяват се за извършване на криптографски операцииu върху потребителска данна (encryption, authentication). Те са кратковременни симетрични ключове, понякога и асиметрични частни ключове за подписване – дълготрайни ключове. 8

Управление на ключа Продължение Криптопериоди, дълготрайни и краткотрайни ключове Определение Криптопериод (cryptoperiod ) на Управление на ключа Продължение Криптопериоди, дълготрайни и краткотрайни ключове Определение Криптопериод (cryptoperiod ) на ключа е периодът от време през, който той е валиден за употреба за легитимни партии. Криптопериодите могат да служат за: 1. Ограничение на наличната информация за криптоанализа; 2. Ограничение на експозицията (демаскирането) в случай на компрометиране на един ключ; 3. Ограничение на употребата на специална технология за определяне на ефективното време на живот; 4. Ограничение на изчислителното време за компютърно интензивна криптоаналитична атака (когато не се изисква дълготрайна протекция на ключа). Ключовете се класифицират по времеви условия както следва: 1. long-term keys - мaster keys, key-encrypting keys и ключове за подпомагане на споразуменията за ключовете; 2. short-term keys –включва регистриране на ключове чрез транспортиране на ключове или споразумяване, data key или session key. Key translation centers (KTC) и сертификати в симетрична криптография - Key translation centers Протокол Транслиране на съобщение при употреба на KTC 9

Управление на ключа Продължение Techniques for distributing public keys Протоколите, използващи публична криптография, приемат Управление на ключа Продължение Techniques for distributing public keys Протоколите, използващи публична криптография, приемат a priori владеене на публичните ключове за определените партии, договаряне за ключа, включващо: n Point-to-point delivery over a trusted channel. n Direct access to a trusted public file (public-key registry). n Use of an on-line trusted server. n Use of an off-line server and certificates. n Use of systems implicitly guaranteeing authenticity of public parameters. Дървета на достоверност (Authentication trees) Дърветата на достоверност произвеждат един метод на даване в наличност на публична данна, при употреба с различна достоверност на структури в конструкции с Хаш функция и достоверна стойност на корена. Приложенията включват: 1. authentication of public keys ; 2. trusted timestamping service; 3. authentication of user validation parameters. Двоични дървета (Binary trees) Двоичните дървета са структури, съдържащи върхове и ребра. Върховете са три вида: 1. a root vertex. Върхът-корен има две ребра насочени към него - отляво и отдясно; 2. internal vertices. Всеки вътрешен връх има три ребра инцидентни с него – горен насочен напред и ляв и десен насочен към него; 3. leaves. Всеки връх – листо е инцидентно с едно ребро и е насочено от него навън. Върховете инцидентни с левите и десни ребра на един вътрешен връх се наричат деца (children) на вътрешния връх. Вътрешните върхове или коренът се наричат родители (parent ) на асоциираните деца. 10

Управление на ключа Продължение Конструиране и употреба на дървета за достоверност Разглеждаме едно бинарно Управление на ключа Продължение Конструиране и употреба на дървета за достоверност Разглеждаме едно бинарно дърво T, което има листа. Нека h да бъде една Хeш функция. T може да се употреби за удостовери t публични стойности, Y 1, Y 2, …, Yt, чрез дърво за удостоверяване (authentication tree T* ) както следва: 1. Етикетът на всяко от листата t с уникална публична стойност е Yi. 2. На всяко ребро насочено навън от листото означено с Yi , се поставя етикет h(Yi ). 3. Ако ляво и дясно ребро на един вътрешен връх са означени с h 1 и h 2 , респективно, етикетът за горното ребро на върха е h(h 1 || h 2) 4. Ако ребрата са насочени към върха-корен се означават с u 1 и u 2, етикетът на върха-корен е h(u 1 || u 2) 11

Управление на ключа Продължение Пример (key verification using authentication trees) Публичната стойност Y 1 Управление на ключа Продължение Пример (key verification using authentication trees) Публичната стойност Y 1 може да бъде удостоверена с произвеждане на последователност от етикети h(Y 2), h(Y 3), h(Y 4). Процесът е както следва: n. Изчисляване на h(Y 1); n. Следващо изчисление h 1 = h (h(Y 1) || h(Y 2)); n. Определяне на h 2 = h(h 1 || h(Y 3)); n. Приемане на Y 1 като автентична на h(h 2 || h(Y 4)) = R , където стойността на корена R е известна като автентична. Depth of a binary tree Balanced binаry tree – балансираното бинарно дърво с t листа има дължина около lg(t). Length of authentication paths 3. Сертифициране на публични ключове (Public-key certificates) Определение Един сертификат на публичен ключ (public-key certificate) е структурирана данна, съдържаща две части - data part и signature part. Частта от данни съдържа явен текст, включващ както минимум един публичен ключ и идентификацията на партията (subject entity) за да я идентифицира. Частта на подписа съдържа цифров подпис на упълномощения сертифициращ за частта на данната по този начин свързвайки идентич-ността на субекта с определен публичен ключ. - Създаване за публичен-ключ сертификати n. Case 1: trusted party creates key pair. n. Case 2: entity creates own key pair. - Употреба и верификация на сертификати за публичен ключ. - Сертификати за принадлежност (Attribute certificates) 12

Управление на ключа Продължение Системи базирани на идентичност (Identity-based systems) Определение Базирана на идентичност Управление на ключа Продължение Системи базирани на идентичност (Identity-based systems) Определение Базирана на идентичност криптографска система (ID-based system) е една асиметрична система където публичната идентификационна информация за един обект (unique name) играе роля в нейния публичен ключ и се употребява като вход към довереното лице (заедно с частния ключ на T) за да се изчисли кореспондиращия публичен ключ на обекта. 4. X 9. 17 генериране на ключ Стандарт ANSI X 9. 17 определя един метод за генериране на ключ. Той не генерира лесен за запомняне ключ - по-удобен е за генериране на сесиен ключ или псевдослучайни числа в системата. Криптографският алгоритъм, употребен за генериране на ключове, е троен –DES. Нека EK(X) е тройно-DES шифриране на X с ключ K. Това е специален ключ, запазен за генериране на секретен ключ. V 0 е едно секретно 64 -битово семе/зародиш. T е марка за време. За да се генерира случаен ключ Ri, се изчислява: Ri = EK(EK(Ti) ⊕ Vi) За да се генерира Vi+1, се изчислява: Vi+1 = EK(EK(Ti) ⊕ Ri) За да се обърне Ri в ключ на DES, просто се поправя всеки 8 -ми бит за четност. Ако е необходим 64 -битов ключ, се употребява той какъвто е. Ако е необходим 128 -битов, се генерира една двойка ключове и се свързват заедно. 13

Управление на ключа Продължение ANSI X 9. 17 key generation. 5. Нелинейни пространства на Управление на ключа Продължение ANSI X 9. 17 key generation. 5. Нелинейни пространства на ключове Ако може да се постави алгоритъма в един модул за фалшифицирано доказателство, това което може да се направи. Може да се изискват ключове със специална секретна форма; всички останали ключове ще са причина модулът да шифрира и дешифрира употребявайки строго слаби алгоритми. Може да се направи това, така че шансът на някой, незнаещ специалната форма, но случайно спъвайки се в един коректен ключ, да бъде много малък. Това се нарича нелинейно пространство на ключове - nonlinear keyspace, защото всичките ключове не са силни. (Обратното е линейно или flat, ключово пространство. ) Един лесен начин да се направи това е да се създаде ключ от две части: ключ и някакъв фиксиран стринг шифриран с този ключ. Модулът дешифрира стринга с ключа; ако се взема фиксираният стринг то се употребява ключа нормално, ако се употребява нещо различно, слаб алгоритъм. n. Пренасяне на ключовете (Transferring Keys) на ключове (Verifying Keys) -Откриване на грешки по време на предаване на ключа -Откриване на грешки в ключа по време на дешифрирането n. Употреба на ключове n. Обновяване на ключовете n. Съхраняване на ключове n. Възстановяване на ключове ( Backup Keys) n. Компроментиране на ключове (Compromised Keys) n. Живот на ключовете ( Lifetime of Keys) n. Разрушаване на ключове ( Destroying Keys) n. Потвърждаване 14