디코딩 java 소스 php 코드로 아시는 분 계실까요?

디코딩 java 소스 php 코드로 아시는 분 계실까요?

QA

디코딩 java 소스 php 코드로 아시는 분 계실까요?

본문

위 자바 소스인데 php로 디코딩이 잘 안되서 아시는분 계시면 답변 부탁드려요



        String tKey = getKeyValue(type);
        SecretKeySpec skeySpec = new SecretKeySpec(tKey.getBytes(), "AES");
        String originalString = "";
        try {
            Cipher cipher = Cipher.getInstance("AES/CBC/PKCS5Padding");
            byte[] byteStr = Base64.decodeBase64(data.getBytes("UTF-8"));
            // Decrypted
            cipher.init(Cipher.DECRYPT_MODE, skeySpec, new IvParameterSpec(IV.getBytes("UTF-8")));
            byte[] original = cipher.doFinal(byteStr);
            originalString = new String(original);

이 질문에 댓글 쓰기 :

답변 1

자바를 php 로 변경원하는건가요?


<?php
function decryptData($data, $type, $IV) {
    // AES key 생성
    $tKey = getKeyValue($type);
    $skeySpec = substr($tKey, 0, 32); // PHP에서는 키 길이를 32바이트로 맞춰야 함
    // Base64 디코딩
    $byteStr = base64_decode($data);
    // AES/CBC/PKCS5Padding 복호화
    $cipher = "AES-256-CBC"; // AES-256-CBC 모드 사용
    $iv = substr($IV, 0, 16); // IV는 16바이트 길이로 맞춤
    // 복호화
    $decrypted = openssl_decrypt($byteStr, $cipher, $skeySpec, OPENSSL_RAW_DATA, $iv);
    
    return $decrypted;
}
// 사용 예시
$data = "암호화된 데이터";
$type = "type_value";
$IV = "initialization_vector";
echo decryptData($data, $type, $IV);
?>

 

일단 gpt 친구가 이렇게 답변을 주긴 했습니다.

답변을 작성하시기 전에 로그인 해주세요.
전체 0
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT