The specification is quite long and attempts to address an extremely wide range of security issues. The topic of distributed objects is complicated enough when considered on its own and it certainly doesn't get any simpler with the addition of security. It also has a Java language binding. Java is suitable due to its ability for rapid prototyping, it is widely used in the commercial world and also is a common language for some of the Security Units other projects. Security Level 1 provides security for applications that are unaware of security.
Any subsequent messaging is encrypted for confidentiality.
Security Level 2 provides more functionality to support applications that wish to be more proactive in controlling their own security requirements.