Bytecode Verification
Bytecode verification checks that:
-  The file is correctly formatted
-  The parameter stack will not overflow or underflow
-  Bytecode instructions use the correct types
-  No invalid type conversions are performed
-  No unauthorised member access is performed (through private or protected fields and methods).
-  Register accesses follow the legal conventions
Common problems
-  Insecure Java implementation (e.g. type checking)
-  Inappropriate security policy