jsRSA (form 전송 암호화) 정보
jsRSA (form 전송 암호화)첨부파일
본문
안녕하세요.
질문답변 게시판을 보다가 form 전송시 평문으로 되는 문제를 보고 생각나서 만들어봤습니다.
별건 아니구요.
이렇게 전송하는 놈을
이렇게 바꾸는 겁니다.
중간에 프록시나 각종 수단으로 정보를 가로채는것을 막아줍니다.
ssl이 그런 역할을 해주고는 있지만, ssl을 사용할 수 없는 환경에서 사용할 수 있도록 했습니다.
사용방법은 간단합니다.
1. 첨부된 압축을 해제하시고, 그누보드의 extend폴더와 js폴더에 각각 파일을 넣어주세요.
2. 사용하실 스킨의 head_sub.php 파일에 첨부된 head_sub.php 파일의 내용을 적절하게 넣어주세요.
3. 아래 코드를 암호화할 form 안에 넣어주세요.
<input type="hidden" name="rsa_encrypted">
4. 아스날
5. /extend/rsa_encrypt.php 파일을 열어서 RSA 키를 넣어주세요. 방법은 주석으로 첨부했습니다.
그누보드상의 로그인, 회원가입 부분에서 테스트를 완료했습니다.
혹시 사용하시다 문제가 있으시다면 댓글 달아주시면 감사하겠습니다.
jsencrypt.js 사용합니다.
!-->
추천
8
8
댓글 전체
감사합니다.
적용시 속도는 어떤가요?
체감상의 차이는 없었습니다만 정확한 시간은 테스트를 해봐야 할 것 같습니다.
이 정도 연산으로 속도가 크게 차이가 나지는 않을 것 같습니다.
이 정도 연산으로 속도가 크게 차이가 나지는 않을 것 같습니다.
멋지네요. 감사합니다.
감사합니다.
조심히 써보도록 하겠습니다. :)
자료감사합니다!
아스날 ㅋㅋㅋ
올해는 좀...
아스날 ㅋㅋㅋ
올해는 좀...
안녕하세요 ㅎㅎ 구너입니다.
4스날이 칭찬이 되어버린게 안타까워요 ㅠㅠ
4스날이 칭찬이 되어버린게 안타까워요 ㅠㅠ
오..이런 프로그램을...대단하십니다~ 보안서버가 필요가 없겠네요 ㅎ
사실 실제 SSL과는 작동 방식이 많이 다르긴 합니다.
SSL을 설치 못하는 환경에서 임시 방편 정도로 활용하는게 제일 좋아보입니다ㅎ
SSL을 설치 못하는 환경에서 임시 방편 정도로 활용하는게 제일 좋아보입니다ㅎ
좋은 자료 감사합니다~!
좋은자료 감사합니다 ^^
말씀하신 대로 설치했습니다. 그런데 제대로 작동하고 있는지를 어떻게 알 수 있을까요?
fiddler와 같은 툴을 이용해 확인해보세요~
기존의 아웃로그인 및 멤버 로그인 스킨에 이렇게 설치하는 것이 맞나요?
<input type="hidden" name="rsa_encrypted">
<input type="hidden" name="url" value="<?=$outlogin_url?>">
이렇게 하니까, 비밀번호가 공백이면 안된다고 로그인이 안되고 계속 에러가 나네요ㅜㅜ
<input type="hidden" name="rsa_encrypted">
<input type="hidden" name="url" value="<?=$outlogin_url?>">
이렇게 하니까, 비밀번호가 공백이면 안된다고 로그인이 안되고 계속 에러가 나네요ㅜㅜ
설치를 잘못 하신 듯 합니다. extend, js 폴더에 제대로 넣은게 맞나요?
좋은 자료, 고맙습니다.
평소 게시판에 적용해 보고 싶었던 기능입니다.
게시판에 적용해보니 아래와 같이 에러가 발생합니다. (그누보드 5.2.9.8.1 )
혹시 해결 방안이 있을지 질문 드립니다.
설치는 아래와 같이 했습니다.
extend/rsa_encrypt.php (새 키값 넣음)
js/jsencrypt.min.js 와 jsrsa.js
head.sub.php (<script.. 세 개 넣음)
skin/basic/write.skin.php (<form 부분에> <input type="hidden" name="rsa_encrypted"> 넣음)
글쓰기 버튼을 누르면 아래와 같이 에러 메세지가 뜹니다.
http://xxx.xx/gnu5/bbs/write_update.php
올바른 방법으로 이용해 주십시오
Warning: base64_decode() expects parameter 1 to be string, array given in /home/hosting_users/visors/gnu5/extend/rsa_encrypt.php on line 27
Warning: Cannot modify header infomation - headers already sent by (output started at /home/hosting_users/visors/gnu5/extend/rsa_encrypt.phpphp:27) in /home/hosting_users/visors/gnu5/common.php on line 625
Warning: Cannot modify header infomation - headers already sent by (output started at /home/hosting_users/visors/gnu5/extend/rsa_encrypt.phpphp:27) in /home/hosting_users/visors/gnu5/common.php on line 627 (~ 631 까지)
평소 게시판에 적용해 보고 싶었던 기능입니다.
게시판에 적용해보니 아래와 같이 에러가 발생합니다. (그누보드 5.2.9.8.1 )
혹시 해결 방안이 있을지 질문 드립니다.
설치는 아래와 같이 했습니다.
extend/rsa_encrypt.php (새 키값 넣음)
js/jsencrypt.min.js 와 jsrsa.js
head.sub.php (<script.. 세 개 넣음)
skin/basic/write.skin.php (<form 부분에> <input type="hidden" name="rsa_encrypted"> 넣음)
글쓰기 버튼을 누르면 아래와 같이 에러 메세지가 뜹니다.
http://xxx.xx/gnu5/bbs/write_update.php
올바른 방법으로 이용해 주십시오
Warning: base64_decode() expects parameter 1 to be string, array given in /home/hosting_users/visors/gnu5/extend/rsa_encrypt.php on line 27
Warning: Cannot modify header infomation - headers already sent by (output started at /home/hosting_users/visors/gnu5/extend/rsa_encrypt.phpphp:27) in /home/hosting_users/visors/gnu5/common.php on line 625
Warning: Cannot modify header infomation - headers already sent by (output started at /home/hosting_users/visors/gnu5/extend/rsa_encrypt.phpphp:27) in /home/hosting_users/visors/gnu5/common.php on line 627 (~ 631 까지)
사용하시는 스킨을 알려주셔야 할 것 같습니다~
여분필드 등 추가 기능을 사용하는 게시판인 것으로 보입니다.
여분필드 등 추가 기능을 사용하는 게시판인 것으로 보입니다.
여분필드를 사용하면 안되는건가요???
여분필드 사용한 게시판에서는 똑같이 에러가 나오네요~ ^^;;;
여분필드 사용한 게시판에서는 똑같이 에러가 나오네요~ ^^;;;
<?php echo captcha_html(); ?>
자동등록방지 에서 글체크 오류납니다.
등록글이 틀리다고 나오네요..
자동등록방지 에서 글체크 오류납니다.
등록글이 틀리다고 나오네요..
자동등록방지가 두 번 호출되어 실제 보여지는 이미지와 서버 세션이 물고 있는 값이 다른 것이 아닌가 싶습니다.
지금 올려져있는 자료가 글쓰기 부분에서 자동등록방지 문제가 있어서 수정하고 올려드린 자료인데 위와 같은 문제였습니다.
자동등록방지가 두 번 호출되는 것이 아닌지 확인해보시기 바랍니다.
지금 올려져있는 자료가 글쓰기 부분에서 자동등록방지 문제가 있어서 수정하고 올려드린 자료인데 위와 같은 문제였습니다.
자동등록방지가 두 번 호출되는 것이 아닌지 확인해보시기 바랍니다.
저도 같은 오류때문에 고민했는데
디버깅을 해보니 head_sub.php에 넣은 부분이 로딩이 되지 않아서 생기는 문제입니다.
저는 아미나를 쓰고 있는데 루트에 있는 head_sub.php에 넣어서 해결했습니다. ^^
디버깅을 해보니 head_sub.php에 넣은 부분이 로딩이 되지 않아서 생기는 문제입니다.
저는 아미나를 쓰고 있는데 루트에 있는 head_sub.php에 넣어서 해결했습니다. ^^
와... 정말 감사합니다!
대박이네요~~ ^^;;; 감사합니다.
감사합니다
본문의 3번 작업을 해주셔야 합니다.
정상적으로 됩니다! 감사합니다.
응용해서 아작스도 했네요.
좋은 자료 감사합니다!
좋네요
로그인부분에 넣을려는데 어디에 넣어야될까요?
확인이 늦었습니다. login.skin.php 부분에 넣으시면 될듯합니다.
찾던 자료입니다.
감사합니다!!
감사합니다!!