Inscribing the Blockchain with Digital Signatures of Signed RDF Graphs. a Worked Example of a Thought Experiment

Total Page:16

File Type:pdf, Size:1020Kb

Inscribing the Blockchain with Digital Signatures of Signed RDF Graphs. a Worked Example of a Thought Experiment Inscribing the blockchain with digital signatures of signed RDF graphs. A worked example of a thought experiment. The thing is, ad hoc hash signatures on the blockchain carry no information linking the hash to the resource for which the hash is acting as a digital signature. The onus is on the inscriber to associate the hash with the resource via a separate communications channel, either by publishing the association directly or making use of one of the third-party inscription services that also offer a resource persistence facility – you get to describe what is signed by the hash and they store the description in a database, usually for a fee, or you can upload the resource for storage, definitely for a fee. Riccardo Cassata has a couple of technical articles that expose more of the practical details: https://blog.eternitywall.it/2016/02/16/how-to-verify-notarization/ So what's published is a hexadecimal string indistinguishable from all the others which purportedly matches the hash of Riccardo's mugshot. But which? https://tineye.com/search/ed9f8022c9af413a350ec5758cda520937feab21 What’s needed is a means of creating an inscription that is not only a signature but also a resovable reference to the resource for which it acts as a digital signature. It would be even better if it were possible to create a signature of structured information, such as that describing a social media post – especially if we could leverage off’ve the W3’s recent Activity Streams standard: https://www.w3.org/TR/activitystreams-core/ An example taken from the above: { "@context": "https://www.w3.org/ns/activitystreams", "summary": "Martin created an image", "type": "Create", "actor": "http://www.test.example/martin", "object": "http://example.org/foo.jpg" } The format is JSON-LD: https://www.w3.org/TR/json-ld/ in which the LD resolves to “Linked Data” - broadly: RDF, as can be quickly demonstrated in Python by using the RDF processing library RDFLib: src = """{ "@context": "https://www.w3.org/ns/activitystreams", "summary": "Martin created an image", "type": "Create", "actor": "http://www.test.example/martin", "object": "http://example.org/foo.jpg" }""" def read_jsonld_write_n3(self): from rdflib import Dataset, URIRef ds = Dataset() g = ds.graph(URIRef('urn:uuid:310cd110-ba9b-4f45-910a-8f84b50b1315')) g.parse(data=src, format="json-ld") print(g.serialize(format="n3").decode('utf-8')) which gives: @prefix : <_:> . @prefix as: <https://www.w3.org/ns/activitystreams#> . [] a as:Create ; as:actor <http://www.test.example/martin> ; as:object <http://example.org/foo.jpg> ; as:summary "Martin created an image" . So far, so good. Now, the thing about an RDF graph is that one of its properties is of being a fully normalised database (https://en.wikipedia.org/wiki/Database_normalization) – that is to say that each RDF statement (composed of a “subject”, a “predicate”, and an object) is a self-contained single cell in the database. The subject identifies the row index, the predicate identifies the column and the object identifies the content of the cell (either a Literal value such as a decimal number or the subject of another statement). Serializing the above example using RDF’s “ntriples” format (https://en.wikipedia.org/wiki/N- Triples) shows the gory details (shrunk to fit): _:N25a8c132302d49ff800166b9f01d05af <https://www.w3.org/ns/activitystreams#actor> <http://www.test.example/martin> . _:N25a8c132302d49ff800166b9f01d05af <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <https://www.w3.org/ns/activitystreams#Create> . _:N25a8c132302d49ff800166b9f01d05af <https://www.w3.org/ns/activitystreams#summary> "Martin created an image" . _:N25a8c132302d49ff800166b9f01d05af <https://www.w3.org/ns/activitystreams#object> <http://example.org/foo.jpg> . The subject-as-index is evident, the way that column metadata is represented is also evident (the URLs resolve to formal OWL definitions of the column) and the values represented by the object are also evident (three URIs and one string literal). Here's the full spec from wikipedia: Each line of the file has either the form of a comment or of a statement: A statement consists of three parts, separated by whitespace: •the subject, •the predicate and •the object, and is terminated with a full stop. Subjects may take the form of a URI or a Blank node; predicates must be a URI; objects may be a URI, blank node or a literal. URIs are delimited with less-than and greater-than signs used as angle brackets. Blank nodes are represented by an alphanumeric string, prefixed with an underscore and colon ( _: ). Literals are represented as printable ASCII strings (with backslash escapes), delimited with double-quote characters, and optionally suffixed with a language or datatype indicator. Language indicators are an at sign followed by an RFC 3066 language tag; datatype indicators are a double-caret followed by a URI. Comments consist of a line beginning with a hash sign. Returning to the Python snippet (above), it is possible to iterate over all of the statements, printing out the Notation3 serialisation for each of subject, predicate and object: for (s, p, o) in list(g.triples((None, None, None))): print("{} {} {} .".format(s.n3(), p.n3(), o.n3())) _:N4244c9f83b7642d68d0de95b5318261f <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <https://www.w3.org/ns/activitystreams#Create> . _:N4244c9f83b7642d68d0de95b5318261f <https://www.w3.org/ns/activitystreams#object> <http://example.org/foo.jpg> . _:N4244c9f83b7642d68d0de95b5318261f <https://www.w3.org/ns/activitystreams#summary> "Martin created an image" . _:N4244c9f83b7642d68d0de95b5318261f <https://www.w3.org/ns/activitystreams#actor> <http://www.test.example/martin> . Essentially the same output, different order (immaterial to reading the data back in). There's a slight wrinkle with the n3 and the ntriples serialisations shown above - the index numbers obviously change with each rendering. That's okay, it's supposed to be that way because the W3C's example doesn't assign an identifer to the collection of statements that form the example, so the statements become “blank nodes” in the graph and the system creates “stand-in” identifiers that fill that role for the (in essence, dissociated) statements. From https://www.w3.org/TR/rdf11- concepts/#section-blank-nodes: Blank node identifiers are local identifiers that are used in some concrete RDF syntaxes or RDF store implementations. They are always locally scoped to the file or RDF store, and are not persistent or portable identifiers for blank nodes. Blank node identifiers are not part of the RDF abstract syntax, but are entirely dependent on the concrete syntax or implementation. The syntactic restrictions on blank node identifiers, if any, therefore also depend on the concrete RDF syntax or implementation. Implementations that handle blank node identifiers in concrete syntaxes need to be careful not to create the same blank node from multiple occurrences of the same blank node identifier except in situations where this is supported by the syntax. Blank nodes caused some problems when introduced, prompting Pat Hayes to author this rather fine description of the graph abstract syntax: https://www.ihmc.us/users/phayes/RDFGraphSyntax.html in which he describes the role that blank nodes play in the mathematics underpinning the abstract syntax - again, included for completeness Where I'm headed is this - render the graph as ntriples, i.e. a sequence of strings each separated by a CR, e.g.: "_:N4244c9f83b7642d68d0de95b5318261f <https://www.w3.org/ns/activitystreams#actor> <http://www.test.example/martin> ." and compute the sha256 hash of each triple-rendered-as-a-line-of-chars, the resulting hash being a chunk of binary that is usually rendered as hexadecimal string (i.e. the bits rendered as base 16) but is also valid when rendered as base 10. Simply adding the base 10 integer (or the base 16 hexadecimal, whatever suits) to a running total will create a sum of hashes that is independent of the order of serialization (addition being a commutative operation) def sign_statements(self): from rdflib import Dataset, URIRef ds = Dataset() g = ds.graph(URIRef('urn:uuid:310cd110-ba9b-4f45-910a-8f84b50b1315')) g.parse(data=src, format="json-ld") hashtotal = 0 for triple in g.serialize(format='nt')[:-2].split(b'\n'): c = sha256(triple) s = int.from_bytes(c.digest(), sys.byteorder) hashtotal += s print(hex(hashtotal)) # 0xcb5390d579ad1f978bdb9ffdadeab9adaf53b7e111329552562b7b16cb6eb6454 The result is a unique digital signature of the graph/collection of statements. This signature can be inscribed on the blockchain and if the graph is posted for inclusion in a publicly-accessible store, its digital signature can be attached to the posting thereby enabling the graph to be retrieved by using the digital signature as an index (i.e. get me the graph with this signature). Unfortunately, repeated signings of the same serialized RDF graph will be different due to the different bnode identities generated for each fresh serialization and this of course renders digital signatures pointless because all signature checks will fail except for the original serialisation. What's been somewhat lost in the mists of time is the original work of ex-Labs colleague Jeremy Carrol on the maths and logic for digital signatures of RDF graphs and published at ISWC 2003: https://link.springer.com/chapter/10.1007/978-3-540-39718-2_24 The author's copy is still available http://www.hpl.hp.com/techreports/2003/HPL-2003-142.pdf This is top-drawer stuff - Part of the Lecture Notes in Computer Science book series (LNCS, volume 2870) - and the references offer some exalted company. Snippets: In this paper, we concentrate on creating canonical representations of RDF graphs in N-Triples (which is what the Python above is doing) To create a canonical N-Triples file for an RDF graph without any blank nodes we can simply reorder the lines in the N-Triples document to be in lexicographic order.
Recommended publications
  • A Comparative Evaluation of Geospatial Semantic Web Frameworks for Cultural Heritage
    heritage Article A Comparative Evaluation of Geospatial Semantic Web Frameworks for Cultural Heritage Ikrom Nishanbaev 1,* , Erik Champion 1,2,3 and David A. McMeekin 4,5 1 School of Media, Creative Arts, and Social Inquiry, Curtin University, Perth, WA 6845, Australia; [email protected] 2 Honorary Research Professor, CDHR, Sir Roland Wilson Building, 120 McCoy Circuit, Acton 2601, Australia 3 Honorary Research Fellow, School of Social Sciences, FABLE, University of Western Australia, 35 Stirling Highway, Perth, WA 6907, Australia 4 School of Earth and Planetary Sciences, Curtin University, Perth, WA 6845, Australia; [email protected] 5 School of Electrical Engineering, Computing and Mathematical Sciences, Curtin University, Perth, WA 6845, Australia * Correspondence: [email protected] Received: 14 July 2020; Accepted: 4 August 2020; Published: 12 August 2020 Abstract: Recently, many Resource Description Framework (RDF) data generation tools have been developed to convert geospatial and non-geospatial data into RDF data. Furthermore, there are several interlinking frameworks that find semantically equivalent geospatial resources in related RDF data sources. However, many existing Linked Open Data sources are currently sparsely interlinked. Also, many RDF generation and interlinking frameworks require a solid knowledge of Semantic Web and Geospatial Semantic Web concepts to successfully deploy them. This article comparatively evaluates features and functionality of the current state-of-the-art geospatial RDF generation tools and interlinking frameworks. This evaluation is specifically performed for cultural heritage researchers and professionals who have limited expertise in computer programming. Hence, a set of criteria has been defined to facilitate the selection of tools and frameworks.
    [Show full text]
  • V a Lida T in G R D F Da
    Series ISSN: 2160-4711 LABRA GAYO • ET AL GAYO LABRA Series Editors: Ying Ding, Indiana University Paul Groth, Elsevier Labs Validating RDF Data Jose Emilio Labra Gayo, University of Oviedo Eric Prud’hommeaux, W3C/MIT and Micelio Iovka Boneva, University of Lille Dimitris Kontokostas, University of Leipzig VALIDATING RDF DATA This book describes two technologies for RDF validation: Shape Expressions (ShEx) and Shapes Constraint Language (SHACL), the rationales for their designs, a comparison of the two, and some example applications. RDF and Linked Data have broad applicability across many fields, from aircraft manufacturing to zoology. Requirements for detecting bad data differ across communities, fields, and tasks, but nearly all involve some form of data validation. This book introduces data validation and describes its practical use in day-to-day data exchange. The Semantic Web offers a bold, new take on how to organize, distribute, index, and share data. Using Web addresses (URIs) as identifiers for data elements enables the construction of distributed databases on a global scale. Like the Web, the Semantic Web is heralded as an information revolution, and also like the Web, it is encumbered by data quality issues. The quality of Semantic Web data is compromised by the lack of resources for data curation, for maintenance, and for developing globally applicable data models. At the enterprise scale, these problems have conventional solutions. Master data management provides an enterprise-wide vocabulary, while constraint languages capture and enforce data structures. Filling a need long recognized by Semantic Web users, shapes languages provide models and vocabularies for expressing such structural constraints.
    [Show full text]
  • Design and Analysis of a Query Processor for Brick
    Design and Analysis of a Query Processor for Brick Gabe Fierro David E. Culler UC Berkeley UC Berkeley [email protected] [email protected] ABSTRACT to increase energy efficiency and comfort, as well as provide mon- Brick is a recently proposed metadata schema and ontology for de- itoring and fault diagnosis. While many such applications exist, scribing building components and the relationships between them. the lack of a common description scheme, i.e. metadata, limits the It represents buildings as directed labeled graphs using the RDF portability of these applications across the heterogeneous building data model. Using the SPARQL query language, building-agnostic stock. applications query a Brick graph to discover the set of resources While several efforts address the heterogeneity of building meta- and relationships they require to operate. Latency-sensitive ap- data, these generally fail to capture the relationships and entities plications, such as user interfaces, demand response and model- that are required by real-world applications [8]. This set of re- predictive control, require fast queries — conventionally less than quirements drove the development of Brick [6], a recently proposed 100ms. metadata standard for describing the set of entities and relationships We benchmark a set of popular open-source and commercial within a building. Brick succeeds along three metrics: completeness SPARQL databases against three real Brick models using seven (captures 98% of building management system data points across six application queries and find that none of them meet this perfor- real buildings), expressiveness (can capture all important relation- mance target. This lack of performance can be attributed to design ships) and usability (represents this information in an easy-to-use decisions that optimize for queries over large graphs consisting manner).
    [Show full text]
  • Semantics Developer's Guide
    MarkLogic Server Semantic Graph Developer’s Guide 2 MarkLogic 10 May, 2019 Last Revised: 10.0-8, October, 2021 Copyright © 2021 MarkLogic Corporation. All rights reserved. MarkLogic Server MarkLogic 10—May, 2019 Semantic Graph Developer’s Guide—Page 2 MarkLogic Server Table of Contents Table of Contents Semantic Graph Developer’s Guide 1.0 Introduction to Semantic Graphs in MarkLogic ..........................................11 1.1 Terminology ..........................................................................................................12 1.2 Linked Open Data .................................................................................................13 1.3 RDF Implementation in MarkLogic .....................................................................14 1.3.1 Using RDF in MarkLogic .........................................................................15 1.3.1.1 Storing RDF Triples in MarkLogic ...........................................17 1.3.1.2 Querying Triples .......................................................................18 1.3.2 RDF Data Model .......................................................................................20 1.3.3 Blank Node Identifiers ..............................................................................21 1.3.4 RDF Datatypes ..........................................................................................21 1.3.5 IRIs and Prefixes .......................................................................................22 1.3.5.1 IRIs ............................................................................................22
    [Show full text]
  • Seamless Interoperability and Data Portability in the Social Web for Facilitating an Open and Heterogeneous Online Social Network Federation
    Seamless Interoperability and Data Portability in the Social Web for Facilitating an Open and Heterogeneous Online Social Network Federation vorgelegt von Dipl.-Inform. Sebastian Jürg Göndör geb. in Duisburg von der Fakultät IV – Elektrotechnik und Informatik der Technischen Universität Berlin zur Erlangung des akademischen Grades Doktor der Ingenieurwissenschaften - Dr.-Ing. - genehmigte Dissertation Promotionsausschuss: Vorsitzender: Prof. Dr. Thomas Magedanz Gutachter: Prof. Dr. Axel Küpper Gutachter: Prof. Dr. Ulrik Schroeder Gutachter: Prof. Dr. Maurizio Marchese Tag der wissenschaftlichen Aussprache: 6. Juni 2018 Berlin 2018 iii A Bill of Rights for Users of the Social Web Authored by Joseph Smarr, Marc Canter, Robert Scoble, and Michael Arrington1 September 4, 2007 Preamble: There are already many who support the ideas laid out in this Bill of Rights, but we are actively seeking to grow the roster of those publicly backing the principles and approaches it outlines. That said, this Bill of Rights is not a document “carved in stone” (or written on paper). It is a blog post, and it is intended to spur conversation and debate, which will naturally lead to tweaks of the language. So, let’s get the dialogue going and get as many of the major stakeholders on board as we can! A Bill of Rights for Users of the Social Web We publicly assert that all users of the social web are entitled to certain fundamental rights, specifically: Ownership of their own personal information, including: • their own profile data • the list of people they are connected to • the activity stream of content they create; • Control of whether and how such personal information is shared with others; and • Freedom to grant persistent access to their personal information to trusted external sites.
    [Show full text]
  • Rdfa in XHTML: Syntax and Processing Rdfa in XHTML: Syntax and Processing
    RDFa in XHTML: Syntax and Processing RDFa in XHTML: Syntax and Processing RDFa in XHTML: Syntax and Processing A collection of attributes and processing rules for extending XHTML to support RDF W3C Recommendation 14 October 2008 This version: http://www.w3.org/TR/2008/REC-rdfa-syntax-20081014 Latest version: http://www.w3.org/TR/rdfa-syntax Previous version: http://www.w3.org/TR/2008/PR-rdfa-syntax-20080904 Diff from previous version: rdfa-syntax-diff.html Editors: Ben Adida, Creative Commons [email protected] Mark Birbeck, webBackplane [email protected] Shane McCarron, Applied Testing and Technology, Inc. [email protected] Steven Pemberton, CWI Please refer to the errata for this document, which may include some normative corrections. This document is also available in these non-normative formats: PostScript version, PDF version, ZIP archive, and Gzip’d TAR archive. The English version of this specification is the only normative version. Non-normative translations may also be available. Copyright © 2007-2008 W3C® (MIT, ERCIM, Keio), All Rights Reserved. W3C liability, trademark and document use rules apply. Abstract The current Web is primarily made up of an enormous number of documents that have been created using HTML. These documents contain significant amounts of structured data, which is largely unavailable to tools and applications. When publishers can express this data more completely, and when tools can read it, a new world of user functionality becomes available, letting users transfer structured data between applications and web sites, and allowing browsing applications to improve the user experience: an event on a web page can be directly imported - 1 - How to Read this Document RDFa in XHTML: Syntax and Processing into a user’s desktop calendar; a license on a document can be detected so that users can be informed of their rights automatically; a photo’s creator, camera setting information, resolution, location and topic can be published as easily as the original photo itself, enabling structured search and sharing.
    [Show full text]
  • Bibliography of Erik Wilde
    dretbiblio dretbiblio Erik Wilde's Bibliography References [1] AFIPS Fall Joint Computer Conference, San Francisco, California, December 1968. [2] Seventeenth IEEE Conference on Computer Communication Networks, Washington, D.C., 1978. [3] ACM SIGACT-SIGMOD Symposium on Principles of Database Systems, Los Angeles, Cal- ifornia, March 1982. ACM Press. [4] First Conference on Computer-Supported Cooperative Work, 1986. [5] 1987 ACM Conference on Hypertext, Chapel Hill, North Carolina, November 1987. ACM Press. [6] 18th IEEE International Symposium on Fault-Tolerant Computing, Tokyo, Japan, 1988. IEEE Computer Society Press. [7] Conference on Computer-Supported Cooperative Work, Portland, Oregon, 1988. ACM Press. [8] Conference on Office Information Systems, Palo Alto, California, March 1988. [9] 1989 ACM Conference on Hypertext, Pittsburgh, Pennsylvania, November 1989. ACM Press. [10] UNIX | The Legend Evolves. Summer 1990 UKUUG Conference, Buntingford, UK, 1990. UKUUG. [11] Fourth ACM Symposium on User Interface Software and Technology, Hilton Head, South Carolina, November 1991. [12] GLOBECOM'91 Conference, Phoenix, Arizona, 1991. IEEE Computer Society Press. [13] IEEE INFOCOM '91 Conference on Computer Communications, Bal Harbour, Florida, 1991. IEEE Computer Society Press. [14] IEEE International Conference on Communications, Denver, Colorado, June 1991. [15] International Workshop on CSCW, Berlin, Germany, April 1991. [16] Third ACM Conference on Hypertext, San Antonio, Texas, December 1991. ACM Press. [17] 11th Symposium on Reliable Distributed Systems, Houston, Texas, 1992. IEEE Computer Society Press. [18] 3rd Joint European Networking Conference, Innsbruck, Austria, May 1992. [19] Fourth ACM Conference on Hypertext, Milano, Italy, November 1992. ACM Press. [20] GLOBECOM'92 Conference, Orlando, Florida, December 1992. IEEE Computer Society Press. http://github.com/dret/biblio (August 29, 2018) 1 dretbiblio [21] IEEE INFOCOM '92 Conference on Computer Communications, Florence, Italy, 1992.
    [Show full text]
  • Diplomová Práce Prostředky Sémantického Webu V Uživatelském
    Západočeská univerzita v Plzni Fakulta aplikovaných věd Katedra informatiky a výpočetní techniky Diplomová práce Prostředky sémantického webu v uživatelském rozhraní pro správu elektrofyziologických experimentů Plzeň 2020 Jan Palcút Místo této strany bude zadání práce. Prohlášení Prohlašuji, že jsem diplomovou práci vypracoval samostatně a výhradně s po- užitím citovaných pramenů. V Plzni dne 9. srpna 2020 Jan Palcút Poděkování Tímto bych chtěl poděkovat vedoucímu diplomové práce panu Ing. Romanovi Moučkovi, Ph.D. za cenné rady, připomínky a odborné vedení této práce. Abstract The work aims to verify the applicability of technologies and languages of the semantic web in creating an application for the management of electro- physiological experiments. The application will allow us to manage multiple experiments of the same characteristic type at once, display their metadata, and search in them. The theoretical part of the work describes the semantic web, selected data standards for electrophysiology, and the neuroinformat- ics laboratory of the University of West Bohemia in Pilsen. The analysis and design of the application describe requirements’ specifications and se- lect the data standard and technologies to implement the solution. Part of the proposal is also a description of the solution of writing metadata of experiments into the newly designed structure. Based on the design, the ap- plication for the selected data standard is implemented. The functionality of the application was verified on experiments of various types. Abstrakt Cílem této práce je ověření použitelnosti technologií a jazyků sémantického webu při tvorbě aplikace pro správu elektrofyziologických experimentů. Apli- kace umožní spravovat více experimentů stejného charakteristického typu najednou, zobrazovat jejich metadata a vyhledávat v nich.
    [Show full text]
  • North Korea Purloins Russian Technology to Add Teeth to Its Military Caliber
    NEW DELHI TIMES R.N.I. No 53449/91 DL-SW-01/4124/17-19 (Monday/Tuesday same week) (Published Every Monday) New Delhi Page 16 Rs. 7.00 22 - 28 July 2019 Vol - 29 No. 25 Email : [email protected] Founder : Dr. Govind Narain Srivastava ISSN -2349-1221 Modi irradiates Christian victims of loopholed Defence Muslim oppression Procurement rot in Thailand With the world at large progressing with positive The country code of 66 on the incoming call speed and the concept of globalization seeing was unfamiliar, as was the number. its frutation with the spread of co-operative Usually I ignore such calls as they invariably and collaborative networks worldwide; among are threats from the worldwide network of the civic, economic and political spheres, the my fans or duct-cleaning companies worried defence sector of any nation in the modern about the air I breathe. But on that day, I took era becomes the top-priority... a chance. The other option... By Dr. Ankit Srivastava Page 3 By Tarek Fatah Page 2 North Korea purloins Russian technology to add teeth to its Military Caliber By NDT Special Bureau Page 2 Babies growing up with animals, Belief aids to climb the ladder Iran and its prospects for build stronger immune system of Success Democracy I meet so many mothers who won’t let their children walk All of us are on a daily struggle to be successful so as to be More than 80 million Iranians at home or living across the barefoot in the house or the park, won’t let them touch able to establish ourselves in society.
    [Show full text]
  • Protokolle Im Fediverse
    Protokolle im Fediverse Jens Lechtenbörger Oktober 2018 1 Einleitung Wie bereits diskutiert setzen Dezentralisierung und Föderation gemeinsame Standards voraus. Während das Fediverse als Federated Universe im engeren Sinne Funktionalitäten von Social Media basierend auf freier Software und föderierten Servern umfasst, gehören im weiteren Sinne auch andere Formen von Kommunikation dazu. Zu Protokollen, die mir besonders vielversprechend erscheinen, geben die folgenden Abschnitte weitere Informationen bzw. führen zu externen Quellen. 2 ActivityPub Als prominenter Vertreter von Fediverse-Protokollen im engeren Sinne wurde im Januar 2018 ActivityPub vom World Wide Web Consortium (W3C) stan- dardisiert. Der Implementation Report dokumentiert den Stand der Umset- zung von ActivityPub durch diverse Anwendungen. Lesen Sie die ActivityPub-Spezikation so weit, dass Sie folgende Fragen beantworten können: Was sind Actors, Objects und Activities? Welche Rollen spielen Inbox und Outbox für die Kommunikation? 3 XMPP Das klassische Beispiel föderierter Internet-Dienste ist die E-Mail für asyn- chrone Kommunikation (auch für Gruppenkommunikation, mit Anhängen aller Art). Für synchrone Echtzeit-Chats bietet das Extensible Messaging and Pres- ence Protocol (XMPP) einen auf dem Austausch von XML-Nachrichten basierenden oenen Standard, der aus dem um die Jahrtausendwende en- twickelten Jabber hervorgegangen ist. Heute wird XMPP nicht nur in 1 Messengern genutzt, sondern auch als Middleware im Internet der Dinge. XMPP-Server bilden analog zu E-Mail-Servern eine Föderation, so dass Be- nutzer unterschiedlicher, dezentral administrierter Server miteinander kom- munizieren können. Die Kommunikation setzt sogenannte Jabber IDs (JIDs) voraus, die zunächst wie E-Mail-Adressen aussehen ([email protected]), aber darüber hinaus auch Client-Anwendungen auf unterschiedlichen Geräten identi- zieren können ([email protected]/work-pc).
    [Show full text]
  • SWAD-Europe Deliverable 3.11: Developer Workshop Report 4 - Workshop on Semantic Web Storage and Retrieval
    Sat Jun 05 2004 22:31:44 Europe/London SWAD-Europe Deliverable 3.11: Developer Workshop Report 4 - Workshop on Semantic Web Storage and Retrieval Project name: Semantic Web Advanced Development for Europe (SWAD-Europe) Project Number: IST-2001-34732 Workpackage name: 3 Dissemination and Implementation Workpackage description: ☞http://www.w3.org/2001/sw/Europe/plan/workpackages/live/esw-wp-3 Deliverable title: 3.11 Developer Workshop Report 4 URI: ☞http://www.w3.org/2001/sw/Europe/reports/dev_workshop_report_4/ Author: Dave Beckett Abstract: This report summarises the fourth SWAD-Europe developer ☞Workshop on Semantic Web Storage and Retrieval which was held 13-14 November 2003 at Vrije Universiteit, Amsterdam, Netherlands and attended by 26 semantic web developers from Europe and the USA discussing practical aspects of developing and deploying semantic web storage and retrieval systems. STATUS: Completed 2004-01-12, updated 2004-01-13 with workshop evaluation details. Contents 1. ☞Introduction 2. ☞Summary 3. ☞Evaluation 4. ☞Outcomes 5. ☞Minutes 6. ☞Attendees 1. Introduction The workshop aimed to discuss: Implementation techniques and problems met Storage models and database schemas Aggregation and tracking provenance Using RDBMSes for semantic web storage Discussion of useful test data and queries for comparisons. Implementing RDF datatypes, entailment (from ☞RDF Semantics) 2. Summary The fourth SWAD-Europe workshop was on ☞Semantic Web Storage and Retrieval and held at Vrije Universiteit, Amsterdam, Netherlands organised by ☞Dave Beckett (ILRT) and hosted by ☞Frank van Harmelen from VU. The workshop participants were mostly technical developers and researchers from a ☞variety of Page 1 Sat Jun 05 2004 22:31:45 Europe/London organisations mostly in industry and education from Greece, UK, Slovenija, The Netherlands and Italy in Europe and from the United States.
    [Show full text]
  • 2.3 Blockchain
    POLITECNICO DI TORINO Corso di Laurea Magistrale in Ingegneria Informatica - Data Science Tesi di Laurea Magistrale Supporting the portability of profiles using the blockchain in the Mastodon social network Relatore Candidato prof. Giovanni Squillero Alessandra Rossaro Anno Accademico 2018-2019 École polytechnique de Louvain Supporting the portability of profiles using the blockchain in the Mastodon social network Authors: Alessandra ROSSARO, Corentin SURQUIN Supervisors: Etienne RIVIERE, Ramin SADRE Readers: Lionel DRICOT, Axel LEGAY, Giovanni SQUILLERO Academic year 2018–2019 Master [120] in Computer Science Acknowledgements We would like to thank anyone who made the writing of this thesis possible, directly or indirectly. First of all, we would like to thank our supervisors, Prof. Etienne Riviere and Prof. Ramin Sadre for their continous support and advice during the year. We would never have gone this far without them. Secondly, we thank Lionel Dricot, Prof. Axel Legay and Prof. Giovanni Squillero for accepting to be the readers of this thesis. Alessandra First of all, I would like to thank my family, my parents Claudia and Alberto, my brother Stefano and my sister Eleonora, that from the beginning of my studies believed in me, every time urging me to give more and sustaining me each time that I had difficulties. They are my strength and I feel really lucky to have them in my life. Another thanks is to my friends, to Soraya, Beatrice, Sinto and Stefano and especially to Matteo and Edoardo that each time that I needed, remember me to believe in myself and don’t give up. Thank you, sincerely! I would like to thank also my partner, Corentin, because we were a great team, sometimes with some misunderstandings, but I appreciated to work at this project with him! Corentin I must express my deep gratitude to my family and friends for their moral support.
    [Show full text]