SlideShare una empresa de Scribd logo
1 de 31
Descargar para leer sin conexión
Intellectual Property of F/OSS
          Case Study: iText
 a Free/Open Source Java-PDF library
           Bruno Lowagie
F/OSS and IP

• iText was started by one person in 1998
• Another developer joined in 2000
• From then on the product grows organically:
  It’s a joined effort of many different people
• But who is the owner of the code?
  Who owns the Intellectual Property?
Your product

               White zone




                        Gray zone

                               Black zone
The White Zone

             White zone




                      Gray zone

                             Black zone
The White Zone

 • You have written the code yourself, but
   – What about your employer? Does your
     employer own (part of) the code? Do you have
     a formal agreement with your employer with
     respect to F/OSS?
   – Where did you get your inspiration? IBM
     developers are forbidden to look at any code
     that is not formally approved by IBM’s legal
     team. Good practice or burden?
Employers and IP
The Gray Zone

                White zone




                         Gray zone

                                Black zone
The Gray Zone

• The code was contributed, but:
  – Did the contributor agree with the license?
  – Did the contributor’s employer agree?
  – Where did the contributor get his inspiration?
• The code is taken from another project, but:
  – Are the licenses compatible?
  – Do you respect the other project’s license?
  – Where did the other project get its code from?
The Gray Zone

• Contributor License Agreements
  – The Apache Foundation demands contributors
    and their employers to sign a CLA
  – SUN demands contributors to sign an SCA from
    the moment the contributions contain more
    than 20 lines of code
• Check License Compatibility
  – Keep a detailed inventory of all F/OSS Projects
    (subset / derivative work)
The Black Zone

             White zone




                      Gray zone

                             Black zone
The Black Zone

 • Unfortunately it may happen that you
   weren’t allowed to use some specific code
   that is part of your project.
 • Solution:
   – either you ask (and get!) permission,
   – or you remove the code.
In practice

•   I’m a developer
•   I started writing a PDF library in 1998
•   It was first published online in 1999
•   It was completely refactored in 2000
•   Many people contributed, and…
•   IANAL!!! ( = I Am Not A Lawyer)
•   2006: who owns the IP of iText?
IP Project

• July 2006: Eclipse Simultaneous Release
  – “Callisto”; tested and approved by IBM
• Eclipse/BIRT (Actuate) is part of this release
  – Project led by Actuate
• iText is used in Eclipse/BIRT
  – License MPL: not acceptable for IBM
  – Research Agreement between Actuate and
    Ghent University with as deliverable: IP Review
Turning Gray and Black
      into White

                   White zone




                           Gray zone
                                       Black zone
Example 1

• State machine to parse XML quickly:
• Source taken from/inspired by:
  – http://www.javaworld.com/javaworld/javatips/
    jw-javatip128.html
• Read the fine print!
  – All contents of JavaWorld, including text, programs,
    applets, source code, and images are copyrighted and
    owned by IDG or the copyright holder specified, all
    rights reserved. No material may be reproduced
    electronically or in print without written permission
JavaWorld article
Copyright Notice
Solution 1

• Write JavaWorld and author, get permission!
• Note: there were many other places where
  licenses were incomplete or missing!
• It must become your second nature to ask
  for permission and to document! document!
  document!
Example 2

• Names and variables referring to RC4
  – RC4 was initially a trade secret, but in September 1994 a
    description of it was anonymously posted to the
    Cypherpunks mailing list.
  – It was soon posted on the sci.crypt newsgroup, and
    from there to many sites on the Internet. Because the
    algorithm is known, it is no longer a trade secret.
  – The name quot;RC4quot; is trademarked, however. The current
    status seems to be that quot;unofficialquot; implementations
    are legal, but cannot use the RC4 name.
Solution 2

• RC4 is often referred to as quot;ARCFOURquot; or
  quot;ARC4quot; (meaning Alleged RC4, because RSA
  has never officially released the algorithm),
  to avoid possible trademark problems.
• Change all class and variable names:
  for instance change RC4_ENCRYPTION into
  ARCFOUR_ENCRYPTION
Example 3
Code taken from ACME.com:
Class IntHashtable   //   This is 90% based on JavaSoft's java.util.Hashtable.
                     //   Visit the ACME Labs Java page for up-to-date versions
                     //   of this and other fine Java utilities:
                     //   http://www.acme.com/java/


                     JavaSoft is a name used by Sun in the past in
                         their Java activities.
                     Sun indicates use of the class java.util.Hashtable
                         which is subject to unfriendly Sun license
                     It is unlikely that this code is available under a
                         license that permits this use. Without
                         information indicating that Sun approved of
                         this usage the class should not be used.
Solution 3

