From b6612caeb3c8f0a9b45173e222982b3f4e9455dd Mon Sep 17 00:00:00 2001 From: h7x4 Date: Fri, 3 Jul 2026 02:52:35 +0900 Subject: [PATCH] rev/vault_door_1 --- rev/vault_door_1/VaultDoor1.java | 60 ++++++++++++++++++++++++++++++++ 1 file changed, 60 insertions(+) create mode 100644 rev/vault_door_1/VaultDoor1.java diff --git a/rev/vault_door_1/VaultDoor1.java b/rev/vault_door_1/VaultDoor1.java new file mode 100644 index 0000000..8219998 --- /dev/null +++ b/rev/vault_door_1/VaultDoor1.java @@ -0,0 +1,60 @@ +import java.util.*; + +class VaultDoor1 { + public static void main(String args[]) { + VaultDoor1 vaultDoor = new VaultDoor1(); + Scanner scanner = new Scanner(System.in); + System.out.print("Enter vault password: "); + String userInput = scanner.next(); + String input = userInput.substring("picoCTF{".length(),userInput.length()-1); + if (vaultDoor.checkPassword(input)) { + System.out.println("Access granted."); + } else { + System.out.println("Access denied!"); + } + } + + // I came up with a more secure way to check the password without putting + // the password itself in the source code. I think this is going to be + // UNHACKABLE!! I hope Dr. Evil agrees... + // + // -Minion #8728 + public boolean checkPassword(String password) { + return password.length() == 32 && + password.charAt(0) == 'd' && + password.charAt(29) == '4' && + password.charAt(4) == 'r' && + password.charAt(2) == '5' && + password.charAt(23) == 'r' && + password.charAt(3) == 'c' && + password.charAt(17) == '4' && + password.charAt(1) == '3' && + password.charAt(7) == 'b' && + password.charAt(10) == '_' && + password.charAt(5) == '4' && + password.charAt(9) == '3' && + password.charAt(11) == 't' && + password.charAt(15) == 'c' && + password.charAt(8) == 'l' && + password.charAt(12) == 'H' && + password.charAt(20) == 'c' && + password.charAt(14) == '_' && + password.charAt(6) == 'm' && + password.charAt(24) == '5' && + password.charAt(18) == 'r' && + password.charAt(13) == '3' && + password.charAt(19) == '4' && + password.charAt(21) == 'T' && + password.charAt(16) == 'H' && + password.charAt(27) == '0' && + password.charAt(30) == 'e' && + password.charAt(25) == '_' && + password.charAt(22) == '3' && + password.charAt(28) == 'e' && + password.charAt(26) == 'a' && + password.charAt(31) == 'b'; + } +} + + +// picoCTF{d35cr4mbl3_tH3_cH4r4cT3r5_a0e4eb}