1 / 31

Efficient design of interpretation of REL license using Expert Systems

Efficient design of interpretation of REL license using Expert Systems. Chun Hui Suen, Munich University of Technology, Institute for Data Processing. Contents. Problems Current solution Proposed solution Offline Demo Comparison Conclusion. 1. Rights Expression Language. DRM System.

mccoyr
Download Presentation

Efficient design of interpretation of REL license using Expert Systems

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Efficient design of interpretation of REL license using Expert Systems Chun Hui Suen, Munich University of Technology, Institute for Data Processing

  2. Contents • Problems • Current solution • Proposed solution • Offline Demo • Comparison • Conclusion 1

  3. Rights Expression Language DRM System • Buy • Rent • Promotion • Share • Gift Content Provider Consumer 2

  4. Rights Expression Language DRM System • Direct payment • Payment information • Try before buying . . . Content Provider Consumer 2

  5. Rights Expression Language • Expressive REL needed for user-friendly DRM Complicated REL license interpreter 2

  6. Root Grant License Grant Condition Grant Condition License … Problem • Expressive Rights description – MPEG-21 REL • Tree-based XML • Complicateddependancies 3

  7. Root Grant License Grant Condition Grant Condition License … Current solution • Inperative programming • Object-orientated mapping 4

  8. Root Grant Root Grant Object License License Object Grant Grant Object Condition Condition Object Grant Grant Object Condition Condition Object License License Object … … Current solution • Inperative programming • Object-orientated mapping 4

  9. Root Grant License Knowledge database Grant XML - Knowledge parser Condition Grant Condition License … Proposed Solution • Knowledge based parsing 5

  10. Proposed Solution Root grant xx xx xx Knowledge database License xx xx xx Grant xx xx xx Condition xx xx xx Grant xx xx xx Condition xx xx xx License xx xx xx 6

  11. Inference Engine Pattern-matching Rule pattern action Rule pattern action . . . Rule-based matching(Experts System) Root grant xx xx xx License xx xx xx Intelligence Grant xx xx xx Condition xx xx xx Grant xx xx xx Condition xx xx xx License xx xx xx 7

  12. Inference Engine Add / Mod. / Delete Rule-based matching (Experts System) Root grant xx xx xx License xx xx xx Intelligence Rule Grant xx xx xx pattern action Condition xx xx xx Rule Grant xx xx xx pattern action Condition xx xx xx . . . License xx xx xx 7

  13. Implementation • System States • counters • What right is requested? • Who can perform it? • What resource to use? • Under what conditions? 8

  14. Grant valid? Issuer valid? Hypothesis is true? Root grant Conditions fulfilled? Operation valid? Principal valid? Resource valid? Implementation Root Grant License Grant Condition keyholder Resources Right 9

  15. Demo – Input License 1 <rootGrant> <keyholder>Company A</keyholder> <trustedRootIssuer/> </rootGrant> • „Company A“ is a trusted issuer <rootGrant> <keyholder>john</keyholder> <possessProperty/> <propertyUri>Subscription</propertyUri> </rootGrant> • “John” has property “Subscription” 10

  16. Demo – Input License 2 <license> <grant> <keyholder>john</keyholder> <play/> <digitalresource>somewhere.mp3</digitalresource> <prerequisiteRight> <keyholder>john</keyholder> <possessProperty/> <propertyUri>Subscription</propertyUri> </prerequisiteRight> </grant> • “john” allowed to “play”, only if “john” has “Subscription” property 11

  17. Demo – Input License 3 <issuer>Company A</issuer> </license> • Issuer of license is “Company A” 13

  18. Demo – Parsed License 1 (rootGrant g0) (keyholder "Company A" g0) (trustedRootIssuer g0) (rootGrant g1) (keyholder “john" g1) (right possessProperty g1) (property "Subscription" g1) (license l0) (grant g2 l0) (keyholder “john" g2) (right play g2) (digitalresource "somewhere.mp3" g2) 14

  19. Hypothesis & states Demo – Parsed License 2 (condition-or c0 g2) (condition c0 prerequisiteRight p0) (keyholder “john" p0) (right possessProperty p0) (property "Subscription" p0) (issuer "Company A" l0) (time 20060504) (database-count 5 c2) (predicate 0 “john" play "somewhere.mp3") 15

  20. Demo – Interpretation 1 (authorized-grant g0 -1) (authorized-grant g1 -1) (authorized-grant g2 l0) Grant blocks recognised as authorized/trusted 15

  21. Demo – Interpretation 1 (authorized-grant g0 -1) (authorized-grant g1 -1) (authorized-grant g2 l0) => (predicate p0 “john" possessProperty "Subscription") New hypothesis: Does john has the property Subscription 15

  22. Demo – Interpretation 1 (authorized-grant g0 -1) (authorized-grant g1 -1) (authorized-grant g2 l0) => (predicate p0 “john" possessProperty "Subscription") (keyholder_matched p0 g1) - john (op_matched p0 g1) - possessProperty (cond-fulfilled g1) - none (resource_matched p0 g1) - “Subscription” Conditions for new predicate fulfilled 15

  23. Demo – Interpretation 1 (authorized-grant g0 -1) (authorized-grant g1 -1) (authorized-grant g2 l0) => (predicate p0 “john" possessProperty "Subscription") (keyholder_matched p0 g1) (op_matched p0 g1) (cond-fulfilled g1) (resource_matched p0 g1) (predicate-success p0) New hypothesis fulfilled 15

  24. Demo – Interpretation 1 (authorized-grant g0 -1) (authorized-grant g1 -1) (authorized-grant g2 l0) => (predicate p0 “john" possessProperty "Subscription") (keyholder_matched p0 g1) (op_matched p0 g1) (cond-fulfilled g1) (resource_matched p0 g1) (predicate-success p0) (cond-true c0 prerequisiteRight p0) (cond-satisfied c0) Recursive condtion fulfilled 15

  25. Demo – Interpretation 2 (keyholder_matched 0 g2) - John (op_matched 0 g2) - play (resource_matched 0 g2) - somewhere.mp3 (cond-fulfilled g2) - has property Conditions of first grant block fulfilled 16

  26. Demo – Interpretation 2 (keyholder_matched 0 g2) (op_matched 0 g2) (resource_matched 0 g2) (cond-fulfilled g2) (predicate-success 0) Final hypothesis fulfilled. 16

  27. Comparison - Advantages • Flat structure – aids in overcoming problems of complex dependancies • OOP implementation requires global data to support recursive condition • Knowledge predicate is easily stored in database • Support high-volume operation • “Proof” of authorization can be easily generated • Logging of reason for authorization • Helps in making intelligent authorization decisions 17

  28. Comparison - Disadvantages • Additional knowledge creation stage(XML – pre-processing) • Unable to support XML-related conditions in MPEG-21 REL 18

  29. Future work • Quantitative speed test • Optimization of knowledge-based approach • Partitioning of knowledge database into clearly defined sets to reduce search range for rule matching • Support more REL commands 19

  30. Conclusion • Knowledge-based parsing is feasible • Reduce REL parser design complexity 20

  31. Questions

More Related