97. 다음 JAVA코드에서 밑줄로 표시된 부분에는 어떤 보안 약점이 존재하는가? (단, key는 암호화 키를 저장하는 변수이다.)
3
*해설
<문제 해설>
소스 코드 내부에 암호화 키를 상수 형태로 하드코딩하여 사용하면 악의적인 공격자에게 암호화 키가
노출될 위협이 있다.
안전하지 않은 코드의 예 JAVA
import javax.crypto.KeyGenerator;
import javax.crypto.spec.SecretKeySpec;
import javax.crypto.Cipher;
……
public String encriptString(String usr) {
***//암호화 키를 소스코드 내부에 사용하는 것은 안전하지 않다.//******
String key = "22df3023sf~2;asn!@#/>as";
if (key != null) {
byte[] bToEncrypt = usr.getBytes("UTF-8");
SecretKeySpec sKeySpec = new SecretKeySpec(key.getBytes(), "AES")