SlideShare a Scribd company logo
Secure Distributed Open  Social  Networks Henry Story Senior Staff Engineer Semantic Web Evangelist http://blogs.sun.com/bblfish Sun Microsystem photo by prakharevich
Overview Description of the Social Networking problem Why this is no longer “ somebody else's problem ”: a hyper address book The functioning of the Address Book How to add distributed decentralized security A final thought: how this changes the desktop paradigm
Too many Social Networks? ...are there too many web servers?
The Problem: data silos SN don't link up: Information can't be moved easily  (see:  Data Portability the video ) Users have to create and maintain accounts on each SN they have friends on, or loose contacts Growing number of social networks (SN) because there are a lot of $$$ to be made because there are many needs there will never be one SN to rule them all.
Scoble gets thrown off Facebook! In early January 2008 Scoble, the developer who got blogging going at Microsoft, got thrown off Facebook for extracting information too agressively from his social network on Facebook. This is the Facebook who asked users for their gmail password to extract all their contacts from their email! see  his video
An (evolving) Social Graph relates many different things people to information about them name address phone number relations between people:  who knows who who worked with who relations with external things blogs companies
Two social Networks how can Tim and Henry link up ?
Solution 1: minimal naïve approach but within each SN queries are very limited: e.g.: in Network A, nobody can query for Tim's address
Solution 2: copy some information how to copy the data? Data Portability? (DRY principle?) how to keep the relations up to date?! Twice as much work. queries still limited: what are the friends of Tim's friends?
Solution 3: copy all technically impossible: does not scale as networks grow in size and number:  how to keep information up to date? amount of synchronization grows exponentially politically impossible: S.N. are very protective of their data + privacy issues + oligopoly issues
The pull to one network Due to  Metcalf's law : the larger the network the more valuable it becomes. But why does it have to be in one database?  Because each database has its own LOCAL POINTER mechanism, just like every Java virtual Machine has a local pointer mechanism. You cannot easily point from one JVM/DB into another. What if we had one big world wide database? we would need universal names for things. URIs?
The Solution: linking across social networks requires a global namespace
The Solution: a closer look objects and documents have URLs Relations also have URLs:  foaf:knows ,  foaf:name The Self Describing Web
A hyperdata Address Book
1. first launch of jnlp
2. drag and drop a foaf file url
3. click on the first name in the first column
4. explore the second column
5. press the space bar on the keyboard...
6. positioning with NASA's World Wind
7.  Sun Intranet Foaf experiment
Foaf: Friend of a Friend
Advantages  Open Social Network – no data silos Information about people is always up to date  (an HTTP GET away) this could be used to keep up to date on where friends are It is easy to publish a foaf file: one click away Drag and drop friends security: some ideas at the end of the talk
Two foaf files on the internet
Well, what we really have is
Well, what we really have is in graph view
The graphs inside the Beatnik Database
Networked graphs: A merged view
SPARQL: semantic query lang PREFIX foaf: <http://xmlns.com/foaf/0.1/> SELECT ?p WHERE { ?p foaf:knows ?q . }
SPARQL construct query PREFIX xsd: <http://www.w3.org/2001/XMLSchema#> CONSTRUCT { ?subject  ?relation ?object . } WHERE { GRAPH ?g {  ?subject  ?relation ?object . } ?g :fetched-at ?date . FILTER { ?date < “2008-03-30”^^xsd:date } }  This CONSTRUCT query can be used to construct a graph that is a union of all graphs that were fetched after march 2008.
Networked Graphs: SPARQL Rules PREFIX owl: < http://www.w3.org/2002/07/owl #> CONSTRUCT { ?b owl:sameAs ?a . }  WHERE {  ?a owl:sameAs ?b .  FILTER ( ! SAMETERM(?a , ?b) )  }  CONSTRUCT queries can also be thought of as rules. Here is the well known rule of symmetry of identity. Simon Schenk's  Networked Graphs  can have a number of rules expressed as SPARQL CONSTRUCT queries, which works nicely with the Sesame semantic engine.
merging identities PREFIX owl: < http://www.w3.org/2002/07/owl #> PREFIX foaf: < http://xmlns.com/foaf/0.1/ > CONSTRUCT { ?a owl:sameAs ?b .  }  WHERE {  ?a foaf:homepage ?pg . ?b foaf:homepage ?pg . FILTER ( ! SAMETERM (?a , ?b))  }  The rule that if we have two names for people that have the same homepage, then the two names refer to the same person. There are more general ways of stating this btw.
Security: 3 approaches Simple Firewall based security OpenId based Security Even simpler SSL based security
Firewall protection
Protecting resources with OpenId
Protected Resources :me a foaf:Person; foaf:name “Henry Story”; rdfs:seeAlso  </protected/henry>  . </protected/henry> openid:login </openidAuth.cgi> . This is trying to say that in order to access the protected resource one needs to login with openid first. This is a sketch of such a vocabulary
OpenId continued
foaf+ssl: even simpler
Protected Resources :me a foaf:Person; foaf:name “Henry Story”; rdfs:seeAlso  <https://.../protected/henry>  . notice the seeAlso is now an https url
foaf+ssl: even simpler
X509 certificate Certificate: Data: Version: 3 (0x2) Serial Number: 1 (0x1) Signature Algorithm: dsaWithSHA1 Issuer: O=OpenPGP to X.509 Bridge, OU=RDFauth Test, CN=Henry Story <henry.story@bblfish.net> Validity Not Before: Dec 12 21:49:50 2007 GMT Not After : Dec  6 21:49:50 2008 GMT Subject: O=OpenPGP to X.509 Bridge, OU=RDFauth Test, CN=Henry Story <henry.story@bblfish.net> Subject Public Key Info: Public Key Algorithm: dsaEncryption DSA Public Key: pub:  33:41:...
X509 certificate with id X509v3 extensions: X509v3 Basic Constraints: critical CA:TRUE X509v3 Key Usage: critical Digital Signature, Non Repudiation, Key Encipherment, Key Agreement, Certificate Sign Netscape Cert Type:  SSL Client, S/MIME X509v3 Subject Key Identifier:  45:DC:F9:10:33:C0:45:28:EA:90:6E:83:73:06:6F:51:21:89:13:DD X509v3 Authority Key Identifier:  keyid:45:DC:F9:10:33:C0:45:28:EA:90:6E:83:73:06:6F:51:21:89:13:DD X509v3 Subject Alternative Name:  URI:http://bblfish.net/people/henry/card#me Signature Algorithm: dsaWithSHA1 30:2c:02:14:78:69:1e:4f:7d:37:36:a5:8f:37:30:58:18:5a: f6:10:e9:13:a4:ec:02:14:03:93:42:3b:c0:d4:33:63:ae:2f: eb:8c:11:08:1c:aa:93:7d:71:01
Very Simple Authentication
The Semantic Desktop
some references Getting Started With RDF The Semantic Address Book web site
Ad

