These slides contain an introduction to Linked Data and Web Payments. Web Payments concepts come from the Web Payments Community group chaired by Manu Sporny on the W3C website.
1. Introduction to Linked Data
and Web Payments
Brent Shambaugh
Code Norman Meetup at Prototek OKC
October 25th, 2014
CC BY SA 2.0 (unless mentioned otherwise)
6. Different Levels of the Web
[Web] to address the following (levels of complexity?)
1. Linked Document Network
“every hyperlink denotes a document
location”
2. Linked Data Network
“hyperlinks denote entities”
3. Linked Open Data
“hyperlinks denote entities … resolving to
human and machine readable entity description
documents”
4. Semantic Linked Open Data
“all of the above with the addition of human and machine
readable and comprehensible relation semantics”
Source: http://kidehen.blogspot.com/2014/03/world-wide-
web-25-years-later.html
Kingsley Idehen
CC BY 3.0 AT
http://creativecommons.org/
licenses/by/3.0/at/deed.en
By http://creativecommons.
org/licenses/by/3.0/at/
deed.en
9. Linked Data Design Comments
4 Rules <http://www.w3.org/DesignIssues> :
1.Use URIs as names for things
2.Use HTTP URIs so that people
can look up those names.
3.When someone looks up a URI,
provide useful information, using
the standards (RDF*, SPARQL)
4.Include links to other URIs. so
that they can discover more
things.
Tim Berners-Lee in 2012
Cc-by-sa-2.0 by cellanr
<http://www.flickr.com/photos/
rorycellan/8314288381/>
10. Linked Data Design Comments
(cont.)
5 Star Linked (Open) Data <http://www.w3.org/DesignIssues> :
★ Available on the web (whatever format), but with an
open licence
★★ Available as machine-readable structured data
(e.g. Excel instead of image scan of a table)
★★★ As (2) plus non-proprietary format (e.g. CSV instead of
Excel)
★★★★ All the above, plus: use open standards from W3C (RDF
and SPARQL) to identify things, so that people can
point at your stuff
★★★★★ All the above, plus: link your data to other people’s
data to provide context
11. Linked Data Representation
● RDF triples in formats such as:
RDF/XML, N3, Turtle, RDFa, N-Triples, JSON-LD
● JSON-LD is used for Web Payments
12. JSON vs. JSON-LD
● JSON has all of the features of JSON,
“Developers only need to know JSON and two
keywords (@context and @id) to use the
basic functionality in JSON-LD.”
<http://www.w3.org/TR/json-ld/#relationship-to-
rdf>
17. Web Payments
(W3C Community Group Material)*
* Precursor to http://www.w3.org/Payments/IG/
18. Web Payments Requirements
● It must be decentralized.
● It must be an open, patent and royalty-free
standard.
● It must be designed to work with Web architecture
like URLs, HTTP, and other Web standards.
● It must allow anyone to implement the standard and
interoperate with others that implement the
standard.
<https://hacks.mozilla.org/2013/04/web-payments-with-payswarm-identity-part-1-of-3/>
19. Web Payments Requirements
(cont.)
● It must enable choice among customers, vendors, and payment processors, in
order to drive healthy market competition.
● It must be extensible in a decentralized way, allowing application-specific
extensions to the core protocol without coordination.
● It must be flexible enough to perform payments as well as support higher order
economic behaviors like crowdfunding and executing legal contracts.
● It must be secure, using the latest security best practices to protect the entire
system from attack.
● It must be currency agnostic, supporting not only the US Dollar, the Euro, and
the Japanese Yen, but also supporting virtual currencies like Bitcoin and Ven.
● It must be easy to develop for and integrate into the Web.
20. Web Payments Design Principles for
Identity
● An identity and credentialing solution for the Web should be
decentralized.
● It must support discoverability by using a resolvable address,
like a URL or email address.
● It must support, with authorization, arbitrary machine-readable
information being attached to the identity by 3rd parties.
● It must be able to provide both public and private data to
external sites based on who is accessing the resource.
● The credential information must be protected by a secure
digital signature and encryption mechanism.
<https://web-payments.org/specs/source/identity-credentials/>
21. PaySwarm Purchase
Inspired by the The Payments, Privacy, Policing Paradox Workshop
At the United Nations Internet Governance Forum.
https://web-payments.org/minutes/2014-09-04-igf/
*slide added post presentation
22. Web Payments Demonstrations
● Web Payments with PaySwarm: Identity (part 1 of 3)
https://hacks.mozilla.org/2013/04/web-payments-with-payswarm-identity-part-1-of-3/
● Web Payments with PaySwarm: Assets and Listings (part 2 of 3)
https://hacks.mozilla.org/2013/04/payswarm-part-2/
● Web Payments with PaySwarm: Purchasing (part 3 of 3)
https://hacks.mozilla.org/2013/04/web-payments-with-payswarm-purchasing-part-3-of-3/
Personal notes from previous attempt:
http://adistributedeconomy.blogspot.com/2014_02_01_archive.html
*switched order with next slide post presentation
23. Web Payments Specifications
Design
Web Payments Design Principles
https://web-payments.org/specs/source/design-principles/
Web Payments Use Cases
https://web-payments.org/specs/source/use-cases/
Web Payments Roadmap
https://web-payments.org/specs/source/roadmap/
Reciepts
Web Commerce 1.0
https://web-payments.org/specs/source/web-commerce/
Products
Web Commerce 1.0
https://web-payments.org/specs/source/web-commerce/
Web Pricing Indices 1.0
https://web-payments.org/specs/source/web-price-indexes/
Identity
Identity Credentials 1.0
https://web-payments.org/specs/source/identity-credentials/
Transactions
Web Payments 1.0
https://web-payments.org/specs/source/web-payments/
Web Commerce API 1.0
https://web-payments.org/specs/source/web-commerce-api/
Payment Intents 1.0
https://web-payments.org/specs/source/payment-intents/
Commerce Vocabulary
https://web-payments.org/specs/source/vocabs/commerce.html
PaySwarm Vocabulary
https://web-payments.org/specs/source/vocabs/payswarm.html
Credit and Debit Card Vocabulary
https://web-payments.org/specs/source/vocabs/creditcard.html
Security
Signing HTTP Messages
https://web-payments.org/specs/source/http-signatures/
HTTP Signature Nonces
https://web-payments.org/specs/source/http-signature-nonces/
HTTP Signature Trailers
https://web-payments.org/specs/source/http-signature-trailers/
Secure Messaging 1.0
https://web-payments.org/specs/source/secure-messaging/
The Security Vocabulary
https://web-payments.org/specs/source/vocabs/security.html
Security Considerations for HTTP Signatures
https://web-payments.org/specs/source/http-signatures-audit/
24. Web Payments with PaySwarm: Identity (part 1 of 3)
● Use Web Keys (now called secure messaging)
● Following the “Web Keys Demo - payswarm.js”
<https://www.youtube.com/watch?v=S5WMkpoocSc>
- 1) Clone repository to local machine:
https://github.com/digitalbazaar/payswarm.js/
or run npm install payswarm
- 2) Set up an account at dev.payswarm.com (basically a
developer sandbox for a PaySwarm Authority)
- 3) Run node register-new-key.js
●