Ochranná známka (zabezpečení počítače) - Trademark (computer security)
![]() | tento článek ne uvést žádný Zdroje.Červenec 2012) (Zjistěte, jak a kdy odstranit tuto zprávu šablony) ( |
A Ochranná známka v počítačové bezpečnosti je smlouva mezi kódem, který ověřuje vlastnosti zabezpečení objektu a kódem, který vyžaduje, aby objekt měl určité vlastnosti zabezpečení. Proto je užitečné jej zajistit zabezpečený tok informací. V objektově orientovaných jazycích je ochranná známka obdobná podepisování dat, ale lze je často implementovat bez kryptografie.
Operace
Ochranná známka má dvě operace:
ApplyTrademark! (Objekt)
Tato operace je analogická se soukromým klíčem v procesu digitálního podpisu, takže nesmí být vystavena nedůvěryhodnému kódu. neměnné předměty, a zajišťuje, že když VerifyTrademark? je volána na stejné hodnotě, která vrací true.
VerifyTrademark? (Objekt)
Tato operace je analogická s veřejným klíčem v procesu digitálního podpisu, takže ji lze vystavit nedůvěryhodnému kódu. Vrátí true if-and-only-if, ApplyTrademark! byl zavolán s daným objektem.
Vztah ke kontrole kazivosti
Ochranná známka je inverzní k kontrola pachu. Zatímco kontrola nákazy je přístup na seznam zakázaných, který říká, že určitým objektům by se nemělo věřit, ochranná známka je přístup na seznam povolených, který označuje určité objekty jako objekty, které mají určité vlastnosti zabezpečení.
Vztah k memoizaci
Použitou ochrannou známku lze považovat za memorování proces ověření.
Vztah k ověření smlouvy
Proces ověřování někdy není nutné provádět, protože skutečnost, že hodnota má konkrétní vlastnost zabezpečení, může být staticky ověřeno. V tomto případě se vlastnost apply používá k tvrzení, že objekt byl vytvořen kódem, který byl formálně ověřeno produkovat pouze výstupy s konkrétní vlastností zabezpečení.
Příklad
Jeden způsob použití ochranné známky v Javě:
veřejnost třída Ochranná známka { / * Použijte sadu hash slabé identity místo toho pokud a.equals (b) && zaškrtněte (a) neznamená kontrolu (b). * / soukromé finále WeakHashSet<?> ochranná známka = ...; veřejnost synchronizované prázdnota aplikovat(Objekt Ó) { ochranná známka.přidat(Ó); } veřejnost synchronizované booleovský šek(Objekt Ó) { vrátit se ochranná známka.obsahuje(Ó); } } veřejnost třída HtmlSanitizer { // Operace použití je utajena. soukromé statický finále Ochranná známka TM = Nový Ochranná známka(); veřejnost Tětiva sanitizeHtml(Tětiva rawHtml) { // Odebrat všechny tagy kromě bezpečných Tětiva safeHtml = ...; // java.lang.String je neměnný, takže může být chráněn ochrannou známkou. TM.aplikovat(safeHtml); vrátit se safeHtml; } veřejnost booleovský isSanitized(Tětiva html) { vrátit se TM.šek(html); } }
externí odkazy
- „Ochrana v programovacích jazycích“ autor: James Morris Jr.