Recommended

Oscon 2008 Open Micro Blogging Presentation
Oscon 2008 Open Micro Blogging Presentation
Evan Prodromou
 
OSINT for Attack and Defense
OSINT for Attack and Defense
Andrew McNicol
 
Connect the Dots: Bridging Silos of Information (WPCampus 2019)
Connect the Dots: Bridging Silos of Information (WPCampus 2019)
Elaine Shannon
 
OSINT Tool - Reconnaissance with Maltego
OSINT Tool - Reconnaissance with Maltego
Raghav Bisht
 
Semantic Social Network
Semantic Social Network
Haklae Kim
 
(Re-) Discovering Lost Web Pages
(Re-) Discovering Lost Web Pages
Michael Nelson
 
Web application penetration testing lab setup guide
Web application penetration testing lab setup guide
Sudhanshu Chauhan
 
InfoSec World 2013 – W4 – Using Google to Find Vulnerabilities in Your IT Env...
InfoSec World 2013 – W4 – Using Google to Find Vulnerabilities in Your IT Env...
Bishop Fox
 
Hacking with Semantic Web
Hacking with Semantic Web
Tom Praison Praison
 
NISO/DCMI Webinar: Schema.org and Linked Data: Complementary Approaches to Pu...
NISO/DCMI Webinar: Schema.org and Linked Data: Complementary Approaches to Pu...
National Information Standards Organization (NISO)
 
