Badges/infrastructure-tech-docs: Difference between revisions

Jump to navigation Jump to search
m (→‎Infrastructure Technical Documentation: removed duplicate heading)
Line 23: Line 23:
''DEFINITIONS'' <br>
''DEFINITIONS'' <br>
* '''Badge''' - The core currency of exchange. A single credential demonstrating a skill, achievement, quality or affiliation. Badges are represented as chunks of JSON data in the  OBI Backpack. Badges may be stored in the Backpack as either Verified Badges or Unverified Badges.
* '''Badge''' - The core currency of exchange. A single credential demonstrating a skill, achievement, quality or affiliation. Badges are represented as chunks of JSON data in the  OBI Backpack. Badges may be stored in the Backpack as either Verified Badges or Unverified Badges.
* '''Badge Manifest''' - User identity information (email address) plus badge information (JSON metadata)
** '''Badge Manifest''' - User identity information (email address) plus badge information (JSON metadata)
* '''Verified Badge''' - Badges that have been signed by a third party. The Backpack verifies the signature against the signers public key and if confirmed, accepts the badge as a verified badge. The verification information is represented with the badge as a layer of trust on the badges validity.
** '''Verified Badge''' - Badges that have been signed by a third party. The Backpack verifies the signature against the signers public key and if confirmed, accepts the badge as a verified badge. The verification information is represented with the badge as a layer of trust on the badges validity.
* '''Unverified Badge''' - A badge that has not been signed by a third party but is issued as flat JSON data. Unverified does not mean invalid, but simply that there is no additional information with the badge to establish an additional layer of trust. Most badges issued into the OBI will be unverified badges.
** '''Unverified Badge''' - A badge that has not been signed by a third party but is issued as flat JSON data. Unverified does not mean invalid, but simply that there is no additional information with the badge to establish an additional layer of trust. Most badges issued into the OBI will be unverified badges.
* '''Open Badge Infrastructure (OBI)''' - open infrastructure technology to support independent badge issuers and display sites. Includes the Badge Backpack(s), Metadata Spec, API and Authentication/Verification Framework.
* '''Open Badge Infrastructure (OBI)''' - open infrastructure technology to support independent badge issuers and display sites. Includes the Badge Backpack(s), Metadata Spec, API and Authentication/Verification Framework.
* '''Hub''' - The core authorized data store. Each learner has his/her own hub where all badge data is stored. The Hub software will be open source so if a learner wants to install and manage their own hub, and thus completely control all of their credentials, they can. Mozilla will manage the hubs for users who do not install their own.
** '''''Hub''' - The core authorized data store. Each learner has his/her own hub where all badge data is stored. The Hub software will be open source so if a learner wants to install and manage their own hub, and thus completely control all of their credentials, they can. Mozilla will manage the hubs for users who do not install their own''.
* '''Reference Hub''' - the default Hub that Mozilla is building that will hold the badge manifests.  
** '''Badge Backpack''' - The core authorized data store and management interface. Each learner has his/her own Backpack where all their badge data is stored. Mozilla will host the reference Backpacks, but the infrastructure will allow for users to develop and host their own Backpacks. NOTE: the Hub and Backpack are being combined with new iterations of the development. Each user will have their own Backpack that holds all of their badges and gives them an interface to manage, control and share those badges.
* '''Badge Backpack''' - The management interface on top of the Hub where a learner can view his/her badge collection, delete badges from the Hub, create subcollections and manage many of the display options.
** '''Metadata Spec''' - The definition of what makes up a badge. Each badge is a chunk of metadata that describes the badge, including title, description, issuer, issue date, evidence URL, image, etc. Each issuer will need to conform their badges to the metadata spec for the badges to be accepted into the Backpack. Beyond the technical requirements, the metadata spec is essential for standardizing badges to ensure that badges can be transferred/ported without losing critical information to understand and verify the badge. Beyond the core spec, the metadata is extensible.
* '''Badge Backpack''' - The core authorized data store and management interface. Each learner has his/her own Backpack where all their badge data is stored. Mozilla will host the reference Backpacks, but the infrastructure will allow for users to develop and host their own Backpacks. NOTE: the Hub and Backpack are being combined with new iterations of the development. Each user will have their own Backpack that holds all of their badges and gives them an interface to manage, control and share those badges.
** '''Badge Baking''' - Embedding the JSON blob into a PNG file to make a fully robust, portable badge (with all of the metadata embedded)
* '''Metadata Spec''' - The definition of what makes up a badge. Each badge is a chunk of metadata that describes the badge, including title, description, issuer, issue date, evidence URL, image, etc. Each issuer will need to conform their badges to the metadata spec for the badges to be accepted into the Backpack. Beyond the technical requirements, the metadata spec is essential for standardizing badges to ensure that badges can be transferred/ported without losing critical information to understand and verify the badge. Beyond the core spec, the metadata is extensible.
*** '''Badge Baking Service''' - tool/software to embed the JSON blob in a PNG. Mozilla will build the reference baking service for beta
* '''Badge Baking''' - Embedding the JSON blob into a PNG file to make a fully robust, portable badge (with all of the metadata embedded)
** '''API''' - The interface specifications for pushing badges into the Backpack (issuers/users), as well as pulling them out (display sites/widgets).
* '''Badge Baking Service''' - tool/software to embed the JSON blob in a PNG. Mozilla will build the reference baking service for beta
** '''Authentication Channel''' - Communication channels and framework to support badge authentication (was this badge issued to this person on this date? Has it expired? etc.)  
* '''API''' - The interface specifications for pushing badges into the Backpack (issuers/users), as well as pulling them out (display sites/widgets).
** '''Verification/Endorsement Channel''' - Communication channels and framework to support badge endorsement (was this badge signed? is the signature valid?)
* '''Authentication Channel''' - Communication channels and framework to support badge authentication (was this badge issued to this person on this date? Has it expired? etc.)  
*Users/Partners
* '''Verification/Endorsement Channel''' - Communication channels and framework to support badge endorsement (was this badge signed? is the signature valid?)
**User - a person storing their badges within the Open Badge Infrastructure. This user has had interactions with issuers to earn badges, then logs in via their Backpack to manage those badges, and can share out to various display sites as well.
* '''Issuer''' - Organization, consortium or individual who issues badges into the OBI. The OBI is open and supports any independent issuer that conforms to the necessary badge and issuing specifications.
** '''Issuer''' - Organization, consortium or individual who issues badges into the OBI. The OBI is open and supports any independent issuer that conforms to the necessary badge and issuing specifications.
* '''Issuer Tech''' - Software that supports issuing of badges into the OBI and/or to users directly. The issuer tech must generate the JSON data chunks for each badge, and communicate with the Backpack(s) to pass badge data and authenticate badges. Many issuers will build their own issuer tech, although open generic or technology-specific tools could be built to support a wide range of issuers.
*** '''Issuer Tech''' - Software that supports issuing of badges into the OBI and/or to users directly. The issuer tech must generate the JSON data chunks for each badge, and communicate with the Backpack(s) to pass badge data and authenticate badges. Many issuers will build their own issuer tech, although open generic or technology-specific tools could be built to support a wide range of issuers.
* '''Displayer''' - Website, run by an organization, consortium or individual, that pulls badges from the OBI and displays them for a user. Displayers could range from social networking sites like Facebook or career social networks, to job search/application sites to personal blogs or sites. Each user manages which display sites can access their badges (and which subcollection of badges to display per display site) through the Backpack or directly on their own.
** '''Displayer''' - Website, run by an organization, consortium or individual, that pulls badges from the OBI and displays them for a user. Displayers could range from social networking sites like Facebook or career social networks, to job search/application sites to personal blogs or sites. Each user manages which display sites can access their badges (and which subcollection of badges to display per display site) through the Backpack or directly on their own.
* '''Widget''' - Software that supports the display of badges on a particular display site. Widgets will communicate with the Backpack to pull badges, as well as utilize the Authentication/Verification Framework to authenticate badges before displaying. For example, one could build a Facebook app that leverages both the OBI API to pull badge data, and the Facebook API to push badges into Facebook.   
*** '''Widget''' - Software that supports the display of badges on a particular display site. Widgets will communicate with the Backpack to pull badges, as well as utilize the Authentication/Verification Framework to authenticate badges before displaying. For example, one could build a Facebook app that leverages both the OBI API to pull badge data, and the Facebook API to push badges into Facebook.   
* '''Signer''' - An organization, consortium or individual who validates a badge by signing it with their private encryption key. Trusted third party signers may emerge.
** '''Signer/Endorser''' - An organization, consortium or individual who validates a badge by signing it with their private encryption key. Trusted third party signers may emerge.
* '''Signing Authority''' - A third party that checks signed badges against the signers public encryption key and confirms or rejects verification. Backpack communicates with the signing authority to verify the badge if signing data is included with the badge (otherwise the badge is Unverified).
*** '''Signing Authority''' - A third party that checks signed badges against the signers public encryption key and confirms or rejects verification. Backpack communicates with the signing authority to verify the badge if signing data is included with the badge (otherwise the badge is Unverified).


