Java Card Communications Access Layer

How is Jaccal licensed?

Jaccal, Anubis and all the optional components are licensed under the Apache 2.0 License, a certified open source licence. For the full details of the licence please go to

Why open source?

We believe open source is the best way to promote and extend the usage of Jaccal. Our vision of establishing an open platform for accessing smart card information from Java necessarily requires contribution from more than the 2 of us, by closing the software with tight licensing, we will not be able to achieve this dream.

What is open source anyway?

A discussion on open source is beyond this site! For more detailed information please go to the Open Source Initiative (OSI)

Taken directly from the OSI web site:

	The basic idea behind open source is very simple: When programmers can read, redistribute, 
	and modify the source code for a piece of software, the software evolves. People improve it, 
	people adapt it, people fix bugs. And this can happen at a speed that, if one is used to 
	the slow pace of conventional software development, seems astonishing.
	We in the open source community have learned that this rapid evolutionary process produces 
	better software than the traditional closed model, in which only a very few programmers can 
	see the source and everybody else must blindly use an opaque block of bits.
	Open Source Initiative exists to make this case to the commercial world.
	Open source software is an idea whose time has finally come. For twenty years it has been 
	building momentum in the technical cultures that built the Internet and the World Wide Web. 
	Now it's breaking out into the commercial world, and that's changing all the rules. 
	Are you ready?	      

Why Apache 2.0 License?

The Apache 2.0 license was chosen because it allows you, the developer, to have more freedom in extending our software the way you like it, without being retricted more than necessary. We chose this license instead of coming up with our own because we believe that there are already too many licences out there and there is no need to re-invent the wheel when there is a perfectly good one we can use.

Licensing for other software

We use 2 other pieces of open source software in Jaccal -- JUnit for unit testing and Beanshell for the scripting engine behind Jaccal.

JUnit uses the Common Public License 1.0. However unless you are using Junit in your development (which we encourage you to), you are not bound to this license. If you are just using Jaccal or Anubis and not extending or modify it, you are not using JUnit therefore is not bound by it.

Beanshell is dual-licensed under the Sun Public License and the GNU Lesser General Public License (LGPL). For the purpose of this project we are licensing Beanshell under LGPL, and the licence notice is packaged with the distributable binaries. However because we are not extending or modifying Beanshell, we are not obliged to license Jaccal under LGPL. At the same time, if you do not mind a bit more work, you are free to choose the scripting language you wish to use. The code that selects the scripting language to use is encapsulated neatly into a single ScriptRunner class, which you can extend or replace easily.