Publishing data on the Semantic Web
Publishing data on the Semantic Web
Peter Mika
 
Webofdata
Webofdata
Bill Roberts
 
Data Portability with SIOC and FOAF
Data Portability with SIOC and FOAF
Uldis Bojars
 
From the Semantic Web to the Web of Data: ten years of linking up
From the Semantic Web to the Web of Data: ten years of linking up
Davide Palmisano
 
moscow_developer_day
moscow_developer_day
xlight
 
Modeling and Representing Trust Relations in Semantic Web-Driven Social Networks
Modeling and Representing Trust Relations in Semantic Web-Driven Social Networks
Nima Dokoohaki
 
A Semantic Multimedia Web (Part 2)
A Semantic Multimedia Web (Part 2)
Raphael Troncy
 
Using MongoDB as a high performance graph database
Using MongoDB as a high performance graph database
Chris Clarke
 
Foaf Openid Milan
Foaf Openid Milan
Dan Brickley
 
RDF: what and why plus a SPARQL tutorial
RDF: what and why plus a SPARQL tutorial
Jerven Bolleman
 
When?
When?
Dan Brickley
 
Linked Data Basics
Linked Data Basics
Anja Jentzsch
 
Hack U Barcelona 2011
Hack U Barcelona 2011
Peter Mika
 
Web Topics
Web Topics
Praveen AP
 
Linked data HHS 2015
Linked data HHS 2015
Cason Snow
 
Facebook ( Open ) Graph and the Semantic Web
Facebook ( Open ) Graph and the Semantic Web
Matteo Brunati
 
Year of the Monkey: Lessons from the first year of SearchMonkey
Year of the Monkey: Lessons from the first year of SearchMonkey
Peter Mika
 
Semantic Web Austin Yahoo
Semantic Web Austin Yahoo
Peter Mika
 
The Future of Product Management in AI ERA.pdf
The Future of Product Management in AI ERA.pdf
Alyona Owens
 
EIS-Webinar-Engineering-Retail-Infrastructure-06-16-2025.pdf
EIS-Webinar-Engineering-Retail-Infrastructure-06-16-2025.pdf
Earley Information Science
 

More Related Content

Similar to Building Secure Open & Distributed Social Networks (20)

Hacking with Semantic Web
Hacking with Semantic Web
Tom Praison Praison
 
NISO/DCMI Webinar: Schema.org and Linked Data: Complementary Approaches to Pu...
NISO/DCMI Webinar: Schema.org and Linked Data: Complementary Approaches to Pu...
National Information Standards Organization (NISO)
 
Publishing data on the Semantic Web
Publishing data on the Semantic Web
Peter Mika
 
Webofdata
Webofdata
Bill Roberts
 
Data Portability with SIOC and FOAF
Data Portability with SIOC and FOAF
Uldis Bojars
 
From the Semantic Web to the Web of Data: ten years of linking up
From the Semantic Web to the Web of Data: ten years of linking up
Davide Palmisano
 
moscow_developer_day
moscow_developer_day
xlight
 
Modeling and Representing Trust Relations in Semantic Web-Driven Social Networks
Modeling and Representing Trust Relations in Semantic Web-Driven Social Networks
Nima Dokoohaki
 
A Semantic Multimedia Web (Part 2)
A Semantic Multimedia Web (Part 2)
Raphael Troncy
 
Using MongoDB as a high performance graph database
Using MongoDB as a high performance graph database
Chris Clarke
 
Foaf Openid Milan
Foaf Openid Milan
Dan Brickley
 
RDF: what and why plus a SPARQL tutorial
RDF: what and why plus a SPARQL tutorial
Jerven Bolleman
 
When?
When?
Dan Brickley
 
Linked Data Basics
Linked Data Basics
Anja Jentzsch
 
Hack U Barcelona 2011
Hack U Barcelona 2011
Peter Mika
 
Web Topics
Web Topics
Praveen AP
 
Linked data HHS 2015
Linked data HHS 2015
Cason Snow
 
Facebook ( Open ) Graph and the Semantic Web
Facebook ( Open ) Graph and the Semantic Web
Matteo Brunati
 