• use the same class released by Apache
  under the APL in Apache-Commons instead
  of the ACME class.
EPS Functionality in iText
            Taken from an example released by SUN under a
               Sample License.
            The Sample License allowed the use of the code,
Problem 4
               but the source code contained this text:
            /*
             * Copyright 1998 by Sun Microsystems, Inc.,
             * 901 San Antonio Road, Palo Alto, California,
             * 94303, U.S.A. All rights reserved.
             *
             * This software is the confidential and proprietary
             * information of Sun Microsystems, Inc.
             * (quot;Confidential Informationquot;). You shall not
             * disclose such Confidential Information and shall
             * use it only in accordance with the terms of the
             * license agreement you entered into with Sun.
             */
            Solution: after a very long argument about this
              comment section versus the Sample License, EPS
              functionality was dropped.
Fedora Linux and nuclear facilities
            Some code involving TIFFs was taken from the JAI
              library originally released by SUN under a very
Problem 5
              liberal license. However, the license text contains
              the following clause:
            /*
             * You acknowledge that Software is not designed, licensed
             * or intended for use in the design, construction,
             * operation or maintenance of any nuclear facility.
             */


            As long as the word “licensed” isn’t removed, iText
               can’t be distributed with Fedora Linux.
            Solution: direct communication with the core
               developers to solve the problem.
Contributors
Contributions
Who did what?
Third Party Content
Result: 2007

• iText was shipped as part of Eclipse/BIRT with the
  Europa Simultaneous Release in 2007: IBM,
  Actuate and the Eclipse Foundation happy!
• No more doubts about the ownership iText.
  Maintaining a clear overview of the IP and avoiding
  possible IP issues in the future has become a
  ‘second nature’: Bruno happy!

• A valuable experience with a valuable result!
Thank you!
Questions are always welcome

Más contenido relacionado

La actualidad más candente

Monetizing open-source projects
Monetizing open-source projectsMonetizing open-source projects
Monetizing open-source projectsiText Group nv
 
Top Open Source Licenses Explained
Top Open Source Licenses ExplainedTop Open Source Licenses Explained
Top Open Source Licenses ExplainedWhiteSource
 
Understanding open source licenses
Understanding open source licensesUnderstanding open source licenses
Understanding open source licensesRogue Wave Software
 
Introduction To Open Source Licensing
Introduction To Open Source LicensingIntroduction To Open Source Licensing
Introduction To Open Source LicensingMark Radcliffe
 
Open Source SW Business
Open Source SW Business Open Source SW Business
Open Source SW Business SANGHEE SHIN
 
01-15 Bay Area OSS Meetup: Free and Open Source Software Licensing Overview
01-15 Bay Area OSS Meetup: Free and Open Source Software Licensing Overview01-15 Bay Area OSS Meetup: Free and Open Source Software Licensing Overview
01-15 Bay Area OSS Meetup: Free and Open Source Software Licensing OverviewAlexander Graebe
 
Digital Signatures: how it's done in PDF
Digital Signatures: how it's done in PDFDigital Signatures: how it's done in PDF
Digital Signatures: how it's done in PDFiText Group nv
 
Open Source Your Project (With Jasig)
Open Source Your Project (With Jasig)Open Source Your Project (With Jasig)
Open Source Your Project (With Jasig)John Lewis
 
