테스트 사이트 - 개발 중인 베타 버전입니다

예약 사이트에 값을 암호화 전송하기 채택완료

컴대장 5년 전 조회 2,186

홈페이지 리뉴얼 하면서 예약사이트 연동하려는데

 

암호화를 저보고 하라네요..ㅎㅎㅎ

 

KCP는 모듈 주면서 설정해서 연결하면 되는데...

 

그래서 하루종일 암호화 소스 붙들고 시름중인데요.

 

한개의 파일로 해독은 되는데....

 

값을 넘겨서 해독하면 안되네요.

 

공백이 +로 넘어오길래 치환해서 원래값이랑 동일하게 변환해줘도...

 

도통 안됩니다...........ㅠㅠ

 

고수님 살려주세요.~~~~~~~~~~~~~

댓글을 작성하려면 로그인이 필요합니다.

답변 5개

채택된 답변
+20 포인트

답변에 대한 댓글 1개

컴대장
5년 전
위의 소스는 비밀키가 노출된다는 점이 문제지요. 그래서 찾던중 해당 함수를 봤는데 안되네요.
동일한 소스에서는 디코딩이되는데 말이죠. 넘기면 안되네요.

댓글을 작성하려면 로그인이 필요합니다.

5년 전

앗...소스코드 압축해두고 첨부를 안했네요.

죄송합니다....ㅠㅠ

 

http://www.kunwi.co.kr/data/test.zip">다운받기

로그인 후 평가할 수 있습니다

답변에 대한 댓글 3개

핫워드
5년 전
이미 해결하신거죠?
소스 다운받아서 실행해보니 (폼 만들어서 post로 전송) 정상적으로 실행이 됩니다.
get 으로 말고 폼 만드셔서 post로 넘겨보시면 될거 같네요.

그리고 포스트로 넘기게 되면 result.php 페이지에 str_replace 하지 않아도 결과가 나올겁니다.

제가 만든 것 보다 더 잘만드셨네요.ㅎㅎ
핫워드
5년 전
get으로 넘기기 테스트도 해 봤는데 414 에러가 납니다. (제 테스트서버에 nginx 설정이 기본설정이라 너무 긴 URI에 대해 오류를 뿜네요.)
보내는 정보가 암호다 보니 보안상으로도 get은 아닌거 같구요.
컴대장
5년 전
핫워드 // post로 넘기는게 훨씬 보기 좋고 깔끔하네요.
보안상으로도 좋을것 같네요. 테스트 감사합니다.^^

댓글을 작성하려면 로그인이 필요합니다.

5년 전

특정 웹호스팅이 그런증상이 있는것 같던데..웹호스팅이면 호스팅사에 문의한번해봐주십시오. 

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

컴대장
5년 전
서버 호스팅이기 때문에 그렇지는 않습니다.ㅎ

댓글을 작성하려면 로그인이 필요합니다.

에셀
5년 전

+ 부분이라면 Url encoding 을 해야 하지 않을까요?

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

컴대장
5년 전
함수 안써도 넘기는 값과 받은 값을 +만 공백으로 차환하니 같아지더라구요. 온갖함수 다써봤습니다.

댓글을 작성하려면 로그인이 필요합니다.

5년 전

보통 암호화하면 복호화와 같이 두 개가 한 쌍인 모듈화된 함수나 클래스를 사용할 텐데요.

직접 암호화 프로그램을 짜는 것 보다 만들어진걸 쓰는 게 더 좋다고 합니다.

어떤 암호화 모듈을 사용하시는 건가요?

 

저 같은 경우는 openssl_encrypt 와 openssl_decrypt 를 사용합니다.

로그인 후 평가할 수 있습니다

답변에 대한 댓글 2개

핫워드
5년 전
조금 덧 붙이자면
암호화 할 때 사용할 salt (소금) 을 만듭니다.
openssl_encrypt 로 암호화하고, 암호화된 내용을 base64_encode 로 인코딩해서 값을 넘겨줍니다.
복호화는 반대로 base64_decode로 암호데이터를 디코딩 한 후 openssl_decrypt 로 복호화 과정을 거칩니다.

@마르스컴퍼니 님께서 남기신 두 번째 링크와 비슷하게 흘러갑니다.
컴대장
5년 전
조언 감사합니다. 이것 거것 분석해 봤는데 이것이 그래도 좀 확실한것 같아서요~

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인