Year of the Monkey: Lessons from the first year of SearchMonkey
Year of the Monkey: Lessons from the first year of SearchMonkey
Peter Mika
 
Semantic Web Austin Yahoo
Semantic Web Austin Yahoo
Peter Mika
 
Publishing data on the Semantic Web
Publishing data on the Semantic Web
Peter Mika
 
Data Portability with SIOC and FOAF
Data Portability with SIOC and FOAF
Uldis Bojars
 
From the Semantic Web to the Web of Data: ten years of linking up
From the Semantic Web to the Web of Data: ten years of linking up
Davide Palmisano
 
moscow_developer_day
moscow_developer_day
xlight
 
Modeling and Representing Trust Relations in Semantic Web-Driven Social Networks
Modeling and Representing Trust Relations in Semantic Web-Driven Social Networks
Nima Dokoohaki
 
A Semantic Multimedia Web (Part 2)
A Semantic Multimedia Web (Part 2)
Raphael Troncy
 
Using MongoDB as a high performance graph database
Using MongoDB as a high performance graph database
Chris Clarke
 
RDF: what and why plus a SPARQL tutorial
RDF: what and why plus a SPARQL tutorial
Jerven Bolleman
 
Hack U Barcelona 2011
Hack U Barcelona 2011
Peter Mika
 
Linked data HHS 2015
Linked data HHS 2015
Cason Snow
 
Facebook ( Open ) Graph and the Semantic Web
Facebook ( Open ) Graph and the Semantic Web
Matteo Brunati
 
Year of the Monkey: Lessons from the first year of SearchMonkey
Year of the Monkey: Lessons from the first year of SearchMonkey
Peter Mika
 
Semantic Web Austin Yahoo
Semantic Web Austin Yahoo
Peter Mika
 

Recently uploaded (20)

The Future of Product Management in AI ERA.pdf
The Future of Product Management in AI ERA.pdf
Alyona Owens
 
EIS-Webinar-Engineering-Retail-Infrastructure-06-16-2025.pdf
EIS-Webinar-Engineering-Retail-Infrastructure-06-16-2025.pdf
Earley Information Science
 
Coordinated Disclosure for ML - What's Different and What's the Same.pdf
Coordinated Disclosure for ML - What's Different and What's the Same.pdf
Priyanka Aash
 
"Scaling in space and time with Temporal", Andriy Lupa.pdf
"Scaling in space and time with Temporal", Andriy Lupa.pdf
Fwdays
 
10 Key Challenges for AI within the EU Data Protection Framework.pdf
10 Key Challenges for AI within the EU Data Protection Framework.pdf
Priyanka Aash
 
AI vs Human Writing: Can You Tell the Difference?
AI vs Human Writing: Can You Tell the Difference?
Shashi Sathyanarayana, Ph.D
 
"How to survive Black Friday: preparing e-commerce for a peak season", Yurii ...
"How to survive Black Friday: preparing e-commerce for a peak season", Yurii ...
Fwdays
 
Mastering AI Workflows with FME by Mark Döring
Mastering AI Workflows with FME by Mark Döring
Safe Software
 
Enhance GitHub Copilot using MCP - Enterprise version.pdf
Enhance GitHub Copilot using MCP - Enterprise version.pdf
Nilesh Gule
 
Wenn alles versagt - IBM Tape schützt, was zählt! Und besonders mit dem neust...
Wenn alles versagt - IBM Tape schützt, was zählt! Und besonders mit dem neust...
Josef Weingand
 
“MPU+: A Transformative Solution for Next-Gen AI at the Edge,” a Presentation...
“MPU+: A Transformative Solution for Next-Gen AI at the Edge,” a Presentation...
Edge AI and Vision Alliance
 
Oh, the Possibilities - Balancing Innovation and Risk with Generative AI.pdf
Oh, the Possibilities - Balancing Innovation and Risk with Generative AI.pdf
Priyanka Aash
 
Agentic AI for Developers and Data Scientists Build an AI Agent in 10 Lines o...
Agentic AI for Developers and Data Scientists Build an AI Agent in 10 Lines o...
All Things Open
 