'''WHAT MOZILLA IS BUILDING'''
'''WHAT MOZILLA IS BUILDING'''
Line 290: Line 290:
* Additional hire: Researcher/Analyst, Mozilla
* Additional hire: Researcher/Analyst, Mozilla
* Partners/Advisory Group
* Partners/Advisory Group
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ <br>
'''BETA''' <br>
4 critical tickets left - done today
* https://github.com/brianlovesdata/openbadges/issues?milestone=1&sort=created&direction=desc&state=open
everything else is polished - done by tomorrow
'''BACKPACK:'''
* UI for the Backpack: http://cl.ly/302M2i1B2P1z221r2o3X
* Accept each badge individually
* http://cl.ly/1q3U002b1f0r0L2o380c
* Accept badge screen: http://cl.ly/0k1d39250k3H3A400m2m
* Default as private
* As soon as go into get group - semipublic - people can hit it, not widely advertised
* Rejected badge: http://cl.ly/2T3W1z080i3T0U0w1O1u (eventually have a UI for this, trash can)
* Today: Group management stuff now/embed/privacy controls
* openbadges.org/backpack - login
* badgehub.org - URL for now, log in via email address (finds your backpack)
needing a server
disclaimer - will probably lose your data
terms of service
privacy statement
iRemix is ready to go
documentation
point people there
continuous deployment - whenever the code is stable (master) - automatically gets deployed
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ <br>
'''PARKING LOT'''
'''QUESTIONS/ISSUES TO DISCUSS FURTHER'''
* Hub creation/registration - is this process too complicated? how might we support user owned hubs and streamline this process? (In this instance, do we now mean Displayers rather than hubs, or Issuers managing or hosting backpacks?)
* Badge signing - tech review/feedback, what are use cases for this?
* Identity - how does this solution sound to people? What about users under 13?
* Aggregation of badges - how will this work?
* Privacy - What rights do users have regarding their badges? What do they lose when they share in terms of privacy? What are implications on privacy for technical methodologies/specs (for signing etc)?
* What is the user workflow for the backpack?
* How are badge issuers displayed in the backpack/hub?
* Are there constraints on who may issue badges, i.e., what about trolling, satire, etc.?
286

edits

Navigation menu