Useful Links
Computer Science
Cybersecurity
Java Security
1. Introduction to Java Security
2. The Java Sandbox Architecture
3. Permissions and Security Policies
4. Java Cryptography Architecture
5. Java Cryptography Extension
6. Secure Communication
7. Authentication and Authorization
8. Secure Coding Practices
9. Modern Java Security Features
10. Security Testing and Analysis
The Java Sandbox Architecture
Sandbox Fundamentals
Sandbox Concept and Purpose
Trusted vs Untrusted Code
Security Boundaries
Java Virtual Machine Security
JVM as Security Boundary
Memory Protection
Code Execution Isolation
Runtime Security Checks
Bytecode Verification
Bytecode Verifier Purpose
Verification Process
Loading Phase Verification
Linking Phase Verification
Initialization Phase Verification
Type Safety Enforcement
Stack Verification
Type Consistency Checks
Reference Validation
Malicious Code Prevention
Invalid Bytecode Detection
Unauthorized Operation Prevention
Stack Overflow Protection
Class Loading Security
Class Loader Architecture
Class Loader Hierarchy
Parent Delegation Model
Namespace Separation
Security Implications
Class Spoofing Prevention
Code Source Verification
Package Access Control
Trusted vs Untrusted Sources
Local Code Loading
Remote Code Loading
Codebase Restrictions
Custom Class Loaders
Security Considerations
Implementation Best Practices
Common Vulnerabilities
Security Manager
Security Manager Overview
Purpose and Function
Runtime Policy Enforcement
Resource Access Control
Permission Checking
checkPermission Method
Permission Evaluation Process
Custom Permission Checks
Access Control Implementation
File System Access Control
Network Access Control
System Property Access Control
Thread Access Control
Modern Status and Alternatives
Deprecation in Java 17
Migration Strategies
Alternative Security Approaches
Previous
1. Introduction to Java Security
Go to top
Next
3. Permissions and Security Policies