providing fine-grained access control for java programs *

25

Upload: dangdat

Post on 11-Dec-2016

228 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Providing Fine-Grained Access Control for Java Programs *

��������� ����� ��� ����� ������� ��� � �

����� �� �

���� ����� ��� ���� �����

�������� ��� ���� ��� ���� ��� �������������� ��� ������ ����������

������� �� ��������� ���� �� ������������� ������ ����� ���������������� � ����� ����

��������� !��� ���������� ������ � ������� �!�� ��� ���������� ��� !�� �� ����!�� ��� �"�� ��# $���� ������� ��� ������������ � �!�� ����� ����� ��%���� �� ���&��' ��� ��� ��� �"���(���� �� ��������� �����# )�&����� ��� �!�� ��� ���������������� �!�� !��� �!� ����� �� ���� ��� ����� � � � !��*��������� ��� ���# +� �! ������ &� ������ � ����� �������! ��� ���(������� ��� ��������� � ��* ��� ���# +� �! �������!� � �� � ����������� ����� ���� ��� �� ����� � �� �� �������� �� ����� ����� ���# � �� �� ���� ������������ ���� ������� �!�� ���������� ����� ������� �� ��������� �!� ���� �������� �!��'�� ����������� ��� �!� ����� ������� ��� ��� ��� ��,����# -��� � � ��������! ��� ��� ��. �� ��� ��� �� ��'� �"���� ���� �� � ���������������� � ��� ��� ������ ��� � ���,� � ���� ���� �������(�����#

� ����������

����� �� ���������� �������� �� ��������� ������ ���� ������� ��������� �� ���������� �� ����� ������� � ������� �������� �� � ������ ����� �������� ��������� �������� ��� ������ ���������� ��� ��������� �!� "#$ �������� ��� ������������ %���� ���� �� ��� ������ ������� �� � &�% ����� '��� � ���� ����������� &�% ���� ������� � %��&���� ��� %��&��� �������� �!� �������� ����������� &��� ��� ���� ��� �������� ���� �� ��� ������ ����� ����� ��� ��� �������������� ������ ���� ������� ��%���� �� ��������� ��� �������� ��� �������!�������� "()$ ����� �������� ������� ��������� % ����&��� ��� �� ������ �

� ! &��' ������� �� �!� ������ �������� /�����! ���0��� ������ 1��/��2��� /��� ����������� �� 3���� $������ �������� ���3� ���� ��������� � �(��� 345�56(�7(�(566�# !� �#�# 8��������� � �!��%�� �� ������ �� ��� �(��� �� ������ ��� 8����������� � ���� ���&�!������ ��� ������!� ������(��� �!�����# !� ��& ��� ����� �� �������� !���� ��� �!�� �� �!� � �!����� !� �� ��� �� ���������� � �������� ���������� �!� ���� ����� �� ��(��������� ��!�� �"����� �� ������ �� �!� ������ �������� /�����! ���0��������� 1��/��2� /��� ����������� �� �!� �#�# 8���������#

Page 2: Providing Fine-Grained Access Control for Java Programs *

������� �� � ������ ����� ��� ��%��� ����������� ����� "(� (*$ �������� �������� ������� ��%���� ���� ���� ����&� �������� �� ������� �� ����� ����� ����������� ����������� ��� ������ ������� �� ��� �� ����� ������ �� ��� �%���� ��� ������� ����� �� ���� ��������� ��+��� ���� �������� ��� ������� ����&����� ��� ����� ���� ����� �� ��� ������� ������

,������� ��������� ")$ ���� %��� ����� ������ ��� �������%���� ������ ��!��&� ��%��� �������� ��!� ������� ������� ������������� -�%��� �������� ��!���� �%���� �� ���������� ������� ��� ��������� �� �������� �� � ���� % ���������� &������ ���� ����� ���� ������� % ����� ���������.�� ���������� % �!�������� ���������� ��� % ������ ��������� �� ����� ��������� ��� ��������� ���/0���� �� 1������2 �!� ������ ������� ��� �%���� �� &���� �� ��� ������3 ������� ����� �� ��� ���4��� &����� ��4��� ��� ������� ���������� ������� ����� ���� ��%������� ,������ ������� �� ��%����� 5���� 5������� 5��%� �������������� �� ��� ������� �� ����� ,���!�6 "7$� ,���!�6 �� -���������� ��%��� ���������������� &���� ����&� ���������� �� %� ��������� ��������� �� � ���������4���� ��� !����� ���� �������� 8������� �� !���� � &�% ���� ���� ��&�������� ,���!�6 �������� ��� ,���!�6 ������� ����4� �� ��� �� 9���4��� � +����������������� ����&���� �� ���������� �� �� ��� ��� ������� ���� � ������� ��������� ����� �� 9���4���� %���� �� �������� ������� '��� ��� !����� ���� ��� ���%����� ��� ���������� �������� ����� �� ���������� ,�� �� ���� ���� ��������� %��� !������ ����� ��� �����!�� ��� ����������

�� ���� ������ &� ����� �������� �� � �����+� ������� ���%��� ����������&��� ��%��� ��������� ����� ��� ������ ������� ���%���� ��� ������ ����������%��� ��!��!�� ����&��� � ���� �� ������� � ��%��� ��������� �%���� �� ����������� ���������� -�� ��������� ������ ":;$ ��������� � ������ �� ������ �������% �������� �������� �� �����+� ��������� ���� ��� ��������� ������ �������������� ��������� �� ��� <=�6 ��������� ������ ��� �&���� �� +��� ��� ������� ����������%���� �� ����� +����

��� ������ ������� ���%��� �� ��� ��%��� ����������� ������ ��>��� ������� ����������� ������ ������� ������ �� ��� &��� ������ ����� �� �� +��� ��� ����������� ���� � ���� ��� ����������? ��>����� ����� �� ��+�� ��>����� ����������,� ������ ������� ��������� ������ %� %���� �� ����������� �������� �� �����+����������� ��� ��������� ������ %� �������%�� �� �� �������� ���� � ������ ��+��� @������ ��� ������ ������� ����� ������ ����& ��� �������.����� �������� ������� �������� ���� ��� ���� �� �������� ��� ��%��� ������� �� ����������� ��� �������� �� �������� ������ ��� ������ ������� ����� ������ ������� �+���������� ������ ������� �����+������� �� ��� ������ ������� ������� ������������� ��!��!�� ������ ����&��� �� ������ �� ��������� ������ ��� �� ��� ��%�������������� ������� &� ����� ��� � ����������� ��� ������� ����� &������������ �� ��������� ��� %� %���� �� � %������ ���������� "#7$� �� ����� &����� ����� �� ����& � ��%��� ������� �� ������ ��������� �� ������� ���������� ��� ����

� 3�� � �� ����� �� ��������������� �������� ��������� �������������������� ����� ����������������������������������� ����������#

� 3�� � �� ����� �� ������������������������������� ��������!�������"�����#����� ��������������������������������� ��������!�������"�������#

Page 3: Providing Fine-Grained Access Control for Java Programs *

����� ���������� �� ������ �� ��� ����� �� ��%��� ��������� ����� �� ����������������� ����� ����� ���A�� ������� ������ ��� ��������� � ����%��� !����� �������� ���� �� ����� ��� ���� ���� #B ��%��� �������� �� ��� ������ ���� ��%���������� ��� ��� ������ ��� ����%��� �� �� ��� ������ �� ���� �������� � ��%������������ �%���� �� ������ ��� ����%��� ������� �� � ������� ����� ���������� �� ��� ���%�� �� ��%��� �������� �������� ��� � ������� ������ ���� ������%�� �� ����� ��%��� �������� ������ ��� ����%����

,����� ������� �����+������ ��� ����������� ��!� %��� ������� �� ����� �������� ��� ��>����� ���������� ��� %� %����� ������+�� ���� ����� ����������3������� ������� � ������ ������� � ��� ��� �� ���� � �� ��� ���������� ������%���� ���������� ":;� :$� �� ��������� ����� ���������� � �����+������� ������� ����� &���� �����+�� ��& ������&��� ��������� ���� �� ��� ����&��4� +���� ��� ������� ��� %� ��������� ��� ��������� ����� �������� ���������� ����� % ����4��� &������ ��� ��� �� ������ �� ����&��� �� �������������%���� ���������� ":B� :($� � ������� ����� �������� �����+� ���������!�� �������� �� !������ �%������ 8��� ������ +��� ����� � ��������� �������&���� ����4� �� ������ ���� ��� ������ ���� �� ���������� �� ���������%����������C��� "::� (;� (:� #:$ ������ ������� �������� ��� �����+�� ����� &��� � �������� �����+������� , �������� ��� ��� ��������� ���� ��� ��� ������� %�� �������� �� ������� ������� ���������

�� ���� ������ &� ������� �� ������� �������� ��� ��������� ��� ���������� ������ ������� �!�� ��%��� �������� &������ �� �!�� @����+����� ��� �����������%�� ��� �����&���3

� '� ������� �� ������ ������� ����� ��� ��������� ��& �������� �� ������������ %� ����������� �� ���� ������ � ���� ��+��� � ��� �� ������ ������������ ������������� ��� ��������� ����� &���� � �����+� �������� ��� %� ���������

� '� ������� � ��!�� ������ ���������� ����������� ��������� �� &���� ����������������� ��� �������� % ����������� ������ ���������� ����4� ������� ������%��� ������� ���� ��� �������� ���� %����� ��� ��� ������ ���� ���������� ������

@��������� ��� �����+������ �� ������ ����������� ���� ��� �����+������ �� �!��������� ��� ��������� ��� ��� �����&��� ������������3

� �������� ��!������� �� ��� ���� �� ������� ������ ����� �� ������� ����4������� ������ ���� �������� ���� � ���� �� &��� �� �������� �������� ��� ������������� ��������� ��� %� ���� �� ��+�� ��� ������� ������ ����������� �������� ���� &��� ��� �������� &��� ������� �� ����� ���� �� ����� �������

� ��� �������� ��+������� ��� ������ ����������� ��� %� ����+�� ������������� &������ �>������ ���� ������� ���������������

'� ��!� ����������� � !������ �� ���� ��������� ��� �������� ���������������� �!� %������ "#*$� ��� ����������� ������� ���& ���� ��� �!������ ������ �������� �� ��������� �������� �� �������� %����� ���� ��� �������� ������������ �� ��� �!� ������� ����� �� ��� ������

���� ����� �� ������.�� �� �����&�3 @������ # �������� � ����������� �� ����������� ������ ����� ��� ��& �������� �� !������ ��������� ��� %� �����+���

Page 4: Providing Fine-Grained Access Control for Java Programs *

@������ ( ������%�� �� �������������� �� ���� ������ @������ ) �������� �� �������� �� ��� ��������� ��������� ��� ����������� %���!���� @������ * �������� �%���� ���!� �� ������� &��4� @������ 7 �������� � ������ �� ��� �������� ������������� �� ������ &��4�

� � �� ������� ��� �

��� ������ ������� ����� �������� �&� �����3 � �������� ����� ��� ��������������������� ��� �� ������ ���������� �����+������ ��������� '� ������%� ��� �&��� ������ %���&�

��� ������ �� ��

, ���� ���!���� ��� ��������� �� � ��%��� �������� ����� ��������� �������������� ��� ������ ��%������� ��������� +���� ���&��4�� ��� ���������� �� ����� ���������� ���� �� � ���������� ����%���� ��� ��������� � ���� ���!����� ������ ��� &������ ����%��� ������� � ��� �� ���������� ���� ������ ��& ��� ����%������ %� ��������� �� ��� ������� ������ ���� �!� ����� �� ������ ���������� ��������� ���� ����� �� � ���� �� ����������� D�� ������ ������� ��������� ������� ��>��������� %��&��� ����� ������� ��� �������+��� �������� �� %��&��� ������� ��+��� ������� ��� ������� ��&�������� ���� ������ ������ ��� ����� ��������&� ��� ��+������ �� ��������%����� ������������� ����� ��������� ����� ��� �!��� ����������� ������

��� ������ ��������� ������������ �������

��� ������ ���������� �����+������ �������� �������� �&� �����3 � �������� ������������ ����������� �!�� �������� �� ��������� ��� �� ����������� ����� ��������� ������������

������ ����������� '� +��� ������%� ��� ����!����� %����� ��� ������ ���������������� , �!� ������� ���� � �������� % ��!�4��� ��� �������� �� ���� :E�F�&� ���& ���� ������� � ��!�4�� � ������ � �� ������ �������� �� G����� ����������� �� � � ��� ������� ����� �� � � �������� � � ��� ������� %��4 �� � ���������������� ��� �!� �������� ���������� � ������ ������ ��������� �� &��������� ��� �� ����������� �� �������� �� � ������� � �

D�� �������� �� �� ����& � ���� �� ��4� ��� ������ ������������ %��&��� � ���� ����������� % ������ � ����������� � E��� ���� :E%FF� ��� ������ ������������ �����+�� ������� ���� %��� � ��� � ��� ��� ��� �>��� �� �������� ������������� ���� � ��� ��!�4� � �� � ��� �� ��������� � �� ����� , ����� �������������� �������� �� �����+� ��������� % ����������� � ��� �� ������ ������������&���� ����� � ������ ������ ������� ������

���&� &� ������� ��� ��� ���� ������� �� ��� ��������� ��� %��!�� &� ��!�������� ��� ������� ��������� �����+������ �� ������� ����������� �!�� ������ ���������� ������� ��� �%������ ��� �����&��� 8=� ���&� ��& � ���� ��� ������������ �����������3

Page 5: Providing Fine-Grained Access Control for Java Programs *

1�2 ���� �� ���!�� ��������������

1�2 ��� ��� �������� �����!�� ��������

�� �� $��!�� �������� ������

�������� ��� � ������������ ������������� ��� ���� ��� ������� ��������� ����� � �

�!��� ��������

��������� ��� �� " ������ ��� ���#����$�� " %�����#����$��

������� ��� &�������'�����

, ���� �������� �������� �� ��>����� ��������� E �!� �%�����F % ��+���� � ����� ���������������� '� ������%� ��� !������ ����� �� ��� ������� ���������%���&3

� ����� 3 ,� ����� ������� �%����� ��� ������ ��!�������� �� �!� ���������, ������������� ����� ������+�� ��� ��� �� �%����� �� &���� � ��!�� ������������������ �������� @�������� ��������������� ������� � ��� �� ��!���������� � ������� ��� ������� �������������� ��+��� �� ����� %���� �� ��� ����� �&�!��� ���� ��� %� �������� �� ��+�� �� ����� �� ��� %���� �� ��� ����������������� �� %���!��� ��������

� �����������3 ��� ����������� ���������� �� � ����������� �������� �����& ��� �� ��+�� !������ ������������� E���� ����������� ������� ������������ ��� ������������ ��� ������� ����������� ������� ������ ��!��������F����� ��� �������� �� � �������� '� ��� �������� ���������� �� ��� �����&����&� ������ ������������� ����3:� ����������� E � F3 , �������� � � � ������ �� �� ����� � ������� ��

�������� �� ����� ��#� ��!�4� E �� F3 , �������� � �� � ������ �� �� ����� � ��!�4�� �� �����

��� ���������3 ��� ���� ��������� ������� � %������ ���������� ���� ��� %� ���

+��� �� ����� �� �%���� ������� ������� ����� E���%�� �����F� ������� ����������� ������� ������ ��� ���������� �� ��������

���������� ,� ������ ���������� �� ��� ����

���� �� � �� ���� ������

�����+�� ���� ����� � ������ ������ � ������� ������������ � �� ��������� ������� � �� ��������� ����� ����� ��� �&� 4���� �� ������ �����������3 ��� ���

Page 6: Providing Fine-Grained Access Control for Java Programs *

1�2 8����� ��������

������������������������������������������������������������

������������������������������������������������������������

������������

������������

���������������

���������������������������

������������

���

��

����

��

��

1�2 �������� ���� ��������

�� � �������� �� ���� ��������

��������� ��� ����� ��� ��������� � 0��%�� ����������� ������ ����� ������������ ���� �� ��� ������ �� ��� ��������� �� ��� ������ ������������� ��� ���������� �� ���&� �� ���� #E�F� �� ������� ��� ������ � &��� � �� ����� , ������ ������ ��� ���������� ���� �� �!� ������ ��� ������ � ��� �� ����������+����

@������!� ������ ����������� ������ ����� ����������� ���� ������ �� ��� ���������� �� ��� ������ ������������� ��� ��������� �� ���&� ���� #E%F� ���� ��������� ������ �� � �� ����������� % � �������� ��� �����%� ��>����� ��� , ������� ��� �������!� ������ ����������� �� ��������� ��>����� ������� �������� &�����>����� �!� �������� ���� ���� ���� ��>����� ������

8������� �� ��� ������ ����������� ���3

5��������� @��������

��� � � ��� ���� � =� ��������� �� �� ��� %� ������� �� � �� ������� � �� ����� ���� � -����� � �� ����� �� ������ %� ��!�4��

�� � �� �����

8������� �� �������!� ������ ����������� ���3

5��������� @��������

��� ���� � ��� ���� � -����� �� ����� �� ������ �������� �%���� �� �� �� � �� �����

��� ����� �� ����� ���� � -����� � �� ����� �� ������ ��!�4�� �� �� �� � �� �����

�� ��� ��������� ��� ������� �� �� ����& ��� �������� ������ � ���� �����+���������� ����� '� ���� ���� ����� ��� ����� ����� ���� � ���� �� ����4� �������������� �� &���� ��� ������� �� �� ��� ��� ��C����� ������ � ���� �����+��������&� ����� '� ���� ���� ����� ��� ����� ������� ����� ��� ����!� ����������� ����� ���!���� %����� ���������� �%��� ����� ������� �� ����� &��� ����� ��4�� �����4�� �%��� ��������� ������ ������� ������ ��� ��������� %�������� �� �� %����� �� ��� ���������� �������� ���� ����& ������������ �������� "(($�

Page 7: Providing Fine-Grained Access Control for Java Programs *

'� ����� �� ��� ��� ����!� ������ ����� %������ &� &��� �� ��������� ����+�� ������ ������� �����&��4 ��� ��� ������ ��!��������� �� ����� &������!�� ������ E�!�� ������ ����� �%���� ��������� ��������� ����F �� ������!�%�� ������� ����!��� �!��� &���� � ���� �� &��� �� �������� ��� ��������� &�&��� �� %� �%�� �� ������ ����������� ���� �� ����� ��� ��!�4� � ��������� ������ ��� :B ������ �������������� �� ���� ������ ������� ����� ����� ��� ����!����������� ����� &���� ��C���� ���� � ���� ��+�� ����������� ��� �!�� ����������� &���� ��� %� C���� ���%������� ������� ������%���� ���������� "#*$���� &��� ���� ���%��� % ��%������ ����� �� �� ������ ���������� ����4�� &�������� ������� ���� ��� ���� ����� &��� �� ������� ��� ����4�� �������� �� ����!����������� ����� �!�� ����� ������ ,�� ��������� ���� �� ��� ��%�� ����� ��� �������4�� ��� ����� ��� %� �������� % ������ @��� ������� ����� ��>���������%��&��� ��������� ���� ���� %� ���������� ������� ��%����� ������ ��� ��������� ���� ���� D�� �������� ���� � ������ ��������� ��� �������� %���� �������!� ������ ����� ��� %� ���� �� ��������� ��� ����!� ���������� ����� %������������ ��� ���������� ���������� ������� ��� �������� �� ������ �����������'� ���� ���������� ���4��� �� &�� �� ����������� ��� ����!� ���������� ����� ����� ���������

��������� '� ��& ������� ����� ��������� ��� +��� ������� ���������� ������� +�� ������ ������� ���������� ��� ������ ������� ���&� ��& &� ������ ��� ����� �� ��� ������� ����� �� ������� �������� �� ���������� ������� ������� ������� ���&� ��& &� ��� ��������� �����+� ������� ������ &��� ����������������� ��� ��� ����� ������ �� ������ ������ ��������

������ �� ��� ��� �������� �� ���� �������� &� ������ ������ �������������� ����������� ��� +�� ��������� ���� ��%��� �������� ��� ������� ,����� ������� +�� �������� �� ��+��� ����� ��� �����&��� �!� �����3

���� ���� ������ ����������� ������

����� ��� �������

����� ��� ������ ��� ������

����� ����� ������ ��������������

��� �����&��� ���������� �����+�� ���� �� ��%��� ������� ��� ���� /A���A����&�2+��3

���� � �� ���� ����� ���� �!" ������������� ## $%�� %������$�

��� &� ��������� � ��& �������� &����� ��� %������ ����������� ��� ����� ����� �� ����� �� ��� �������� %����� ��� ����� ��� ������������� ��������!��� ������� ��� �%�!� ���������� ��� �������������� !��� ��� %� ���� ������������ !����

��� ������ ���������� ���� ��%��� �������� ��� ��� ���� +��� � ��� " ���%� �����+�� % ����������� �� ��� ����3

���� � �� ���� ����� ����

��!" ������������� &# $'$� HH �!" ������������� &# $($��

Page 8: Providing Fine-Grained Access Control for Java Programs *

��� ���������� ���� ��%��� �������� ������ &���� �� ��� ����� ���4 �� �����+��% ��� �����&��� ����������3

���� � �� ���� ������

,� &� ��� ��� ���� ��� �%�!� �������� �� ������ ���������� ��� ������� ����������� �� ������� �� ��� %���� �� ������� ������� �� ������� ������ � ���� �� &����� ������ ����������� �� ��� %���� �� ��� ����� ���������� &��� ��� ������� ������ �� ��� ��������� ��������� ������ ��� ����� �������� ����&� �����+�������� ���� ������������ '� ���& ���� ������� �� �������3

������ �� ������ ��� �������� ,����� ���� ��� �����&��� ��+��� ��� ���4���������� ��� ��4��� ���&��4 �����������3

���� � )�� �� )�����

��� *����+�� ���,�- ��� � )��,���

��� ������(���� ������

(���� �������

,���� ������ ���� ��� ������� ����� 4���� ����4 �� ��� ���%�� �� ���&��4����������� ���� ��!� ������ %��� ������� ���� ����� ��� ����� ���������� &������ ������� ������ I�� ��� ������ �#���!�$ ���!� ����%� #!������������������� ��� ���%�� �� ���� ������������ , ���������� ���� ������ ��� ���%�� �����&��4 ����������� �� � �����+� ������%���� ��� %� �����+�� �� ��� �����&���������3

���� � � � )��� ����

�������������� �����) ������ ������ JJ .//0�(*.�1�

�� �������� �� ������� ����� ������ � ���� �� &��� �� ����� ���������� ������������ ��� ������������ ������ �������� '� ���� ���� 4��� �� ����������� ������

���� , ���� �� ��������� � ������� ����� &��� � ������� �%����� �� � ����� ���%������ ��� �� ��+�� ����������� �!�� �������� �� ������� �� ��� %���� �� ���������� ������ '� ������� �� ������� %���& ���� ����������� ����3

������ �� ������� ��� ����� �� ���� ,����� ���� &� &��� �� ���������� ��� ���������� ���� � ������� � ��� ��!�4� � ������� �� &� �� � ��������� �� ���� ��� ������

���� ��� %� ����������� % ����������� �� �%����� �� $��#�� $���� &��� ����� �%���� 4���� ����4 �� ��� ���%�� �� ����� � ����� &� I�� ������ $��#�� $'��������%��#������ (� %� ��+��� �� ��� �����&��� ������3

����� ����� �� )������� 2� ��� � ��� 3 2� �

.����������� %% �� ������ ��� �����

��������������

� ���� �������������

Page 9: Providing Fine-Grained Access Control for Java Programs *

��� ����� ����������

��� �� ����� �� ���������� � �

���� �� �� � �� ���� � �� ���������� �� )����45�

���� ��� ��& �%���� �� � ��� �����+�� ���� � ��� ��!�4� & �� ���� :B ������

���������� � ������ ����������� '� ��& ������� �� ����������� �������� ������ ������������ ��� ����������� ����� ������%�� &��� ������� �� ���������������� ���� �� ����� �� ������� �� �������� �� ��%������� �� ����������

,����� ���� � ���� ��+��� �&� ���������� �� ��� ��3

���� �� ������ ��� ����

����� ��� ����

����� ��� ����

� ���� �� �2����� �� ��

�� �� � ��%����� �� ��3 �� �������� ������� &� )� ��� � ���� ��� ,����� ������� ���� ��+��� ��� �����&��� ����������� �� ��� ���������3

���� �� �� ����� ���� ���

���� �� �� ���� ���� ���

���� �� �� ����� ���� ���

���� �� �� ����� ���� ���

����� ��� �&� ���������� �� ��� ����������� �����3

� ��������� �& ����� ���������* , ��%����� �������� ��� ������ ��������������� ��� ������������� ����� ��� ��������� ������ ���������� �� ��!���������� �� �� �������� �� �� �� ��+��� % ��� �����&��� ����������3

���� �� �� ���� ���� ���

,����� ����������� ��� ��� ��������� ���� ��%������� �� ������������� ������������� ��� ������ ���������� �� � �� �� �� ���� ����� ��� �� ������ ������������ �� � �� ���

� $���)������) �& ����� ���������* , ��%����� ������ �!������ ��� ���������� ������������ @����+������ �� ���������� ����������� �� ��� ��%����� ������������� ��� ����������� ��+��� �� ��� ������������� ����� ��� ��������������� ���������� �� ��!�������� �� � �� �� �������� �� �� ��3

���� �� �� ����� ���� ��� � ���

�� ����� &����� ������ ���� ������ %� ��!�4�� ���� � �� ������ ��� �� ���

�� �����

���� ����� �� ����������� ������� ���� � ��%��� ������� ������ �!������ ����������������� �� ������� % ��+���� � ��%����� ��� % &��4����� ��� ������������������ ,���� ��� �%�!� ����������� ����� ������� ��� ������ ����������� ��� �� &���� ���� ��� �� � ����� �� ������ %� ������������� ���� �� ��� ��%���������� %� �������������

Page 10: Providing Fine-Grained Access Control for Java Programs *

� � �� ��������� ����� � ��

,� ����������� �� ���

��

�� ��� �

!"���� � � ���

� �

�3 ,����� �����������3 ����������3 ��%����3 0�������� ������3 0�������� �����������

������������� ���������

��

��

@��� �

����� ��� �

������ �"����

#��� $� @������ ����� ����������� �� ��%��� ��������

���� ����������� �� � ��������� ��!��!�� �������������������� ���� %���&��� ��� �������� ������� ���� ��� ����������+������ ����� ��� �������������� ���� ����4��� � �����+� �������� ������� �� ����&��� �� ���%� ���������������� %���� ��������� ���������% ��� ��������� �� ���+��� % ��� ������� ������� �� ��������� ������� ������� ������� ������ ������ ��� ����������� ��� �!� ������� ������ ":#� :($� ����������!������� ������� ������� ����� �� � ���������������� �� ��� ��������� ��� &��� �� �������� ��� ��������� ������� �������������� ������� �������� �� ����4 �� � �����+� �������� ������ �� ����&���

'� ��� �� ��������� �������� ��� ���������� ������������� ����� �� ���� ���������� � ��� �� ����� ��������� ��� ������������� ���� ��� ���������� ���� &�������%��� �������� ��� ��������� %����� ��� ��� ������ �� ��� K-� �� ���� ���������� ����� ��� �� ��������� ��������� �� �������� ��� �������� ��������� ���������� �������� �� ��� L ��� ���������� ���� &����� ��� ����!��� �!� ����������� ���������� ��� ��������� ����� ���������� ��� ���� �� ������� ������� ������� ��������� �������� �� �������� ��+��������

�� ���� (� &� ������%� ��� �������������� ��� ��������� ������ ������� ���������� �!� ��������� '� ���& � �!� ������� � ���� �������� �� � ���� �� �������� ��������� ���� ��� ���� ��4�� �!����%�� �� ��%��� ��������? ��� � ������������ ��%������ ���4�� ���� � �

G����� ����� ���� ���������� ��� ������ ���4���� ��� �!� ����� ������ "#)$������!�� � ��� � ��� ������ ���� �� � ����� ������ ��� ��� ��������� ����

���� � ��� ������ ���������� �������� �������� � � �� ��� � �� ��������� ����������� ������ ������������� ���� ���� %� ����������� �� ����� �� ������������ ������ ���������� �� �� ���� ��������� ������������� ���� � ���� ������������ �����+� ������ ������������ �� ���� ��������� � ��� �� ������� ������������ ����� ��� %������ ������� ��� %������ ������ ���� �� �� ��������� � &����� � � ���� �� ��� ����������� �������� ��� ��������� ��� ���� ������ ���� ��� K-��� ���������

Page 11: Providing Fine-Grained Access Control for Java Programs *

'� ��& ������%� �� ������ ��& &� ��������� ������ ������������� �� �!���������� �������� ����� ��� ���� �!� ����� +����

$�� %"�� ���������

��� ���������� ��!��!�� ��������� �!� ����� +��� �� ��������� ��� ��+��������������� �� ��� ����� +���� ��� ��+������� ��� ���� ��� ������������ ������������� � �������� ����� ���� ����� +��� �� &��� �� ��� ����������� ��& �!� ������������� %� ����+��� ��� ���������� ��� %� ���� ����� ����� �!� ����� +����������� �������� ��%���� ����������� �%��� � ������ D�� ��� ���������� �������C�� ��4�� ��� �� �&� �������� &����� ��� �!� ����� +��3 ��� ������� ���� ������ �� �� �!������ ��������� ��� �������� ���� �� ������� �� � ��%�� ��%���� ���� �� �������� ��� �� ��� ����������� ������ �� ��������� ���4 �������� ���� �� ����� �� ��� ��%���� ���������� �� +����� �������� ���������� ��� ���������� &��� �� ����� ������ �� ���� �������� ��� ��������� %��� ������ ��� ������������ ���������� � ������ ��� �������� � !������& ���� �� ��� �������� ������������ ��� ��� ��%���� ����������� ���������� &��� � ������� �� �������� �&��������� ���� �������3 ��� ��� ��� ����� ���� ��� ��� ��� ��� ���� ��� ��� ����� ������� ��� ������ ��+������� ������� ��+��� ���� ������ ��� ������+������ % ���� ��� ����������

$�� ��������� � ������ �������������

��� ���������� �� ������ ������������� ��!��!�� ��������� ��� %����� �� ��� �������� ��� ������ ��!������� ������������� �� ��� K-� ���� ������� E��+�%�+��#����+�%�������� ��+�%������� ��� ��+�%�����&��F ��� ���� ��� ������ ��!��������8��� ������ ��!������� ����������� ��� �� ������� &���� ������� ���� ��� ��������� ����� @���� ���� ����� �� ������ � !������& ���� �� �� ����&���& �������� ����� ����� ������ ����� ��� ��������� �� ��� ������ %���� ��!�4�� ������������ �!����%��� ��� ��������� ��� ��+�%� ������������� ���� ����� ����������� % ��������� ��� ������ %����� ��� ��� �� ��� ���� ��!�4� ������� ����������� �� &��� ��� �%������ ����� ����� ������ ����� ��� ���������� =������� ���� ����������� �� ��� %� ������� !���� ��� �� ��� ������ %������ ���������� ���� ���%��� �� ��������� �� ������ �� ��� �����&��� ���������

$�$ �� � &�������� �� !���" � �����

'� ��& ������%� ��� ������ �� ��� ���� ���� �� ��������� ��� ��� �����������&����� ��%��� ��������� D�� ���� ���������� ��� ������� ��!��!�� ������������� ��+������� �� ����� �� ��� ������� ����� �� ������� ��� �� ������ �����������4� ���� ��������

,� ������ ���������� �� ��� ����

���� �� � �� ���� �

�� ����������� % ���������� ��� �����&��� ����3

Page 12: Providing Fine-Grained Access Control for Java Programs *

� ���

���� ������� %% ����� �2 �����

����

� ��� �

��� �������� �� ���� ������� ��� �������� ��� ������ �� ��� ������� ������� ����� ������ �� ��� ������ ������������ 0��%�� ����������� �� ��� ����

���� �� �� ���� �

������ ����������� �� �������� �� � &������ �� ������ �� �%����� �� ����������� �� ������ �� ��� ��������� ���� ��� ����� ���������� ���� ��� ������� ���� D� ��� ����� ����� �������!� ������ ����������� �� ��� ����

���� �� � �� ���� �

������� ���������� �� �������� �� � ���� �� ��� ��������� ���� ��� ����� ����������� ���� ��� ������� �� � &���� ��������� ������ ��

'� ���� ������� �������� �� ������� ������ �� �����+� �!� ������� �� ������� ������� ����������+� %���!���� ���� ��������� ����&� � ���� �� �������.� ���������� ��������� ��������� �� ��� �������� ������ %� ����������� ������� % �������� ��������� @������ ����� �%����� ��� ����� �� � ����� ��+������ % �������� ���������3

��� �����"�����%"�� �� ����������*�6� � � �

��� ���������� �������� ��������� ���� ��� ��������.��� �������� �%������ 8������� ( ���&� ��& ���� �%����� ��� %� ���� �� ������ ������ ������� ���������

$�' �������������� (������

�� ���� ������� &� ������%� ��� ���� ���������� ��� ���� ������� ������� ��� ���������� ��������� �� ������ ������������ ��� ��� �������� �� ����������� &� �������������� �� � &��� ��� +��� ��������� �� *� =��� ���� ��� %������ ��������� ����>���� ��� ������ �� ���� ���� �� ��������� ��� �? �� ���� ��� �>��� ��� �������������� �� ��� ������ ����4 ���� �� ��� ������ �� �������� ,���� ��� �����&���������C�� �� ����������� �� ��� ������ ���� ������ %� ��4�� �� ��� �!��� ���� �������� �� ������� D�� �������������� ����&� � ������� ���������� ,��������!������ ����� ��4� �� ������!�%�� ���������%�� ������� ���� �� &������ �� �� ��������� ������ ��� ��%��� �������� �� �!�� ��!��� ��� ��%��� ������� �� ������������

�������������� � &��)�� ����������� ��� +��� ��� �� ����� ��!��!� ����������� ������� &����� ��� ��+������ �� � ������ ������� '� +��� �������� ����������� �� ��� ����

���� � �� � ��,�7� ���� �!" �4� ## 8�

Page 13: Providing Fine-Grained Access Control for Java Programs *

������ ���� ��� ���� �� ������ �� ��� ����� %���� ��!�4��� ��� ���� ������������ �� ��� +��� ��������� �� ���� ������� ,��� ���� ���� ���, �����&��� ��&�� ��� �!� %������ �������������� �� ��� ��������� �� ���� ������� ��� �%�!������� ���������� �� �������� % ���������� ���� �� ��� ���� ���&� �� ���� ) ����������� ��� ���� ���� ��� %�� �� &�

�� ���� )� ��� ���%�� �� ��� ���� �� �� ���

������������������������������������������������������������������������������������������

������������������������������������������������������������������������������������������

������������������������������������������������������������

������������������������������������������������������������

9 �� "4

5 ���� 4

" �� !:9

; �� � ���< 45

4= ���

49 �����

45 ��� !:8

4; ���)���� ��� !::

������� �� ��

����� � ��,�7

#��� '� ��� ����+�� ���������E�FK

��������� ��������� ��� %�� �>��� ��� ��� ������������ ���� ��� %�������� �� ��� ������%��� �������� � ���� �� �� ���� ) ��� ���� *��������� ��� ��� ���� �� ��� �������� ������� ���� ������� �� ���� )� �-. ���������� ������� �������� *� &������ �-/ �� ����������� � ������� ��� ���� ��� � ���������������� ����� ��� �-- ������� ��� ������� ��� ������������

5��� ������� E���� )F �������� ��� ������� ����4��� ��� ������������ &������ ����������� � �������� ���� ��� ����&��� �� ���������� �� ��� %������ ��������� �� ����� �������� �� �������� ���� ��� %�������� �� ���������� 5��� ���� %� ��4�� �� ������ ������� ������� ��������� �%���� ��� ��� ������������� ��� ��+��� �� ��� �������� ����� ����� ��� ���� ���� ����� ������� ��� ������

5���������� �� ��� ����

���� � � �� ���� �

������ ���� �� �������� �� � ������ %� �������� �� � �� ����� ��� ��� ����������� % ������� ����������� �� ��!�������� ����� ������������ �� �� &����� �� ��� K-� ��� ��!�� � ������� ���� ������� �������� ��� ����� ����������� % ������ ���� ������� �� ���� ���&� �� ���� ) �� ���������� �� � &��� ��� ���� �������

�������������� � �������*� ������ ����������� '� ��& �������� �������� �� &���� ������� ��� ����+�� &����� ��� ������� ������� ��� ���� �����+����� ��!��!�� ������ ������ �� � ������ ���� � �����+� ������3

���� �0 ���7 �� � ��,�7� ���� �!" �4� ## 8�

���� ������� ���� ��!��!�� +��� ��������� ��� ��� ��!�������� �� ��&���, &�������� %�� �� ��)��� ���� ��!��!�� ��������� ��� �������� �� ��� ��� ��+�%� ��������@���� ��� ������� ���������� � !������& ���� �� ��� �������� ����� &� ��� ������� ���������� ������ ����� ��� ����� ���� �� ��� ������ %���� ������� �� ���������� ��&���,� ���� ��� ��������� ���� �� �������� %����� ��� ��!�4� �������

