OpenSSL에서 AES-128-CBC를 사용할경우 기본 IV값은?
글쓴이: kwon37xi / 작성시간: 수, 2007/03/07 - 7:10오후
정확히 말씀드리면, Ruby에서 EzCrypto AES-128-CBC로 인코딩된 값을 PHP에서 MCRYPT_RIJNDAEL_128 CBC로 디코딩하려는 것입니다. 제가 알기론 AES-128-CBC와 MCRYPT_RIJNDAEL_128 CBC가 동일한 것으로 알고 있습니다.
키 값을 동일하게 잡았지만, 이게 아무리 해도 안됩니다.
확인을 해보니, 랜덤하게 생성되는 iv값이 달라도, 디코딩 결과가 달라진다고 하더군요. 실제로 PHP에서 iv 값을 다르게 설정했을때 디코딩이 실패했구요.
EzCrypto는 OpenSSL을 호출하는데요, 일단 EzCrypto에서 iv를 어떻게 설정하는지도 모르고 설정 하지도 않았습니다.
하지만 PHP의 mcrypt는 무조건 iv를 설정해야 하더군요.
도무지 PHP에서 어떤 값을 iv로 설정해야 할지 모르겠습니다.
제 생각엔 OpenSSL이 기본으로 지정하는 iv 값이 있을 거 같은데 말이죠...
그게 뭘까요?
사실 근본적으로 PHP에서 어떻게 Ruby의 EzCrypto AES-128-CBC로 인코딩된 값을 디코딩할 수 있는지 알수 있다면 더욱 좋을 것 같습니다.
Forums:
mode을 사용한다면
mode을 사용한다면 iv는 사용해야 합니다. EzCrypto가 어떤것인지는 모르겠습니다만
iv을 설정하는 부분이 있거나.. 내부적으로 정해져 있는 값이 있을겁니다.
---------
간디가 말한 우리를 파괴시키는 7가지 요소
첫째, 노동 없는 부(富)/둘째, 양심 없는 쾌락
셋째, 인격 없는 지! 식/넷째, 윤리 없는 비지니스
이익추구를 위해서라면..
다섯째, 인성(人性)없는 과학
여섯째, 희생 없는 종교/일곱째, 신념 없는 정치
---------
간디가 말한 우리를 파괴시키는 7가지 요소
첫째, 노동 없는 부(富)/둘째, 양심 없는 쾌락
셋째, 인격 없는 지! 식/넷째, 윤리 없는 비지니스
이익추구를 위해서라면..
다섯째, 인성(人性)없는 과학
여섯째, 희생 없는 종교/일곱째, 신념 없는 정치
댓글 달기