DE60200616T2 - Gesicherte Inhaltsobjekte - Google Patents

Gesicherte Inhaltsobjekte Download PDF

Info

Publication number
DE60200616T2
DE60200616T2 DE60200616T DE60200616T DE60200616T2 DE 60200616 T2 DE60200616 T2 DE 60200616T2 DE 60200616 T DE60200616 T DE 60200616T DE 60200616 T DE60200616 T DE 60200616T DE 60200616 T2 DE60200616 T2 DE 60200616T2
Authority
DE
Germany
Prior art keywords
encrypted
user
encryption
code
document
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
DE60200616T
Other languages
English (en)
Other versions
DE60200616D1 (de
Inventor
William D Cupertino Evans
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Xerox Corp
Original Assignee
Xerox Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Xerox Corp filed Critical Xerox Corp
Publication of DE60200616D1 publication Critical patent/DE60200616D1/de
Application granted granted Critical
Publication of DE60200616T2 publication Critical patent/DE60200616T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6209Protecting access to data via a platform, e.g. using keys or access control rules to a single file or object, e.g. in a secure envelope, encrypted and accessed using a key, or with access control rules appended to the object itself

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Bioethics (AREA)
  • Storage Device Security (AREA)
  • Document Processing Apparatus (AREA)

Description

  • Die vorliegende Erfindung betrifft im Allgemeinen die Sicherheit elektronischer Dokumente und im Besonderen Systeme und Verfahren zum sicheren Speichern und Verwalten elektronischer Dokumente sowie zum gesteuerten Zugriff auf selbige. Ein anderer Aspekt der Erfindung betrifft die Steuerung des Zugriffs auf Zusatzinformationen, z. B. zu den elektronischen Dokumenten gehörende Anmerkungen (Annotationen).
  • Elektronische Dokumente sind der De-facto-Standard für die Informationserstellung, -übertragung und -speicherung geworden. Ein elektronisches Dokument (bzw. eine elektronische Datei oder ein elektronisches Objekt) weisen im typischen Fall Inhaltsinformationen (wie beispielsweise Text, Grafiken, Gleichungen, Tabellen, Tabellenkalkulationen, Bilder, Ton, Bewegtbilder und andere Multimedia-Inhalte, usw.) sowie Formatierungsinformationen auf, die angeben, wie der Inhalt anzuzeigen ist. Verschiedene Arten von Inhaltsinformationen werden leichter verstanden, wenn sie in einer bestimmten Art und Weise formatiert sind. Tabellenkalkulationen lassen sich beispielsweise leichter verstehen, wenn sie in interaktiven Tabellen formatiert sind. Es sind viele verschiedene Anwendungsprogramme bzw. Sprachen entwickelt worden, um Inhaltsinformationen auf spezielle Art und Weise anzuzeigen oder zu formatieren. Jede Sprache, wie beispielsweise Microsoft Word, Adobe Acrobat, HTML usw., definiert einen Satz von Formatierungsregeln, der festlegt, wie die Inhaltsinformationen (z. B. ein Brief, Artikel, Verkaufsinformationen usw.) einem Benutzer angezeigt werden.
  • Viele Benutzer haben ein Interesse daran, die Inhaltsinformationen zu schützen, vor allem wenn sich das Dokument nicht in Gebrauch befindet. Das von den Benutzern gewünschte Schutzniveau hängt vom Wert der Inhaltsinformationen ab. Je wertvoller die Inhaltsinformationen sind, desto stringenter sind die von den Benutzern gewünschten Schutzvorkehrungen. Unter Berücksichtigung dessen enthalten viele Anwendungsprogramme Verfahren zum Schutz des Inhalts. Microsoft Word ermöglicht es beispielsweise den Benutzern, Dokumente durch Zuweisen eines Passwortes zu schützen. Das Word-Dokument ist in Klarschrift gespeichert, so dass ein einfallsreicher Hacker das Passwort entfernen und den Dokumentinhalt sehen könnte.
  • Das von Adobe Acrobat erzeugte „Portable Document Format", PDF, präsentiert Inhaltsinformationen in einem Format, welches das von dem Autor gewünschte Erscheinungsbild bewahrt und plattformunabhängig ist, wodurch es für die Verwendung über das In ternet attraktiv wird. Durch die Acrobat-Software wird ein gewisser Dokument-„Schutz" geschaffen. Ein PDF-Dokument kann zum Schutz von dessen Inhalt verschlüsselt werden. Die Verschlüsselung erfolgt bei allen Zeichenketten und Datenströmen in der PDF-Datei, jedoch nicht bei anderen zum Übertragen von Informationen über die Dokumentstruktur verwendeten Objekten, die nicht zum Inhalt gehören. Der Zugriff auf das „geschützte" PDF-Dokument erfolgt über ein Benutzerpasswort. Während der Inhalt über die Verschlüsselung geschützt ist, gewährleistet das PDF jedoch keine „sichere" Übertragung, d. h. eine Übertragung, bei der die Struktur und/oder andere Informationen über das Dokument nicht sichtbar sind. Selbst wenn ein teilweise verschlüsselter Inhalt vorliegt, kann viel über ein Dokument in Erfahrung gebracht werden, indem das Verhältnis des formatierten Inhalts beobachtet wird oder indem eine Version eines digitalen Dokuments mit einer anderen verglichen wird. Weiterhin ermöglicht das PDF-Format keine durch den Benutzer auszuwählenden Verschlüsselungsebenen und auch keinen Schutz von vorbereitenden Informationen (die häufig die Struktur des Dokuments offen legen), die dem Benutzer zum Eingeben des Passwortes angezeigt werden und die jeder Benutzer vor dem Öffnen der geschützten Teile lesen kann.
  • Viele Anwendungsprogramme und Sprachen ermöglichen das Einfügen von Kommentaren, Fußnoten und anderen Arten von Anmerkungen in ein vorhandenes Dokument. Häufig werden Anmerkungen von Personen gemacht, bei denen es sich nicht um den bzw. die Autor(en) des Originaldokuments handelt. Ob eine Person, die nicht der Autor ist, eine Anmerkung zu dem Dokument eines anderen Benutzers machen darf, hängt von dem konkreten Anwendungsprogramm ab und davon, ob dieser Person die Berechtigung erteilt worden ist, Anmerkungen abzugeben. In einem Microsoft Word-Dokument kann beispielsweise jeder beliebige Benutzer, der Zugriff auf ein Dokument hat, Anmerkungen einfügen. Bei Adobe Acrobat bestimmt die Benutzerversion der Adobe Acrobat-Software, ob der Benutzer Anmerkungen machen darf oder nicht. Wenn die Benutzerversion Anmerkungen zulässt, dann wird im Normalfall der Benutzer Änderungen an den Anmerkungen speichern, was dazu führt, dass die Adobe Acrobat-Software die neue Anmerkung und/oder Änderungen an vorhandenen Anmerkungen in einer neuen Version der vorhandenen PDF-Datei einschließt.
  • Derartige Anmerkungen können jedoch von sämtlichen Benutzern gelesen werden, die zum Öffnen des Dokuments berechtigt sind (ungeachtet dessen, ob es ein Word-Dokument oder ein PDF- oder ein Dokument eines anderen Typs ist). Es gibt keine Möglichkeit der Begrenzung dahingehend, wer die von einem Benutzer zu der Datei hinzugefügten Anmerkungen lesen oder bearbeiten kann, wenn die neue Version an andere Benut zer mit Zugriff auf eine Software-Anwendung verteilt wird, die Anmerkungen anzeigt/bearbeitet. So kann beispielsweise der Schutz von Dokumenten, bei denen ein Sicherheitsmechanismus lediglich gewährleistet, dass der Zugriff auf jene begrenzt ist, die das Passwort für das Dokument kennen, nicht als eine allgemeine Lösung betrachtet werden.
  • US-A-5953419, US-A-5787175 und US-A-6011847 legen Verfahren zum Erkennen eines elektronischen Dokuments offen, welche umfassen:
    Verschlüsseln des elektronischen Dokuments unter Verwendung eines Dokumenten-Verschlüsselungscodes;
    Erzeugen einer Mehrfachcode-Verschlüsselungstabelle zur Verwendung in einem Mehrfachcode-Verschlüsselungsverfahren, wobei die Tabelle wenigstens eine Mehrfachcode-Komponente umfasst;
    Erzeugen eines verschlüsselten Headers, der Informationen umfasst, die das elektronische Dokument betreffen;
    Verknüpfen einer Benutzerschnittstellen-Vorrichtung mit dem verschlüsselten Header, der Mehrfachcode-Verschlüsselungstabelle und dem verschlüsselten elektronischen Dokument, wobei die Benutzerschnittstellen-Vorrichtung unverschlüsselte Informationen zum Identifizieren des elektronischen Dokuments und ein interaktives Element umfasst, das den Benutzer befähigt, eine Benutzer-Berechtigung zum Zugriff auf wenigstens einen Teil des verschlüsselten elektronischen Dokuments einzugeben;
    Kombinieren der Benutzer-Berechtigung mit jeder der gespeicherten Mehrfachcode-Komponenten in der Mehrfachcode-Verschlüsselungscodetabelle, um den verschlüsselten Header zu entschlüsseln; und
    bei einer gültigen Entschlüsselung des verschlüsselten Headers Entschlüsseln des Abschnitts des verschlüsselten elektronischen Dokuments.
  • Nach einem ersten Aspekt der vorliegenden Erfindung ist ein Verfahren zum Schutz eines elektronischen Dokuments dadurch gekennzeichnet, dass der verschlüsselte Header oder das verschlüsselte Dokument eine Verschlüsselungs-Markierung enthält, die eine willkürliche Zahlenfolge umfasst, auf die eine herleitbare Abwandlung dieser willkürlichen Zahlenfolge folgt, wobei eine gültige Entschlüsselung der Verschlüsselungs-Markierung anzeigt, dass der Dokumenten-Verschlüsselungscode gefunden worden ist.
  • Nach einem zweiten Aspekt der Erfindung umfasst ein Objekt mit sicherem Inhalt:
    ein verschlüsseltes elektronisches Dokument, das mit einem Dokumenten-Verschlüsselungscode verschlüsselt worden ist;
    einen verschlüsselten Header, der Informationen umfasst, die das elektronische Dokument betreffen;
    eine Mehrfachcode-Verschlüsselungstabelle zur Verwendung in einem Mehrfachcode-Verschlüsselungsverfahren, wobei die Tabelle wenigstens eine Mehrfachcode-Komponente umfasst;
    eine Benutzerschnittstellen-Vorrichtung, die unverschlüsselte Informationen zum Identifizieren des elektronischen Dokuments und ein interaktives Element umfasst, das einen Benutzer befähigt, eine Benutzer-Berechtigung zum Zugriff auf wenigstens einen Teil des verschlüsselten elektronischen Dokuments einzugeben, zum Eingeben der Benutzer-Berechtigung in eine Entschlüsselungs-Maschine, die das Mehrfachcode-Verschlüsselungsverfahren verwendet, um die Benutzer-Berechtigung mit jeder der Mehrfachcode-Komponenten in der Mehrfachcode-Verschlüsselungscodetabelle zu kombinieren und den verschlüsselten Header zu entschlüsseln, und
    zum Ermöglichen der Entschlüsselung des Teils des verschlüsselten elektronischen Dokuments bei einer gültigen Entschlüsselung des verschlüsselten Headers, dadurch gekennzeichnet, dass der verschlüsselte Header oder das verschlüsselte Dokument eine Verschlüsselungs-Markierung enthält, die eine willkürliche Zahlenfolge umfasst, auf die eine herleitbare Abwandlung dieser willkürlichen Zahlenfolge folgt, wobei eine gültige Entschlüsselung der Verschlüsselungs-Markierung anzeigt, dass der Dokumenten-Verschlüsselungscode gefunden worden ist.
  • Nach einem Beispiel der Erfindung enthält ein Objekt mit sicherem Inhalt ein verschlüsseltes elektronisches Dokument, einen verschlüsselten Header, eine Mehrfachcode-Verschlüsselungstabelle und eine Benutzerschnittstellen-Vorrichtung. Das elektronische Dokument und der Header werden mit einem Dokumenten-Verschlüsselungscode verschlüsselt, der zu einem Mehrfachcode-Verschlüsselungsverfahren gehört. Zur höheren Sicherheit können für das elektronische Dokument und den Header verschiedene Verschlüsselungscodes verwendet werden. Die Mehrfachcode-Verschlüsselungstabelle enthält wenigstens eine Mehrfachcode-Komponente (für jeden Verschlüsselungscode, falls verschiedene Codes zum Verschlüsseln des elektronischen Dokuments und des Headers verwendet werden). Für jeden autorisierten Benutzer wird eine gesonderte Komponente in der Tabelle gespeichert. Durch Kombination der Benutzerinformationen (nachstehend definiert) und der Mehrfachcode-Komponente des Benutzers entsteht der Dokumenten-Verschlüsselungscode. Der verschlüsselte Header enthält Informationen zu dem elektronischen Dokument. Die Informationen zu dem elektronischen Dokument können Angaben darüber enthalten, auf welche Teile des Dokuments ein bestimmter Benutzer Zugriff hat und welche Berechtigungen dem Benutzer zugewiesen sind. Wenn mehrere Benutzer Zugriff auf ein bestimmtes Dokument haben oder wenn ein Benutzer Zugriff auf mehrere Dokumente hat, so können diese Informationen in Form einer Benutzer-/Berechtigungstabelle in dem verschlüsselten Header gespeichert sein.
  • Der verschlüsselte Header enthält eine Verschlüsselungs-Markierung, die eine willkürliche Zahlenfolge umfasst, auf die eine herleitbare Abwandlung dieser willkürlichen Zahlenfolge folgt. Wenn die Verschlüsselungs-Markierung gültig entschlüsselt ist, ist der korrekte Code gefunden worden. Die Verschlüsselungs-Markierung verwendet eine willkürliche Zahlenfolge, die die Schwächen einer Verschlüsselungs-Markierung mit feststehendem Text umgeht. Eine Verschlüsselungs-Markierung kann ebenfalls am Anfang des verschlüsselten elektronischen Dokuments hinzugefügt werden. Die gültige Entschlüsselung der Verschlüsselungs-Markierung am Anfang des verschlüsselten elektronischen Dokuments bedeutet, dass auch das elektronische Dokument gültig entschlüsselt ist. Oft ist es schwierig, aus der Prüfung des entschlüsselten Dokuments festzustellen, ob die Entschlüsselung richtig ist, vor allem wenn das elektronische Dokument ein unbekanntes Format aufweist.
  • Die Benutzerschnittstelle enthält Informationen zum Identifizieren des elektronischen Dokuments und ein interaktives Element. Das interaktive Element ermöglicht es einem Benutzer, eine Benutzer-Berechtigung für den Zugriff zu dem gesamten elektronischen Dokument oder zu Teilen davon einzugeben. Das interaktive Element nimmt die Benutzer-Berechtigung und gibt sie in eine Entschlüsselungsmaschine ein, die Mehrfachcode-Verschlüsselungsverfahren zum Entschlüsseln des verschlüsselten Headers verwendet. Die Entschlüsselungsmaschine kombiniert die Benutzer-Berechtigung mit jeder Mehrfachcode-Komponente, die in der Mehrfachcode-Verschlüsselungstabelle gespeichert ist, und versucht, den verschlüsselten Header zu entschlüsseln. Wenn der verschlüsselte Header gültig entschlüsselt ist, ist der korrekte Code gefunden worden. Anschließend ermöglicht das interaktive Element der Entschlüsselungsmaschine, die autorisierten Teile des verschlüsselten elektronischen Dokuments zu entschlüsseln.
  • Wenngleich das Verschlüsselungsverfahren Mehrfachcode-Verschlüsselungsverfahren genannt wird, so können eine oder mehrere Mehrfachcode-Komponenten in der Mehrfachcode-Verschlüsselungstabelle gespeichert werden. Um die Sicherheit zu erhöhen und es schwieriger werden zu lassen, Informationen über die Berechtigung eines Benutzers zu ermitteln, können in der Tabelle zusätzliche Scheinkomponenten gespeichert werden. Weiterhin können die Mehrfachcode-Komponenten in der Tabelle bei jeder Anforderung eines Zugriffs auf ein elektronisches Dokument willkürlich vermischt werden.
  • Wenngleich die Mehrfachcode-Verschlüsselungstabelle normalerweise zusammen mit dem Objekt mit sicherem Inhalt gespeichert wird, so kann die Tabelle auch lokal auf dem Computer oder der Arbeitsstation eines Benutzers oder auf einem entfernten Server gespeichert werden.
  • Bei der Benutzer-Eingabeberechtigung kann es sich um eine beliebige Benutzer-Eingabeinformation handeln, beispielsweise um eine Benutzer-Kennung (ID) oder einen Namen, ein Passwort oder eine Passphrase. Darüber hinaus kann eine Benutzereingabe von einer biometrischen Eingabevorrichtung allein oder in Kombination mit der Benutzer-Kennung/dem Passwort verwendet werden. Zu einer biometrischen Eingabe gehört beispielsweise ein Fingerabdruck, eine Spracherkennungs-Phrase, ein Augen- oder Iris-Detektor, eine Netzhautprüfung usw.
  • Der Dokumenten-Verschlüsselungscode kann mit Hilfe vieler verschiedener Informationen erzeugt werden. Bei dem Mehrfachcode-Verschlüsselungssystem basiert der Dokumenten-Verschlüsselungscode auf Informationen über jeden Benutzer und einer entsprechenden Mehrfachcode-Komponente, die zum Wiederherstellen des Dokumenten-Verschlüsselungscodes benötigt wird. Als Alternative dazu kann der Verschlüsselungscode auf einer Kombination aus Benutzerinformation, der Mehrfachcode-Verschlüsselungskomponente und einer Kennung beruhen, die dem speziellen elektronischen Dokument zugeordnet ist. Auf diese Art und Weise kann für jede Benutzer/Dokument-Kombination ein eindeutiger Code erzeugt werden. Durch das Zuordnen einer Dokumentkennung zu jedem elektronischen Dokument wird eine größere Sicherheit ermöglicht.
  • Die Mehrfachcode-Verschlüsselungstabelle enthält keine Informationen, welche die Benutzer oder das Dokument erkennen lassen. Ebenso enthält der verschlüsselte Header keine den Benutzer identifizierenden Informationen oder andere Identifizierungsinformationen bzw. Informationen, die die Art des Dokuments kennzeichnen. Dies trägt zum Scheitern von Hackern bei, die versuchen, die Verschlüsselung zu knacken. Wenn der Hacker den Typ der Datei kennt (die meisten Dateien beginnen mit demselben Zeichen am Anfang der Datei), ist es außerdem einfacher, die Verschlüsselung zu knacken.
  • Bei dem elektronischen Dokument kann es sich um jede beliebige Art Dokument handeln, insbesondere sind es jene Dokumente, die Inhaltsinformationen und Formatierungsinformationen enthalten, die angeben, wie der Inhalt angezeigt werden soll. Die Formatierungsinformationen basieren auf einer Objektsprache, wie sie beispielsweise von Microsoft Word, Excel, Power Point, Adobe Acrobat usw. verwendet oder interpretiert wird oder in ihnen enthalten ist, und die einen Satz Formatierungsregeln aufweist.
  • Verschiedenen Teilen des elektronischen Dokuments können unterschiedliche Benutzerberechtigungen zugeordnet sein, wodurch es möglich ist, dass unterschiedliche Benutzer Zugriff auf verschiedene Teile desselben elektronischen Dokuments haben. Mehrere elektronische Dokumente mit jeweils einer anderen Verschlüsselungsebene und einer unterschiedlichen Zugriffsebene können mit der Benutzerschnittstellen-Vorrichtung verknüpft sein. In dem verschlüsselten Header können Informationen über das elektronische Dokument enthalten sein, zu denen eine Benutzer-Berechtigungstabelle gehört, die angibt, welche Benutzer Zugriff auf das Dokument haben und welche Art von Zugriff.
  • Wenn das Objekt mit sicherem Inhalt gespeichert oder übertragen wird, ist das elektronische Dokument geschützt, da es verschlüsselt ist. Es kann entweder das gesamte elektronische Dokument verschlüsselt sein (einschließlich der Inhalts- und Formatierungsinformationen) oder es sind nur jene Teile verschlüsselt, deren Schutz gewünscht wird. Wenn ein Benutzer das elektronische Dokument oder einen Teil davon ansehen möchte, auf das/den er Zugriff hat, verhindert die Benutzerschnittstellen-Vorrichtung die Entschlüsselung und die Anzeige des elektronischen Dokuments (oder des Teils) solange, bis die erforderliche Benutzer-Berechtigung eingegeben worden ist.
  • Die Benutzerschnittstellen-Vorrichtung kann mit Hilfe der Dokumentensprache als weiteres elektronisches Dokument implementiert sein. Als Alternative dazu kann die Benutzerschnittstellen-Vorrichtung unter Verwendung eines Formats implementiert sein, das nicht rechnerspezifisch ist. Wenn die Benutzerschnittstellen-Vorrichtung als weiteres elektronisches Dokument implementiert ist, kann man es sich als „Deckblatt" vorstellen. Das Deckblatt enthält Informationen in Klartext, die das elektronische Dokument identifizieren, und bietet Zugriffsfunktionen.
  • Das erfindungsgemäße Objekt mit sicherem Inhalt ermöglicht es Benutzern, Anmerkungen zu einem vorhandenen elektronischen Dokument (das verschlüsselt oder unverschlüsselt sein kann) zu erzeugen und den Zugriff auf jene Anmerkungen zu begrenzen, während eine verschlüsselte Sicherheit für die Anmerkungen gewährleistet ist. Das Objekt mit sicherem Inhalt kann in jenen Fällen verwendet werden, in denen mehrere Autoren Anmerkungen oder Kommentare zu einem gemeinsamen elektronischen Dokument machen wollen und den Zugriff auf (und das Wissen über) ihre Anmerkungen unter diesen Benutzern steuern wollen. Beispielsweise kann das ursprüngliche elektronische Dokument keine Beschränkungen im Hinblick auf das Betrachten aufweisen (alle Benutzer können es ansehen), so dass es nicht verschlüsselt wird. Einer oder mehrere Benutzer/Autoren (einschließlich des ursprünglichen Autors) können möglicherweise Anmerkungen oder Kommentare zu dem elektronischen Dokument abgeben wollen. Dabei ist es möglich, dass jeder Autor von Anmerkungen den Zugriff auf eine oder mehrere der Anmerkungen begrenzen möchte. Jede dieser Anmerkungen kann verschlüsselt und der Zugriff auf bestimmte Benutzer begrenzt werden.
  • Zu dem Zeitpunkt, da der Benutzer seine Anmerkungen hinzufügt/bearbeitet und das elektronische Dokument aktualisiert, kann das vorhandene elektronische Dokument Anmerkungen von anderen Benutzern aufweisen oder auch nicht. In einer Gruppe von drei Benutzern, die gemeinsam ein elektronisches Dokument, wie beispielsweise eine PDF-Datei, nutzen, kann Benutzer 1 das vorhandene elektronische Dokument kommentieren und Benutzer 2 das Recht einräumen, die Anmerkungen anzusehen, dieses Recht jedoch Benutzer 3 vorenthalten. Somit ist Benutzer 3 in der Lage, das vorhandene elektronische Dokument zu betrachten, er kann jedoch nicht auf die Inhalte von Anmerkungen von Benutzer 1 in der gemeinsamen Datei zugreifen, ohne die Verschlüsselung der Anmerkungen von Benutzer 1 zu knacken.
  • Die Erfindung schafft ein Verfahren, mit dem Anmerkungen zu einem vorhandenen elektronischen Dokument hinzugefügt werden können, welches einer bestimmten Dokumentsprache entspricht, oder mit dem mehrere elektronische Dokumente mit einer einzigen Schnittstellenvorrichtung verknüpft werden können. Die Anmerkungen (während wahlweise das vorhandene elektronische Dokument in Klarschrift belassen wird) und die elektronischen Dokumente können verschlüsselt werden, um sie geheim zu halten. Das Mehrfachcode-Verschlüsselungsverfahren kann ebenfalls zum Verschlüsseln der Anmerkungen verwendet werden. Der Verschlüsselungscode eines Benutzers wird dazu verwendet, (die Tatsache, dass durch die Benutzerinformationen die Anmerkung entschlüsselt wurde) anzuzeigen, dass der Benutzer Zugriff auf die konkreten Anmerkungen oder auf ein elektronisches Dokument oder Teile davon hat. Ob bestimmte Anmerkungen oder das elektronische Dokument oder Teile davon angesehen werden können, hängt davon ab, wie die Benutzer-Berechtigungsinformationen in einem Mehrfach-Codesystem verwendet werden können.
  • 1 ist ein Blockdiagramm eines Objektes mit sicherem Inhalt nach einem erfindungsgemäßen Beispiel; und
  • 2 ist ein Blockdiagramm eines Objektes mit sicherem Inhalt, das unter Verwendung des PDF implementiert ist.
  • In 1 ist ein Objekt mit sicherem Inhalt 100 abgebildet. Das Objekt mit sicherem Inhalt 100 enthält ein verschlüsseltes elektronisches Dokument 12, einen verschlüsselten Header 11, eine Mehrfachcode-Verschlüsselungstabelle 13 und Benutzerschnittstellen-Vorrichtung 10. Die Benutzerschnittstellen-Vorrichtung 10 umfasst eine Klarschrift- Kennung zum Identifizieren des verschlüsselten elektronischen Dokuments 12 und ein interaktives Element, welches bei dieser Ausführungsform in Form von Benutzer-Eingabefeldern 14 abgebildet ist. Das Objekt mit sicherem Inhalt 100 kann in einem Speicher – entweder lokal oder in einem Netzwerk – gespeichert sein. Über einen lokalen Computer oder eine vernetzte Arbeitsstation mit Anzeige 16 kann ein Benutzer auf das Objekt mit sicherem Inhalt 100 zugreifen. Da das elektronische Dokument 12 verschlüsselt gespeichert ist, ist dessen Inhalt vor unbefugten Benutzern geschützt. Das Speichern (und Übertragen) verschlüsselter elektronischer Dokumente stellt sicher, dass der Inhalt vor unbeabsichtigtem Verlust oder Diebstahl geschützt wird (zumindest bis zu der Ebene der Verschlüsselung). Vertrauenswürdige oder befugte Benutzer können die Inhaltsinformationen des elektronischen Dokuments in Klarschrift ansehen, indem eine gewisse Sicherheitsanforderung erfüllt wird, z. B. die Benutzer-Berechtigung wie eine Benutzer-Kennung oder ein Name, ein Passwort oder eine Passphrase, oder eine Benutzereingabe aus einer biometrischen Eingabevorrichtung. Je nach der gewünschten Sicherheitsstufe können ein oder mehrere hinlänglich bekannte Verschlüsselungsverfahren verwendet werden.
  • Das elektronische Dokument 12 ist mit Hilfe eines Dokumenten-Verschlüsselungscodes verschlüsselt. Die Mehrfachcode-Verschlüsselungstabelle 13 enthält wenigstens eine Mehrfachcode-Komponente. Für jeden autorisierten Benutzer ist in der Tabelle eine gesonderte Komponente gespeichert. Aus der Kombination von Benutzer-Informationen (wenn autorisiert) und der Mehrfachcode-Komponente des Benutzers wird der Dokumenten-Verschlüsselungscode erzeugt.
  • Das Objekt mit sicherem Inhalt wird typischerweise in der Software implementiert, z. B. als Plug-In zu der vorhandenen Anwendung, die zum Erzeugen der konkreten Art des elektronischen Dokuments verwendet wird. Wenn der Benutzer das Anwendungsprogramm öffnet und Zugriff auf ein spezielles elektronisches Dokument anfordert, zeigt das Anwendungsprogramm mit Plug-In (von Computerprozessor ausgeführt) auf der Anzeige 16 einen interaktiven Bildschirm an, so dass der Benutzer die geforderte Berechtigungsinformation eingeben kann. Die Benutzerschnittstellen-Vorrichtung gibt die Benutzer-Berechtigungsinformationen an die Entschlüsselungsmaschine, die die Benutzer-Berechtigungsinformationen mit jeder der Mehrfachcode-Komponenten aus der Tabelle 13 kombiniert, um den verschlüsselten Header 11 zu entschlüsseln. Wenn der verschlüsselte Header gültig entschlüsselt ist, sendet die Benutzerschnittstellen-Vorrichtung das verschlüsselte elektronische Dokument 12 zu einem Entschlüsselungsmodul (ebenfalls vom Prozessor ausgeführt), wo es entschlüsselt wird. Nach Abschluss der Entschlüsselung wird das elektronische Dokument oder ein Teil von ihm – je nach Berechtigung des speziellen Benutzers – dem Benutzer auf der Anzeige 16 angezeigt.
  • Die Entschlüsselungsmaschine 18 bringt ein Mehrfachcode-Verschlüsselungsverfahren zur Anwendung. Das Mehrfachcode-Verschlüsselungsverfahren beruht auf einer Mehrzahl von Mehrfachcode-Komponenten, die in der Mehrfachcode-Verschlüsselungstabelle 13 gespeichert sind (die lokal oder entfernt gespeichert sein können). Wenn die Anzahl autorisierter Benutzer unter einer vorher festgelegten Schwellenzahl liegt, können zwecks höherer Sicherheit Scheincodes hinzugefügt werden, um zu verhindern, dass die weniger Fachkundigen die Benutzer-Berechtigungen ermitteln und Zugriff erlangen. Das Mehrfach-Codesystem muss die Benutzer-Berechtigung mit jeder Mehrfachcode-Komponente kombinieren, um den verschlüsselten Header zu entschlüsseln und somit festzustellen, ob die eingegebene Benutzer-Berechtigung (z. B. Benutzer-Kennung/ Passwort/Passphrase oder biometrische Informationen) korrekt ist. Die Entschlüsselungsmaschine 18 kombiniert die eingegebene Benutzer-Berechtigung solange mit jeder gespeicherten Komponente, bis der richtige Code gefunden ist, um den verschlüsselten Header 11 zu entschlüsseln. Der verschlüsselte Header kann eine besondere Verschlüsselungs-Markierung enthalten, die eine willkürliche Zahlenfolge umfasst, auf die eine herleitbare Abwandlung dieser willkürlichen Zahlenfolge folgt. Wenn also festgestellt wird, dass eine Verschlüsselungs-Markierung in dem verschlüsselten Header gültig ist, ist der richtige Code gefunden worden. Anschließend versetzt das interaktive Element die Verschlüsselungs-Markierung in die Lage, das verschlüsselte elektronische Dokument zu entschlüsseln.
  • Der Benutzer kann eine Zugriffsberechtigung zum Betrachten des gesamten elektronischen Dokuments in Klarschrift haben oder nicht. Verschiedene Benutzer können Zugriff lediglich auf Teile eines elektronischen Dokuments (z. B. Teilabschnitte, Management-Zusammenfassung, Anmerkungen usw.) haben, woraufhin nach Eingang der Berechtigungsinformationen nur jene Teile entschlüsselt und angezeigt werden.
  • Das Objekt mit sicherem Inhalt kann in einem oder mehreren der folgenden Szenarien zur Anwendung kommen: (1) Ein Benutzer mit einem Objekt, dessen Inhalt mit Mehrfachcode gesichert ist, sendet selbiges per Email zu einer Gruppe von Personen, von denen es jede mittels der eigenen Benutzer-Berechtigung öffnen kann. Die Berechtigung zum „Kopieren in Zwischenablage", Drucken, zur Festlegung der Benutzungsdauer des Dokuments usw. unterscheidet sich zwischen den einzelnen Mitgliedern der Gruppe, die das Dokument empfangen. (2) Ein Benutzer hat einige sehr vertrauliche Daten, die in einer binären, formatierten Datei (Bilder, Ton, Marktforschung, Testergebnisse usw.) für eine externe Anwendung vorliegen, zusammen mit einem Dokument, welches genauere Informationen über diese Daten enthält, die ebenfalls hoch sensibel sind. Um diese Dateien verknüpft und sicher zu bewahren, erzeugt der Benutzer ein Objekt mit sicherem Inhalt, welches die Daten und das Dokument enthält. Der Benutzer kann gegebenenfalls einigen Benutzern die binäre Extraktion wahlweise vorenthalten. (3) Eine Personalabteilung verfügt über einige Dokumente, die nur innerhalb der Abteilung verwendet werden sollten, doch in der Vergangenheit sind einige davon auch von gültigen Benutzern innerhalb der Abteilung Außenstehenden zugänglich gemacht worden, die sie außerhalb der Abteilung öffneten. Um dies zu verhindern, stellen sie all ihre Dokumente so ein, dass sie sich nur in ihrem Netzwerk öffnen lassen. (Wenn der Netzwerkschutz richtig funktioniert, verhindert er auch, dass die Dokumente außerhalb der Abteilung gedruckt werden). (4) Ein Unternehmen verfügt über vertrauliche Dokumente, die durch eine hinlänglich bekannte Benutzer-Berechtigung nur ungenügend geschützt sind. Diese Dokumente sollten nicht verteilt werden, doch eines wird auf einem ungeschützten öffentlichen Server gefunden. Sie benutzen den „Fingerabdruck" (wird nachstehend beschrieben) in dem Objekt mit sicherem Inhalt, um das Dokument zu dem Benutzer zurückzuverfolgen, von dem das an falscher Stelle gelandete Objekt mit sicherem Inhalt ausging. (5) Ein Benutzer ist dabei, ein schutzbedürftiges Dokument zu erzeugen, und möchte die Quellendatei für den Fall schützen, dass er seinen Laptop-Computer verliert. Am Ende jeder Bearbeitungssitzung packt der Benutzer diese in ein Objekt mit sicherem Inhalt und löscht die ungeschützte Quellendatei. Eine Variante davon ist, dass der Benutzer ebenfalls die lokale Anwendung einsetzt, um ein PDF des Dokuments in das Objekt mit sicherem Inhalt einzufügen, und verwendet sie, um die Arbeit damit zu prüfen und sie solange mit Anmerkungen für künftige Veränderungen zu versehen, bis mehr Zeit zur Verfügung steht und/oder der Benutzer in einer sichereren Umgebung arbeitet.
  • Es sollte erwähnt werden, dass kein Verfahren, einschließlich des Objektes mit sicherem Inhalt, ein Dokument oder eine primäre Datei vor einem böswilligen Nutzer sichern kann, der eine gültige Kennung hat, mit der die Inhalte entschlüsselt werden können. Das Objekt mit sicherem Inhalt kann die Möglichkeiten des Benutzers im Umgang mit den Inhalten verhindern oder Beschränkungen umsetzen. Da jedoch der Benutzer mit dem Computer umgeht, wird es ihm unter Aufbietung einiger Anstrengung immer gelingen, die Inhalte in eine nicht sichere Form zu transferieren (z. B. kann der Benutzer den Bildschirm fotografieren, wenn das Dokument geöffnet ist).
  • Die Sicherheit des Objektes mit sicherem Inhalt gegenüber einem Angreifer, der keine gültige Kennung besitzt, ist nur so gut wie das verwendete Verschlüsselungsverfahren.
  • Die Sicherheit des gewählten Verfahrens und von dessen Implementierung wird von der konkreten Implementierung bestimmt.
  • Zwar kann ein Objekt mit sicherem Inhalt auf dem Personalcomputer eines Benutzers erzeugt werden, es wird jedoch in den meisten Fällen davon ausgegangen, dass die Erstellung auf einem Netzwerkserver stattfindet, bei dem es sich nicht um den Personalcomputer oder eine Arbeitsstation des Benutzers handelt. Allgemein ist ein solcher Server sicher, und er hat Zugriff auf einen zentralen Sicherheitsserver, der Benutzer-Kennungen für eine Gruppe von Benutzern bereitstellen kann. Auf dem Fachgebiet sind viele Wege bekannt, wie diese Benutzer-Kennungen verteilt werden können. Wenn ein Benutzer ein Objekt mit sicherem Inhalt hat, ein gültiger Benutzer des Objektes mit sicherem Inhalt ist und ein weiteres Objekt mit sicherem Inhalt für dieselbe Gruppe von Benutzern erstellen will, dann ist dies möglich, wenn einige Formen der Mehrfachcode-Verschlüsselung angewendet werden. Das nachstehend beschriebene Verfahren gibt die Kennungen der anderen Benutzer in keinem Fall frei, so dass es normalerweise auch auf Benutzer begrenzt ist, die lokale Dokumente schützen, bei denen sie die einzigen Benutzer sind.
  • Die Erfindung ist nicht auf ein bestimmtes Anwendungsprogramm zum Erzeugen und Bearbeiten elektronischer Dokumente beschränkt. Aus praktischen Gründen wird die Erfindung jedoch nun genauer mit Hilfe von PDF-Dokumenten beschrieben, die mit der Adobe Acrobat-Software erzeugt wurden.
  • BEISPIEL: PDF-Dokumente. Das Portable Document Format (PDF) ist eine Sprache zur Angabe des Dateiformats zur Darstellung von Dokumenten mit Hilfe der Acrobat-Software von Adobe Systems, Inc. Die von Adobe Systems, Inc. veröffentliche Adobe Acrobat-Spezifikation ist das „Portable Document Format Reference Manual, Version 1.3" (PDFRM), deren aktuellste Version unter http://www.adobe.com gefunden werden kann. Verweise in einzelnen Abschnitten betreffen die PDFRM-Version vom März 1999.
  • Die folgenden definierten Begriffe des PDFRM werden bei der Beispiel-Ausführungsform verwendet, die durch Verweis auf den Definitionsabschnitt des PDFRM angegeben wird.
  • Objekt – Das grundlegende Element in einem PDF. Die Objekte können „direkt" oder „indirekt" sein und in einigen Fällen durch den Gebrauch auf eines von diesem beschränkt sein (Abschnitt 4 des PDFRM).
  • Verzeichnisobjekt (Dictionary Object) – Grundlegendes PDF-Objekt, das auf Paaren von Codes und Werten besteht (Abschnitt 4.7 des PDFRM). Das Verzeichnisobjekt kann auch einfach als „Verzeichnis" bezeichnet werden. Viele Verzeichnisse haben einen „Typ", der deren Verwendung definiert, und werden häufig nach ihrem Typ bezeichnet, ohne anzugeben, dass es sich um Verzeichnisse handelt (z. B. Datei-Spezifikation). Im vorliegenden Beispiel bedeutet die Bezeichnung nach dem Typ ein Verzeichnis gemäß PDFRM-Beschreibung.
  • Datenfeldobjekt – Wird in diesem Beispiel lediglich unter Verweis auf das Anmerkungs-Datenfeld eines Seitenobjekts verwendet, wie als Teil der Seitenobjekte von Abschnitt 6.4 des PDFRM definiert.
  • Datenstromobjekt – Eine der Grundobjektklassen, die ein Verzeichnis und eine Sequenz von Datenbytes enthält. Im vorliegenden Fall werden das Verzeichnis und die notwendigen Standardparameter gemäß Definition aus dem PDFRM verwendet. „Speichern als Datenstromobjekt" bedeutet, dass das Verzeichnis mit dem PDFRM konform gemacht wird und die fraglichen Daten in der Bytefolge des Objektes so angeordnet werden, wie durch das PDFRM definiert (Abschnitt 4.8 des PDFRM).
  • Anmerkung (Annotation) – Eine Hinzufügung zu einem PDF-Dokument von einem Benutzer und in Abschnitt 6.6 des PDFRM definiert. Allgemein auf eine beschränkt, die explizit in den Abschnitten 6.6 bis 6.6.15 des PDFRM definiert ist, aber nicht auf jene derart definierten begrenzt. Es ist zu beachten, dass die Pop-up-Anmerkung in diesen Abschnitten definiert ist, jedoch normalerweise nicht direkt als eine von einem Benutzer erstellte Anmerkung erscheint. Im normalen Gebrauch ist eine Pop-up-Anmerkung ein „untergeordnetes Objekt" von einer der anderen Arten von Anmerkungen, die in diesen Abschnitten definiert sind. ,Nur als untergeordnetes Objekt vorhanden' bedeutet in dem vorliegenden Beispiel, es ist Teil des übergeordneten Objektes, ungeachtet dessen, ob dies explizit angegeben ist oder nicht. (Im Allgemeinen gehören zu den PDFRM-Anmerkungen, wie sie in diesem Beispiel verwendet werden, u. a. aber nicht ausschließlich Text, Stempel, Kreis, Quadrat, Durchgestrichen, Hervorgehoben, Unterstreichen, Farbe und Pop-up.) Weiterhin kann eine Anmerkung auch von anderen Objekten abhängen, die zu der aktuellen PDF-Version gehören. Im vorliegenden Fall schließt eine Anmerkung automatisch diese abhängigen Objekte ein, ungeachtet dessen, ob es direkte oder indirekte sind. Das heißt, eine einzelne Anmerkung könnte viele Teile aufweisen, wenn sie in ein anderes Dokument bewegt oder kopiert werden sollte; zum Zwecke der Erfindung werden diese Teile jedoch als eine einzige Anmerkung behandelt.
  • Aktion – Etwas, das geschieht, ausgelöst durch ein Ereignis, bei dem es sich um eines handeln kann, das in Abschnitt 6.8 des PDFRM definiert ist. Normalerweise können zusätzliche Aktionen durch Software-Anwendungen oder Plug-In-Software für diese Anwendungen definiert sein. Eine Aktion bedeutet hier normalerweise eine, die durch die Software definiert ist, um eine Aktivität auszulösen, die als Teil der vorliegenden erfin dungsgemäßen Ausführungsform beschrieben und durch eines der Ereignisse aktiviert wird, die im Zusammenhang mit den Widget-Anmerkungen aus Abschnitt 6.14.4 des PDFRM stehen. Konkret kann die Aktion in dem Schaltflächen-Widget (Abschnitt 6.14.7) enthalten sein, mit dem die gesamte Ausführungsform oder Teile von ihr aufgerufen werden.
  • Laden der Vorschau – Anwendungen, die ein PDF-Dokument wiedergeben, lesen normalerweise die PDF-Datei und tun, was zum Organisieren der PDF-Objekte in einer Form notwendig ist, die zur Wiedergabe der Inhalte erforderlich ist, wie beispielsweise Seiten, Text, Grafiken usw. Die Operation erfolgt, ehe der Benutzer eine Wiedergabe einer Seite des Dokuments sieht. Im Falle des Objektes mit sicherem Inhalt liegt das Ergebnis dieses Vorbereitungsstadiums des PDF für den Benutzer vor, wenn es bevorzugt wird, dass das PDF durch Hinzufügen von Anmerkungen erfindungsgemäß verändert wird. Zwar ist dies nicht unbedingt der Fall, doch mitunter können die von der Erfindung diktierten Veränderungen künstliche Objekte im Wiedergabevorgang hervorbringen, die der Benutzer als störend empfindend. Das heißt, es ist günstiger, wenn die Veränderungen an dem PDF stattfinden, ehe der Benutzer sie sehen kann. Dies wäre der Fall, wenn sie beim Laden der Seitenansicht erscheinen.
  • Widget (Interaktionsbaustein) – Schaltflächen, Textfelder und andere Formen von Anmerkungen, wie in Abschnitt 6.14 des PDFRM angegeben. Von besonderem Interesse ist hierbei das Textfeld aus Abschnitt 6.14.11 und das Schaltflächenfeld aus Abschnitt 6.14.6. Das Textfeld stellt ein Verfahren bereit, mit dem von dem Benutzer Text eingegeben werden kann, und mit Hilfe von „benannten" Feldern kann jener Text mittels Software gelesen werden, während das Dokument betrachtet wird. Das Schaltflächenfeld stellt ein Ereignis bereit, das eine Aktion in Gang setzen kann, die für die erfindungsgemäße Software-Implementierung vertraulich ist. Im vorliegenden Beispiel wird durch die Textfeldeinträge ein Verfahren geschaffen, mit dem der Benutzer seine Kennung (Name, Passwort, Passphrase) gegenüber der Software angeben kann. (Der Name „Widget" rührt von dem Untertyp Annotation für diese Elemente her, die auf „Widget" eingestellt werden müssen.)
  • Weitere Begriffe, die bei der Ausführungsform des PDF-Beispiels verwendet werden, haben die folgenden Definitionen:
  • Plug-In – Software, die mit einer bestimmten Softwareanwendung zusammenarbeitet, welche PDF-Dokumente und Benutzeranmerkungen wiedergibt. Plug-Ins haben Möglichkeiten, die über jene der Grundanwendung hinausgehen, und können die Funktionalität eines Objektes mit sicherem Inhalt oder die Voraussetzung für eine Verschlüsselung betreffen. So kann beispielsweise die erfindungsgemäße Funktionalität eines Objektes mit sicherem Inhalt (einschließlich der Benutzerschnittstellen-Vorrichtung) durch ein Plug-In zu einem Produkt von Adobe Systems, Inc. gewährleistet werden, wobei explizite Verschlüsselungsverfahren durch ein anderes Plug-In für dasselbe Produkt bereitgestellt werden.
  • Mehrfachcode-Verschlüsselung – Eines von mehreren gemeinsamen Verfahren, mit denen Daten mit Hilfe eines im Wesentlichen willkürlichen Codes verschlüsselt werden können, die jedoch mit einer bestimmten Benutzer-Kennung von zwei oder mehr Benutzern entschlüsselt werden können. (Normalerweise werden ein Name, Passwort und/oder eine Passphrase oder biometrische Informationen und/oder Kombinationen aus diesen zur Identifizierung verwendet.) Bei korrekter Ausführung wird dadurch normalerweise die Sicherheit der verschlüsselten Daten nicht in Frage gestellt. Bei einer Art der Mehrfachverschlüsselung werden unverschlüsselte Informationen (die in der Mehrfachcode-Verschlüsselungstabelle gespeicherte Mehrfachcode-Komponente) mit den verschlüsselten Daten verknüpft, die es nach Kombination mit dem Verfahren mit Benutzer-Eingabeberechtigung ermöglichen, einen Entschlüsselungscode zu erzeugen, der beim Entschlüsseln der verschlüsselten Datei verwendet wird. Es wird davon ausgegangen, dass das Format dieses Klartextes von der Implementierung abhängig ist, es kann jedoch auch in Daten identifiziert werden, die das Mehrfachcode-Verfahren anwenden. Ein wesentliches Attribut des Verfahrens besteht darin, dass es keine Möglichkeit bietet, von der eingegebenen Benutzer-Berechtigung ausgehend die korrekte Operation zu ermitteln, die einen Entschlüsselungscode erzeugt. Das heißt, die verschlüsselten Daten (gewöhnlich der verschlüsselte Header) muss entschlüsselt und untersucht werden, um festzustellen, ob der richtige Code verwendet wurde. Im schlimmsten Fall kann diese Entschlüsselung und Prüfung so oft stattfinden, wie mögliche Benutzercodes vorhanden sind, und es kann erst, nachdem alle ausprobiert worden sind, festgestellt werden, dass die aktuelle Benutzer-Kennung ungültig ist.
  • Verschlüsselungs-Markierung – Eine kurze Datenfolge, die durch die nachstehend beschriebenen erfindungsgemäße Verfahren implementiert wird und die vor den zu verschlüsselnden Daten angeordnet ist, um die Sicherheit der verschlüsselten Daten zu verbessern (angenommen, es kommt eine Chiffrierblock-Kettenbildung zur Anwendung) und um eine Möglichkeit zu schaffen festzustellen, wann der richtige Code zur Entschlüsselung verwendet wurde. Die optimale Länge der Folge kann entsprechend dem Verschlüsselungsverfahren variieren, solange bei dem Versuch der Entschlüsselung der Daten die Markierung eindeutig identifiziert wird. Zum Beispiel könnte man alle ver schlüsselten Daten mit 13 willkürlichen Bytes beginnen lassen, auf die eine herleitbare Abwandlung folgt (z. B. eine Permutation) der ersten 13 Bytes. Zwischen den beiden willkürlichen Zahlenfolgen kann eine optionale Klartextphrase eingefügt werden, allerdings wird dadurch die Verschlüsselungs-Markierung weniger sicher. Bei einem Test von Codes mit Mehrfachcode-Verschlüsselungsverfahren an den vorliegenden Daten würde das Auftreten dieser Markierung angeben, dass der richtige Code gefunden wurde, und zwar unabhängig von dem Inhalt der restlichen Daten, die verschlüsselt waren. Die willkürlichen Bytes werden nach dem Stand der Technik erzeugt und stellen sicher, dass es keinen „unveränderlichen Anfang" der zu verschlüsselnden Daten gibt, während dennoch klar angegeben wird, dass der richtige Code vorliegt, ohne dass die Entschlüsselungs-Sofware die geschützten Daten interpretiert.
  • Server-Modus – Bei den erfindungsgemäßen Verfahren ist die PDF-Quelle ein Server, der als Verteilerpunkt für alle Benutzer dient. In diesem Modus werden die Anmerkungen zu einem PDF, die allen Benutzern eines PDF-Dokuments zur Verfügung stehen sollen, zu einem Server geschickt, der sie mit den Anmerkungen anderer Benutzer zusammenlegt und allen Benutzern ein neues PDF zur Verfügung stellt. Unter diesem Modus ist nicht unbedingt zu verstehen, auf welchem Computer er läuft, sondern vielmehr die daraus entstehende Aktivität, die zur allgemeinen Verteilung der Anmerkungen erfolgen muss.
  • Lokaler Modus – Bei diesem Modus sind die Anmerkungen physisch lokal auf den aktuellen Benutzer begrenzt und stehen anderen Benutzern nicht zur Verfügung. Es wird normalerweise davon ausgegangen, dass diese Veränderungen auf einem einzigen Computer verbleiben, wenn jedoch alle Dateien bewegt werden, gibt es hier keine Einschränkung. Bei diesem Modus bleiben die Anmerkungen solange sicher und vertraulich, bis sie unter Verwendung des Server-Modus zusammengelegt werden. Es sei angemerkt, dass jeder Unterschied im lokalen und Server-Modus mehr mit den ergriffenen Aktionen zu tun hat als mit dem Ort, an dem die Aktion stattfindet – d. h. Server-Modusaktionen könnten auf demselben Gerät erfolgen, das auch der aktuelle Benutzer verwendet.
  • Hash – Manchmal auch als „Message Digest" bezeichnet. Die Ergebnisse bzw. der Algorithmus, der aus einer Folge eingegebener Daten eine kurze binäre Folge berechnet. Bei Bezugnahme auf die Kennung eines Benutzers steht hier normalerweise nicht der Klartext des Namens eines Benutzers, ein Passwort oder eine Passphrase, sondern vielmehr wird auf das Ergebnis einer Hash-Funktion an einer Kombination dieser Klartextelemente und auf die Kennung des Objektes mit sicherem Inhalt (OSI) Bezug genom men. Da die Hash-Funktion eine „Einweg"-Funktion ist, versteckt sie wirksam den Text vor jemanden, der dessen Inhalt erfahren möchte, und macht derartige Darstellungen für nur ein einziges OSI. Es können viele verschiedene Hash-Algorithmen zur Anwendung kommen. Bei der aktuellen Implementierung kommt der Secure-Hash-Algorithm, SHA-1, gemäß Federal Information Processing Standards Publication (FIPS PUB) 180-1 zur Anwendung, er ist jedoch implementierungsabhängig. (Ein anderer, weit verbreiteter Algorithmus ist MD-5.)
  • Das erfindungsgemäße Objekt mit sicherem Inhalt bietet Sicherheit für ein PDF-Dokument, indem kontrolliert wird, wer ein PDF-Dokument ansehen, drucken, Text herauskopieren oder durch Anmerkungen verändern kann. Zusätzlich zu diesen Beschränkungen im Hinblick auf das Öffnen eines Dokuments zur Ansicht bieten diese Verfahren weiterhin zeitlich begrenzte Ansichten, Rechnerbeschränkungen durch angeschlossene Netzwerke, und sie lassen sich auf beliebige weitere Einschränkungen ausdehnen, die den der Implementierung zur Verfügung stehenden Informationen in dem Moment auferlegt werden können, in dem der Benutzer versucht, ein Dokument zu öffnen,. Es ist nicht notwendig, dass sich der gesicherte Inhalt „ansehen lässt", da diese Verfahren zum Sichern willkürlicher binärer Daten-Dateien über längere Zeiträume hinweg geeignet sind.
  • Das Objekt mit sicherem Inhalt kann entweder als ein Plug-In oder als Teil eines PDF-Viewers bzw. Viewer/Editors implementiert sein. Ein Benutzer, der ein PDF erhalten hat, welches sich in einem Objekt mit sicherem Inhalt befindet, würde den Plug-In-Viewer verwenden, um das PDF zu öffnen. Bei einer Ausführungsform des Objektes mit sicherem Inhalt, das mit der Acrobat-Software implementiert ist, kann die Benutzerschnittstellen-Vorrichtung als ein „Deckblatt" implementiert sein. Ein Deckblatt ist ein weiteres PDF-Dokument mit speziellen Attributen, die nachstehend definiert sind. Wenn also der Benutzer einen Plug-In-Viewer für das OSI verwendet, um das verschlüsselte elektronische Dokument zu öffnen, wird dem Benutzer ein einseitiges Dokument „Deckblatt" vorgelegt, das aus zwei Bereichen besteht (welches wie ein anderes PDF-Dokument mit einer Seite aussieht). Ein Bereich der angezeigten Seite enthält die Informationen, für die der Ersteller des PDF den ungehinderten Zugriff gestattet. Zum Beispiel die Art oder der Name des sicheren Dokuments, Einschränkungen, Hinweise zu Sicherheitsebenen, Gebrauchswarnungen, Daten, Zeitpunkte und andere uneingeschränkte, allgemeine Informationen, die für jemanden nützlich sind, der zufällig eine Kopie der Datei bekommen hat und diese öffnet.
  • Der andere Bereich des Deckblattes enthält Widget-Anmerkungen, die aus zwei oder drei Textfeldern bestehen (und optional Steuereinheiten zum Aktivieren einer Vorrichtung zwecks Eingeben biometrischer Daten des Benutzers) sowie aus ein oder zwei Schaltflächenfeldern. (Die Anzahl von Text- und Schaltflächenfeldern hängt von der Informationsmenge ab, die benötigt wird. Jede beliebige Anzahl kann verwendet werden.) Die Textfelder sind gekennzeichnete Eingabestellen für den Benutzer zum Eingeben des Namens (z. B. einfaches Textfeld), eines Passwortes (Rückmeldung erfolgt mit „*") und einer Passphrase (Rückmeldung erfolgt wie beim Passwort mit „*"). Es liegt an dem Ersteller des PDF, sowohl das Passwort als auch eine Passphrase anzugeben oder nur eines von ihnen als Teil der Benutzer-Kennung zu verwenden. Die Schaltflächenfelder sind mit dem Aktions-Verzeichnis verknüpft, welches vertrauliche Aktionen angibt, die von der erfindungsgemäßen Implementierung unterstützt werden. Die Implementierung dieser vertraulichen Aktionen ist verantwortlich dafür, dass entweder das PDF geöffnet wird oder eine binäre, sichere Datei aus dem PDF extrahiert wird, je nachdem, mit welchem Schaltflächenfeld es/sie verknüpft ist und ob der Benutzer die richtige Information eingegeben hat oder nicht.
  • Bei der PDF-Implementierung kann das verschlüsselte PDF-Dokument der verschlüsselte Inhalt sein (mit geringer oder gar keiner verschlüsselten Formatierung), wie oben beschrieben, oder ein vollständig verschlüsseltes PDF. Diese beiden Verschlüsselungsszenarien funktionieren innerhalb der Beschränkungen des PDF-Formats. Allerdings kann ein Benutzer ein PDF-Dokument mit Hilfe eines bekanten Verschlüsselungsverfahrens auch so verschlüsseln, dass das Format nicht erhalten bleibt. Ein Vorteil der Verwendung der von Acrobat definierten Verschlüsselung besteht darin, dass binäre Dateien (Teile des PDF-Dokuments) mühelos extrahiert werden können.
  • Wenn durch die Maus eine Aktion der Befehlsschaltfläche ausgelöst wird, liest das interaktive Element die Benutzer-Kennung von den Textfeldern ab und versucht mit ihr, einen verschlüsselten Abschnitt des Zielobjekt-Datenstroms der Befehlsschaltfläche zu öffnen. Wenn sich dieser Abschnitt entschlüsseln lässt, zeigt dies an, dass die Benutzer-Kennung gültig ist, und, vorausgesetzt, dass es keine Berechtigungseinschränkungen für diesen Benutzer/Rechner gibt, kann die Dateiaktion abgeschlossen werden. Bei einem voll verschlüsselten PDF wird durch diese Aktion das Deckblatt durch das entschlüsselte PDF ersetzt, wie in den folgenden Abschnitten erläutert wird, oder bei dem binären Inhalt wird der Benutzer darüber befragt, wohin eine nicht verschlüsselte Version der binären Datei platziert werden soll, worauf die Extraktion der Datei an der angegebenen Stelle erfolgt.
  • Die vorliegende Ausführungsform verwendet das PDF, um die Information über die Benutzer-Berechtigung zu erhalten, und kein rechnerabhängiges Verfahren. Durch Ausnut zen der Möglichkeiten des PDF zur Erlangung dieser Informationen erhält die Implementierung einen gewissen, normalerweise nicht verfügbaren Grad der Unabhängigkeit von dem Betriebssystem des Rechners. Es ist anzumerken, dass es sich bei dem Deckblatt auch um ein rechnerabhängiges Verfahren handeln könnte, wenn dies gewünscht wird. Ob das entschlüsselte PDF das Deckblatt ersetzt oder sich in einem anderen Fenster öffnet, ist abhängig von der Implementierung und von dem Viewer. Gleiches gilt auch für die verwendeten Verfahren, durch die die Implementierung mit dem Benutzer in Interaktion tritt, um die Zielstelle zu erfahren, an der die extrahierte binäre Datei platziert werden soll.
  • Das Objekt mit sicherem Inhalt versteckt alle Informationen über das elektronische Dokument (z. B. das PDF), da die Inhalte und Formatierungsinformationen vollständig mittels eines Verschlüsselungsverfahrens verschlüsselt sind, das von dem konkreten Benutzer oder einer Implementierung oder durch die Tatsache ausgewählt wird, dass der verschlüsselte Header zuerst, vor dem verschlüsselten Dokument, entschlüsselt wird. Das Objekt mit sicherem Inhalt erzeugt ein offenes Deckblatt, das Benutzern allgemeine Zugangsinformationen über die Inhalte des PDF anzeigen kann, ehe sich das PDF-Dokument öffnet – ein Merkmal, das dem Benutzer eine erhebliche Zeitersparnis bringt, wenn er ein zuvor verwendetes Dokument in einer großen Sammlung sucht.
  • Ein Objekt mit sicherem Inhalt, das im PDF implementiert ist, ist symbolisch in 2 abgebildet. Das OSI enthält ein Deckblatt 210, das auf bis zu drei verschlüsselte elektronische Dokumente 212 zugreifen kann (aus praktischen Erwägungen ist lediglich ein verschlüsseltes Dokument 212 abgebildet). Jedes verschlüsselte Dokument 212 enthält eine Kennung 240, einen Klarschrift-Header 242, der das Dokument gegenüber den Benutzern identifiziert, und die Mehrfachcode-Verschlüsselungstabelle, in der sich die von dem speziellen Mehrfachcode-Verschlüsselungsverfahren verwendeten Mehrfachcode-Komponenten befinden, einen verschlüsselten Header 250 mit einem Fingerabdruck 252 und den verschlüsselten Inhalt 260 mit einem zweiten Fingerabdruck 262.
  • Bei der vorliegenden Ausführungsform ist das Deckblatt 210 als ein PDF-Dokument gemäß PDFRM implementiert. Das Deckblatt 210 enthält bis zu drei Datenstromobjekte 214, 216, 218, die sichere Informationen und Aktions-Verknüpfungen 224, 226, 228 zwischen diesen Abschnitten enthalten. Es gibt zwei Schaltflächenfelder 230, 232, die das Deckblatt 210 mit den Datenstromobjekten 214, 216, 218 verbinden, welche die verschlüsselten Dateien und andere Informationen enthalten. Diese Schaltflächenfelder 230, 232 können gegebenenfalls alle Optionen nutzen, die im PDFRM (in Tabelle 6.10) beschrieben sind, um das gewünschte Erscheinungsbild zu erzeugen. Wenngleich viele dieser Optionen nicht eingestellt zu werden brauchen, ist es notwendig, dass die Verzeichnis-Schaltfläche „AA" (Additional Action – zusätzliche Aktion – aus Tabelle 6.10 des PDFRM) im Definitionsverzeichnis eingestellt wird, um zu dem indirekten Objekt zu verweisen, welches die Aktion definiert, die die Verknüpfung zu der implementierungsregistrierten Aktion mittels der Schaltfläche „S" des Verzeichnisses herstellt (wie in Tabelle 6.36 des PDFRM definiert).
  • Bei diesem Beispiel können bis zu drei Datenstromobjekte 214, 216, 218 in dem Deckblatt 210 vorhanden sein, die einen Verweis zu bzw. eine Verknüpfung mit einem sicheren Objekt herstellt (z. B. als verschlüsseltes PDF, eine sichere binäre Datei oder eine sichere Anmerkungsdatei, wie nachstehend beschrieben wird). Jedes dieser Objekte ist ein Datenstromobjekt, dessen Verzeichniscode „Typ" auf „eingebettete Datei" eingestellt ist (PDFRM Abschnitt 7.4.3). Nicht dargestellt sind die Dateispezifikations-Verzeichnisse (PDFRM Abschnitt 7.4.2) für jede der Dateien, die als indirekte Objekte in den Anmerkungsverzeichnissen der Schaltflächenfelder 230, 232 auf dem Deckblatt 210 verwendet werden. Der Verweis auf die Dateispezifikation wird von der Implementierungs-Software verwendet, um die Datenstromobjekte zum Zeitpunkt des Auslösens der Aktion durch ein Ereignis zu lokalisieren. (Die Verwendung der Dateispezifikation, falls sie verwendet wird, um das PDF konform zu machen, fügt keinen realen Wert hinzu, da die Dateien direkt mit den Anmerkungsverzeichnissen verknüpft werden könnten, denn aus Sicherheitsgründen kann die Dateispezifikation keine wertvollen Informationen über die Quelle oder Inhalte der Datenstrom-Objektdateien enthalten, auf die sie zeigen.)
  • Nach dem Öffnen stellt das Deckblatt 210 eine Benutzerschnittstelle für den Zugriff auf den sicheren Inhalt in einem verschlüsselten Dokument 212 zur Verfügung. Wenn der Benutzer die Befehlsschaltfläche 230, 232 auswählt, beginnt eine entsprechend verknüpfte Aktion 224, 226, 228 mit der Verarbeitung des Datenstromobjektes 214, 216, 218. Wenn beispielsweise die Befehlsschaltfläche 232 ausgewählt wird, wird die Aktion 226 implementiert, durch die die Verarbeitung des verschlüsselten PDF 214 in Gang gesetzt wird. In gleicher Art und Weise beginnt dann, wenn die Aktion 228 ausgewählt wird, die Verarbeitung der sicheren Anmerkungen 218. Wenn die Schaltfläche 230 die Aktion 224 auswählt, beginnt die Verarbeitung der sicheren binären Datei 216. Die Verarbeitung des ausgewählten Datenstromobjektes bedeutet im typischen Fall, dass Mittel für den Benutzer zur Verfügung gestellt werden, um die implementierungsspezifische Benutzer-Berechtigung einzugeben, gefolgt von der Implementierung des Mehrfachcode-Verschlüsselungsverfahrens, um festzustellen, ob die Benutzer-Berechtigung gültig ist, und falls ja, wird das ausgewählte Element anschießend entschlüsselt (wie nachstehend näher beschrieben wird).
  • Zwar ist es nicht im Diagramm abgebildet, doch die Textfelder für die Benutzer-Kennung (und/oder biometrische Eingabesteuerungen) sind Teil des Deckblattes 210, und in ihren Anmerkungsverzeichnissen muss der Zeichenkettenwert des Codes „T" auf einen eindeutigen Namen eingestellt sein, der der Software-Implementierung bekannt ist. Dies ist notwendig, damit die Implementierung den Benutzereintrag für jedes Feld erhalten kann, wenn eine der Schaltflächen 230, 232 aktiviert wird.
  • In der Praxis kann der Inhalt des OSI variieren; es kann die drei Objekte wie in 2 enthalten oder lediglich eine der Befehlsschaltflächen. In jenem Fall würde(n) das/die mit dem fehlenden Befehlschaltflächenfeld verknüpfte(n) Datenstromobjekt/e ebenfalls nicht erscheinen.
  • Das sichere, binäre Datenstromobjekt und das Datenstromobjekt des verschlüsselten PDF (beides verschlüsselte elektronische Dokumente) haben einen gemeinsamen Innenaufbau 212. Die Kennung („ID") 240 steht am Anfang der Daten des Datenstroms und besteht aus einer Textmarke, die zum Markieren des Typs der nachfolgenden Daten verwendet wird. Es ist nicht erforderlich, dass sie in allen Implementierungen vorhanden ist, bietet aber ein schnelles Verfahren für die Verarbeitungs-Software um sicherzustellen, dass ein Datenstromobjekt des erwarteten Typs gelesen wird. Eine typische Länge dieses Abschnittes läge bei vier Zeichen.
  • Auf die Kennung 240 folgt der „Klarschrift-Header" 242, der wenigstens so lang sein muss, dass die Software den Anfang des nächsten Abschnitts findet, eine Datenfolge, die nur für dieses eine OSI gilt (vermischt mit der klaren Benutzer-Kennung unter Zuhilfenahme der Hash-Funktion) und eine Mehrfachcode-Verschlüsselungsinformation, die benötigt wird, um mehr als einem Benutzer Zugang zu gewähren (die Mehrfachcode-Verschlüsselungstabelle, die die Mehrfachcode-Komponenten enthält). Allgemein würde dazu die Anzahl von Benutzern gehören, gefolgt von den Informationen über die Erzeugung des Benutzercodes nach dem Mehrfachcode-Verfahren (die Mehrfachcode-Komponenten). Alle anderen Informationen, die sich in diesem Abschnitt befinden, sind implementierungsabhängig; typisch für dessen Inhalt wäre aber eine Anzahl von Dokumenten und alle anderen Informationen, die der Benutzer zur Verfügung stellen will, die jedoch die Sicherheit nicht infrage stellen.
  • Nach der Kennung folgt der „verschlüsselte Header" 250, der mit dem von der Implementierung ausgewählten Algorithmus verschlüsselt ist. Der Entschlüsselungscode zu diesem Abschnitt hängt von dem angewandten Mehrfachcode-Verfahren ab (ein willkür lich erzeugter Code) oder aber er ist eine Funktion der Kennung des einzigen Benutzers. Da normalerweise das Mehrfachcode-Verfahren und die Chiffrierblock-Kettenbildung zur Anwendung kommt, steht am Anfang eine Verschlüsselungs-Markierung für die Entschlüsselungsgültigkeit. Dies gestattet ein Lesen der Daten lediglich als sequenziellen Strom (kann nicht in den Daten gesichert werden) und das Entschlüsseln der die Markierung enthaltenen Blöcke solange, bis der richtige Code gefunden ist. Darauf folgen die realen Inhalte des Headers, einschließlich der Länge des verschlüsselten Headers, die Länge eines beliebigen Fingerdrucks 252, der auf den Header folgt (die Summe davon teilt der Implementierung mit, wo die realen Dateidaten beginnen), eine Berechtigungs-Matrix oder eine andere Information über einen begrenzten Zugriff zu einer sicheren Datei, die möglicherweise von der Implementierung benötigt wird (z. B. könnte bei einer binären Datei der Name der Datei hier stehen). Auf diese Information folgen willkürliche Fülldaten, wenn die Blockverschlüsselung zur Anwendung kommt, um den Header mit einer geraden Anzahl von Blöcken zu erstellen. (Es ist von Vorteil, eine gewisse kleine, zufällige Anzahl von Blöcken hinzuzufügen, so dass die tatsächliche Länge des verschlüsselten Headers nicht einmal bei einem OSI gleich ist, welches dieselben gesicherten Daten enthält.) Es sei angemerkt, dass die Länge des verschlüsselten Headers nicht in Klarschrift zu sehen ist und man in der Lage sein muss, den Anfang zu entschlüsseln, um den verschlüsselten Dateiabschnitt zu lokalisieren, der ihm in dem sicheren Datenstromobjekt folgt.
  • Die in dem verschlüsselten Header verwendete Berechtigungsmatrix gleicht die Benutzer mit ihren jeweiligen Berechtigungen ab. Das eigentliche Format dieses Elementes ist implementierungsabhängig. Allerdings verfügt die zugehörige Implementierung über mehrere Code-Aspekte, die bei anderen Implementierungen berücksichtigt werden sollten. Dass zum Abgleichen eines Berechtigungssatzes angewandte Verfahren bietet keinerlei Informationen darüber, wer der Benutzer sein könnte. Das heißt, wenn man die entschlüsselte Berechtigungsmatrix erhält, bekommt man keinerlei Informationen über irgendeine Benutzer-Kennung (Benutzer werden von einem Hash angegeben). Berechtigungen, die enthalten sind, gewähren einem Benutzer das Recht zum „Kopieren in Zwischenablage", Drucken des Dokuments und Hinzufügen von Anmerkungen zu dem Dokument, wenn es geöffnet ist. Darüber hinaus können die Berechtigungen das Öffnen des Dokuments durch eine Implementierung einschränken, wenn es nach einem speziellen Datum erfolgt, wenn der Computer keine Netzwerkadresse aufweist, die von einer Netzwerkmaske angegeben wurde, kombiniert mit einer Netzwerkadresse, wenn der Computer keine spezielle Hardware bereitstellt, die abhängig von der „Rechner- Kennung" ist, oder wenn das Computersystem anzeigt, dass es über keine Netzwerkadresse verfügt (kann das Objekt mit sicherem Inhalt nicht öffnen, wenn das Netzwerk angeschlossen ist).
  • Auf den verschlüsselten Header 250 kann ein optionaler kleiner Fingerabdruck 252 folgen. Notwendig ist dies nicht, wenn jedoch die Quellenidentifikation des OSI erforderlich ist, ist dies eine der Stellen, an der solche Informationen positioniert werden können. Da der Fingerabdruck 252 nicht sicher ist, kann es vorteilhaft sein, ihn mit Hilfe eines bekannten Codes und einer Verschlüsselungs-Markierung zu verschlüsseln, gefolgt von den benötigten Daten, aufgefüllt mit zufälligen Bytes, so dass eine gerade Anzahl von Verschlüsselungsblöcken entsteht, gefolgt von einer kleinen willkürlichen Anzahl von Blöcken, die mit zufälligen Daten gefüllt sind. Da der gesamte Fingerabdruck verschlüsselt ist, ist die Länge des verschlüsselten Headers 250 nicht bekannt und schwankt, der Fingerabdruck kann von jemandem, der kein gültiger Benutzer ist, nur dann lokalisiert werden, wenn vom Anfang des verschlüsselten Header an solange vorwärts entschlüsselt wird, bis die Verschlüsselungs-Markierung des Fingerabdrucks gefunden ist. Dies würde nur vorkommen, wenn ein OSI nachverfolgt wird, da bei der normalen Verarbeitung von Daten die Länge aus der Entschlüsselung des verschlüsselten Headers bekannt ist, und sie in dem Datenstrom einfach übersprungen wird.
  • Der nächste Abschnitt ist der verschlüsselte Inhalt 260, bei dem es sich um die eigentliche Datei mit sicheren Daten handelt. Als verschlüsselter Abschnitt beginnt er jedoch mit einer Verschlüsselungs-Markierung. Dadurch kann die Implementierung überprüfen, dass es sich um einen gültigen Code für ein Dateiformat handelt. Bevorzugt wird es zudem, wenn auf diese Markierung die tatsächliche Länge der Daten folgt, da diese normalerweise nicht genauso lang wie der Rest des Datenstromobjektes ist, wenn eine Blockverschlüsselung erfolgt und/oder auf den Abschnitt ein anderer Fingerabdruck 262 folgt. Auf die Hauptdaten 260 folgt ein weiterer optionaler Fingerabdruck 262 mit Daten, die zum Zurückverfolgen bis zum Eigentümer des OSI genutzt werden kann oder ein anderes implementierungsspezifisches Merkmal bereitstellt, z. B. Datum, Überarbeitungsnummer usw. Dieser könnte dieselbe Form haben wie der vorherige Fingerabdruck, wenn dies der Fall wäre, würde jedoch ein anderes Verschlüsselungsverfahren oder ein anderer Code eingesetzt werden. Ein willkürliches Auffüllen dieses Abschnittes mit zufälligen Daten könnte ebenfalls erfolgen.
  • Es sei angemerkt, dass die Fingerabdrücke laut vorliegender Definition nicht sicher vor einem speziellen Angreifer sind, doch genauso wie bei dem willkürlichen Auffüllen der Abschnitte, was dazu führt, dass OSIs mit demselben Inhalt eine unterschiedliche Länge erhalten, sind sie dazu gedacht, weniger kundige Angreifer abzuschrecken. (Dies gilt nicht für die zufälligen Daten, die in den Verschlüsselungs-Markierungen verwendet werden, mit denen „feststehender Text" vom Anfang einer Verschlüsselungssequenz entfernt wird.
  • Unter „zufälligen Daten", die an mehreren Stellen in dem OSI vorkommen, sind Daten zu verstehen, die von der Standardsoftware für Pseudozufalls-Sequenzen generiert werden. Normalerweise nimmt die Software „Startparameter", die so für jedes OSI abgewandelt werden, dass jedes OSI einzigartig innerhalb der Grenzen der Pseudozufalls-Sequenz ist. Diese Daten werden für den Anfangs-„Text" einer beliebigen Verschlüsselungssequenz und beliebiger Füllzeichen verwendet, die möglicherweise zum Chiffrierblock-Ausrichten von Elementen oder Abschnitten benötigt werden.
  • Jedes Datenstromobjekt 212 enthält einen unverschlüsselten Abschnitt, auf den ein fortlaufender Strom verschlüsselter Daten folgt, die mit zufälligen Daten vermischt sind. Der Klarschriftabschnitt enthält keine identifizierbare Benutzerinformation. Die OSI-Daten 240, 242, die in Klarschrift gehalten sind, werden lediglich als Eingabe für eine Code-Ermittlungsfunktion verwendet, die zum Erzeugen einer gültigen Ausgabe eine gehashte Benutzer-Kennung benötigt. Die richtige Entschlüsselung hängt davon ab, dass Codes aus dem Mehrfachcode-Verfahren solange getestet werden, bis eine gültige Verschlüsselungs-Markierung gefunden ist, wobei die Daten in dieser Markierung pseudozufällig von einem OSI zum anderen variieren. Die verschlüsselten Abschnitte können erst dann zuverlässig voneinander getrennt werden, wenn man den verschlüsselten Header 250 entschlüsseln kann. (Abschreckend wirkt dies nur auf weniger kundige Angreifer.) Das Verschlüsselungsverfahren hängt von der Implementierung ab und könnte von einem OSI zum anderen variieren. Es ist für ein rudimentäres Erstellen von Fingerabdrücken 252, 263 des OSI gesorgt, wodurch sich zurückverfolgen lässt, an wen das OSI zu Beginn gegeben wurde (wer dessen Erstellung anforderte). Für jede Benutzer-Kennung sind Benutzer-Berechtigungen codiert. Für den verschlüsselten Header 250 und den verschlüsselten Inhalt 260 können verschiedene Hauptcodes und unterschiedliche Mehrcode-Funktionen zur Anwendung kommen.
  • Das OSI wird verwendet, wenn ein Benutzer das verschlüsselte PDF öffnet oder die sichere binäre Datei extrahiert. Zuerst öffnet der Benutzer das OSI in einem Viewer/Editor, der das Deckblatt 210 anzeigt. Anschließend gibt der Benutzer seine Kennungsinformation (nicht abgebildet) ein und klickt auf eines der Schaltflächenfelder 230, 232. Allgemein ist die Verarbeitung für beide Schaltflächenfelder bis zu dem Punkt gleich, an dem die sichere Datei entschlüsselt werden kann, so dass der nachfolgende sie bis zu diesem Punkt nicht voneinander unterscheiden kann.
  • Die Schaltflächenfelder 230, 232 verfügen über eine vertrauliche (in dem PDFRM nicht definierte) Aktion, die in einem Plug-In oder als Teil des Viewer/Editors implementiert ist (vertrauliche Aktionen sind im PDF-Viewer bei gemeinsamer Verwendung erlaubt). Die Software zur Unterstützung dieser Aktion 224, 226, 228 beginnt mit ihrer Verarbeitung, wenn der Benutzer die Maus auf die Schaltflächenfelder 230, 232 setzt. Zu diesem Zeitpunkt wird ihr entweder ein Verzeichnis für die Aktion vorgelegt oder ein Verzeichnis, das es gestattet, eines der möglichen Verzeichnisse zu lokalisieren, die zur Aufnahme des indirekten Objektverweises auf das Datenstromobjekt 214, 216, 218 verwendet wird, welches mit der Schaltfläche 230, 232 verknüpft ist.
  • Nach Eingang des Datenstromobjektes werden die darin enthaltenen Daten vom Anfang nacheinander verarbeitet. Zuerst wird die Kennung ausgelesen und überprüft und anschließend werden die Mehrfachcode-Informationen und die OSI-Kennung gelesen und gesichert. Daraufhin werden die Benutzer-Kennungsinformationen zusammen mit der OSI-Kennung aus den Textfeldern ausgelesen und zu Einweg-Hash-Werten verarbeitet, die das Offenlegen der tatsächlichen Werte verhindern. Am besten hat sich bewährt, die Textfelder des Passwortes und der Passphrase zu diesem Zeitpunkt durch die Implementierung zu löschen, so dass deren „Klartext"-Werte nicht länger im Computer vorhanden sind. Danach werden diese Hash-Werte von der Mehrfachcode-Funktion als Benutzereingaben verwendet.
  • Im Anschluss wird das Datenstromobjekt solange ausgelesen, bis feststeht, dass wenigstens die Verschlüsselungs-Markierung mit einem gültigen Code decodiert werden kann. Danach wird für jeden möglichen Benutzer versucht, die Markierung zu entschlüsseln, indem deren Mehrfachcode-Daten für den verschlüsselten Header in die Codeerzeugungsfunktion eingegeben werden. Wenn für die Markierung bei einem der Codes kein gültiger entschlüsselter Wert gefunden wird, wird davon ausgegangen, dass die Benutzer-Kennung nicht richtig ist, und die Verarbeitung des OSI endet hier.
  • Nachdem der Code für den verschlüsselten Header 250 gefunden ist, ist dessen Länge bekannt und der Rest kann entschlüsselt, und die Berechtigungen des aktuellen Benutzers können erhalten werden. Jene Berechtigungen, die nicht im Zusammenhang mit dem Öffnen eines PDF stehen, werden nun überprüft. Wenn alle Bedingungen in den Berechtigungen nicht erfüllt sind, endet die Verarbeitung (z. B. ist das aktuelle Datum abgelaufen, für das die Berechtigungen erteilt wurden). Wenn die Verarbeitung fortgesetzt wird, springt der Lesevorgang des Datenstromobjektes vorwärts bis zum Anfang des verschlüsselten Inhalts 260, zum Ablesen und Entschlüsseln der Verschlüsselungs-Markierung, so dass überprüft wird, ob alles gültig ist. Möglicherweise müssen je nach Implementierung nicht alle Codes bei dieser Entschlüsselung ausprobiert werden und auch dann nicht, wenn der „Index" des Benutzers, dessen Mehrfachcode-Informationen den verschlüsselten Header entschlüsselten, verwendet werden kann.
  • Nachdem die Verschlüsselungs-Markierung am Anfang des Inhaltes überprüft ist, verzweigt sich die Verarbeitung je nachdem, welches Schaltflächenfeld 230, 232 betätigt wurde. Im Falle der Dateiextraktion legt die Software dem Benutzer eine standardmäßige Dateisicherungs-Benutzerschnittstelle für das Betriebssystem vor und entschlüsselt die Daten aus dem Datenstromobjekt in eine neue Datei, wenn nicht der Benutzer die Option Abbruch wählt. Ab diesem Punkt fällt die weitere Sicherheit in den Verantwortungsbereich des Benutzers, da sie nun unabhängig von dem OSI ist.
  • Wenn das aktivierte Schaltflächenfeld 232 mit dem verschlüsselten PDF 214 verknüpft ist, wird es, ohne entschlüsselt zu werden, aus dem Datenstromobjekt in den Speicher eingelesen. (Dies ist erforderlich, da das Datenstromobjekt in dem Deckblatt möglicherweise geschlossen wird, aber die Daten innerhalb des verschlüsselten PDF immer noch verfügbar sein müssen.) Anschließend wird ein Speicherdateiobjekt für den Viewer/Reader erzeugt und auf niedriger Stufe geöffnet (Öffnen ohne Ansicht). Zu diesem Zeitpunkt oder wenn der Viewer/Reader zuerst die Beschränkungen im Hinblick auf die Verwendung des Dokuments akzeptiert, werden die Berechtigungen für das Dokument mit Hilfe der Berechtigungen aus dem verschlüsselten Header eingestellt. Während der Viewer/Editor das PDF verarbeitet, nutzt er die Speicherdatei, welche die Daten in dem PDF gegebenenfalls entschlüsselt. Es sei angemerkt, dass es nicht notwendig ist, die verschlüsselten PDF-Daten im Speicher zu halten, da sie als lokale Dateien gespeichert werden könnten, während sie verschlüsselt bleiben. Bei Verwendung des lokalen Datenträgersystems sollten die Inhalte nicht offen gelegt werden, doch die bevorzugte Implementierung verwendet den Speicher, um Probleme zu vermeiden, die auftreten könnten, falls die Datenträgerdatei nicht entfernt worden ist, wenn sich das PDF in dem Viewer geschlossen hatte.
  • Nachdem das verschlüsselte PDF ohne Fehler als ein Dokument auf niedriger Sicherheitsstufe geöffnet worden ist, wird der Viewer/Editor angefordert, das offene Deckblatt des PDF durch das neu geöffnete PDF zu ersetzen, und der Benutzer kann es ansehen. Dadurch wird die Aktion abgeschlossen, die mit der Mausbetätigung auf dem Schaltflächenfeld begann.
  • Es wird angemerkt, dass bei diesem Verfahren die PDF-Inhalte 260 oder binäre Dateiinhalte 260 erst dann entschlüsselt werden, wenn die Berechtigungen als gültig überprüft worden sind. Das verschlüsselte PDF wird niemals vollständig entschlüsselt, da die Entschlüsselung nur dann erfolgt, wenn der Reader/Viewer während der Verarbeitung einen Datenblock aus dem PDF anfordert. Die Implementierung behält keine Klarschriftversionen der Benutzer-Kennung, sondern verwendet vielmehr eine Hash-Funktion, die die Benutzerinformation mit der OSI-Kennung für sämtliche Verarbeitungsschritte vermischt. Alle verschlüsselten Inhalte können auch eine Verschlüsselungs-Markierung enthalten. Besonders nützlich ist dies, wenn das Format bzw. der Typ des verschlüsselten Inhalts nicht bekannt ist. Wenn es sich beispielsweise bei dem verschlüsselten Inhalt um binäre Testdaten handelt, gibt es keine Möglichkeit für einen Benutzer, die „entschlüsselten" Daten zu überprüfen, um festzustellen, ob sie gültig sind. Somit wird durch das Wissen, dass die Verschlüsselungs-Markierung dem entschlüsselten Inhalt vorausgeht, eine gültige Entschlüsselung des Inhaltes gewährleistet.
  • Bei einer weiteren Ausführungsform der Erfindung kann das Objekt mit sicherem Inhalt dazu verwendet werden, Anmerkungen 218 zu schützen, selbst wenn das Hauptdokument nicht geschützt werden soll. Wie bereits angeführt, kann das Anmerkungsmerkmal in einem Anwendungsprogramm zum Einsatz kommen, welches für die Erzeugung von Anmerkungen sorgt. Allgemein hat ein derartiges Anwendungsprogramm seine eigenen Regelsätze für die Erzeugung von Anmerkungen. Die Anmerkungsimplementierung wird anhand von PDF-Dokumenten geschrieben und umfasst die Speicherung bzw. Übertragung neuer Anmerkungen durch einen Benutzer; das Verschmelzen von Anmerkungen verschiedener Benutzer zu einem Objekt innerhalb des PDF; das Öffnen eines Dokuments, welches lokale und/oder verteilte Anmerkungen aufweist.
  • Wenn man davon ausgeht, dass der Benutzer das ursprüngliche PDF durch Hinzufügen von Anmerkungen bearbeitet hat, gibt es zwei Möglichkeiten: Erstens, der Benutzer möchte in dem lokalen Modus verbleiben (vertrauliche Anmerkungen des Benutzers) oder zweitens, der Benutzer ist Teil eines Netzwerkes und befindet sich im Server-Modus (verteilte Anmerkungen). Eine Software, die diese beiden erfindungsgemäßen Modi implementiert, kann entweder in einer Viewer/Editor-Anwendung direkt oder als ein Plug-In zu der Anwendung vorliegen.
  • Der Ablauf von Schritten zum Erzeugen eines Dokuments mit sicherem Inhalt und mit verschlüsselten Anmerkungen unterscheidet sich wie folgt von der normalen Erstellung einer neuen PDF-Version: Zuerst werden die zu dem aktuellen Benutzer gehörenden Anmerkungen extrahiert oder es wird eine Liste für die Extraktion während des Ver schlüsselungsschrittes aus dem editierten PDF erzeugt. Dieser Prozess umfasst nicht nur die wichtigsten Anmerkungen, sondern auch Pop-up-Anmerkungen, bei den es sich um nachgeordnete Objekte anderer Anmerkungen handelt. Da sich eine Anmerkung auf einer Seite befindet, wird während des Auflistungs- oder Extraktionsprozesses davon ausgegangen, dass alle Verzeichnisse für Anmerkungsobjekte mit der Seitenzahl markiert sind, auf der sie sich befinden. Während der Extraktion werden die Anmerkungen des aktuellen Benutzers von Anmerkungen anderer Benutzer mit Hilfe eines Code/Wert-Paares unterschieden, welches in das Anmerkungsverzeichnis eingestellt worden ist, als die Anmerkungen der anderen Benutzer zur Ansicht hinzugefügt wurden.
  • Wenn man davon ausgeht, dass ein Benutzercode für ein Verschlüsselungsverfahren vorhanden ist oder erlangt werden kann, dann werden die Anmerkungsobjekte und alle Objekte, von denen sie abhängen, mit Hilfe des Codes des aktuellen Benutzers verschlüsselt und in eine Datenfolge formatiert. Die genaue Form, die die extrahierten Anmerkungen annehmen können, ist nicht kritisch; es ist lediglich notwendig, dass die Implementierung der Erfindung in der Lage ist, zu einem späteren Zeitpunkt die extrahierten Anmerkungen in ein PDF zurückzubringen. Anschließend stehen zwei Aktionen zur Verfügung. Im lokalen Modus werden die Daten auf einen lokalen Datenträger als Datei geschrieben, die aus einem Klarschrift-Header besteht, der die Datei identifiziert, und aus Benutzerdaten, die nicht vertraulich sind, und aus Mehrfachcodes, falls sie verwendet werden. Auf diesen Klarschriftdaten folgen ein oder mehrere verschlüsselte Teile, welche sämtliche Anmerkungen und die Objekte enthalten, von denen sie abhängen. Normalerweise ist dieses Dateiformat dasselbe, das für die zusammengelegten, eingebetteten Anmerkungsdateien verwendet wird, die auf PDF beruhen, allerdings entsteht dadurch lediglich eine verbesserte Software-Effizienz und es ist keine notwendige Voraussetzung. Es ist nicht notwendig, dass diese Datei den aktuellen Benutzer, den Eigentümer der Anmerkungen in einer anderen Art und Weise kenntlich macht, als durch Verschlüsselung – d. h. der Benutzer kann die Datei entschlüsseln. Im Server-Modus wird diese formatierte Datensequenz zu dem Server übertragen, wenn der Benutzer seine neuen Anmerkungen den anderen Benutzern zur Kenntnis geben will. Während der Übertragung erfährt der Server die Benutzer-Kennung, so dass durch die sicheren Informationen der Weg zu den Codes für die verschlüsselten Abschnitte frei wird. Es ist anzumerken, dass bei Vorhandensein einer sicheren Server/Client-Verbindung diese Übertragung keine verschlüsselten Abschnitte enthalten muss. Da jedoch eine Option auftreten kann, bei der eine zuvor erzeugte Datei im lokalen Modus von einer vorherigen Extraktion herrührt, führt das Beibehalten eines gemeinsamen Formates zu einer höheren Software-Effizienz.
  • Am Ende des vorhergehenden Schrittes ist das aktuelle PDF-Dokument als „gesichert" betrachtet worden und das angesehene PDF wird als „unverändert" markiert (d. h., es bedarf keiner Sicherung). Unter keinen Umständen wird das aktuelle PDF in modifizierter Form in den lokalen Datenträger oder in den Server eingeschrieben. Das heißt, sämtliche Veränderungen durch den aktuellen Benutzer sind innerhalb der in den vorherigen Schritten erzeugten Anmerkungsdatei enthalten und das modifizierte PDF, das in dem Viewer/Editor aktiv ist, wird einfach gelöscht, ohne dass Restinformationen für andere über die Anmerkung verbleiben, die zu einem späteren Zeitpunkt abgerufen werden könnten.
  • Das erzeugte Objekt mit sicherem Inhalt umfasst eine verschlüsselte Datei, die alle von dem aktuellen Benutzer geschaffenen oder veränderten Anmerkungen enthält und das Original PDF-Dokument bleibt unverändert. Bei der Verschlüsselung dieser Anmerkungen wird ein Code verwendet, der von den Informationen abhängig ist, die nur jenem Benutzer und im Server-Modus den sicheren Systemen der Organisation bekannt sind, zu der der Benutzer gehört. Das Verfahren zum Verschlüsseln und festlegen des Hauptcodes für diese Verschlüsselung kann ein beliebiges bekanntes Verschlüsselungsverfahren sein. Es ist anzumerken, dass diesen Schritten gemeinsam ist, dass die Anmerkungen des Benutzern zu dem PDF hinzugefügt werden und dass eine neue Version des PDF-Dokuments durch das Speichern seitens des Benutzers erzeugt wird.
  • Es ist nicht erforderlich, dass der Benutzers jemals den Server-Modus verwendet. Wenn der Benutzer es nicht tut, dann bleiben die Anmerkungen des Benutzers vertraulich und durch die Verschlüsselung geschützt. Die einzige Einschränkung im vorliegenden Fall besteht darin, dass nun zwei Dateien auf dem lokalen Datenträger vorhanden sind: Das nicht modifizierte PDF (das auch durch die Verschlüsselung gesichert werden kann) und das Dokument mit den Anmerkungen des Benutzers. Normalerweise sind diese Dokumente miteinander verbunden, indem sie sich im gleichen Verzeichnis befinden, denselben Namen haben, aber eine unterschiedliche Namenserweiterung (z. B. myfile.pdf und myfile.ant). Ein Beispiel dafür, wo derartige vertrauliche Anmerkungen sinnvoll sein können, ist ein Verkäufer, der eine Preisliste mit Informationen (Anmerkungen) versieht, die er für wichtig hält. Da die beiden Modi viel gemeinsam haben, liegt es an dem Benutzer zu entscheiden, wann und ob überhaupt die Anmerkungen des Benutzers zu verteilen sind.
  • Wenn ein Benutzer seine Anmerkungen im Server-Modus sichert, sollen sie dadurch anderen zugänglich gemacht werden können, die das Dokument ansehen können. Möglicherweise gibt es aber einige Benutzer, die das Dokument ansehen können, für das der Benutzer das Recht zum Ansehen seiner Anmerkungen einräumen möchte. Ein einfaches Beispiel dafür ist ein Manager, der möchte, dass sein Vorgesetzter seine Anmerkungen sieht, seine untergeordneten Mitarbeiter aber nicht einmal wissen sollten, dass die Anmerkungen existieren. Dies sollte sogar dann zutreffen, wenn sie alle dasselbe PDF-Dokument haben (exakte Kopien, da eine einzige Kopie von dem Server geholt und durch den Manager verteilt wurde).
  • An einem gewissen Punkt hat der Server eine Anmerkungsmatrix für das Dokument und dessen Anmerkungen. Diese Matrix gleicht die „Leser der Anmerkungen" mit den „Erzeugern der Anmerkungen" ab. Es kann vermutet werden, dass es wenigstens einen Leser einer Anmerkung gibt – den Erzeuger der Anmerkungen –, so dass die Matrix niemals leer ist. Ein Benutzer kann ein beliebiges praktisches Verfahren anwenden, um festzulegen, wer seine Anmerkungen zu einem Dokument lesen kann. Es wird ebenfalls vermutet, dass der Server die Matrix über die Leser der Anmerkungen erhalten und behalten kann. Weiterhin ist das Verfahren, mit dem der Server alle ihm von den Benutzern zugeführten Anmerkungen speichert und lokalisiert, nicht kritisch, solange die Anmerkungen verfügbar sind und ihr Eigentümer (Schöpfer) und ihre Leser identifiziert sind.
  • Zur Verteilung an Benutzer, denen das Ansehen des PDF-Dokuments gestattet ist, wird vom Server eine neue Version des PDF-Dokuments erzeugt, indem eine „Zusammenlegung" der neuen Anmerkungen mit dem ursprünglichen PDF-Dokument erfolgt (das Zusammenlegen erfolgt typischerweise nur, wenn das Dokument geöffnet oder angesehen wird). Je nach Implementierungsvorgang kann dieser Schritt dann erfolgen, wenn ein Benutzer eine Kopie des Dokuments anfordert, oder vorher.
  • Der Prozess des Zusammenlegens modifiziert das originale PDF durch Hinzufügen aller Anmerkungen in sicherer Art und Weise. Jede Anmerkung wird mit Hilfe des bereits definierten Mehrfachcode-Verfahrens verschlüsselt. Zusätzlich zu der Verschlüsselungs-Markierung, die an den Anfang der Anmerkungsdaten gestellt wird, ist eine Eigentümer-Markierung vorhanden (im Allgemeinen ist es kein Klartext, sondern ein Hash oder etwas aus dem Mehrfachcode-Verfahren), die den Eigentümer/Erzeuger der Anmerkung gegenüber der Software identifiziert, die den Abschnitt entschlüsselt. Anschließend wird zu dem Anfang jeder verschlüsselten Anmerkung Klartext hinzugefügt, der die Länge der Datei und alle anderen Informationen neben denen angibt, die von dem Mehrfachcode-Verfahren benötigt werden, so dass das Erproben von Codes, das Lokalisieren der ver schlüsselten Teile und/oder das Ermitteln der Größe der entstehenden Sequenz mit der darin enthaltenen Anmerkung ermöglicht werden. Die Codes, die zu der Mehrfachcode-Verschlüsselung gehören, sind nur für jene Benutzer gedacht, denen das Recht zum Ansehen jener Anmerkung eingeräumt wurde. Somit müssten jene, die diese Anmerkung erhalten haben, aber nicht das Recht zum Ansehen besitzen, die Verschlüsselung knacken, um Zugriff auf den Inhalt der Anmerkungsdatei zu erhalten.
  • Alle oben erzeugten Anmerkungsdatensequenzen (Dateien) werden zu einer einzigen Sequenz verkettet. Je nach der Implementierung kann Klartext gegebenenfalls während dieses Schrittes hinzugefügt werden, um der Sequenz eine Struktur zu verleihen, die zu einem späteren Zeitpunkt eine Trennung in Teile der Anmerkungsdatei ermöglichen würde.
  • Anschließend wird die oben erzeugte Datensequenz zu dem ursprünglichen PDF-Dokument hinzugefügt, oder falls das PDF-Dokument innerhalb eines anderen PDF-Dokuments als sicherer Inhalt vorliegt, zu dem PDF auf niedriger Ebene als Datenstromobjekt hinzugefügt. Dieser Datenstrom gehört zu dem Typ „eingebettete Datei", so dass sie mit dem PDFRM konform ist. Zum leichteren Verständnis künftiger Bezugnahmen sei erwähnt, dass beim Öffnen des PDF das Objekt zu dem Namensbaum (PDFRM Abschnitt 7.2) hinzugefügt und mit einer durch ein Plug-In-unterstützten Aktion verknüpft werden kann. In dem PDFRM sind verschiedene Verfahren zur Bezugnahme auf dieses Datenstromobjekt definiert und die Auswahl des zur Anwendung kommenden Verfahrens ist von der Implementierung abhängig.
  • Das neue PDF-Dokument mit dem ursprünglichen Dokument und dem Anmerkungsdokument wird an einen Benutzer oder mehrere Benutzer ausgegeben, bei dem der Server das Recht auf Besitz einer Kopie des Dokuments ermittelt hat. Es ist anzumerken, dass beim Hinzufügen des Datenstromobjektes zu dem PDF-Dokument durch den Server zum Zeitpunkt der Anforderung einer Kopie durch einen Benutzer jene Anmerkungen, die nicht von diesem Benutzer angesehen werden können, nicht in dem PDF-Dokument enthalten zu sein brauchen. Ob sie enthalten sind oder nicht, hängt von der Implementierung ab.
  • In diesem Prozess steht die Verschlüsselung jeder Anmerkung in keinem Zusammenhang mit einer anderen, außer durch die Verwendung von Mehrfachcode-Verschlüsselungsverfahren für eine bestimmte Benutzergruppe. Die Handhabung der Benutzer-Kennung und die Erzeugung der notwendigen Elemente zur Anwendung der Mehrfachcode-Verschlüsselung erfolgt auf dem Server, von dem angenommen wird, dass er sicher ist. Das erzeugte Datenstromobjekt kann laut PDFRM als „eingebettete Datei" markiert sein, es muss aber keine „Dateispezifikation" für das Objekt vorhanden sein (PDFRM Abschnitt 7.4), da es normalerweise nicht als „Datei" im Sinne des PDFRM angewendet wird. Die Verknüpfung mit dem Datenstromobjekt existiert an irgendeiner Stelle in dem PDF auf oberster Ebene, so dass es sich öffnen lässt und es davor bewahrt wird, verwaist zu werden (verwaiste Objekte werden mitunter durch Anwendung aus den PDF-Dateien entfernt).
  • Wenn der Benutzer ein Objekt mit sicherem Inhalt, welches wenigstens eine Anmerkung enthält, zum Ansehen öffnet, muss eine Sequenz von Ereignissen stattfinden, um die Anmerkungen als Teil des PDF zu präsentieren. Natürlich kann der Benutzer auch eine Anmerkung im lokalen Modus für dieses Dokument haben, die in diesem Prozess berücksichtigt werden muss. Wodurch und wie die Sequenz ausgelöst wird, hängt sowohl von dem Viewer als auch von der Implementierung ab, genauso wie davon, ob die Ereignisse eintreten, bevor der Benutzer einen Teil des Dokuments sieht oder nachdem es teilweise oder vollständig geöffnet ist. Das Endergebnis sollte in allen Fällen gleich sein, ob nun der Viewer automatisch das modifizierte Dokument anzeigt oder ob er am Ende der Anmerkungsverarbeitung eine „Aktualisierung" (Refresh) vornimmt.
  • Zwar ist es nicht notwendig, doch im Nachfolgenden wird angenommen, dass alle Anmerkungsaktionen erfolgen, bevor der Benutzer das Dokument sieht. Weiterhin wird davon ausgegangen, dass ein Verfahren vorhanden ist, mit dem die Benutzer-Kennungsinformationen, die zum Erzeugen des Verschlüsselungscodes notwendig sind, ermittelt werden oder worden sind. Wie dies erfolgt, ist implementierungsspezifisch.
  • Weiterhin wird angenommen, dass die Viewer-Anwendung die grundlegende Struktur des PDF-Dokuments verändern kann, dessen Verarbeitung im Speicher begonnen worden ist und bei dem es ein Ereignis gab, welches die Anmerkungsverarbeitung in Gang setzt. Dies ist normalerweise der Fall, da selbst der einfache Akt des Öffnens des zu einer Anmerkung gehörenden Pop-up zu einem bearbeiteten Wert in einem Verzeichnis führt – eine Veränderung der Art, die angenommen wird. Die genauen Implementierungen der Verfahren dieses Abschnitts können unterschiedlich sein.
  • Zu dem Zeitpunkt, da dem Viewer die zugrunde liegende Struktur des PDF-Dokuments zur Verfügung steht, können die folgenden Schritte ausgeführt werden, um die Anmerkungen in die ansehbare PDF-Datei einzufügen. Der lokale Datenträger wird im Hinblick auf eine Anmerkung im lokalen Modus überprüft. Wenn sie gefunden ist, wird sie zuerst so verarbeitet, wie nachstehend für andere Anmerkungen angegeben ist. Der einzige Unterschied besteht darin, dass darin enthaltene Anmerkungen in das PDF eingestellt werden, wobei das Flag „read only" nicht gesetzt ist (PDFRM-Tabelle 6.10 unter dem Verzeichniscode „F").
  • Der von dem Server in dem PDF erzeugte Objektstrom ist lokalisiert und alle Klartext-Header-Informationen, die zur Verarbeitung der Anmerkungen benötigt werden, werden ausgelesen und verarbeitet. Jegliche Benutzer-Kennung, die für die Entschlüsselung benötigt wird, muss vor Abschluss dieses Schrittes vorhanden sein. Anschließend erfolgt die Verarbeitung der ersten Anmerkung, die in dem Datenstromobjekt enthalten ist.
  • Mit Hilfe der aktuellen Benutzer-Kennung wird versucht, den vorderen Abschnitt der verschlüsselten Anmerkungen zu entschlüsseln. In den meisten Fällen bedeutet dies, dass der Verschlüsselungs-Markierungsabschnitt am Anfang der Anmerkungen für jeden möglichen Code nach dem Mehrfachcode-Verfahren entschlüsselt wird. Das heißt, es gibt keine Möglichkeit festzustellen, welcher der Mehrfachcodes die Daten für diesen Benutzer entschlüsselt, so dass jeder ausprobiert werden muss. Wenn keiner der Entschlüsselungsversuche für die Mehrfachcodes die erwarteten Werte für den verschlüsselten Header ergibt, wird vermutet, dass der aktuelle Benutzer nicht die Erlaubnis besitzt, die in diesem Dokument enthaltenen Anmerkungen zu lesen, und die vorliegende Anmerkungsgruppe wird bei der Verarbeitung in diesem Schritt ausgelassen und die Verarbeitung beginnt erst wieder erneut mit der nächsten Anmerkung im Datenstromobjekt. Wenn der verschlüsselte Header richtig entschlüsselt worden ist, geht es bei der Verarbeitung weiter zum nächsten Schritt.
  • Bei der Entschlüsselung des verschlüsselten Headers kann eine Verschlüsselung der Eigentümerinformationen innerhalb des Anmerkungsdokuments erreicht werden. Wenn der aktuelle Benutzer der Eigentümer dieser Anmerkung ist und es eine Anmerkung im lokalen Modus war, die verarbeitet wurde, dann wird diese Anmerkung übersprungen, da davon ausgegangen wird, dass sie durch die Anmerkung im lokalen Modus ersetzt wird. Die entschlüsselte Eigentümerinformation wird weiterhin dazu verwendet, das für den nächsten Schritt erforderliche Flag „read only" einzustellen oder zu löschen, da es nur den Lesern, die auch Eigentümer sind, gestattet ist, eine Anmerkung zu bearbeiten.
  • Als Nächstes wird jede der Anmerkungen in dem Dokument decodiert, zusammen mit abhängigen Objekten, und zu der PDF-Struktur des Viewers hinzugefügt. Für jede Pop-up-Anmerkung auf oberster Ebene und zweiter Ebene wird die indirekte Objektnummer notiert, genauso wie die Seite, auf der sich die Anmerkung befinden soll. Nach dem Platzieren der Anmerkung oder einer Pop-up-Anmerkung in der PDF-Struktur wird ein besonderes Code/Wert-Paar zu dem Verzeichnis hinzugefügt, welches anzeigt, dass der aktuelle Benutzer nicht der Eigentümer dieser Anmerkung ist. Wie bereits beschrieben, wird dieses Code/Wert-Paar während des Extraktionsprozesses verwendet, um herauszufinden, welche Anmerkungen in dem PDF gesichert werden sollten.
  • Nachdem alle Anmerkungsobjekte und deren abhängige Objekte zu der Form des PDF-Dokuments im Viewer hinzugefügt worden sind, werden die Anmerkungen und deren Pop-up-Objekte zu einem vorhandenen Seitenobjekt-Datenfeldobjekt unter dem Code „annots" als indirekte Objekte hinzugefügt. Wenn der Code „annots" nicht existiert, wird er erzeugt. Mit Hilfe der gespeicherten Seitenzahlen aus dem vorherigen Schritt werden die Seitenobjekte lokalisiert. Dies entspricht Abschnitt 6.4 des PDFRM.
  • Nachdem alle Anmerkungen in dieser Datenstromdatei hinzugefügt worden sind, geht es bei der Verarbeitung zu dem nächsten Element im Datenstromobjekt, und es wird der Entschlüsselungsschritt wiederholt. Wenn sich keine weiteren Anmerkungen in dem Datenstrom befinden, endet die Verarbeitung und der Viewer, im Falle, dass er sich im Stadium des Ladens der Vorschau befindet, wird angewiesen, dem Benutzer das Dokument anzuzeigen.
  • Die Anmerkungen sind so sicher, wie dies das Verschlüsselungsverfahren gewährleisten kann, da die Benutzer-Kennungs-Informationen selbst dann nicht bekannt sind, wenn sie sich auf einem unsicheren Computer befinden. Es gibt nichts in dem im Objektstrom eingebetteten Anmerkungen, was entweder auf den Eigentümer oder den Inhalt von Anmerkungen eines Benutzers hinweist. Die sichtbare Struktur kann nur dazu verwenden werden, die Anzahl von Anmerkungen zu finden, die verarbeitet werden sollen – eine eher begrenzte Informationsmenge. Die Entscheidung darüber, ob der aktuelle Benutzer eine Anmerkungsgruppe ansehen kann, die sich innerhalb einer der Dateien des Datenstroms befindet, hängt lediglich von dem Verschlüsselungsverfahren und von der Qualität des Verschlüsselungscodes ab. Das heißt, es gibt keine „versteckten" Flags oder andere Hinweise darauf, wer Leser einer Anmerkungsgruppe ist, die sich innerhalb des Datenstromobjektes oder der Anmerkungsdatei im lokalen Modus befindet. Die Information über den Eigentümer befindet sich im verschlüsselten Abschnitt und kann nicht durch jemanden verändert werden, der nicht die Datei entschlüsseln und wieder herstellen kann.

Claims (7)

  1. Verfahren zum Schützen eines elektronischen Dokumentes, das umfasst: Verschlüsseln des elektronischen Dokumentes unter Verwendung eines Dokumenten-Verschlüsselungscodes; Erzeugen einer Mehrfachcode-Verschlüsselungstabelle zur Verwendung in einem Mehrfachcode-Verschlüsselungsverfahren, wobei die Tabelle wenigstens eine Mehrfachcode-Komponente umfasst; Erzeugen eines verschlüsselten Headers (250), der Informationen umfasst, die das elektronische Dokument betreffen; Verknüpfen einer Benutzerschnittstellen-Vorrichtung (10) mit dem verschlüsselten Header (250), der Mehrfachcode-Verschlüsselungstabelle und dem verschlüsselten elektronischen Dokument (260), wobei die Benutzerschnittstellen-Vorrichtung unverschlüsselte Informationen zum Identifizieren des elektronischen Dokumentes und ein interaktives Element umfasst, das den Benutzer befähigt, eine Benutzer-Berechtigung zum Zugriff auf wenigstens einen Teil des verschlüsselten elektronischen Dokumentes einzugeben; Kombinieren der Benutzer-Berechtigung mit jeder der gespeicherten Mehrfachcode-Komponenten in der Mehrfachcode-Verschlüsselungscodetabelle, um den verschlüsselten Header (250) zu entschlüsseln; und bei einer gültigen Entschlüsselung des verschlüsselten Headers (250) Entschlüsseln des Abschnitts des verschlüsselten elektronischen Dokuments (260), dadurch gekennzeichnet, dass der verschlüsselte Header (250) oder das verschlüsselte Dokument eine Verschlüsselungs-Markierung enthält, die eine willkürliche Zahlenfolge umfasst, auf die eine herleitbare Abwandlung dieser willkürlichen Zahlenfolge folgt, wobei eine gültige Entschlüsselung der Verschlüsselungs-Markierung anzeigt, dass der Dokumenten-Verschlüsselungscode gefunden worden ist.
  2. Verfahren nach Anspruch 1, wobei die Benutzerschnittstellen-Vorrichtung (10) ein zweites elektronisches Dokument umfasst.
  3. Verfahren nach einem der vorangehenden Ansprüche, wobei der verschlüsselte Header (250) und das verschlüsselte elektronische Dokument (260) unter Verwendung verschiedener Verschlüsselungscodes verschlüsselt werden, und wobei die Mehrfachcode-Verschlüsselungstabelle wenigstens eine Mehrfachcode-Komponente für jeden Verschlüsselungscode enthält.
  4. Verfahren nach Anspruch 3, wobei der verschlüsselte Header (250) eine Verschlüsselungs-Markierung enthält, die eine willkürliche Zahlenfolge umfasst, auf die eine herleitbare Abwandlung dieser willkürlichen Zahlenfolge folgt, und eine gültige Entschlüsselung der Verschlüsselungs-Markierung anzeigt, dass der Header-Verschlüsselungscode gefunden worden ist.
  5. Objekt mit sicherem Inhalt, das umfasst: ein verschlüsseltes elektronisches Dokument (12), das mit einem Dokumenten-Verschlüsselungsschlüssel verschlüsselt worden ist; einen verschlüsselten Header (250), der Informationen umfasst, die das elektronische Dokument betreffen; eine Mehrfachcode-Verschlüsselungstabelle zur Verwendung in einem Mehrfachcode-Verschlüsselungsverfahren, wobei die Tabelle wenigstens eine Mehrfachcode-Komponente umfasst; eine Benutzerschnittstellen-Vorrichtung (10), die unverschlüsselte Informationen zum Identifizieren des elektronischen Dokumentes (12) und ein interaktives Element umfasst, das einen Benutzer befähigt, eine Benutzer-Berechtigung zum Zugriff auf wenigstens einen Teil des verschlüsselten elektronischen Dokumentes einzugeben, zum Eingeben der Benutzer-Berechtigung in eine Entschlüsselungs-Maschine, die das Mehrfachcode-Verschlüsselungsverfahren verwendet, um die Benutzer-Berechtigung mit jeder der Mehrfachcode-Komponenten in der Mehrfachcode-Verschlüsselungscodetabelle zu kombinieren und den verschlüsselten Header zu entschlüsseln, und zum Ermöglichen der Entschlüsselung des Teils des verschlüsselten elektronischen Dokumentes bei einer gültigen Entschlüsselung des verschlüsselten Headers, dadurch gekennzeichnet, dass der verschlüsselte Header (250) oder das verschlüsselte Dokument eine Verschlüsselungs-Markierung enthält, die eine willkürliche Zahlenfolge umfasst, auf die eine herleitbare Abwandlung dieser willkürlichen Zahlenfolge folgt, wobei eine gültige Entschlüsselung der Verschlüsselungs-Markierung anzeigt, dass der Dokumenten-Verschlüsselungscode gefunden worden ist.
  6. System zum Schützen eines elektronischen Dokumentes, das umfasst: einen Speicher, der ein Objekt mit sicherem Inhalt und eine Mehrfachcode-Verschlüsselungscodetabelle zur Verwendung in einem Mehrfachcode-Verschlüsselungsverfahren speichert, wobei die Tabelle wenigstens eine Mehrfachcode-Komponente umfasst; wobei das Objekt mit sicherem Inhalt ein verschlüsseltes elektronisches Dokument (12), das mit einem Dokumenten-Verschlüsselungscode verschlüsselt worden ist, und einen verschlüsselten Header (250) umfasst, wobei der verschlüsselte Header Informationen umfasst, die das elektronische Dokument betreffen, und eine Benutzerschnittstellen-Vorrichtung (10), die unverschlüsselte Informationen zum Identifizieren des elektronischen Dokumentes und ein interaktives Element umfasst, das einem Benutzer befähigt, eine Benutzer-Berechtigung zum Zugriff auf wenigstens einen Teil des verschlüsselten elektronischen Dokumentes einzugeben und bei einer gültigen Entschlüsselung des verschlüsselten Headers Entschlüsselung des Teils des verschlüsselten elektronischen Dokumentes ermöglicht; eine Entschlüsselungs-Maschine (18), die ein Mehrfachcode-Verschlüsselungsverfahren verwendet; und einen Prozessor zum Ausführen des interaktiven Elementes und zum Eingeben der Benutzer-Berechtigung in die Entschlüsselungs-Maschine; wobei die Entschlüsselungs-Maschine (18) die Benutzer-Berechtigung mit jeder der Mehrfachcode-Komponenten in der Mehrfachcode-Tabelle kombiniert, um den verschlüsselten Header zu entschlüsseln, wobei eine gültige Entschlüsselung des verschlüsselten Headers anzeigt, dass der Dokumenten-Verschlüsselungscode gefunden worden ist, dadurch gekennzeichnet, dass der verschlüsselte Header (250) eine Verschlüsselungs-Markierung enthält, die eine willkürliche Zahlenfolge umfasst, auf die eine herleitbare Abwandlung dieser willkürlichen Zahlenfolge folgt, wobei eine gültige Entschlüsselung der Verschlüsselungs-Markierung anzeigt, dass der Dokumenten-Verschlüsselungsschlüssel gefunden worden ist.
  7. System nach Anspruch 6, wobei das elektronische Dokument (12) eine Dokumenten-Kennung enthält und der Dokumenten-Verschlüsselungscode eine Kombination aus der Dokumenten-Kennung, der Benutzer-Information und der Mehrfachcode-Komponente für jeden berechtigten Benutzer enthält.
DE60200616T 2001-01-19 2002-01-14 Gesicherte Inhaltsobjekte Expired - Lifetime DE60200616T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US766142 2001-01-19
US09/766,142 US7496767B2 (en) 2001-01-19 2001-01-19 Secure content objects

Publications (2)

Publication Number Publication Date
DE60200616D1 DE60200616D1 (de) 2004-07-22
DE60200616T2 true DE60200616T2 (de) 2004-11-04

Family

ID=25075538

Family Applications (1)

Application Number Title Priority Date Filing Date
DE60200616T Expired - Lifetime DE60200616T2 (de) 2001-01-19 2002-01-14 Gesicherte Inhaltsobjekte

Country Status (5)

Country Link
US (1) US7496767B2 (de)
EP (1) EP1225500B1 (de)
JP (1) JP4336078B2 (de)
CA (1) CA2367778C (de)
DE (1) DE60200616T2 (de)

Families Citing this family (150)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7526795B2 (en) * 2001-03-27 2009-04-28 Micron Technology, Inc. Data security for digital data storage
JP3780880B2 (ja) * 2001-07-05 2006-05-31 ソニー株式会社 通信システム、サーバ装置、クライアント装置、連携処理提供方法、連携処理方法、プログラムおよび記録媒体
USRE41546E1 (en) 2001-12-12 2010-08-17 Klimenty Vainstein Method and system for managing security tiers
US7178033B1 (en) 2001-12-12 2007-02-13 Pss Systems, Inc. Method and apparatus for securing digital assets
US7260555B2 (en) 2001-12-12 2007-08-21 Guardian Data Storage, Llc Method and architecture for providing pervasive security to digital assets
US7565683B1 (en) 2001-12-12 2009-07-21 Weiqing Huang Method and system for implementing changes to security policies in a distributed security system
US8006280B1 (en) 2001-12-12 2011-08-23 Hildebrand Hal S Security system for generating keys from access rules in a decentralized manner and methods therefor
US10360545B2 (en) 2001-12-12 2019-07-23 Guardian Data Storage, Llc Method and apparatus for accessing secured electronic data off-line
US7921288B1 (en) 2001-12-12 2011-04-05 Hildebrand Hal S System and method for providing different levels of key security for controlling access to secured items
US10033700B2 (en) 2001-12-12 2018-07-24 Intellectual Ventures I Llc Dynamic evaluation of access rights
US7681034B1 (en) 2001-12-12 2010-03-16 Chang-Ping Lee Method and apparatus for securing electronic data
US7478418B2 (en) 2001-12-12 2009-01-13 Guardian Data Storage, Llc Guaranteed delivery of changes to security policies in a distributed system
US7631184B2 (en) 2002-05-14 2009-12-08 Nicholas Ryan System and method for imposing security on copies of secured items
US7562232B2 (en) 2001-12-12 2009-07-14 Patrick Zuili System and method for providing manageability to security information for secured items
US7380120B1 (en) 2001-12-12 2008-05-27 Guardian Data Storage, Llc Secured data format for access control
US7921450B1 (en) 2001-12-12 2011-04-05 Klimenty Vainstein Security system using indirect key generation from access rules and methods therefor
US7921284B1 (en) 2001-12-12 2011-04-05 Gary Mark Kinghorn Method and system for protecting electronic data in enterprise environment
US8065713B1 (en) 2001-12-12 2011-11-22 Klimenty Vainstein System and method for providing multi-location access management to secured items
US7930756B1 (en) 2001-12-12 2011-04-19 Crocker Steven Toye Multi-level cryptographic transformations for securing digital assets
US7950066B1 (en) 2001-12-21 2011-05-24 Guardian Data Storage, Llc Method and system for restricting use of a clipboard application
US8176334B2 (en) 2002-09-30 2012-05-08 Guardian Data Storage, Llc Document security system that permits external users to gain access to secured files
US7555650B1 (en) * 2002-03-20 2009-06-30 Thomson Licensing Techniques for reducing the computational cost of embedding information in digital representations
US20050071657A1 (en) * 2003-09-30 2005-03-31 Pss Systems, Inc. Method and system for securing digital assets using time-based security criteria
US8613102B2 (en) 2004-03-30 2013-12-17 Intellectual Ventures I Llc Method and system for providing document retention using cryptography
US7748045B2 (en) 2004-03-30 2010-06-29 Michael Frederick Kenrich Method and system for providing cryptographic document retention with off-line access
US7512810B1 (en) 2002-09-11 2009-03-31 Guardian Data Storage Llc Method and system for protecting encrypted files transmitted over a network
US7836310B1 (en) 2002-11-01 2010-11-16 Yevgeniy Gutnik Security system that uses indirect password-based encryption
US7792758B2 (en) * 2002-11-18 2010-09-07 Microsoft Corporation Substitution groups/inheritance for extensibility in authorization policy
US20040098277A1 (en) * 2002-11-18 2004-05-20 Microsoft Corporation Licenses that include fields identifying properties
US7577838B1 (en) 2002-12-20 2009-08-18 Alain Rossmann Hybrid systems for securing digital assets
US7890990B1 (en) 2002-12-20 2011-02-15 Klimenty Vainstein Security system with staging capabilities
US7039874B2 (en) * 2003-01-14 2006-05-02 Mirant Intellectual Asset Management And Marketing Interface for modifying data fields in a mark-up language environment
EP1656617A4 (de) * 2003-02-03 2008-09-10 Pfk Technologies Online-verfahren und system zur konvertierung einer beliebigen datei mit beliebigem format in eine pdf-datei für verschiedene anwendungen
JP4622208B2 (ja) * 2003-02-07 2011-02-02 ソニー株式会社 圧縮暗号および復号復元装置、圧縮暗号および復号復元方法
US7739583B2 (en) * 2003-03-31 2010-06-15 Ricoh Company, Ltd. Multimedia document sharing method and apparatus
KR20070046171A (ko) 2003-04-25 2007-05-02 애플 컴퓨터, 인코포레이티드 보안 네트워크를 통한 콘텐츠의 분배 방법 및 그 시스템
US7444668B2 (en) * 2003-05-29 2008-10-28 Freescale Semiconductor, Inc. Method and apparatus for determining access permission
US8707034B1 (en) 2003-05-30 2014-04-22 Intellectual Ventures I Llc Method and system for using remote headers to secure electronic files
CA2527668A1 (en) * 2003-06-02 2004-12-16 Liquid Machines, Inc. Managing data objects in dynamic, distributed and collaborative contexts
CN102509031B (zh) * 2003-06-23 2014-12-24 索尼电影娱乐公司 识别媒体来源的方法、加指纹的装置和系统
US7730543B1 (en) 2003-06-30 2010-06-01 Satyajit Nath Method and system for enabling users of a group shared across multiple file security systems to access secured files
US20050038788A1 (en) * 2003-08-14 2005-02-17 International Business Machines Corporation Annotation security to prevent the divulgence of sensitive information
US7555558B1 (en) 2003-08-15 2009-06-30 Michael Frederick Kenrich Method and system for fault-tolerant transfer of files across a network
EP1671235A4 (de) * 2003-09-23 2007-10-24 Amazon Com Inc Personalisierte durchsuchbare bibliothek mit hervorhebungsfähigkeiten und zugriff auf elektronische bilder von text auf der basis der benutzereigentümerschaft von entsprechendem physischem text
US7552334B2 (en) * 2003-09-24 2009-06-23 The Boeing Company System and method for presentation integrity
US7222312B2 (en) * 2003-09-26 2007-05-22 Ferguson John G Secure exchange of information in electronic design automation
US7353468B2 (en) * 2003-09-26 2008-04-01 Ferguson John G Secure exchange of information in electronic design automation
US7703140B2 (en) 2003-09-30 2010-04-20 Guardian Data Storage, Llc Method and system for securing digital assets using process-driven security policies
US8127366B2 (en) 2003-09-30 2012-02-28 Guardian Data Storage, Llc Method and apparatus for transitioning between states of security policies used to secure electronic documents
CN100399225C (zh) * 2003-11-11 2008-07-02 松下电器产业株式会社 用于判断信息的使用许可的方法以及使用该方法的内容分发系统
CN1321507C (zh) * 2004-04-26 2007-06-13 中国科学院成都计算机应用研究所 基于图形码子母印章族信息关联机制的软证件防伪方法
US7747938B2 (en) * 2004-05-04 2010-06-29 Oracle International Corporation Data insertion from a database into a fixed electronic template form
KR101169021B1 (ko) 2004-05-31 2012-07-26 삼성전자주식회사 디바이스와 휴대형 저장장치간의 권리객체 정보 전달 방법및 장치
US7478078B2 (en) * 2004-06-14 2009-01-13 Friendster, Inc. Method for sharing relationship information stored in a social network database with third party databases
US7788260B2 (en) * 2004-06-14 2010-08-31 Facebook, Inc. Ranking search results based on the frequency of clicks on the search results by members of a social network who are within a predetermined degree of separation
WO2006001718A1 (en) * 2004-06-24 2006-01-05 Geoffrey David Bird Security for computer software
US7707427B1 (en) 2004-07-19 2010-04-27 Michael Frederick Kenrich Multi-level file digests
US7827416B2 (en) * 2004-08-26 2010-11-02 Mitsubishi Denki Kabushiki Kaisha Key management apparatus, document security and editing system, and key management method
JP2006071695A (ja) * 2004-08-31 2006-03-16 Yamatake Corp 暗号化、復号化プログラム及び暗号システム。
US7996759B2 (en) * 2004-09-14 2011-08-09 Oracle Internatonal Corporation Data insertion from a database into a fixed electronic template form that supports overflow data
US7664751B2 (en) 2004-09-30 2010-02-16 Google Inc. Variable user interface based on document access privileges
GB0421774D0 (en) * 2004-09-30 2004-11-03 Ttp Communications Ltd Source code protection
US7603355B2 (en) * 2004-10-01 2009-10-13 Google Inc. Variably controlling access to content
JP2006180110A (ja) * 2004-12-21 2006-07-06 Nec Corp データ送信システム、データ送信方法、データ送信サーバ、データ受信端末、およびデータ送信プログラム
US8131647B2 (en) * 2005-01-19 2012-03-06 Amazon Technologies, Inc. Method and system for providing annotations of a digital work
US9275052B2 (en) * 2005-01-19 2016-03-01 Amazon Technologies, Inc. Providing annotations of a digital work
US7882565B2 (en) * 2005-09-02 2011-02-01 Microsoft Corporation Controlled access to objects or areas in an electronic document
US8467530B2 (en) * 2005-10-05 2013-06-18 Kabushiki Kaisha Toshiba System and method for encrypting and decrypting document reproductions
US20070174916A1 (en) * 2005-10-28 2007-07-26 Ching Peter N Method and apparatus for secure data transfer
JP2007124530A (ja) * 2005-10-31 2007-05-17 Konica Minolta Business Technologies Inc 復号化処理装置および復号化方法ならびに画像形成装置
US8352449B1 (en) 2006-03-29 2013-01-08 Amazon Technologies, Inc. Reader device content indexing
WO2007120772A2 (en) * 2006-04-14 2007-10-25 Advanced Solutions, Inc. Method, system, and computer-readable medium to maintain and/or purge files of a document management system
US20090222927A1 (en) * 2006-04-30 2009-09-03 Pikus Fedor G Concealment of Information in Electronic Design Automation
US8826023B1 (en) * 2006-06-30 2014-09-02 Symantec Operating Corporation System and method for securing access to hash-based storage systems
US9672533B1 (en) 2006-09-29 2017-06-06 Amazon Technologies, Inc. Acquisition of an item based on a catalog presentation of items
US8725565B1 (en) 2006-09-29 2014-05-13 Amazon Technologies, Inc. Expedited acquisition of a digital item following a sample presentation of the item
US8619982B2 (en) * 2006-10-11 2013-12-31 Bassilic Technologies Llc Method and system for secure distribution of selected content to be protected on an appliance specific basis
US20080092239A1 (en) 2006-10-11 2008-04-17 David H. Sitrick Method and system for secure distribution of selected content to be protected
US8719954B2 (en) 2006-10-11 2014-05-06 Bassilic Technologies Llc Method and system for secure distribution of selected content to be protected on an appliance-specific basis with definable permitted associated usage rights for the selected content
US7865817B2 (en) 2006-12-29 2011-01-04 Amazon Technologies, Inc. Invariant referencing in digital works
US7716224B2 (en) 2007-03-29 2010-05-11 Amazon Technologies, Inc. Search and indexing on a user device
US9665529B1 (en) 2007-03-29 2017-05-30 Amazon Technologies, Inc. Relative progress and event indicators
US20080243788A1 (en) * 2007-03-29 2008-10-02 Reztlaff James R Search of Multiple Content Sources on a User Device
US8726041B2 (en) * 2007-05-09 2014-05-13 Sony Corporation Methods and apparatus for generating a random number in one or more isolated processors
US8316302B2 (en) * 2007-05-11 2012-11-20 General Instrument Corporation Method and apparatus for annotating video content with metadata generated using speech recognition technology
US8341513B1 (en) 2007-05-21 2012-12-25 Amazon.Com Inc. Incremental updates of items
JP2008310447A (ja) * 2007-06-12 2008-12-25 Canon Inc ドキュメント管理装置、ドキュメント管理方法及びプログラム
US20080320600A1 (en) * 2007-06-21 2008-12-25 Matthew Pandiscia Secure document management system and apparatus
US20090158035A1 (en) * 2007-12-13 2009-06-18 Stultz John G Public Key Encryption For Web Browsers
JP5277660B2 (ja) * 2008-02-21 2013-08-28 富士通株式会社 画像暗号化装置および画像復号化装置、画像暗号化方法および画像復号化方法、並びに、画像暗号化プログラム
WO2009127492A1 (en) 2008-04-15 2009-10-22 International Business Machines Corporation A method and system for improved document access
US20090319884A1 (en) * 2008-06-23 2009-12-24 Brian Scott Amento Annotation based navigation of multimedia content
KR20100038536A (ko) * 2008-10-06 2010-04-15 주식회사 이베이지마켓 인터넷을 이용한 전자상거래에서 고객정보 활용시스템 및 그 방법
US9087032B1 (en) 2009-01-26 2015-07-21 Amazon Technologies, Inc. Aggregation of highlights
US8378979B2 (en) * 2009-01-27 2013-02-19 Amazon Technologies, Inc. Electronic device with haptic feedback
US8826455B2 (en) * 2009-02-17 2014-09-02 International Business Machines Corporation Method and apparatus for automated assignment of access permissions to users
US8832584B1 (en) 2009-03-31 2014-09-09 Amazon Technologies, Inc. Questions on highlighted passages
US8692763B1 (en) 2009-09-28 2014-04-08 John T. Kim Last screen rendering for electronic book reader
US8468345B2 (en) 2009-11-16 2013-06-18 Microsoft Corporation Containerless data for trustworthy computing and data services
US10348693B2 (en) * 2009-12-15 2019-07-09 Microsoft Technology Licensing, Llc Trustworthy extensible markup language for trustworthy computing and data services
US9537650B2 (en) 2009-12-15 2017-01-03 Microsoft Technology Licensing, Llc Verifiable trust for data through wrapper composition
JP2011204091A (ja) * 2010-03-26 2011-10-13 Brother Industries Ltd 情報処理装置、情報処理プログラム、目印情報管理方法及び配信システム
JP2011204090A (ja) * 2010-03-26 2011-10-13 Brother Industries Ltd 配信システム、情報処理装置、情報処理プログラム、及び目印情報管理方法
US9495322B1 (en) 2010-09-21 2016-11-15 Amazon Technologies, Inc. Cover display
US9608811B2 (en) 2010-11-18 2017-03-28 Hewlett-Packard Development Company, L.P. Managing access to a secure digital document
KR20120070829A (ko) * 2010-12-22 2012-07-02 삼성전자주식회사 분산 네트워크 시스템에서 컨텐츠의 댓글을 공유하고 이용하는 장치 및 방법
US9137014B2 (en) 2011-01-25 2015-09-15 Adobe Systems Incorporated Systems and methods for controlling electronic document use
US8611544B1 (en) * 2011-01-25 2013-12-17 Adobe Systems Incorporated Systems and methods for controlling electronic document use
US9213709B2 (en) * 2012-08-08 2015-12-15 Amazon Technologies, Inc. Archival data identification
US9767098B2 (en) 2012-08-08 2017-09-19 Amazon Technologies, Inc. Archival data storage system
US9563681B1 (en) 2012-08-08 2017-02-07 Amazon Technologies, Inc. Archival data flow management
US8799022B1 (en) 2011-05-04 2014-08-05 Strat ID GIC, Inc. Method and network for secure transactions
US8793503B2 (en) 2011-05-12 2014-07-29 Hewlett-Packard Development Company, L.P. Managing sequential access to secure content using an encrypted wrap
WO2012162128A1 (en) * 2011-05-20 2012-11-29 Citrix Systems, Inc. Securing encrypted virtual hard disks
US8984298B2 (en) 2011-07-27 2015-03-17 Hewlett-Packard Development Company, L.P. Managing access to a secure content-part of a PPCD using a key reset point
US9158741B1 (en) 2011-10-28 2015-10-13 Amazon Technologies, Inc. Indicators for navigating digital works
WO2013111284A1 (ja) 2012-01-25 2013-08-01 三菱電機株式会社 データ検索装置、データ検索方法、データ検索プログラム、データ登録装置、データ登録方法、データ登録プログラムおよび情報処理装置
US20130226817A1 (en) * 2012-02-23 2013-08-29 Harold W. Milton, Jr. Method for an inventor and patent agent to collaborate in preparaing a patent application
JP5966505B2 (ja) * 2012-03-28 2016-08-10 日本電気株式会社 サーバ装置、クライアント装置、リクエスト処理方法、サーバ応答処理方法、リクエスト処理プログラム、および、応答処理プログラム
US10120579B1 (en) 2012-08-08 2018-11-06 Amazon Technologies, Inc. Data storage management for sequentially written media
US9904788B2 (en) 2012-08-08 2018-02-27 Amazon Technologies, Inc. Redundant key management
US8959067B1 (en) 2012-08-08 2015-02-17 Amazon Technologies, Inc. Data storage inventory indexing
US9830111B1 (en) 2012-08-08 2017-11-28 Amazon Technologies, Inc. Data storage space management
US9779035B1 (en) 2012-08-08 2017-10-03 Amazon Technologies, Inc. Log-based data storage on sequentially written media
US8805793B2 (en) 2012-08-08 2014-08-12 Amazon Technologies, Inc. Data storage integrity validation
US9652487B1 (en) 2012-08-08 2017-05-16 Amazon Technologies, Inc. Programmable checksum calculations on data storage devices
US9225675B2 (en) 2012-08-08 2015-12-29 Amazon Technologies, Inc. Data storage application programming interface
US8955746B2 (en) 2012-09-27 2015-02-17 Intel Corporation Providing a locking technique for electronic displays
US9294267B2 (en) * 2012-11-16 2016-03-22 Deepak Kamath Method, system and program product for secure storage of content
US9275206B2 (en) * 2013-01-23 2016-03-01 International Business Machines Corporation Managing sensitive information
US10558581B1 (en) 2013-02-19 2020-02-11 Amazon Technologies, Inc. Systems and techniques for data recovery in a keymapless data storage system
CN104995621B (zh) 2013-02-25 2018-06-05 三菱电机株式会社 服务器装置以及隐匿检索系统
US20140304170A1 (en) * 2013-03-15 2014-10-09 First National Of Nebraska, Inc. Remote credit issuance system
US20160026614A1 (en) * 2014-07-24 2016-01-28 KCura Corporation Methods and apparatus for annotating documents
US20160188887A1 (en) * 2014-12-29 2016-06-30 Entefy Inc. System And Method Of Determining User-Defined Permissions Through A Network
US10528753B2 (en) 2015-06-26 2020-01-07 Hewlett-Packard Development Company, L.P. Portable document format file custom field
US11386060B1 (en) 2015-09-23 2022-07-12 Amazon Technologies, Inc. Techniques for verifiably processing data in distributed computing systems
US10068100B2 (en) 2016-01-20 2018-09-04 Microsoft Technology Licensing, Llc Painting content classifications onto document portions
CN107590366B (zh) * 2016-07-06 2019-11-15 福建福昕软件开发股份有限公司 一种pdf文档按页保护的方法
KR102666331B1 (ko) 2016-11-11 2024-05-17 삼성전자주식회사 메시지 암호화를 위한 방법 및 단말 장치
US10489600B2 (en) * 2017-04-28 2019-11-26 Dell Products L.P. Access path redirection for encrypted files
US10078759B1 (en) * 2018-01-19 2018-09-18 Griffin Group Global, LLC System and method for data sharing via a data structure having different-scheme-derived portions
US10068099B1 (en) * 2018-01-19 2018-09-04 Griffin Group Global, LLC System and method for providing a data structure having different-scheme-derived portions
US12086450B1 (en) 2018-09-26 2024-09-10 Amazon Technologies, Inc. Synchronous get copy for asynchronous storage
RU2732850C1 (ru) * 2019-04-29 2020-09-23 Общество с ограниченной ответственностью "Аби Продакшн" Классификация документов по уровням конфиденциальности
US11101979B2 (en) 2019-05-30 2021-08-24 Kira Inc. Method and system for creating word-level differential privacy using feature hashing techniques
CN116547663A (zh) * 2021-05-25 2023-08-04 微软技术许可有限责任公司 文档的内容管理
US11880479B2 (en) 2021-08-05 2024-01-23 Bank Of America Corporation Access control for updating documents in a digital document repository
US11790098B2 (en) 2021-08-05 2023-10-17 Bank Of America Corporation Digital document repository access control using encoded graphical codes
US20250158807A1 (en) * 2022-04-28 2025-05-15 Identikey, Llc Computerized systems and methods for a multi-faceted encryption platform

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0701220B1 (de) 1994-09-12 2001-07-04 Adobe Systems Inc. Verfahren und Anordnung zur Darstellung elektronischer Dokumente
US5740246A (en) * 1994-12-13 1998-04-14 Mitsubishi Corporation Crypt key system
US6011847A (en) * 1995-06-01 2000-01-04 Follendore, Iii; Roy D. Cryptographic access and labeling system
US5781785A (en) 1995-09-26 1998-07-14 Adobe Systems Inc Method and apparatus for providing an optimized document file of multiple pages
JP2000500887A (ja) 1995-09-25 2000-01-25 アドビ システムズ インコーポレイテッド 電子文書への最適アクセス
US5737599A (en) 1995-09-25 1998-04-07 Rowe; Edward R. Method and apparatus for downloading multi-page electronic documents with hint information
US5787175A (en) * 1995-10-23 1998-07-28 Novell, Inc. Method and apparatus for collaborative document control
US5953419A (en) 1996-05-06 1999-09-14 Symantec Corporation Cryptographic file labeling system for supporting secured access by multiple users
JPH10232878A (ja) * 1997-02-19 1998-09-02 Hitachi Ltd ドキュメント管理方法および装置
US6298446B1 (en) 1998-06-14 2001-10-02 Alchemedia Ltd. Method and system for copyright protection of digital images transmitted over networks
IL124895A0 (en) 1998-06-14 1999-01-26 Csafe Ltd Methods and apparatus for preventing reuse of text images and software transmitted via networks
US6289450B1 (en) 1999-05-28 2001-09-11 Authentica, Inc. Information security architecture for encrypting documents for remote access while maintaining access control
GB9913165D0 (en) 1999-06-08 1999-08-04 Secr Defence Access control in a web environment

Also Published As

Publication number Publication date
CA2367778A1 (en) 2002-07-19
JP2002278844A (ja) 2002-09-27
DE60200616D1 (de) 2004-07-22
EP1225500A3 (de) 2002-11-13
US7496767B2 (en) 2009-02-24
EP1225500B1 (de) 2004-06-16
CA2367778C (en) 2009-05-26
JP4336078B2 (ja) 2009-09-30
US20020099947A1 (en) 2002-07-25
EP1225500A2 (de) 2002-07-24

Similar Documents

Publication Publication Date Title
DE60200616T2 (de) Gesicherte Inhaltsobjekte
DE69736310T2 (de) Erzeugung und Verteilung digitaler Dokumente
DE112014000408B4 (de) Sicheres Speichern und Zugreifen auf digitale Artefakte
DE69926970T2 (de) Selbstschützende Dokumente
DE69714422T2 (de) Zugriffssteuerungs/verschlüsselungssystem
EP1410128A1 (de) Datenverarbeitungsvorrichtung
DE10084964B3 (de) Verfahren zum sicheren Speichern, Übertragen und Wiedergewinnen inhaltsadresssierbarer Informationen
DE69417268T4 (de) Verfahren zur elektronischen lizenzverteilung
DE602004006702T2 (de) Sichere Datenübertragung in einem vernetzten System der Bildverarbeitungsvorrichtungen
DE60114069T2 (de) System und Verfahren für den Schutz von Digitalwerken
DE10051571A1 (de) Selektive Datenverschlüsselung unter Verwendung von Stylesheet-Verarbeitung
DE60318633T2 (de) Verwaltung digitaler rechte
EP1228410A1 (de) Vorrichtung und verfahren zur geschützten ausgabe eines elektronischen dokuments über ein datenübertragungsnetz
EP3552141B1 (de) Server-computersystem zur bereitstellung von datensätzen
DE10020050A1 (de) Vorrichtung zum zugriffsgeschützten Behandeln elektronischer Daten
DE19717900A1 (de) Verfahren und Vorrichtung zur Verarbeitung eines Computer-Applets
EP2491513B1 (de) Verfahren und system zum bereitstellen von edrm-geschützten datenobjekten
DE60224297T2 (de) Vorrichtung und verfahren zum zugreifen auf material unter verwendung einer sicheren entitätsverriegelten registrierdatenbank
EP4432131A1 (de) Verfahren zum durchsuchen von sensiblen dokumenten und system hierzu
WO2015074745A1 (de) Verfahren, vorrichtungen und system zur online-datensicherung
WO1998026537A1 (de) Verfahren zur elektronisch gesicherten speicherung von daten in einer datenbank
EP1002262B1 (de) Vorrichtung und verfahren zur geschützten ausgabe elektronisch übertragener und gespeicherter dokumente
DE102008028881A1 (de) Verfahren und System zum prüfen und autorisieren von Inhalt
DE19932703C2 (de) Datenverarbeitungsvorrichtung
DE102005000796A1 (de) Tragbarer Datenträger mit Wasserzeichen-Funktionalität

Legal Events

Date Code Title Description
8364 No opposition during term of opposition