2009-03-25 2 views
6

특정 이벤트에서 전자 메일을 트리거하는 레일 응용 프로그램이 있습니다. 이러한 이메일은 회신 할 때 이메일에 추가 데이터를 추가하는 별도의 회사로 전송됩니다. 이것은 모두 이해하고 작동하며, 나는 데이터를 추출하고 답장을 파싱하고 있습니다.Ruby on Rails에서 암호화 된 이메일을 보내고받는 방법은 무엇입니까?

이메일을 암호화하라는 메시지가 표시되었습니다.

누구에게도 가장 좋은 방법에 대한 경험/아이디어가 있습니까?

제 3자가 사용할 이메일 클라이언트를 보장 할 수 없으므로 많은 이메일 클라이언트에서 일반적으로 사용할 수있는 솔루션이 필요합니다. 전자 메일을 보낼 때는 응용 프로그램에서, 그리고 응답 할 때는 클라이언트 응용 프로그램 (Outlook, Thunderbird, Entourage 등)에서 암호화를 수행해야합니다. 그런 다음 암호화 된 전자 메일을 받고 암호 해독 및 구문 분석을 통해 필요한 새 정보를 추출해야합니다.

누구나 내가 이것을 달성하는 데 도움이 될 플러그인/문서에서 나를 가리킬 수 있습니까?

답변

3

다른 쪽에서 응용 프로그램을 사용하지 않는 경우 S/MIME 또는 PGP를 사용해야합니다.

대부분의 데스크톱 이메일 클라이언트는 기본적으로 S/MIME을 지원하며 PGP는 일반적으로 플러그인으로 사용할 수 있습니다 (Thunderbird의 경우 Enigmail, Apple Mail의 경우 GPGMail 등).

또한 S/MIME에는 사용자의 필요에 따라 직접 만들거나 인증 기관 (Verisign 또는 Thawte)에서 구입할 수있는 인증서가 필요합니다.

Ruby 용 S/MIME 및 PGP 라이브러리가 있지만 확실한 검색은 "하나의 진정한 라이브러리"를 보여주지 못했습니다. 그러나 항상 OpenSSL (S/MIME 용) 또는 GPG을 들려 줄 수 있습니다.

+1

http://github.com/bendiken/openpgp –

1

나는 Güder의 답변이 우수하다고 생각하지만 사용자가 GPG가 설치되어 있고 관련 키가 이미 있어야한다는 것을 명심해야합니다. 이 심한 설정 과정은 전자 메일 암호화가 널리 확산되는 데 장애가되는 부분의 약 95 %를 차지합니다.

이 프로젝트를 위임 한 개인이 암호화 된 전자 메일을 보내도록 코드의 전환을 전환하는 것이 간단하지 않음을 확신합니까?

하나의 옵션은 GPG에 의존하는 (및 포함하는) 키 관리 루틴을 프로그램의 설치 프로세스에 통합하는 것입니다. 그런 다음 사용자는 매우 어려운 암호를 선택할 수 있습니다 (최소 영숫자 등으로 검사를 실행해야합니다), 공용 키를 생성하여 널리 사용되는 키 서버에 업로드 할 수 있습니다.

생성 된 키는 프로그램이 생성하는 전자 메일에 사용될 수 있으며 가장 중요한 것은 각 사용자마다 고유 한 키입니다. 그런 다음 사용자의 OS에서 기본 전자 메일 클라이언트에 대한 일반 외부 호출을 수행하여 전자 메일을 열 수 있습니다.

전자 메일이 암호화 된 상태로 열려 있는지 확인하려면 환경을 확인하고 기본 전자 메일 클라이언트를 얻은 다음 생성 된 전자 메일을 암호화하는 데 필요한 플래그가 포함 된 전자 메일을 프로그램에서 보냅니다. 이것은 예를 들어 Thunderbird의 Enigmail이 Apple Mail의 경우와 다를 것임을 의미합니다.

하지만 OpenSSL을 잊지 마세요.

관련 문제