EOLE / OWF 12 - Viral licences – myth or reality - patrice-emmanuel schmitz (...
EOLE / OWF 12 - Viral licences – myth or reality - patrice-emmanuel schmitz (...EOLE / OWF 12 - Viral licences – myth or reality - patrice-emmanuel schmitz (...
EOLE / OWF 12 - Viral licences – myth or reality - patrice-emmanuel schmitz (...Paris Open Source Summit
 
Android and OSGi Can They Work Together - BJ Hargrave & Neil Bartlett
Android and OSGi Can They Work Together - BJ Hargrave & Neil BartlettAndroid and OSGi Can They Work Together - BJ Hargrave & Neil Bartlett
Android and OSGi Can They Work Together - BJ Hargrave & Neil Bartlettmfrancis
 
Open Source Software - Avoiding Common Pitfalls
Open Source Software - Avoiding Common PitfallsOpen Source Software - Avoiding Common Pitfalls
Open Source Software - Avoiding Common PitfallsAnsel Halliburton
 
Don't Screw Up Your Licensing
Don't Screw Up Your LicensingDon't Screw Up Your Licensing
Don't Screw Up Your LicensingAnsel Halliburton
 
PDF is dead. Long live PDF... with Java!
PDF is dead. Long live PDF... with Java!PDF is dead. Long live PDF... with Java!
PDF is dead. Long live PDF... with Java!iText Group nv
 
Business and Sustainability Models Around FOSS (1 of 2)
Business and Sustainability Models Around FOSS (1 of 2)Business and Sustainability Models Around FOSS (1 of 2)
Business and Sustainability Models Around FOSS (1 of 2)Rowan Wilson
 

La actualidad más candente (19)

Monetizing open-source projects
Monetizing open-source projectsMonetizing open-source projects
Monetizing open-source projects
 
Top Open Source Licenses Explained
Top Open Source Licenses ExplainedTop Open Source Licenses Explained
Top Open Source Licenses Explained
 
Open Source Software Licenses
Open Source Software Licenses Open Source Software Licenses
Open Source Software Licenses
 
Understanding open source licenses
Understanding open source licensesUnderstanding open source licenses
Understanding open source licenses
 
Introduction To Open Source Licensing
Introduction To Open Source LicensingIntroduction To Open Source Licensing
Introduction To Open Source Licensing
 
Open Source SW Business
Open Source SW Business Open Source SW Business
Open Source SW Business
 
01-15 Bay Area OSS Meetup: Free and Open Source Software Licensing Overview
01-15 Bay Area OSS Meetup: Free and Open Source Software Licensing Overview01-15 Bay Area OSS Meetup: Free and Open Source Software Licensing Overview
01-15 Bay Area OSS Meetup: Free and Open Source Software Licensing Overview
 
Corporate Shenanigans
Corporate ShenanigansCorporate Shenanigans
Corporate Shenanigans
 
Digital Signatures: how it's done in PDF
Digital Signatures: how it's done in PDFDigital Signatures: how it's done in PDF
Digital Signatures: how it's done in PDF
 
Open Source Licences
Open Source LicencesOpen Source Licences
Open Source Licences
 
Open Source Your Project (With Jasig)
Open Source Your Project (With Jasig)Open Source Your Project (With Jasig)
Open Source Your Project (With Jasig)
 
EOLE / OWF 12 - Viral licences – myth or reality - patrice-emmanuel schmitz (...
EOLE / OWF 12 - Viral licences – myth or reality - patrice-emmanuel schmitz (...EOLE / OWF 12 - Viral licences – myth or reality - patrice-emmanuel schmitz (...
EOLE / OWF 12 - Viral licences – myth or reality - patrice-emmanuel schmitz (...
 
ZUGFeRD: an overview
ZUGFeRD: an overviewZUGFeRD: an overview
ZUGFeRD: an overview
 
Android and OSGi Can They Work Together - BJ Hargrave & Neil Bartlett
Android and OSGi Can They Work Together - BJ Hargrave & Neil BartlettAndroid and OSGi Can They Work Together - BJ Hargrave & Neil Bartlett
Android and OSGi Can They Work Together - BJ Hargrave & Neil Bartlett
 
Open Source Software - Avoiding Common Pitfalls
Open Source Software - Avoiding Common PitfallsOpen Source Software - Avoiding Common Pitfalls
Open Source Software - Avoiding Common Pitfalls
 
What is open source
What is open sourceWhat is open source
What is open source
 
Don't Screw Up Your Licensing
Don't Screw Up Your LicensingDon't Screw Up Your Licensing
Don't Screw Up Your Licensing
 
PDF is dead. Long live PDF... with Java!
PDF is dead. Long live PDF... with Java!PDF is dead. Long live PDF... with Java!
PDF is dead. Long live PDF... with Java!
 
Business and Sustainability Models Around FOSS (1 of 2)
Business and Sustainability Models Around FOSS (1 of 2)Business and Sustainability Models Around FOSS (1 of 2)
Business and Sustainability Models Around FOSS (1 of 2)
 

Similar a iText IP Review

FITT Toolbox: Open Source Business Case
FITT Toolbox: Open Source Business CaseFITT Toolbox: Open Source Business Case
FITT Toolbox: Open Source Business CaseFITT
 
Startup Legal and IP
Startup Legal and IPStartup Legal and IP
Startup Legal and IPBruno Lowagie
 
worklight_development_environment
worklight_development_environmentworklight_development_environment
worklight_development_environmentAravindharamanan S
 
Conversation on Open Source - CU Boulder - Feb 2017
Conversation on Open Source - CU Boulder - Feb 2017Conversation on Open Source - CU Boulder - Feb 2017
Conversation on Open Source - CU Boulder - Feb 2017Jason Carolan
 
Copyright, Open Source and APIs (towards an Interface Commons)
Copyright, Open Source and APIs (towards an Interface Commons)Copyright, Open Source and APIs (towards an Interface Commons)
Copyright, Open Source and APIs (towards an Interface Commons)3scale
 
ITAM UK 2017 Open source alternatives_John Springall
ITAM UK 2017 Open source alternatives_John Springall ITAM UK 2017 Open source alternatives_John Springall
ITAM UK 2017 Open source alternatives_John Springall Martin Thompson
 
Eclipse 3.7 : Tips and tricks
Eclipse 3.7 : Tips and tricksEclipse 3.7 : Tips and tricks
Eclipse 3.7 : Tips and tricksTomasz Zarna
 
Randstad Docker meetup - Serverless
Randstad Docker meetup - ServerlessRandstad Docker meetup - Serverless
Randstad Docker meetup - ServerlessDavid Delabassee
 
Open source software 101: Compliance and risk management
Open source software 101: Compliance and risk managementOpen source software 101: Compliance and risk management
Open source software 101: Compliance and risk managementOsler, Hoskin & Harcourt LLP
 
Is Android the New King of Embedded OSes at Embedded World 2014
Is Android the New King of Embedded OSes at Embedded World 2014Is Android the New King of Embedded OSes at Embedded World 2014
Is Android the New King of Embedded OSes at Embedded World 2014Opersys inc.
 
Open Source Software Licence Compliance: Art or science?
Open Source Software Licence Compliance: Art or science? Open Source Software Licence Compliance: Art or science?
Open Source Software Licence Compliance: Art or science? Shane Coughlan
 
Introduction to License Compliance and My research (D. German)
Introduction to License Compliance and My research (D. German)Introduction to License Compliance and My research (D. German)
Introduction to License Compliance and My research (D. German)dmgerman
 
Legal Issues in Developing in a Hybrid Envionment with Open Source Software
Legal Issues in Developing in a Hybrid Envionment with Open Source SoftwareLegal Issues in Developing in a Hybrid Envionment with Open Source Software
Legal Issues in Developing in a Hybrid Envionment with Open Source SoftwareMark Radcliffe
 
From the Eclipse Foundation to the Symbian Foundation
From the Eclipse Foundation to the Symbian FoundationFrom the Eclipse Foundation to the Symbian Foundation
From the Eclipse Foundation to the Symbian FoundationDavid Wood
 
EclipseCon Europe 2012 Tabris Workshop
EclipseCon Europe 2012 Tabris WorkshopEclipseCon Europe 2012 Tabris Workshop
EclipseCon Europe 2012 Tabris WorkshopHolger Staudacher
 
OpenNTF Webinar 05/07/13: OpenNTF - The IBM Collaboration Solutions App Dev C...
OpenNTF Webinar 05/07/13: OpenNTF - The IBM Collaboration Solutions App Dev C...OpenNTF Webinar 05/07/13: OpenNTF - The IBM Collaboration Solutions App Dev C...
OpenNTF Webinar 05/07/13: OpenNTF - The IBM Collaboration Solutions App Dev C...Niklas Heidloff
 
Java and Serverless - A Match Made In Heaven, Part 1
Java and Serverless - A Match Made In Heaven, Part 1Java and Serverless - A Match Made In Heaven, Part 1
Java and Serverless - A Match Made In Heaven, Part 1Curity
 

Similar a iText IP Review (20)

FITT Toolbox: Open Source Business Case
FITT Toolbox: Open Source Business CaseFITT Toolbox: Open Source Business Case
FITT Toolbox: Open Source Business Case
 
Startup Legal and IP
Startup Legal and IPStartup Legal and IP
Startup Legal and IP
 
worklight_development_environment
worklight_development_environmentworklight_development_environment
worklight_development_environment
 
Conversation on Open Source - CU Boulder - Feb 2017
Conversation on Open Source - CU Boulder - Feb 2017Conversation on Open Source - CU Boulder - Feb 2017
Conversation on Open Source - CU Boulder - Feb 2017
 
App armor structure
App armor structureApp armor structure
App armor structure
 
Copyright, Open Source and APIs (towards an Interface Commons)
Copyright, Open Source and APIs (towards an Interface Commons)Copyright, Open Source and APIs (towards an Interface Commons)
Copyright, Open Source and APIs (towards an Interface Commons)
 
ITAM UK 2017 Open source alternatives_John Springall
ITAM UK 2017 Open source alternatives_John Springall ITAM UK 2017 Open source alternatives_John Springall
ITAM UK 2017 Open source alternatives_John Springall
 
Eclipse 3.7 : Tips and tricks
Eclipse 3.7 : Tips and tricksEclipse 3.7 : Tips and tricks
Eclipse 3.7 : Tips and tricks
 
Randstad Docker meetup - Serverless
Randstad Docker meetup - ServerlessRandstad Docker meetup - Serverless
Randstad Docker meetup - Serverless
 
Open source software 101: Compliance and risk management
Open source software 101: Compliance and risk managementOpen source software 101: Compliance and risk management
Open source software 101: Compliance and risk management
 
Opensource
OpensourceOpensource
Opensource
 
Multi Stage Docker Build
Multi Stage Docker Build Multi Stage Docker Build
Multi Stage Docker Build
 
Is Android the New King of Embedded OSes at Embedded World 2014
Is Android the New King of Embedded OSes at Embedded World 2014Is Android the New King of Embedded OSes at Embedded World 2014
Is Android the New King of Embedded OSes at Embedded World 2014
 
Open Source Software Licence Compliance: Art or science?
Open Source Software Licence Compliance: Art or science? Open Source Software Licence Compliance: Art or science?
Open Source Software Licence Compliance: Art or science?
 
Introduction to License Compliance and My research (D. German)
Introduction to License Compliance and My research (D. German)Introduction to License Compliance and My research (D. German)
Introduction to License Compliance and My research (D. German)
 
Legal Issues in Developing in a Hybrid Envionment with Open Source Software
Legal Issues in Developing in a Hybrid Envionment with Open Source SoftwareLegal Issues in Developing in a Hybrid Envionment with Open Source Software
Legal Issues in Developing in a Hybrid Envionment with Open Source Software
 
From the Eclipse Foundation to the Symbian Foundation
From the Eclipse Foundation to the Symbian FoundationFrom the Eclipse Foundation to the Symbian Foundation
From the Eclipse Foundation to the Symbian Foundation
 
EclipseCon Europe 2012 Tabris Workshop
EclipseCon Europe 2012 Tabris WorkshopEclipseCon Europe 2012 Tabris Workshop
EclipseCon Europe 2012 Tabris Workshop
 
OpenNTF Webinar 05/07/13: OpenNTF - The IBM Collaboration Solutions App Dev C...
OpenNTF Webinar 05/07/13: OpenNTF - The IBM Collaboration Solutions App Dev C...OpenNTF Webinar 05/07/13: OpenNTF - The IBM Collaboration Solutions App Dev C...
OpenNTF Webinar 05/07/13: OpenNTF - The IBM Collaboration Solutions App Dev C...
 
Java and Serverless - A Match Made In Heaven, Part 1
Java and Serverless - A Match Made In Heaven, Part 1Java and Serverless - A Match Made In Heaven, Part 1
Java and Serverless - A Match Made In Heaven, Part 1
 

Más de Bruno Lowagie

The Dark Magic of Start-Up Valuation
The Dark Magic of Start-Up ValuationThe Dark Magic of Start-Up Valuation
The Dark Magic of Start-Up ValuationBruno Lowagie
 
Open Source Survival: A Story from the Trenches
Open Source Survival: A Story from the TrenchesOpen Source Survival: A Story from the Trenches
Open Source Survival: A Story from the TrenchesBruno Lowagie
 
Entreprenerd: presenting the book
Entreprenerd: presenting the bookEntreprenerd: presenting the book
Entreprenerd: presenting the bookBruno Lowagie
 
The Secret of your Success
The Secret of your SuccessThe Secret of your Success
The Secret of your SuccessBruno Lowagie
 
Blockchain: use cases for the future
Blockchain: use cases for the futureBlockchain: use cases for the future
Blockchain: use cases for the futureBruno Lowagie
 
Blockchain Fundamentals
Blockchain FundamentalsBlockchain Fundamentals
Blockchain FundamentalsBruno Lowagie
 
Digital Signatures in PDF: how it's done
Digital Signatures in PDF: how it's doneDigital Signatures in PDF: how it's done
Digital Signatures in PDF: how it's doneBruno Lowagie
 
How can large open source projects be monetized?
How can large open source projects be monetized?How can large open source projects be monetized?
How can large open source projects be monetized?Bruno Lowagie
 
Waarom iText de Leeuw van de Export 2016 moet winnen
Waarom iText de Leeuw van de Export 2016 moet winnenWaarom iText de Leeuw van de Export 2016 moet winnen
Waarom iText de Leeuw van de Export 2016 moet winnenBruno Lowagie
 
Belgium and the US: a mutual introduction
Belgium and the US: a mutual introductionBelgium and the US: a mutual introduction
Belgium and the US: a mutual introductionBruno Lowagie
 
Four failures and one hit
Four failures and one hitFour failures and one hit
Four failures and one hitBruno Lowagie
 
Startup Weekend Ghent
Startup Weekend GhentStartup Weekend Ghent
Startup Weekend GhentBruno Lowagie
 
Doing business in the US: Yes, You Can!
Doing business in the US: Yes, You Can!Doing business in the US: Yes, You Can!
Doing business in the US: Yes, You Can!Bruno Lowagie
 
Community Leadership Summit - Calistoga March 2013
Community Leadership Summit - Calistoga March 2013Community Leadership Summit - Calistoga March 2013
Community Leadership Summit - Calistoga March 2013Bruno Lowagie
 
Bizcamp #8: The Founder's Dilemmas, Control vs. Wealth decisions
Bizcamp #8: The Founder's Dilemmas, Control vs. Wealth decisionsBizcamp #8: The Founder's Dilemmas, Control vs. Wealth decisions
Bizcamp #8: The Founder's Dilemmas, Control vs. Wealth decisionsBruno Lowagie
 
Kruispunt Brugsepoortstraat
Kruispunt BrugsepoortstraatKruispunt Brugsepoortstraat
Kruispunt BrugsepoortstraatBruno Lowagie
 
What's new in PDF 2.0 regarding digital signatures
What's new in PDF 2.0 regarding digital signaturesWhat's new in PDF 2.0 regarding digital signatures
What's new in PDF 2.0 regarding digital signaturesBruno Lowagie
 
GentM #9: Business Angels
GentM #9: Business AngelsGentM #9: Business Angels
GentM #9: Business AngelsBruno Lowagie
 
Zenika - iText in Action
Zenika - iText in ActionZenika - iText in Action
Zenika - iText in ActionBruno Lowagie
 

Más de Bruno Lowagie (20)

The Dark Magic of Start-Up Valuation
The Dark Magic of Start-Up ValuationThe Dark Magic of Start-Up Valuation
The Dark Magic of Start-Up Valuation
 
Open Source Survival: A Story from the Trenches
Open Source Survival: A Story from the TrenchesOpen Source Survival: A Story from the Trenches
Open Source Survival: A Story from the Trenches
 
Entreprenerd: presenting the book
Entreprenerd: presenting the bookEntreprenerd: presenting the book
Entreprenerd: presenting the book
 
The Secret of your Success
The Secret of your SuccessThe Secret of your Success
The Secret of your Success
 
Blockchain: use cases for the future
Blockchain: use cases for the futureBlockchain: use cases for the future
Blockchain: use cases for the future
 
Blockchain Fundamentals
Blockchain FundamentalsBlockchain Fundamentals
Blockchain Fundamentals
 
Digital Signatures in PDF: how it's done
Digital Signatures in PDF: how it's doneDigital Signatures in PDF: how it's done
Digital Signatures in PDF: how it's done
 
How can large open source projects be monetized?
How can large open source projects be monetized?How can large open source projects be monetized?
How can large open source projects be monetized?
 
Waarom iText de Leeuw van de Export 2016 moet winnen
Waarom iText de Leeuw van de Export 2016 moet winnenWaarom iText de Leeuw van de Export 2016 moet winnen
Waarom iText de Leeuw van de Export 2016 moet winnen
 
Belgium and the US: a mutual introduction
Belgium and the US: a mutual introductionBelgium and the US: a mutual introduction
Belgium and the US: a mutual introduction
 
Four failures and one hit
Four failures and one hitFour failures and one hit
Four failures and one hit
 
Startup Weekend Ghent
Startup Weekend GhentStartup Weekend Ghent
Startup Weekend Ghent
 
Doing business in the US: Yes, You Can!
Doing business in the US: Yes, You Can!Doing business in the US: Yes, You Can!
Doing business in the US: Yes, You Can!
 
Community Leadership Summit - Calistoga March 2013
Community Leadership Summit - Calistoga March 2013Community Leadership Summit - Calistoga March 2013
Community Leadership Summit - Calistoga March 2013
 
Bizcamp #8: The Founder's Dilemmas, Control vs. Wealth decisions
Bizcamp #8: The Founder's Dilemmas, Control vs. Wealth decisionsBizcamp #8: The Founder's Dilemmas, Control vs. Wealth decisions
Bizcamp #8: The Founder's Dilemmas, Control vs. Wealth decisions
 
Kruispunt Brugsepoortstraat
Kruispunt BrugsepoortstraatKruispunt Brugsepoortstraat
Kruispunt Brugsepoortstraat
 
What's new in PDF 2.0 regarding digital signatures
What's new in PDF 2.0 regarding digital signaturesWhat's new in PDF 2.0 regarding digital signatures
What's new in PDF 2.0 regarding digital signatures
 
GentM #9: Business Angels
GentM #9: Business AngelsGentM #9: Business Angels
GentM #9: Business Angels
 
De lijn
De lijnDe lijn
De lijn
 
Zenika - iText in Action
Zenika - iText in ActionZenika - iText in Action
Zenika - iText in Action
 

Último

Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Farhan Tariq
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentPim van der Noll
 
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPathCommunity
 
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...panagenda
 
JET Technology Labs White Paper for Virtualized Security and Encryption Techn...
JET Technology Labs White Paper for Virtualized Security and Encryption Techn...JET Technology Labs White Paper for Virtualized Security and Encryption Techn...
JET Technology Labs White Paper for Virtualized Security and Encryption Techn...amber724300
 
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical InfrastructureVarsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructureitnewsafrica
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsRavi Sanghani
 
Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityDecarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityIES VE
 
Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...
Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...
Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...Jeffrey Haguewood
 
Infrared simulation and processing on Nvidia platforms
Infrared simulation and processing on Nvidia platformsInfrared simulation and processing on Nvidia platforms
Infrared simulation and processing on Nvidia platformsYoss Cohen
 
Microsoft 365 Copilot: How to boost your productivity with AI – Part two: Dat...
Microsoft 365 Copilot: How to boost your productivity with AI – Part two: Dat...Microsoft 365 Copilot: How to boost your productivity with AI – Part two: Dat...
Microsoft 365 Copilot: How to boost your productivity with AI – Part two: Dat...Nikki Chapple
 
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...Nikki Chapple
 
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Mark Goldstein
 
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxGenerative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxfnnc6jmgwh
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfpanagenda
 
Accelerating Enterprise Software Engineering with Platformless
Accelerating Enterprise Software Engineering with PlatformlessAccelerating Enterprise Software Engineering with Platformless
Accelerating Enterprise Software Engineering with PlatformlessWSO2
 
Top 10 Hubspot Development Companies in 2024
Top 10 Hubspot Development Companies in 2024Top 10 Hubspot Development Companies in 2024
Top 10 Hubspot Development Companies in 2024TopCSSGallery
 
Landscape Catalogue 2024 Australia-1.pdf
Landscape Catalogue 2024 Australia-1.pdfLandscape Catalogue 2024 Australia-1.pdf
Landscape Catalogue 2024 Australia-1.pdfAarwolf Industries LLC
 
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Strongerpanagenda
 
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality AssuranceInflectra
 

Último (20)

Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
 
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to Hero
 
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
 
JET Technology Labs White Paper for Virtualized Security and Encryption Techn...
JET Technology Labs White Paper for Virtualized Security and Encryption Techn...JET Technology Labs White Paper for Virtualized Security and Encryption Techn...
JET Technology Labs White Paper for Virtualized Security and Encryption Techn...
 
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical InfrastructureVarsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and Insights
 
Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityDecarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a reality
 
Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...
Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...
Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...
 
Infrared simulation and processing on Nvidia platforms
Infrared simulation and processing on Nvidia platformsInfrared simulation and processing on Nvidia platforms
Infrared simulation and processing on Nvidia platforms
 
Microsoft 365 Copilot: How to boost your productivity with AI – Part two: Dat...
Microsoft 365 Copilot: How to boost your productivity with AI – Part two: Dat...Microsoft 365 Copilot: How to boost your productivity with AI – Part two: Dat...
Microsoft 365 Copilot: How to boost your productivity with AI – Part two: Dat...
 
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
 
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
 
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxGenerative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
 
Accelerating Enterprise Software Engineering with Platformless
Accelerating Enterprise Software Engineering with PlatformlessAccelerating Enterprise Software Engineering with Platformless
Accelerating Enterprise Software Engineering with Platformless
 
Top 10 Hubspot Development Companies in 2024
Top 10 Hubspot Development Companies in 2024Top 10 Hubspot Development Companies in 2024
Top 10 Hubspot Development Companies in 2024
 
Landscape Catalogue 2024 Australia-1.pdf
Landscape Catalogue 2024 Australia-1.pdfLandscape Catalogue 2024 Australia-1.pdf
Landscape Catalogue 2024 Australia-1.pdf
 
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
 
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
 

iText IP Review

  • 1. Intellectual Property of F/OSS Case Study: iText a Free/Open Source Java-PDF library Bruno Lowagie
  • 2. F/OSS and IP • iText was started by one person in 1998 • Another developer joined in 2000 • From then on the product grows organically: It’s a joined effort of many different people • But who is the owner of the code? Who owns the Intellectual Property?
  • 3. Your product White zone Gray zone Black zone
  • 4. The White Zone White zone Gray zone Black zone
  • 5. The White Zone • You have written the code yourself, but – What about your employer? Does your employer own (part of) the code? Do you have a formal agreement with your employer with respect to F/OSS? – Where did you get your inspiration? IBM developers are forbidden to look at any code that is not formally approved by IBM’s legal team. Good practice or burden?
  • 7. The Gray Zone White zone Gray zone Black zone
  • 8. The Gray Zone • The code was contributed, but: – Did the contributor agree with the license? – Did the contributor’s employer agree? – Where did the contributor get his inspiration? • The code is taken from another project, but: – Are the licenses compatible? – Do you respect the other project’s license? – Where did the other project get its code from?
  • 9. The Gray Zone • Contributor License Agreements – The Apache Foundation demands contributors and their employers to sign a CLA – SUN demands contributors to sign an SCA from the moment the contributions contain more than 20 lines of code • Check License Compatibility – Keep a detailed inventory of all F/OSS Projects (subset / derivative work)
  • 10. The Black Zone White zone Gray zone Black zone
  • 11. The Black Zone • Unfortunately it may happen that you weren’t allowed to use some specific code that is part of your project. • Solution: – either you ask (and get!) permission, – or you remove the code.
  • 12. In practice • I’m a developer • I started writing a PDF library in 1998 • It was first published online in 1999 • It was completely refactored in 2000 • Many people contributed, and… • IANAL!!! ( = I Am Not A Lawyer) • 2006: who owns the IP of iText?
  • 13. IP Project • July 2006: Eclipse Simultaneous Release – “Callisto”; tested and approved by IBM • Eclipse/BIRT (Actuate) is part of this release – Project led by Actuate • iText is used in Eclipse/BIRT – License MPL: not acceptable for IBM – Research Agreement between Actuate and Ghent University with as deliverable: IP Review
  • 14. Turning Gray and Black into White White zone Gray zone Black zone
  • 15. Example 1 • State machine to parse XML quickly: • Source taken from/inspired by: – http://www.javaworld.com/javaworld/javatips/ jw-javatip128.html • Read the fine print! – All contents of JavaWorld, including text, programs, applets, source code, and images are copyrighted and owned by IDG or the copyright holder specified, all rights reserved. No material may be reproduced electronically or in print without written permission
  • 18. Solution 1 • Write JavaWorld and author, get permission! • Note: there were many other places where licenses were incomplete or missing! • It must become your second nature to ask for permission and to document! document! document!
  • 19. Example 2 • Names and variables referring to RC4 – RC4 was initially a trade secret, but in September 1994 a description of it was anonymously posted to the Cypherpunks mailing list. – It was soon posted on the sci.crypt newsgroup, and from there to many sites on the Internet. Because the algorithm is known, it is no longer a trade secret. – The name quot;RC4quot; is trademarked, however. The current status seems to be that quot;unofficialquot; implementations are legal, but cannot use the RC4 name.
  • 20. Solution 2 • RC4 is often referred to as quot;ARCFOURquot; or quot;ARC4quot; (meaning Alleged RC4, because RSA has never officially released the algorithm), to avoid possible trademark problems. • Change all class and variable names: for instance change RC4_ENCRYPTION into ARCFOUR_ENCRYPTION
  • 22. Code taken from ACME.com: Class IntHashtable // This is 90% based on JavaSoft's java.util.Hashtable. // Visit the ACME Labs Java page for up-to-date versions // of this and other fine Java utilities: // http://www.acme.com/java/ JavaSoft is a name used by Sun in the past in their Java activities. Sun indicates use of the class java.util.Hashtable which is subject to unfriendly Sun license It is unlikely that this code is available under a license that permits this use. Without information indicating that Sun approved of this usage the class should not be used.
  • 23. Solution 3 • use the same class released by Apache under the APL in Apache-Commons instead of the ACME class.
  • 24. EPS Functionality in iText Taken from an example released by SUN under a Sample License. The Sample License allowed the use of the code, Problem 4 but the source code contained this text: /* * Copyright 1998 by Sun Microsystems, Inc., * 901 San Antonio Road, Palo Alto, California, * 94303, U.S.A. All rights reserved. * * This software is the confidential and proprietary * information of Sun Microsystems, Inc. * (quot;Confidential Informationquot;). You shall not * disclose such Confidential Information and shall * use it only in accordance with the terms of the * license agreement you entered into with Sun. */ Solution: after a very long argument about this comment section versus the Sample License, EPS functionality was dropped.
  • 25. Fedora Linux and nuclear facilities Some code involving TIFFs was taken from the JAI library originally released by SUN under a very Problem 5 liberal license. However, the license text contains the following clause: /* * You acknowledge that Software is not designed, licensed * or intended for use in the design, construction, * operation or maintenance of any nuclear facility. */ As long as the word “licensed” isn’t removed, iText can’t be distributed with Fedora Linux. Solution: direct communication with the core developers to solve the problem.
  • 30. Result: 2007 • iText was shipped as part of Eclipse/BIRT with the Europa Simultaneous Release in 2007: IBM, Actuate and the Eclipse Foundation happy! • No more doubts about the ownership iText. Maintaining a clear overview of the IP and avoiding possible IP issues in the future has become a ‘second nature’: Bruno happy! • A valuable experience with a valuable result!
  • 31. Thank you! Questions are always welcome