2014-11-06 5 views
0

두 개의 다른 서버에서 동일한 쿼리를 실행하면 결과가 달라집니다. 아무도 이유를 아나요?Windows에서 Pgcrypto가 올바르게 작동하지 않습니다.

select decrypt('\x792135887dace2af15d3f8548cc20919','\x265bb788ef6762abf50577f8a6669aa0','aes-ecb') 

데비안의 PostgreSQL 9.3 서버 출력 (결과는 예상) :

"\xafb8967640bd0400309e7b0008acbb23" 

윈도우의 PostgreSQL 9.3 서버의 출력 (결과 잘못된) :

"\257\270\[email protected]\275\004\0000\236{\000\010\254\273#" 
+0

같은 데이터 정렬을 사용하는 데비안 서버의 다른 데이터베이스에서 시도했지만 동일한 문제가 발생합니다. – Alexandre

답변

1

윈도우 9.3 서버는 기본이 아닌이있다 구성; bytea_outputescape 모드로 설정되고 hex 모드가 아닙니다.

결과는 실제로 동일합니다. 기본 바이너리의 다른 텍스트 표현으로 표시됩니다.

regress=> SHOW bytea_output; 
bytea_output 
-------------- 
hex 
(1 row) 

regress=> SELECT BYTEA '\257\270\[email protected]\275\004\0000\236{\000\010\254\273#'; 
       bytea     
------------------------------------ 
\xafb8967640bd0400309e7b0008acbb23 
(1 row)