본문 바로가기
반응형

Language/Java14

[Java] AES-256 암호화/복호화 하기 AES AES는 고급 암호화 표준으로 같은 Key를 이용하여 암호화/복호화가 가능한 암호화 알고리즘이다. 256은 32바이트의 암호화키를 사용하며 AES-128(16byte), 192(24byte), 256(32byte)의 세 종류가 있으며 256에 대해 알아보자. Secret Key Secret Key는 약속된 특정만 문장을 암호화 하는데 사용되며 보안을 위해 외부노출을 삼가야 한다. AES의 종류에 따라 Secret Key의 길이가 달라지며 256은 32바이트의 길이를 사용한다. Initialize Vector (초기화 벡터) 암호화를 하기 위한 키를 16byte의 길이로 잘라서 사용하는 벡터로 위의 Secret Key값을 잘라서 사용할 수 있다. 암호화 예시 public String encrypt(.. 2023. 6. 15.
[Java] BigInteger 다루기 (백준 1247번 - 부호) 우선 수를 다루는 Data Type을 알아보면 Data Type Size Description byte 1 byte Stores whole numbers from -128 to 127 short 2 bytes Stores whole numbers from -32,768 to 32,767 int 4 bytes Stores whole numbers from -2,147,483,648 to 2,147,483,647 long 8 bytes Stores whole numbers from -9,223,372,036,854,775,808 to 9,223,372,036,854,775,807 float 4 bytes Stores fractional numbers. Sufficient for storing 6 to 7 d.. 2023. 4. 12.
[Java] 트리 구현하기 (이진트리, 전위순회, 중위순회, 후위순회) 트리 구현 위와 같은 형태를 갖추며 각 노드는 (Data, Left, Right)의 구조체를 갖는다. public static class Node { char data; Node leftNode; Node rightNode; //Node에 값 넣고 초기화 public Node(char data) { this.data = data; this.leftNode = null; this.rightNode = null; } } 노드의 구조체의 선언은 위와 같다. 이후 각 leftNode와 rightNode가 다른 노드를 가리키게끔 코드를 적용하면 public static class Node { char data; Node leftNode; Node rightNode; //Node에 값 넣고 초기화 public No.. 2023. 4. 8.
[Base64][암호화] + 기호가 " "(공백) 으로 바뀌는 현상 평화롭게 코딩을 하던 중 오류가 발생했다. util_crypt utilCrypt = new util_crypt(); String en_userID = utilCrypt.crypt_des(user_id, "baby"); user_id를 baby 키값을 이용해 암호화를 하려고 하였다. 암호화 결과는 y+LNUckbjh9lju3rMctQag== 그리고 이 값을 로그인이 필요한 다른 서버의 페이지로 보내주었다. 보낸 후 해당 서버에서 받은 암호화된 값을 보니 y LNUckbjh9lju3rMctQag== '+' 기호가 ' '(공백)으로 바뀌어서 날아온 것이다. 이를 해결하기 위해 열심히 구글링 했다. https://stackoverflow.com/questions/7842547/request-parameter-l.. 2023. 3. 13.
반응형