��� ������ ������������ ���������� �� ���� ������ �� ��� %� ��������������� ��� �� ��� ������ %������ �� �������� ,����� ��� ����������� ���������� @���� #�#� ,���� ������ ���� ������ & �� ��!�4�� �� �� �%���� 0 �� ��� �� 3

Page 14: Providing Fine-Grained Access Control for Java Programs *

* ����

�� ����� 0 ���������� �� �%���� �� ��� ��

������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

���������������������������������������������������������������������������������

���������������������������������������������������������������������������������

���������������������������������������������������������������

���������������������������������������������������������������

���������������������������������������������������������������������������������

���������������������������������������������������������������������������������

������������������������������������������������������������������������������������������

������������������������������������������������������������������������������������������

������������������������������������

������������������������������������

������������������������������������

������������������������������������

������������������������������������

������������������������������������

(( ���)������� *+,

��� �$ � -� .

+, ���� /

+/ ����� 0

+( ����� 0

+1 ���� /

+2 ����� 0

/0 $�3 ((

/, �������$ *0

/1 ���� /

0, $ �4��3 01

00 -��� ((

/2 ��� *05

06 ���

(0 �����!

01 ��! *00

(, ��)������ *0(

���� � 0 ���7

#��� +� ��� ����+�� ������8��EFK

�� ��� � � ��� ���������� � �� ��+��� ������ ������ �� ����� �� � ��� �%�!� ��������&��4� %������ ��� ���������� �� ��������� ����� ��%����� �� &���� ��� ���%��� ������ &������ ���������� �� ��+��� �!�� ��!�������� �������� & �� � ��� �%���� 0 �� ����������%����� �� ��� �� �� ��� � � =��� ���� ���� ���������� �%����� �� ��� �� � ��� ���������� ���� ������ ��� %� ����� %������ ������������ ��� ��������� ���� ������������ ����%�������� ��� ��� !����!����� �&�!��� ��0 ���������� �� �%���� �� ��� � � ��� ���������� ���� ������ %� ����� �� ����� �� ���������� ��� ����������� @���� ��� ������������ ������ %� ���������� ���������� ����������� ���� ���� %� ��������� ���� ����4���� ��� ��� �� �%���� �� ������� ��� ��������� ������ ���������� ����4� �� ��� %����� �� ��� ��� �� ��� �%����� ����� �� �����&���� ������ %������ �� ��� � ����� ����������& ����������� �� ����� �� ���������� ����4 ��� ��� �� ��� �%����� ��� ���������� ���� ��� ���� ���� �� ���&� �� ���� *�

��� +��� ���� E���� ������� F �� �������� ��� �%���� ��������� % ������� ���������� ����4� &���� �������� ������ ����������� ��� ��� �%���� ���������� ���� �����!����%���� ��� ������ ���������� ��� �%����� ��������� ��� ���� ������ %��4 �� �������4 �� ���� ��� ������ �� ������ ������ �������� ���� �� %� ���� �� ��� ���������� ������ �� ��� ���������� �� ��� ������������� ��� ������ ���� E�F ��!��!�� ������� ��� �%���� ��������� ���� �������4� ���������� �� ��������& ���������� ��� ������� �� ��� ������ ���� �� ����%���� �� ��� �� ��� �� ���� �1 �� �� ����� ���� ��� �������� ���� ���� ������ ����� ����� �� ,� �� ��� +��� ����� ���� ������� � �������� ��� ����������� ����4���� ������� � ����&� ��� ������� ���������� @������ � �������� ��� ����������!�4� �������� ���� ��2 �� � �������� ���� ����� ���� ������ �� ��� ������& &��� ��������� ���, ��� ����� �� D���� ��������� �� ������ ����������� ��� %������������ ����� ��� �%�!� ������C���

�������������� � ���������� �� ��� ,� �������������� �� ��� ������������ ����� ��C����� ���� %������ �� ��� �����%�� ���L���� %��&��� ��� �!�

Page 15: Providing Fine-Grained Access Control for Java Programs *

�������� ��������� ��� ����������� �������%���� ��� ��� ����������� ������ '����������� ��� ���%��� &��� � ������ ��������

,����� ���� ����� �� �� � ��%����� �� ��� 5���� �� ��+��� � ������ � 3

����� ��� ����

,����� ���� �� �������� � � ,���� ������ ���� ��� ���� �����+�� ��� �����&��������� ����������3

���� � �� ����� ���� �

@���� �� �������� � � � ����� �� %� ����+�� �� ����� �� ������ ��� �%�!� ����������������� �&�!��� ����� �������� ��� ��������� ��&� ��� ��� ��� ��� ������%�� �� � �� �� ������ %� ����+��� , �����%�� �������� ��� ����� �� ����+�� ��� ��3

����� ��� ��� �3����������� �� �� �� )��� � ���>

����� ����

��� �%�!� �������� &��4� �� � �� ��� �������� ��� �� ��� �&�!��� �� � ���������� �� %� +���� &� ������ ����+�� & �� �� �� ��� �!� %������ !���+�� &��������� ��� ����+������ �� � ��� ������� ,������� &� ��� ���� ��� ����� +�� ����� �� ����!� ��� �+���� ����������� ���� � ������ �� ���� �� ������� ������

D�� ��������� ���������� ������ �� �������� ����� �� �� �����&�3

���� �� ������ ����� ��� ��� �

� �� )?�������

3 �� �� �>

�������� ��� � �� )?������ � � �

'� ��& ����+�� � ����%�������� �� �� �� ����� �� ��������� ������ ��������������4� ���� ��� �����+� �� ��3

���� �� �2����� �� �@

������� ��� � �� )?������ �3����������� �� �� �� )��� �>

��

� ��������

�� ���� �������� &� ����.� ��� �������� ������C�� ��� ��� �����%���� �� �� ���������������� ����������� ��������� ��� ��� ��� ����������� %���!����

Page 16: Providing Fine-Grained Access Control for Java Programs *

'�� ������������� � ��� �������

�� ��� ��������� � ���� �����+�� ������ ����������� ��������� ���� ��%��� ���������� ���������� ��� ����� ����� ��+�������� �������� ��� ������ ���������� ������������ ��������� �� ��� ���� �� ������ ��� �!� ������� ����� �� ��� ���������� ���� ������� ��& ������ ������� ���� �� ������� ��� �������� �� � ����3

� ��� ������ ����������� ��� �������� ��+������� ��� %� ����+�� �������������� ���� ��4�� �� ��� ��� � ���� �� ������ ��>����� ������ �������������� ��>����� ��%��� �������� ��� ��� ���� ��������� ��� ��������� � ���� �������� ���� ��%��� ������� � ��� ������ � ����� ��������� � &��������%��� ������� � ��� ������ � ����� ��������� �� �

� ��� ���� ��� �� ������ ����������� ��� %� ������� �� ��>����� ��������� &������� ��C������ ��� �� ��� �� ���� ��� �������� �� �������� ��� �������� ��� ������ ������ ���������� � ������� �� �������� ���������� �� ��� %� ��+������� ��� ���� ��� ��� ����������

� ,� ��������� ��!������ �� ��� ���������� �� ���� ��� �������� ��� %� ������� ��������� ������� �� ��������� ���� &��� ��� �������� &��� ������� ����� +��� ������ �� ����� &����� ��� ������� ��������� ��� %� ����� �� ��������� ����� �� ��� %��� �������� ��� ������������ ����� �� ����� � ��%����� �������� �������� ���� &������ �%��� ������� �������� &��� ������������ ������������ ��� ��%����

, ���������� �� ��� �������� �� ���� �� �� ��� �� %������� ���� ���������� ���������� ���� �� ��� ���� ���������� ���� ������� ������ %����� ���� ���������������� %������ �� ��� ������ ������ �� ���� ������������ �� ��� ������ ������������� �������� ������ �� ��� ������ �� ��������� �� &��� �� ��� ������ ������� �� ��������� �������� ��� ��������� �� ������ ������� ����� �� ��C�������� � ������� ������ � �������� ��� �� ��� ������� �������� �� ��� ����4 ������������ �� ������ ��� ��������� ���� ����� ���� ��� ������������� ���� ��������4 ��� ���������� �� ��� ������� �������� �� ��� ��������� ����4� @���� �������������� ��������� �� ��������� ��������� ���� ��� ������� ������ ������� �� %���� ��� �������� � �������� ������� ���������������� ��!��!��� ����������� ����4� �� ����� �� ��������� ���� ��������� �� ������� ������ &����������� ��� �������� ������ ����� �������� ��� %� ����� ������������

'�� ,� ������ ����"���

�� ���� �������� &� ������%� ��� ����������� %���!��� �� ��� ������ ��������������������� ���������� @����+����� &� ����.� ��� �����&���3

� '��� ��� ��� ���� ��� ����� �!������� ���������� &��� ��� ��������M� �& ���� ��� �������� ������� &��� ������� �� ��� �!� ������� �������

�������� ��� ��������� ������ �������M

'� ��������� ��� ����������� �� � #77 - . ������� �� ������� ��� �� I����*�B� ��� ������� ���& ���� %��� ��� ���� ��� ����� �!������� �� ��� �������� ������������ �������� ��� �������� �������� %����� ���� ��� �!� ������� ������� ������� ������

Page 17: Providing Fine-Grained Access Control for Java Programs *

-*���� ����������� '� �������� %��� ��� ���� ��� ����� ����� ���������� ����������

����� ��� ���� ������� ���� �>��� ��� ��������� ���� ���������� &��� ���������������� ����4 ���� ���������� ��� �������3

� ��� ���� ���������� &��� ������� � ������� ��� ���%�� �� ������ ������������ ��� ���� �� ������������ ��� ���%�� �� ����������� �� ���������� ������� �� � �������

'� �� ��� �������� ��� ���� �� ������� ����� +��� �� ��� ������������ ����� ����������� ����� ���� ������� ���� ��������� ��&��

�� ��� +��� ����������� &� ���4�� �� ��& ��� ��.� �� ��� ������ %���� �����+�� �>���� ��� ���� �� �������� �� ���� ����������� ��� � ������ ������ ��!����������� %� &������� ��� ���� �� ������� ���� �� �������� �>����� % ��� ��.� ����� ������� ��� ���� !����� %��&��� B�BN ��� B�:7 ������� ��� ������� ����������� B �� (#BB ������������� �� ��� ������ ����������� &� ���4�� �� ��& ��� ������ ������� ������� &��� ��� ���%�� �� ������ ����� ���� ����� �� %� &�������������� '� ����� ��� ���� �� %� ������������ �� ���%�� �� ������� ���� ���&�������

'� ��!� ���� ���������� ��� �������� �� ��.� ������ % ������ ���� �� �������+�������� '���� ��� ������ �� ���� ���� �� ����� �� � ����� �� ����������� ����� ��.� �� ��� ������ �� ������� �� ��� ���%�� �� ������ ��!�������� ���� ������ %� &������ ��� ��� ��������� �� ��� %������ ������� �� ��� ����������� ������ &������� ��� ������� �������� ��.� E��� � ���� %������ ����������F� �� *7%���� ��� �&� ������ %������ ������������ �� �� �%��� #B7 %����

,� ������ ���������� '� ��& ������� ��� ����������� %���!��� ����� �������� &��� ��� ������� ����� ��������� �� ����������� �� ��� GO:�:�(�

��� ���� ���������� &� ������� � ����� ������� �� ���� ��� ����������� �������������� ������� ����4� ������ ��� ������ ��!�������� @���� ��� ������������ �� &��4 � ���������� ���� ���� ������� ������� �� %��� ��� ����������� ��� ������ ������� ����� ��� ��� ���%�� �� ���������� ������ ��!�������� ��� �������� ������������ � ������ ����� ��������� ���� ����� � ���� %���� �������������� '� %���� ��� ����������� �� ��� ������ ������� ����� ��� ����������� 8������ (� ��� �������� ���� ��� ��� �������� �� ���&� �� ���� 7� '������������ ��� ���� ����� ����� �!��� ������� ������� �� ���&� �� ���� ;���� ���� ������� ����� ��� ����������� ������ !����%�� ���%�� �� ������ ��������� ����� �� ���� ��� ������ ������ %� ������ ���� ���� :BBBBBB ������

������ N ���&� ��� ��������� ����� �� ��� �������� ��� ��� �!��� ������������ ��������� �� ��� ��������� ����� �� �� ������� �!������ �� �%��� B�BN������� ��� ���� �������� &���� ���� ��� ����� �� ��� �!� ������� ������ �&�!��� ����� �%��� :BBBBB ������ ������ ��� �������� �������� %����� ������� �!� ������� ������ ���� �� %������ ��� �������� ������� ��� ������ �����������4 ����� &������ �� ���� �� ��� �!� ������� ����� ��������� ���� ������

Page 18: Providing Fine-Grained Access Control for Java Programs *

��� 7��7���� ������ 7��7����� ������ � ,8������ �� ����)�

� �����998 ������ �����8 ������� �� �����8

1�2 ��� ��� ��0���

��� 7��7���� 7������7���� �� �

���� �� � $� . !���

*+ 7������7���� ����)� : +,,,,,,

1�2 ������� ���� ��������

�� �� !� ����� ����� �������!

��� ��!7��%��

�'���� 7������%���-�� ������ ��!7��%��� ������ � ,8������ ��� ����)$�

����! 7�������'������ ������998

$ ������ : +,,,,,,

����! ��! 7�������'������� 8

��� �����8

1�2 ��� ��� $������

��� � ������ ��� $� �

��!7��%�� ������8

������ �

7���4 -��7������%���-��� 8

$ ������� ;� ����

������ ����)$� 8

��

1�2 /�� ��� ��,����

�� �� !� 9��� / ���� �����(���� �������!

0

0.5

1

1.5

2

2.5

0 100000 200000 300000 400000 500000 600000 700000 800000 900000 1e+06

time

in s

ec

number of function calls

binary editingsecurity manager

�� �� �������� �� �"�� ��� ��� &�! � �����

Page 19: Providing Fine-Grained Access Control for Java Programs *

���������� ����4 ��!��!�� ��4��� �&� ������ �����3 ��� �� ��� ������ �� ������ ������� �������� ��� ������� �� ��� ������� ������� ������� '� ��� ��������� ���� �!�� ������� % ����������� ��� ������� �� &� 4��& ���� ��� � ������������ ���������� &��� %� ������� �� ��� ������� �� �� ��� ���� �� ��� �!� ������������ ��������� D�� ��������� �� ���� ����� &��� ���� ��&�� ���������� ��� �!� ������� ����� ���������

0

0.5

1

1.5

2

2.5

0 100000 200000 300000 400000 500000 600000 700000 800000 900000 1e+06

time

in s

ec

number of function calls

binary editingsecurity manager

�� �� �������� �� �"�� ��� ��� &�!� � � �����

�� ��� ������ ����������� &� ��� ��� ���� ������� &��� �� ����� ������������� ,� ���&� �� ���� P� ��� �!� ������� ����� �� ��&�� ���� ������ ������� ��������� ���� �� %������ �� ��� �!� ������� ����� ��������� � ���������� ��&�� ���� ��� ������� ����� �� ����4 �� ����� �� � ������� ����������������� ��������� ��� �!������ �� ���� ����� D�� �������� ���� ��� ����� ���!������ ����� �� ���� ��� ��� �� ���� �� ������� ���� �� ��� ���� �� %�������������

� � ��� � ����

�� ���� �������� &� ���4 �� ������C��� ���� ���!��� �������� ��!�� ������ ��������-��� �� ��� &��4 �� ��%��� ������� ������� ��� ����� &��� ���������� ���������� ��!��� �� ������� ��� �!� ��������� ���������� &� +��� �������� �!���������� ����� ��� !������ ���������� �� ��� ������ '� ���� ���� �� @���������� ����������� %���� ������� ������ ������� &� ������� ����� 5������ 5���� ��������� %���� ���������

.�*�� ��� ������� ������� ����� ":B� ##� :#$ �������� % @�� ��� �!� ����������� ������ ������� �������� ����� � ������� �������� ,� ������ ������� ������� ������� % ��%�������� ��� $��#�� ��)� ����� ��� ������� ���� �� ��� �������� ������� �������� , ���� ���� ������� ���� ��� ��������%�� ��������� ��4�

Page 20: Providing Fine-Grained Access Control for Java Programs *

�� �������� ���� �� ��� ������� ������� �� ����4 �� ������ �� ����&��� �� ��� ����4�� ��� ����&��� ��� ������� ������� ����&� � ������� ���������� D����&���� ���������� ������� �� ��� ������� ������� ���� �������� �� %���� �� &������ ��� ������ �������� ���� ���� ��� ����� +�� ������ �� ���������� ���� �� ������ ��&����������� ��� ����

��� ������ ��>������ %��&��� ��� �������� ��� ���� �������� �� ���� ��� K- �����+�� �������� �� � ���������� ����� ���� ����&� ��� ��� �� ��� ���� ������� �!��� �������� �� ������ �� ��� �� ������ �� ��� �������� �������� ��������+�� �� � ���������!� ����� ���� ����&� ��� ������ ���������� ��� ������� ����������� '� ���� ����& �������� �� ������� ���������� ������� &��� ��� ������������ �%�����

�&�!��� ��� �������%���� �� ��� ������� ������� �� �������� @������ �������� ����� ���!���� ���� ��� ����� �� ���!����� &���� ����� �� %� �����������'���� �� �� �����%�� �� ��� ������� �� � ��%����� �� ��� $��#�� ��)� ��������� &��� �� ��� �������� ����4�� ������ ��� ���� �� ���� ����� ����4� ����� ���%� ���� ��������� �� ��� ���������� ��� ��� ������ ����� ���!���� �� �� ��� �������%��� �� ������� ������%���� �� ��� ����&��� �� ���������� ���� ���!���� % ������ ����� �� ��������� ��� �������� ����&� �� �� ��� ������� ����������� ����%��� �������� ���� ����� ��� %��� �������� &��� ������� �� ����� ����������� ������� ������ ��� %� �������.�� �� ��� %���� �� �������� ������� ���������� ������� ��� ������ �����������

��� �������� �� "#B$ ������� ��� �!� ������� ����� �� ��������� � �������%���� ������ ������ �� ���� ������ �!� �������� ��� ��!�� �� ��������%�� $��#'�� 3�%�� ���� �� ������� ����� ������� ,� ������$��#�� �%���� ���� ��� ������ ��� @������ -������� �� ���� ��� $��#�� 3�%�� �� ��� ������ �� ��������� �������%������� �� ���� ������� ����&��� � ������� ��������� �� ��� ������ ����%������ ��� ������ D���� ����%���� ������ ��!� %��� �������� % �!�@���� 8�������5����������� ��� ":7$� @�������� ��� �������� �� "#N$ ���!���� � ���� L���%������������ ��� ����������� �������� �� ���������� D�� �������� ��>��� ���� �����&��4� �� ���� &� ������� � �����&��4 ��� ������������ !������ ������� ��������� ��������� ��������� ��� ���� ����������� �� "#B$ ��� "#N$�

@�� ���������� ����� ������� ����� ":($ �� ����� �� ���!��� ��� ������� ��������������� ��� ���������� +���������� ������ ������� ��� ���+����%�� ���������������� ��� ��& ����� �������� ��� $��#�� ��)� &��� �� ������������������ ����4� �� ��%��� �������� ��!� ���������� �� ������ �����+� ���������� ������������ ��� ������ �� � ����� �������� ���� ����&� ����� �� ��+�� ����������������� %���� �� &��� <�I ��� ���� ���� ��� �� &�� ��� ������ ����� 8������������� ������ �� ���������� &��� � ��� �� ������� ���� ��� ��� ����&�� ����� <������������ ��� ��� ��������� �� ��4� ��!������ �� ��� ��& ������ �������������� ���� %� ���������������

��� �O����� ������� ":P$ ������� ��� K- ������� ����� % �������������������� ���������� ������� &����� � ������ �!� !������ �������� �� ���!���������� �� ��������� % ������� ����%������� ��� ���� �� � ������&��� ����������G������ ��� ���� ���4 �� ����%������� ���� ���� ���������� 5���%������� ��� ���

Page 21: Providing Fine-Grained Access Control for Java Programs *

��������� �� &������� &���� ���!��� ��� %��44������ ���������� &��� ������������������ ��������

��� ������ "(7$ ����+�� ��� ������ ���4��� ������� �� �!� �� ���� ��������� ������� ���� % �� ������� �� ����&� � ����� �� %� �������� % � ��������� ���� ����4� ��� ��������� �� ��� ��!�4�� ������ ��� ������������ ����&��� ��������� �� ���� ����� �������� ��������

=����� "P$ ���!���� � �����&��4 ��� ��������� �������� ���4�� ����� ������������ ����� ��� ����� ��������� @���� ����������� ��� ������ ����4� ��� ���������� % ������ &�������� �������� ��� ����������� �� ��� ����� &�������������� �� ��� �������� ��%��� �����

0���� ��� ������ ":)$ ������%� �� ������ ������� ��������� ���������� ���� ����������� ������� ��� � ������� ����� �������� ��� ����� �� ��!�������� ���������� �������� ��� ��������� �������� ��� ����� ��� �����������!�������� �� ������ ������� ����4�� ��� ������� ����� �� %���� �� G�8�

��������/!��� ���������� @������� "#(� (#� :*$ ��C����� �� ����� �&�������������3 � ������� E�� ������F ��� ������� ���� ��� � ������� E�� ����F ������ ��������� ����� ��� ��������� �� @������� ������+�� � ��� �� ������������ ��%���� ������ ��� ���� ����%��� ����� ������������ �� ��� ���� ������������ '������������ ���� ����� �� ������ � ����� ��������� ��� ���� ����������� ����� ������� ������ ���� ��� ������� ����������� ���� ������� &������ �� ��� �� ����&��� ������� , ������� ����� �� �����+�� % �������� ��� ����%��� ������������ ����� ���� ����������� �� ���������� �� ��� ������ ������������ ����� ������������� ���� ����4 ��������� ���� �� ��� ������� ����� ����&�� ���� ��� ��� ���4������������� �� ��� ������ ������������ ������������ @������� ����&� � ������� ����C���� � ����� &���� ��� ����������� ��� ����� �� ��� ������� �� ������������

�������/!��� �������� ��� �������� ��4�� �� ������5������ 5���E�55F "(B� #P$ �� �� ��������� � ���� �����+� ������� ����� &��� � ������� %������������ � �������� ���� ��4�� ���� �������� ��� ���� �����+� �������� ������������ %��� ��� %���� ���� ��� ����� �� ��� ��������� ����� &��� ��������� ��� �����+�� ��������� ,� �� �������� ������� �� �������� ��� ��������� �� ���4������ ��� ����� �� !��������� &����� ��� ������� �� ��� ���� �����+� ����� �������� ��� 4����� ����� D�� ��!������ �� ���� �������� �� ���� �� �� ������ �������� ������ ��� ������� �� ��� ����� ��� %��� ����+�� �� �������� ���� ����� &��������� %� � !��������� ������ �� ��� ��������� �55 %���� &��� ����� !������� ��������� ,���� ����� �55 ��4�� ��� �������� �� &������ � ������� �� ������ ������������ �� ��� ���� ������ ���� ���������� �� ��� ������ ������� ������������ ��� ������� �������� �55 ����� ����4� ��� ������� �� ��� ����4���� ������ ������ �� ���������� ��� �� ������ ��� !�� ������� <������������ ������������ �� ��� ��������� ��� ��������� ���� ��������� ��������� �� ���� ����� ������� ���� ����������� ��� ����� �� ��� ���� ������������� ��� ������� ��� ���������������� ���� ���� ������ �������� ������ ��� ���� ����� ���� �� ������������!�� ��� ��%��� �������� &���� �� !���� ��� ��>����� ����� ���� &��� ���>����� ������� ������

Page 22: Providing Fine-Grained Access Control for Java Programs *

�����" ,����" ��������� ��� ���� �� ������� ����� ��������� ��� ����������� �� ���������� ��� ��������� ��� ��������� �������� @������ ����� ���������� ��!� %��� ���������� �� ��� %���� ��� !������� ������� �� ������ �������K������ �������������� ��!� %��� ��!�� �� ����� ��������� ��� ����� �������������������

,����� ������� �������� E,5-�F ":$ ��� � ����������� ����� ��� ���������&��� �� ��� �� ��� ����&�� �� � ������ '��� ,5-�� � �&������������� �������� ��!�� &��� ��� ����!� ��������� ������ ��%������ �� ��� ��&� ��� ��� ��� ����������� �%������ �� ��� �������� , ���� �� ������ ������ ���� � ��%���� ��� �!�� ���%���� �� ��!�� �� ��� ������������� ������ ����� ��� �������� ������%�� �� ��������� ��� %� ���� �� ������%� �� ������ ������� ������� �� &��� �� ��� ���������������� ����������� ������%�� �� ":N$�

-����� ��� ���&�� "#;$ ������%� � ������ �� ������ ������� %���� �� %���������������� �!��������� ��� ���� �� ���� ���� ��%���� ��� �%���� �� ��!�� � ��� �������%����� �� ��������� ����� �� ���� � ��� �� ����� &���� ���4 � ��%����� �� �%�������� �� ������� ����� ����� ��� %� %���� �� �� ���%�� �� �����%����� @���� ����������%���� ��� %� �������� ��������� ������� ��!��� ����� ���%������ �� ���� ����� �� ��� %� ���� �� ��������� ���� ������� ��������� D�� �������� �� ��������� ���� &� ������� ��� !������ �����%���� �� ����� �� %������ ������������

0����� ��� -������� "::$ ��� �� ����%���� �����+������ �������� �� ������������� ��������� ����� ���������� �������� ��������� ������� �������� �� � ��� ������������������ ���������� �%��� � ������ 5������� @������ ��� 5���! ";� *$��� � ���� �� ������� ����� �� ������� ��������� �� �������� �� ��������� &���������� �� ����� �� ��������� �� ���%����� �� �������� �� ���� ����&� �������������� �� &��� ������� �� ����� �� �%����� �� �������� ��� ��� ������� ����� ��+�� ���������� ���%���� %��&��� ��!���� ��������� ����� ����� ��������� ������� ���� ��������!� ���� ��� ��� �������� �� ���� ������ '� ���� �� ����� ������� �� ��� ������� D�� ������� ����� ��� %��� �� ��!���� � ������ �������� ��������� ������� &���� ��� %� ����������� ����� ��� ��������

��� G�,-D=G "(:$ ������� ����� ���!���� �� ���������!� ����� ��� ����������� ������� �������� �� �%������������� ������� ���� ������� ��� -I@ ������������ ������%�� % G������ "N$ �� �%���� �������� ����%����� ��� ����!������� ���� ������� ��!���� ��� ����� ��������� ��� ��� ��������� ���� � ������� ������������ �������� ��� ��� ����!�� ���� ��� ���������� ���� ����&� � ������������������ �� � ��%����� �� ��!� � ������ ������� ��!�� ���� ��� �����������

� �������

'� ��!� ������%�� � ��������� ��� ������������ ������� ������� �������� ����%��� ��������� ����� ��� �&� ���������� �� ��� ��������� ��� +��� �� � ���������������!� ������ ���������� �������� ���� ����&� � ���� �� �������� �������� �� ����%����� ��� ������� �� ��� ������ ��� ���������!� ������ �� ��� �������� ��4���� ��� �� ������ �������� &���� ����� ����&��� � ���4 �� ������� ���������� ���������� ��������� ��� ������ �� � ��� �� ����� ���� ������� ��� �����+�� ����������� %������� ��%��� �������� ��� ���������� D�� ���������� ������ �� ���� � ���� ���

Page 23: Providing Fine-Grained Access Control for Java Programs *

������ ������ ����������� ��������� ���� %��� ��%��� ������� ��+������� ����������� ��+�������� ���� ���������� �� �������� ��� � ���%�� �� %���+��� ��������� ����������� ��� �������� ��+������� ��� %� ����+�� ������������� @������� ����� ������ ��>����� ������ ����������� ��� ��>����� ��%��� �������� ������ ���� ��������� ������� ��� �������� ��� ������� ������� �� ������ ����&��� ��� ��������� �������� &��� ������� �� �����

D�� ������ &��4 +��� ��!��!�� ��������.��� ��� ������ ������� ����� �� ���������� &����4��&� ������� �������� ��� ������������ '� ��� ��!������� ����������� ��� ������������ ��� ������� �� %������� ������� ������ ����� ��� ���������,� ���� �� ��� �������� �� ����� ����&��� �������%����� &� ��� ����������� !������� ���������� ��� ����������� ��� ������C�� &����� ��� �������� ��������� ������ ��� ������� ����� �����&��4� ����������� &����� ��� �!� ����� ������ ���������� �����&��

����!� �"� ���

'� ����4 �> 0���� ��� ���� -�4������� ��� ���� ��� ������� �� ������������� ��� ������ '� ���� ����4 ����. ������ 8��� ���� -��� ���������� G�!��%�� G�!�� 8!���� O��� I�!���� @���� -���%��%�� ��� D������ ������ �������� ��!��&��� ��� ����� ��������� �������� ��� ���� �� &������ ����������

� � � � �

:�; <# ������# ���������� �� ������� �������� ���������# � / �������)���� ���=#

:6; ># ������ ��� 9# 8����# ��� ���� ����������� ��������# ����� ?���������#

:4; �# �!�� -# 8����� �# )������ �# ������ �# ����� ��� 8# �'# +������������ ��� $���� ���� ���# ���� ������ ������������� ���� 4=@=��A������ ����#

:=; �# �!�� �# )������ ��� �# >��!���� �# $���� �����B ��� �!��� ���� ���C +� 9�� D��' ��� �!���� �! ��� ������ �����

�� ��� �����! ��"��� ��� ����������� ��������! ������ ������������

#��$���% ��� &'(� � ���� �666 � ���� �� E��� � ���� ��� ����������� 6�@=7� ��%� � ���� 9 �� ���7# �������(D�����# ��� �������� ��!���BFF&&&#������!#��#���F����F�����#�#

:�; �� ����� �!���� ��� 3�G��G��� � ����# �����%�� �������� �� �� ��� ���(��# +� )''* ���� �������� �� �������� ��� �������� ���� �54@��6� A�'�������������� ���7# +<<<#

:�; # ������ 9# ������ ��� �# -��&��# +�����, ���������$- .��� �� +�����,/

.��� #�� ����# 9�!� ?��� H ���� +��#� ����#:7; 3�G��G��� � ���� ��� ����� �� ���# �������� � �� ��� �����B � ��� � ��#

+� '�� ���� ������ �������� ���������� #��$���� ���� �64@�4=� >�������+������� 9 �� ����# +<<<� +<<< ���� �# ���# ���#

:I; �# ������ ��� �#9# ������# ����,����� �� ������� ��� ��� �� +���������3��&# +� ����������� �� ��� + �� ��� �� 65172� ���� �5=@��4# ��$� ��77#

Page 24: Providing Fine-Grained Access Control for Java Programs *

:�; �# <��� ��� �# &����# 3��"��� �����(������� ���� �����# +� ����������

�� ��� )''' ���� �������� �� �������� ��� �������� A�'����� ��� ���� $������#

:�5; 9#�# 3��%���� ��� $# $ �����# 9��� ��� ���# 9������� ?!�� ������ ����#!���BFF&&&#0������#���F�� ���F&!�������#�#

:��; 9#�# 8�� �� ��� 9# $��� ��# ��� ��� ����� ��� �� ��� �����# +� �� ���/

������� �� ��� )'01 �������� �� �������� ��� �������� ���� ��@65� ��I6#:�6; �# 8���# 9��� �� ���B ������ ��� ���� � � ��# ���� ������ ���� �=@���

$��F9 �� ���7#:�4; �# 8���� $# $ �����#� )# ���� ���!������ ��� /# ��!����# 8��� ������ �!�

�����"B �� ������& �� �!� ��& �� ��� ���!���� �� � �!� 9��� �����������>� �#6# +� ���������� �� ��� 2��3�, �������� �� �������� ���������� ���

������ $�������� ��������� �������� ���7#:�=; /# 8��� ��� -#E# -��!��# ������� �����(�� ���� ��� ���������� ����

������� � �"������ ����# ��!���� /����� �?(��<(�I(56(56� ����# �� ���(� ��� ������ ��� <��������� ������� �� ?�!������ ���I#

:��; �# 8��%�� ��� 8# �����# ��� ��� � ��� ���� ���������� ���� ������ ����� ����B 9��� �# ����( ��# ��������� ����� 4����"� 46162B��@46� �������I#

:��; �# )������ ��� �# +���# � ��������� �!��� ��� ����� ����� �� 9���# +�������� &'*� ���� 6��@666� - ������ ) ������ ���7# ��$#

:�7; $#�# )������ ?#�# /#� ��� 9#�# ������# ��������� � �������� ����# ������������ �� ��� + �� ��1I2B=��@=7�� � � � ��7�#

:�I; $#�# )������ ?#�# / %%�� ��� 9#�# ������# ��������� � �������� ����# ������������ �� ��� + �� ��1I2B=��@=7�� ��7�#

:��; �# )�&���%��� �# �!���� 8# �%�0'�&'� �# ) � ��� # ��� <�'��# +����������� ����� ��������� ����� � 9���# ��!���� /����� �7(���5� ������� �����(��� ���7#

:65; E# +���� /# ������ # 9������ ��� 9#/# /��# � J�"��� �� ��� ����� ��� ��������� �������# ���� ����"���� �=1�2B�6@��� ����#(A��# ���7#

:6�; �# 9�0���� �# ���������� ��� D#�# � ���!�����# � ������ ���� ��� ��� �"(����� � �!��%����# +� ���������� �� ��� )''* �������� �� �������� ���

�������� ���� 4�@=6� ���7#:66; 9�������# �56 )!)!) 5������������#:64; �# >��%� /# 8���� �# E��� �# / � �# �!�&��� ��� 8# �����'�# ����� ��B

������� �!� ���� �� ����� ���� ���# ���� �������� ��������� �1=2B�I@�7�9 ��(� � � ���7#

:6=; �# ���� ��� 8# -���!# ������ ��� ������ � �!� 9��� D�� �� $��!��#+� �# �!������ ������ �� ���/�������� ����������� �����% �������� ���

+��������� ���������% � ������ ��� �� ��7��+3 3������ � ���� �5� D��(�� ���� A������ ���I# ��$#

:6�; 9# $���� ��� # ��&���# ���� 8����� �������# A*/����� ���7#:6�; �#D# $���� ��� /#?# -���&�# ���� ������� �� ������� �"����� ���� ����#

+� ����� +���� ������� �������� +��������� ���������� ���� �4�@�4�� �(��� �K� ���5# +<<<� +<<< ���� �# ���# ���#

:67; �#D# $���� ��� /#?# -���&�# ���� ������� �� ������� �"����� ���� ����#+� ����� +���� ������� �������� +��������� ���������� ���� �4�@�4�� �(��� �K� ���5# +<<<� +<<< ���� �# ���# ���#

:6I; E# E��������� ��� �#-# -����# /�� ��� ���� ������� ��� �� ������� �������# +� ����� 2��3�, ��������� �� �� ���/�������� ���������� ��� ��/

���# ��<E+L� 9 �� ���7#

Page 25: Providing Fine-Grained Access Control for Java Programs *

:6�; 8#�# E�� ��# �����(������� ����# +� ���������� �� ��� 19�� +���� ��������

�� �������� �� ����������� ��������# ��$ �+8���E(�+8�� � 9��# ���7#:45; 8#�# E�� �� ��� �# ���# ���� '����� �"����� &�!� � � �(��� �!��'��# +�

������ �������� �� ��������� ����� 5���� ��� �������������# ���"�A��# ����#

:4�; �#$# E �� ��� 9# ?���# !� �+�$AE� �� ��� ����� ��� ��0���(��������������# +� )''1 + � ������� ������� ���������! ������������ ���/

�������� ���� =�@��� >��� ���� $A� ���6#:46; 9#># A ���!� �� 9#M# ����� ��� -#-# ?���!# !� ����( �� �� ��� �����#

��!���� /����� /(�7(�5� � � $������� ����������� ���7# �������� ��!���BFF������!# �#���F���!����(������F���7F�������(�5#!���#

:44; 9# )# ����%�� ��� $# �# ��!������# !� ��������� �� ��������� � ���� �������# ���������� �� ��� ����� �41�2B�67I@�45I� ��������� ��7�#

:4=; 9#?# ����� ��� �#># 8N���# /����� <��� ����# + � ���������� �� ���/

�������� �������� ��� ������ �61=2B�47@���� A������ ���5#:4�; # !���# ���������� ���� ��� ��� ����� ����# + � �������� �������

6�142B6�4@64�� ��������� ���7#:4�; �#�# ?�����!� �# -�����%� �# ����� ��� <#?# 3�����# <"������ �� ��� ���!(

���� �� ��� 9���# ��!���� ������� ���������� �� ���� ��� ������� ���������������� ���7#

:47; #M#�# ?�� ��� �#�# ���# � �!��%���� � ���� ��� ����B � ������ ��(�����!# +� ���������� �� ��� )''1 ���� ������� ������� �������� �� 4�/

����� �� �������� ��� �������� ���� 44@�5� ���6#