1

현재 포르투갈어 시민 카드와 자바 애플릿을 사용하여 양식의 디지털 서명을 사용하는 웹 앱을 개발 중입니다.html 입력 유형 = 파일과 자바 애플릿 간의 상호 교환

형식 파일의 입력에 문제가 발생할 때까지 모든 것이 정규 형식으로 원활하게 진행되었습니다. 이 앱은 첨부 파일을 지원하므로 사용자가 첨부 파일을 제출하거나 검토 할 수있는 분리 된 첨부 파일 관리자를 만들었습니다. 제출할 때 두 가지 방법이 필요합니다. 정상 업로드 또는 파일 서명 후 업로드.

첫 번째 아이디어는 사용자가 입력 유형 = "파일"에서 파일을 선택하게하고 "서명 및 업로드"를 클릭하면 자바 애플릿을 실행하여 서명을 생성하여 숨겨진 입력. 문제는 일부 브라우저에서 javascript (Java 애플릿에 대한 액세스를 거부 함)에서 액세스 할 수없는 파일을 선택한 html의 보안 제한에 있습니다.

또한 서버 측에서 서명 할 파일의 해시를 계산 한 다음 클라이언트 측에서 서명하는 방법도 고려했지만 옵션도 아닙니다. 해시 및 서명의 결정은 모두 클라이언트 측에 있어야합니다 (법적 이유).

또 다른 아이디어는 JUpload와 같은 것을 사용했지만 클라이언트 인증서가있는 SSL 채널을 통한 연결 (웹 앱에 로그인 한 방법에 따라 발생할 수 있음)을 지원하지 않는 경우도 있습니다.

마지막으로 필자는 애플릿에서 파일을 열어 서명 한 다음 base64의 숨겨진 입력에 저장한다는 불합리한 생각조차 갖고있었습니다. 분명히 이것은 파일 크기에 막대한 제약을 초래합니다.

제 질문은 다음과 같습니다.이 문제에 대한 최선의 접근 방법은 무엇입니까? 어떤 제안? 사전에

덕분에)

답변

0

물론, JS 또는 Flash에서 브라우저에서 선택한 파일에 액세스하는 것은 불가능합니다. 그래서 유일한 방법은 신뢰할 수있는 Java 애플릿을 사용하는 것입니다. 그래도 우아한 방식은 아닙니다. 또한 사용자가 클라이언트 인증서를 가지고 있다면 - 서명 할 이유가 무엇이고, 통신 채널이 암호화되어있을 때 무엇입니까 ??

관련 문제