A Constitutional Quagmire - Ethical Minefields of AI, Cyber, and Privacy.pdf
A Constitutional Quagmire - Ethical Minefields of AI, Cyber, and Privacy.pdf
Priyanka Aash
 
9-1-1 Addressing: End-to-End Automation Using FME
9-1-1 Addressing: End-to-End Automation Using FME
Safe Software
 
Cracking the Code - Unveiling Synergies Between Open Source Security and AI.pdf
Cracking the Code - Unveiling Synergies Between Open Source Security and AI.pdf
Priyanka Aash
 
From Manual to Auto Searching- FME in the Driver's Seat
From Manual to Auto Searching- FME in the Driver's Seat
Safe Software
 
ReSTIR [DI]: Spatiotemporal reservoir resampling for real-time ray tracing ...
ReSTIR [DI]: Spatiotemporal reservoir resampling for real-time ray tracing ...
revolcs10
 
"Database isolation: how we deal with hundreds of direct connections to the d...
"Database isolation: how we deal with hundreds of direct connections to the d...
Fwdays
 
Securing Account Lifecycles in the Age of Deepfakes.pptx
Securing Account Lifecycles in the Age of Deepfakes.pptx
FIDO Alliance
 
The Future of Product Management in AI ERA.pdf
The Future of Product Management in AI ERA.pdf
Alyona Owens
 
EIS-Webinar-Engineering-Retail-Infrastructure-06-16-2025.pdf
EIS-Webinar-Engineering-Retail-Infrastructure-06-16-2025.pdf
Earley Information Science
 
Coordinated Disclosure for ML - What's Different and What's the Same.pdf
Coordinated Disclosure for ML - What's Different and What's the Same.pdf
Priyanka Aash
 
"Scaling in space and time with Temporal", Andriy Lupa.pdf
"Scaling in space and time with Temporal", Andriy Lupa.pdf
Fwdays
 
10 Key Challenges for AI within the EU Data Protection Framework.pdf
10 Key Challenges for AI within the EU Data Protection Framework.pdf
Priyanka Aash
 
AI vs Human Writing: Can You Tell the Difference?
AI vs Human Writing: Can You Tell the Difference?
Shashi Sathyanarayana, Ph.D
 
"How to survive Black Friday: preparing e-commerce for a peak season", Yurii ...
"How to survive Black Friday: preparing e-commerce for a peak season", Yurii ...
Fwdays
 
Mastering AI Workflows with FME by Mark Döring
Mastering AI Workflows with FME by Mark Döring
Safe Software
 
Enhance GitHub Copilot using MCP - Enterprise version.pdf
Enhance GitHub Copilot using MCP - Enterprise version.pdf
Nilesh Gule
 
Wenn alles versagt - IBM Tape schützt, was zählt! Und besonders mit dem neust...
Wenn alles versagt - IBM Tape schützt, was zählt! Und besonders mit dem neust...
Josef Weingand
 
“MPU+: A Transformative Solution for Next-Gen AI at the Edge,” a Presentation...
“MPU+: A Transformative Solution for Next-Gen AI at the Edge,” a Presentation...
Edge AI and Vision Alliance
 
Oh, the Possibilities - Balancing Innovation and Risk with Generative AI.pdf
Oh, the Possibilities - Balancing Innovation and Risk with Generative AI.pdf
Priyanka Aash
 
Agentic AI for Developers and Data Scientists Build an AI Agent in 10 Lines o...
Agentic AI for Developers and Data Scientists Build an AI Agent in 10 Lines o...
All Things Open
 
A Constitutional Quagmire - Ethical Minefields of AI, Cyber, and Privacy.pdf
A Constitutional Quagmire - Ethical Minefields of AI, Cyber, and Privacy.pdf
Priyanka Aash
 
9-1-1 Addressing: End-to-End Automation Using FME
9-1-1 Addressing: End-to-End Automation Using FME
Safe Software
 
Cracking the Code - Unveiling Synergies Between Open Source Security and AI.pdf
Cracking the Code - Unveiling Synergies Between Open Source Security and AI.pdf
Priyanka Aash
 
From Manual to Auto Searching- FME in the Driver's Seat
From Manual to Auto Searching- FME in the Driver's Seat
Safe Software
 
ReSTIR [DI]: Spatiotemporal reservoir resampling for real-time ray tracing ...
ReSTIR [DI]: Spatiotemporal reservoir resampling for real-time ray tracing ...
revolcs10
 
"Database isolation: how we deal with hundreds of direct connections to the d...
"Database isolation: how we deal with hundreds of direct connections to the d...
Fwdays
 
Securing Account Lifecycles in the Age of Deepfakes.pptx
Securing Account Lifecycles in the Age of Deepfakes.pptx
FIDO Alliance
 
Ad

Building Secure Open & Distributed Social Networks

  • 1. Secure Distributed Open Social Networks Henry Story Senior Staff Engineer Semantic Web Evangelist http://blogs.sun.com/bblfish Sun Microsystem photo by prakharevich
  • 2. Overview Description of the Social Networking problem Why this is no longer “ somebody else's problem ”: a hyper address book The functioning of the Address Book How to add distributed decentralized security A final thought: how this changes the desktop paradigm
  • 3. Too many Social Networks? ...are there too many web servers?
  • 4. The Problem: data silos SN don't link up: Information can't be moved easily (see: Data Portability the video ) Users have to create and maintain accounts on each SN they have friends on, or loose contacts Growing number of social networks (SN) because there are a lot of $$$ to be made because there are many needs there will never be one SN to rule them all.
  • 5. Scoble gets thrown off Facebook! In early January 2008 Scoble, the developer who got blogging going at Microsoft, got thrown off Facebook for extracting information too agressively from his social network on Facebook. This is the Facebook who asked users for their gmail password to extract all their contacts from their email! see his video
  • 6. An (evolving) Social Graph relates many different things people to information about them name address phone number relations between people: who knows who who worked with who relations with external things blogs companies
  • 7. Two social Networks how can Tim and Henry link up ?
  • 8. Solution 1: minimal naïve approach but within each SN queries are very limited: e.g.: in Network A, nobody can query for Tim's address
  • 9. Solution 2: copy some information how to copy the data? Data Portability? (DRY principle?) how to keep the relations up to date?! Twice as much work. queries still limited: what are the friends of Tim's friends?
  • 10. Solution 3: copy all technically impossible: does not scale as networks grow in size and number: how to keep information up to date? amount of synchronization grows exponentially politically impossible: S.N. are very protective of their data + privacy issues + oligopoly issues
  • 11. The pull to one network Due to Metcalf's law : the larger the network the more valuable it becomes. But why does it have to be in one database? Because each database has its own LOCAL POINTER mechanism, just like every Java virtual Machine has a local pointer mechanism. You cannot easily point from one JVM/DB into another. What if we had one big world wide database? we would need universal names for things. URIs?
  • 12. The Solution: linking across social networks requires a global namespace
  • 13. The Solution: a closer look objects and documents have URLs Relations also have URLs: foaf:knows , foaf:name The Self Describing Web
  • 15. 1. first launch of jnlp
  • 16. 2. drag and drop a foaf file url
  • 17. 3. click on the first name in the first column
  • 18. 4. explore the second column
  • 19. 5. press the space bar on the keyboard...
  • 20. 6. positioning with NASA's World Wind
  • 21. 7. Sun Intranet Foaf experiment
  • 22. Foaf: Friend of a Friend
  • 23. Advantages Open Social Network – no data silos Information about people is always up to date (an HTTP GET away) this could be used to keep up to date on where friends are It is easy to publish a foaf file: one click away Drag and drop friends security: some ideas at the end of the talk
  • 24. Two foaf files on the internet
  • 25. Well, what we really have is
  • 26. Well, what we really have is in graph view
  • 27. The graphs inside the Beatnik Database
  • 28. Networked graphs: A merged view
  • 29. SPARQL: semantic query lang PREFIX foaf: <http://xmlns.com/foaf/0.1/> SELECT ?p WHERE { ?p foaf:knows ?q . }
  • 30. SPARQL construct query PREFIX xsd: <http://www.w3.org/2001/XMLSchema#> CONSTRUCT { ?subject ?relation ?object . } WHERE { GRAPH ?g { ?subject ?relation ?object . } ?g :fetched-at ?date . FILTER { ?date < “2008-03-30”^^xsd:date } } This CONSTRUCT query can be used to construct a graph that is a union of all graphs that were fetched after march 2008.
  • 31. Networked Graphs: SPARQL Rules PREFIX owl: < http://www.w3.org/2002/07/owl #> CONSTRUCT { ?b owl:sameAs ?a . } WHERE { ?a owl:sameAs ?b . FILTER ( ! SAMETERM(?a , ?b) ) } CONSTRUCT queries can also be thought of as rules. Here is the well known rule of symmetry of identity. Simon Schenk's Networked Graphs can have a number of rules expressed as SPARQL CONSTRUCT queries, which works nicely with the Sesame semantic engine.
  • 32. merging identities PREFIX owl: < http://www.w3.org/2002/07/owl #> PREFIX foaf: < http://xmlns.com/foaf/0.1/ > CONSTRUCT { ?a owl:sameAs ?b . } WHERE { ?a foaf:homepage ?pg . ?b foaf:homepage ?pg . FILTER ( ! SAMETERM (?a , ?b)) } The rule that if we have two names for people that have the same homepage, then the two names refer to the same person. There are more general ways of stating this btw.
  • 33. Security: 3 approaches Simple Firewall based security OpenId based Security Even simpler SSL based security
  • 36. Protected Resources :me a foaf:Person; foaf:name “Henry Story”; rdfs:seeAlso </protected/henry> . </protected/henry> openid:login </openidAuth.cgi> . This is trying to say that in order to access the protected resource one needs to login with openid first. This is a sketch of such a vocabulary
  • 39. Protected Resources :me a foaf:Person; foaf:name “Henry Story”; rdfs:seeAlso <https://.../protected/henry> . notice the seeAlso is now an https url
  • 41. X509 certificate Certificate: Data: Version: 3 (0x2) Serial Number: 1 (0x1) Signature Algorithm: dsaWithSHA1 Issuer: O=OpenPGP to X.509 Bridge, OU=RDFauth Test, CN=Henry Story <[email protected]> Validity Not Before: Dec 12 21:49:50 2007 GMT Not After : Dec 6 21:49:50 2008 GMT Subject: O=OpenPGP to X.509 Bridge, OU=RDFauth Test, CN=Henry Story <[email protected]> Subject Public Key Info: Public Key Algorithm: dsaEncryption DSA Public Key: pub: 33:41:...
  • 42. X509 certificate with id X509v3 extensions: X509v3 Basic Constraints: critical CA:TRUE X509v3 Key Usage: critical Digital Signature, Non Repudiation, Key Encipherment, Key Agreement, Certificate Sign Netscape Cert Type: SSL Client, S/MIME X509v3 Subject Key Identifier: 45:DC:F9:10:33:C0:45:28:EA:90:6E:83:73:06:6F:51:21:89:13:DD X509v3 Authority Key Identifier: keyid:45:DC:F9:10:33:C0:45:28:EA:90:6E:83:73:06:6F:51:21:89:13:DD X509v3 Subject Alternative Name: URI:http://bblfish.net/people/henry/card#me Signature Algorithm: dsaWithSHA1 30:2c:02:14:78:69:1e:4f:7d:37:36:a5:8f:37:30:58:18:5a: f6:10:e9:13:a4:ec:02:14:03:93:42:3b:c0:d4:33:63:ae:2f: eb:8c:11:08:1c:aa:93:7d:71:01
  • 45. some references Getting Started With RDF The Semantic Address Book web site

Editor's Notes

  • #2: Hello, my name is Henry Story. I work for Sun Microsystems where I research on the Semantic Web. I am tasked with finding ways to get people excited about what is happening in this space, which at first may seem very abstract. So I have been looking for problems that would affect people directly, have some real immediate business value, clearly demonstrate the power of the semantic web, and that is small enough that I don&apos;t need a big budget to get things done. After all I am in the business of convincing people. Once they are convinced I hope they will help out one way or another. Social Networking is big. It affects everyone in very personal ways. It is useful. It is what we are all about. Here I wish to show how one can build an secure, open, distributed global social network with no center of control. The only way to do this is using the semantic web....